ontomde-uml2-struts 1.0.4 → 1.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Rakefile +2 -2
- data/lib/ontomde-uml2-struts/form.rb +17 -50
- data/lib/ontomde-uml2-struts/jsp_edit.rb +28 -35
- data/lib/ontomde-uml2-struts/mappingForJsp.rb +1 -1
- data/lib/ontomde-uml2-struts/version.rb +1 -1
- metadata +4 -13
data/Rakefile
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
# -*- ruby -*-
|
2
2
|
|
3
3
|
require 'rubygems'
|
4
|
-
require 'hoe'
|
4
|
+
require 'ontomde-hoe'
|
5
5
|
require './lib/ontomde-uml2-struts/version.rb'
|
6
6
|
|
7
|
-
|
7
|
+
OntomdeHoe.new('ontomde-uml2-struts', Ontomde::Uml2::Struts::VERSION) do |p|
|
8
8
|
p.rubyforge_name = 'ontomde'
|
9
9
|
p.author = 'Stephane (Pierre) Carrie'
|
10
10
|
p.email = 'stephanepierre.carrie@orange-ftgroup.com'
|
@@ -190,30 +190,6 @@ module Muml_Classifier
|
|
190
190
|
return false
|
191
191
|
end
|
192
192
|
|
193
|
-
|
194
|
-
# def struts_addDateFormater!(form)
|
195
|
-
# if struts_typeIsUsed?("date")
|
196
|
-
# df=form.umlx_createAndAddProperty("#{rdf_uri}_dfCalendar",STRUTS_DATE_FORMATER_INSTANCE);
|
197
|
-
# df.uml_type=form.umlx_getOrCreateClass('java.text.SimpleDateFormat');
|
198
|
-
# df.java_code='new java.text.SimpleDateFormat("yyyy/MM/dd",java.util.Locale.ENGLISH);'
|
199
|
-
# df.java_noAccessors=RDF_TRUE
|
200
|
-
# df.uml_visibility=Cuml_VisibilityKind::Private
|
201
|
-
# df.uml_isStatic=RDF_TRUE #TODO : synchronized ??, (pb synchronisation)
|
202
|
-
# df.db_isTransient=RDF_TRUE
|
203
|
-
# df.java_isTransient=RDF_TRUE
|
204
|
-
# end
|
205
|
-
# if struts_typeIsUsed?("timestamp")
|
206
|
-
# df=form.umlx_createAndAddProperty("#{rdf_uri}_dfTimestamp",STRUTS_TIMESTAMP_FORMATER_INSTANCE);
|
207
|
-
# df.uml_type=form.umlx_getOrCreateClass('java.text.SimpleDateFormat');
|
208
|
-
# df.java_code='new java.text.SimpleDateFormat("yyyy/MM/dd HH:mm:ss",java.util.Locale.ENGLISH);'
|
209
|
-
# df.java_noAccessors=RDF_TRUE
|
210
|
-
# df.uml_visibility=Cuml_VisibilityKind::Private
|
211
|
-
# df.uml_isStatic=RDF_TRUE #TODO : synchronized ??, (pb synchronisation)
|
212
|
-
# df.db_isTransient=RDF_TRUE
|
213
|
-
# df.java_isTransient=RDF_TRUE
|
214
|
-
# end
|
215
|
-
# end
|
216
|
-
|
217
193
|
def struts_addInitFrom!
|
218
194
|
form=struts_actionForm_one
|
219
195
|
inf=form.umlx_createAndAddOperation(form.rdf_uri+"_initFrom","initFrom")
|
@@ -307,7 +283,7 @@ module Muml_Property
|
|
307
283
|
struts_addActionFormAttributeReference!(form)
|
308
284
|
|
309
285
|
end
|
310
|
-
#TODO: ajouter autres
|
286
|
+
#TODO: ajouter autres proprietes
|
311
287
|
end
|
312
288
|
|
313
289
|
|
@@ -355,7 +331,6 @@ module Muml_Property
|
|
355
331
|
//
|
356
332
|
// //#{self.umlx_manySide? ? "" : %{lvb=new #{STRUTS_LVB}("--","empty");
|
357
333
|
// //ret.add(lvb);} }
|
358
|
-
|
359
334
|
// return #{form.struts_getFormHelper.java_qualifiedName}.#{STRUTS_FORM_HELPER_ENUMTOLVB}(#{self.uml_type_one.java_qualifiedName}.class,(#{self.uml_type_one.java_qualifiedName})null,getReference().get#{self.java_NameBean}Sug());
|
360
335
|
|
361
336
|
for (#{self.uml_type_one.java_qualifiedName} item : getReference().get#{self.java_NameBean}Sug()) {
|
@@ -391,41 +366,23 @@ ENDJAVA
|
|
391
366
|
|
392
367
|
end
|
393
368
|
|
394
|
-
#module Muml_DataType
|
395
|
-
#contains regexp for string representation of corresponding type
|
396
|
-
#obsolete!
|
397
|
-
#STRUTS_PRIMITIVE_TYPE_REGEXP=Hash.new()
|
398
|
-
#end
|
399
|
-
|
400
|
-
|
401
369
|
module Muml_Element
|
402
370
|
STRUTS_FORM_HELPER="xmda.struts.FormHelper"
|
403
371
|
STRUTS_FORM_HELPER_ENUMTOLVB="enumToLvb"
|
404
372
|
|
405
373
|
STRUTS_DATE_FORMATER_INSTANCE=STRUTS_FORM_HELPER+'.DfCalendar'
|
406
374
|
STRUTS_TIMESTAMP_FORMATER_INSTANCE=STRUTS_FORM_HELPER+'.DfTimestamp'
|
407
|
-
|
408
|
-
|
409
|
-
if(helper.java_customCode.empty?)
|
410
|
-
helper.apaCom_addLogger!
|
411
|
-
helper.umlx_external=RDF_FALSE
|
412
|
-
#helper.java_import_add(STRUTS_LVB)
|
413
|
-
helper.db_isTransient=RDF_TRUE
|
414
|
-
helper.struts_isForm=RDF_FALSE
|
415
|
-
helper.java_customCode= %{
|
416
|
-
|
375
|
+
|
376
|
+
STRUTS_FORM_HELPER_CODE= <<ENDCODE
|
417
377
|
public static final java.text.SimpleDateFormat DfTimestamp=new java.text.SimpleDateFormat("yyyy/MM/dd HH:mm:ss",java.util.Locale.ENGLISH);
|
418
378
|
public static final java.text.SimpleDateFormat DfCalendar=new java.text.SimpleDateFormat("yyyy/MM/dd",java.util.Locale.ENGLISH);
|
419
379
|
|
420
|
-
|
421
|
-
|
422
|
-
|
423
380
|
/**
|
424
381
|
* Transform a timestamp date to its GMT equivalent date.
|
425
382
|
*
|
426
383
|
* @param fromTimeZone
|
427
384
|
* @param timestampToTransform
|
428
|
-
* @return
|
385
|
+
* @return date in GMT
|
429
386
|
*/
|
430
387
|
public static java.util.Date transformFromCurrentTZToGMT(final java.util.TimeZone fromTimeZone,final java.util.Date timestampToTransform) {
|
431
388
|
// the offset of this time zone from UTC.
|
@@ -474,9 +431,19 @@ public static java.util.List<#{STRUTS_LVB}> #{STRUTS_FORM_HELPER_ENUMTOLVB}(fina
|
|
474
431
|
throw(e);
|
475
432
|
}
|
476
433
|
}
|
477
|
-
|
478
|
-
|
479
|
-
|
434
|
+
ENDCODE
|
435
|
+
|
436
|
+
def struts_getFormHelper
|
437
|
+
helper=umlx_getOrCreateClass(STRUTS_FORM_HELPER)
|
438
|
+
if(helper.java_customCode.empty?)
|
439
|
+
helper.apaCom_addLogger!
|
440
|
+
helper.umlx_external=RDF_FALSE
|
441
|
+
#helper.java_import_add(STRUTS_LVB)
|
442
|
+
helper.db_isTransient=RDF_TRUE
|
443
|
+
helper.struts_isForm=RDF_FALSE
|
444
|
+
helper.java_customCode= STRUTS_FORM_HELPER_CODE
|
445
|
+
end
|
446
|
+
return helper;
|
480
447
|
end
|
481
448
|
end
|
482
449
|
|
@@ -429,7 +429,7 @@ def struts_jspEdit_write_Operation
|
|
429
429
|
next unless biz.umlx_businessMethod?
|
430
430
|
next if biz.struts_bizOperationReverse.empty?
|
431
431
|
|
432
|
-
#TODO:
|
432
|
+
#TODO:recuperer le nom MPC par navigation!
|
433
433
|
|
434
434
|
#<html:form action="/#{self.java_Name}#{biz.java_Name}MPC-new.do">
|
435
435
|
#<html:id>
|
@@ -459,33 +459,6 @@ end
|
|
459
459
|
|
460
460
|
end
|
461
461
|
|
462
|
-
###moved to helpermodule Muml_Enumeration
|
463
|
-
###moved to helper def struts_edit_writeField(field,owner)
|
464
|
-
###moved to helper# write %{
|
465
|
-
###moved to helper#<html:select property="#{field.java_Name}">
|
466
|
-
###moved to helper# <html:optionsCollection property="#{field.java_Name}Sug"/>
|
467
|
-
###moved to helper#</html:select>
|
468
|
-
###moved to helper# }
|
469
|
-
###moved to helper#TODO: utiliser le suggester
|
470
|
-
###moved to helperwrite %{<html:select property="#{field.java_Name}">\n}
|
471
|
-
###moved to helperfield.uml_type_one.uml_ownedLiteral.each { |ol|
|
472
|
-
###moved to helper write %{ <html:option value="#{ol}" key="#{field.uml_type_one.java_qualifiedName}.#{ol}"/>\n}
|
473
|
-
###moved to helper }
|
474
|
-
###moved to helperwrite %{</html:select>\n}
|
475
|
-
###moved to helper
|
476
|
-
###moved to helper#elt="#{field.java_Name}_eltSsug"
|
477
|
-
###moved to helper#write %{
|
478
|
-
###moved to helper#<%-- TODO (retrieve label from ressource for localization)
|
479
|
-
###moved to helper# <html:select property="#{field.java_Name}">
|
480
|
-
###moved to helper# <logic:iterate id="#{elt}" name="org.apache.struts.taglib.html.BEAN" property="#{field.java_Name}Sug">
|
481
|
-
###moved to helper# <%= TagUtils.getInstance().message(pageContext, bundle, locale, key); %>
|
482
|
-
###moved to helper#
|
483
|
-
###moved to helper# <html:option value="value">#{field.uml_type_one.java_qualifiedName}.<bean:write name="#{elt}" property="label"/></html:option>
|
484
|
-
###moved to helper# </logic:iterate>
|
485
|
-
###moved to helper#</html:select> --%>
|
486
|
-
###moved to helper# }
|
487
|
-
###moved to helper end
|
488
|
-
###moved to helperend
|
489
462
|
module Muml_DataType
|
490
463
|
#error style used for form fields
|
491
464
|
STRUTS_ERROR_STYLE=%{errorStyle="background-color: yellow"}
|
@@ -528,18 +501,31 @@ def struts_edit_writeFieldMany(field,owner)
|
|
528
501
|
struts_edit_writeFieldGeneric(field,owner,true,false)
|
529
502
|
struts_edit_writeSelectAndAdd(field,owner)
|
530
503
|
end
|
504
|
+
|
505
|
+
#add label
|
506
|
+
#use every property stereotpyed Label.
|
507
|
+
#if none found, use every field
|
508
|
+
def struts_editWriteSelectAndAddLabel(field,elt,withLabelOnly=true)
|
509
|
+
emptySelection=true
|
510
|
+
field.uml_type_one.struts_formAttribute.each { |a|
|
511
|
+
#next if a.uml_name_one=="id"
|
512
|
+
next if a.uml_name_one=="owner"
|
513
|
+
next if a.uml_type_one.kind_of?(Muml_Class)
|
514
|
+
next if withLabelOnly && !(a.umlx_hasStereotype?("label"))
|
515
|
+
emptySelection=false
|
516
|
+
write %{<bean:write name="#{elt}" property="#{a.java_Name}"/>, }
|
517
|
+
}
|
518
|
+
struts_editWriteSelectAndAddLabel(field,elt,false) if emptySelection && withLabelOnly
|
519
|
+
end
|
520
|
+
|
531
521
|
def struts_edit_writeSelectAndAdd(field,owner)
|
532
522
|
return if field.uml_isReadOnly?
|
533
523
|
elt="#{field.java_Name}_add"
|
534
524
|
struts_encloseWrite( %{<select name="#{field.java_Name}_add" onchange="add#{field.java_NameBean}(value);"> \n<option>--</option>\n} ,%{</select>\n}) {
|
535
525
|
struts_encloseWrite( %{<logic:iterate id="#{elt}" name="#{owner.java_Name}StrutsForm" property="reference.#{field.java_Name}Sug" >\n} ,%{</logic:iterate>}) {
|
536
526
|
struts_encloseWrite( %{ <option value="<bean:write name="#{elt}" property="id"/>">\n},%{ </option> \n}) {
|
537
|
-
field
|
538
|
-
|
539
|
-
next if a.uml_name_one=="owner"
|
540
|
-
next if a.uml_type_one.kind_of?(Muml_Class)
|
541
|
-
write %{<bean:write name="#{elt}" property="#{a.java_Name}"/>, }
|
542
|
-
}}}}
|
527
|
+
struts_editWriteSelectAndAddLabel(field,elt)
|
528
|
+
}}}
|
543
529
|
end
|
544
530
|
|
545
531
|
def struts_edit_writeFieldManyCompo(field,owner)
|
@@ -805,7 +791,6 @@ def struts_edit_writeHelpToggle
|
|
805
791
|
if uml_ownedComment.empty?
|
806
792
|
write %{<img src="#{css_path_model}/#{css_color_class}/image/vide.gif" width="25" height="25" border="0" alt="" />\n}
|
807
793
|
else
|
808
|
-
|
809
794
|
write %{<img src="#{css_path_model}/#{css_color_class}/image/btnHelp.gif" width="25" height="25" border="0" alt="help" onclick='togglehelp("#{java_Name}")' />\n}
|
810
795
|
end
|
811
796
|
|
@@ -854,6 +839,7 @@ def struts_edit_writeFieldGeneric_DisplayTable_displayTag_column(prop)
|
|
854
839
|
prop.write %{<display:column property="#{prop.java_Name}" titleKey="#{prop.umlx_owner_one.java_qualifiedName}.#{prop.java_Name}" decorator="xmda.displayTag.extensions.I18nCalendarColumnDecorator" />\n}
|
855
840
|
end
|
856
841
|
end
|
842
|
+
|
857
843
|
class JavaMappingTimeStamp < JavaMapping
|
858
844
|
def struts_edit_writeFieldGeneric_DisplayTable_displayTag_column(prop)
|
859
845
|
#Note: Because Calendar and TimeStamp share the same java type (java.util.Date)
|
@@ -862,5 +848,12 @@ def struts_edit_writeFieldGeneric_DisplayTable_displayTag_column(prop)
|
|
862
848
|
end
|
863
849
|
end
|
864
850
|
|
851
|
+
class JavaMappingGRAPHVIZ < JavaMappingLargeText
|
852
|
+
def struts_edit_writeFieldGeneric_DisplayTable_displayTag_column(prop)
|
853
|
+
#we don't display graphviz into table (but we could)
|
854
|
+
prop.write %{<%-- skip graphviz field #{prop.java_Name} --%>\n}
|
855
|
+
end
|
856
|
+
end
|
857
|
+
|
865
858
|
|
866
859
|
|
@@ -36,7 +36,7 @@ class JavaMappingURL < JavaMappingText
|
|
36
36
|
# cf: http://www.osix.net/modules/article/?id=586
|
37
37
|
n=datatype.java_Name.downcase #TODO
|
38
38
|
return <<END
|
39
|
-
<html:text property="#{field.java_Name}" size="20%" maxlength="#{self.maxStringLength}" styleId="#{n}" #{::Muml_DataType::STRUTS_ERROR_STYLE}
|
39
|
+
<html:text property="#{field.java_Name}" size="20%" maxlength="#{self.maxStringLength}" styleId="#{n}" #{::Muml_DataType::STRUTS_ERROR_STYLE} disabled="true"/>
|
40
40
|
|
41
41
|
<a onclick="javascript:document.getElementById('#{n}').disabled=false;document.getElementById('#{n}').value='';;">
|
42
42
|
<img src="res//orange/image/edit.gif" />
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ontomde-uml2-struts
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Stephane (Pierre) Carrie
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2008-03-
|
12
|
+
date: 2008-03-25 00:00:00 +01:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -19,7 +19,7 @@ dependencies:
|
|
19
19
|
requirements:
|
20
20
|
- - "="
|
21
21
|
- !ruby/object:Gem::Version
|
22
|
-
version: 1.0.
|
22
|
+
version: 1.0.6
|
23
23
|
version:
|
24
24
|
- !ruby/object:Gem::Dependency
|
25
25
|
name: ontomde-uml2-apaCom
|
@@ -28,16 +28,7 @@ dependencies:
|
|
28
28
|
requirements:
|
29
29
|
- - "="
|
30
30
|
- !ruby/object:Gem::Version
|
31
|
-
version: 1.0.
|
32
|
-
version:
|
33
|
-
- !ruby/object:Gem::Dependency
|
34
|
-
name: hoe
|
35
|
-
version_requirement:
|
36
|
-
version_requirements: !ruby/object:Gem::Requirement
|
37
|
-
requirements:
|
38
|
-
- - ">="
|
39
|
-
- !ruby/object:Gem::Version
|
40
|
-
version: 1.5.0
|
31
|
+
version: 1.0.6
|
41
32
|
version:
|
42
33
|
description: "ontomde-uml2-struts is library for generating a struts application. == SYNOPSIS: use commande line provided in ontomde-uml2-javaFrontEnd. == INSTALL:"
|
43
34
|
email: stephanepierre.carrie@orange-ftgroup.com
|