ontomde-java 2.0.0 → 2.0.4
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +11 -0
- data/Manifest.txt +1 -51
- data/lib/ontomde-java.rb +2 -0
- data/lib/ontomde-java/crank.rb +8 -8
- data/lib/ontomde-java/crank/crankJpa.rb +58 -8
- data/lib/ontomde-java/crank/main.rb +38 -21
- data/lib/ontomde-java/frontend/command.rb +7 -7
- data/lib/ontomde-java/frontend/command.rdoc +0 -583
- data/lib/ontomde-java/frontend/defaultOptions.rb +12 -7
- data/lib/ontomde-java/frontend/options.rb +19 -2
- data/lib/ontomde-java/frontend/steps.rb +36 -5
- data/lib/ontomde-java/java/accessorCode.rb +250 -94
- data/lib/ontomde-java/java/accessorSignature.rb +50 -4
- data/lib/ontomde-java/java/annotationOntoMDE.rb +38 -27
- data/lib/ontomde-java/java/component.rb +141 -68
- data/lib/ontomde-java/java/enumAssignable.rb +46 -5
- data/lib/ontomde-java/java/java.rb +111 -40
- data/lib/ontomde-java/java/javaDatatypeMapping.rb +35 -1
- data/lib/ontomde-java/java/javadoc.rb +35 -22
- data/lib/ontomde-java/java/operationAsClass.rb +13 -0
- data/lib/ontomde-java/java/security.rb +10 -2
- data/lib/ontomde-java/java/stateMachine.rb +137 -74
- data/lib/ontomde-java/java/tenant.rb +1 -0
- data/lib/ontomde-java/java/xsd.rb +1 -1
- data/lib/ontomde-java/jpa/configuration.rb +25 -1
- data/lib/ontomde-java/jpa/finder.rb +48 -13
- data/lib/ontomde-java/jpa/jpa.rb +30 -14
- data/lib/ontomde-java/jpa/mapping.rb +114 -60
- data/lib/ontomde-java/jpa/redefined.rb +21 -5
- data/lib/ontomde-java/jpa/simulationAutoImplement.rb +1 -1
- data/lib/ontomde-java/jpdl/processOperationToClass.rb +1 -2
- data/lib/ontomde-java/kbjava/rdfToJava.rb +25 -16
- data/lib/ontomde-java/struts.rb +1 -1
- data/lib/ontomde-java/struts/MessageResources.rb +15 -6
- data/lib/ontomde-java/struts/action.rb +37 -13
- data/lib/ontomde-java/struts/form.rb +97 -7
- data/lib/ontomde-java/struts/header.rb +7 -3
- data/lib/ontomde-java/struts/jsp_edit.rb +54 -24
- data/lib/ontomde-java/struts/jsp_edit_js.rb +1 -1
- data/lib/ontomde-java/struts/jsp_index.rb +6 -4
- data/lib/ontomde-java/struts/mappingForJsp.rb +11 -7
- data/lib/ontomde-java/struts/mappingToJavaHierarchy.rb +16 -2
- data/lib/ontomde-java/version.rb +1 -1
- data/lib/ontomde-java/vmware/vso.rb +329 -0
- data/test/test_export_ea7_1_829.rb +5 -0
- data/test/test_export_ea7_1_833.rb +5 -0
- data/test/test_export_ea7_5_843.rb +5 -0
- data/test/test_export_magicDraw.rb +4 -0
- data/test/test_export_oe530.rb +1 -1
- data/test/test_export_oe600.rb +1 -1
- data/test/test_export_rsm60.rb +1 -1
- data/test/{uml_test.rb → test_export_unitTests.rb} +6 -1
- metadata +9 -56
- data/generateRdocFile.sh +0 -16
- data/profiling.xls +0 -0
- data/test/.classpath +0 -14
- data/test/.project +0 -17
- data/test/.settings/org.eclipse.jdt.core.prefs +0 -23
- data/test/Rakefile +0 -71
- data/test/build.xml +0 -34
- data/test/classpath.rb +0 -15
- data/test/lib/junit-4.1.jar +0 -0
- data/test/load1.rb +0 -3
- data/test/load2.rb +0 -3
- data/test/log4j.properties +0 -46
- data/test/model/.project +0 -11
- data/test/model/BigProject.mdzip +0 -0
- data/test/model/BigProject.mdzip.nt +0 -102866
- data/test/model/ClassDiagram.EntArch.gif +0 -0
- data/test/model/ClassDiagram.emx.gif +0 -0
- data/test/model/ClassDiagram.mdzip.gif +0 -0
- data/test/model/model_ea71.bis.ea.xmi +0 -149
- data/test/model/model_ea71.ea.xmi +0 -4470
- data/test/model/model_ea71.eap +0 -0
- data/test/model/model_ea71_README.txt +0 -8
- data/test/model/multipleInheritance.emx +0 -466
- data/test/model/multipleInheritance.emx.nt +0 -2428
- data/test/model/simple1-530.ofp +0 -0
- data/test/model/simple1-includedAsReference.emx +0 -169
- data/test/model/simple1.emx +0 -3729
- data/test/model/simple1.emx.fragments.nt +0 -81
- data/test/model/simple1.emx.nt +0 -5760
- data/test/model/simple1.mdzip +0 -0
- data/test/model/simple1.mdzip.nt +0 -11500
- data/test/model/simple1.oe530.nt +0 -1986
- data/test/model/simple1.oe600.nt +0 -1627
- data/test/src/RuntimeTest.java +0 -656
- data/test/src/testsLevel1.java +0 -174
- data/test/src/testsLevel2.java +0 -29
- data/test/src/testsLevel3.java +0 -40
- data/test/test-ea7.sh +0 -15
- data/test/test-magicDraw.sh +0 -10
- data/test/test-mi.sh +0 -9
- data/test/test-oe530.sh +0 -10
- data/test/test-oe600.sh +0 -11
- data/test/test-rsm.sh +0 -11
- data/test/test_export_ea71.rb +0 -5
- data/test/trace +0 -419
- data/test/uml_test.xls +0 -0
- data/test/unit_test.rb +0 -6
data/History.txt
CHANGED
@@ -1,3 +1,14 @@
|
|
1
|
+
== 2.0.1
|
2
|
+
* java: added static initializer (a static UML method with stereotype create).
|
3
|
+
* fsm: misc bug fix, and improved user error detection in state machines.
|
4
|
+
* kb: added clear error message for UML property without a type.
|
5
|
+
* struts: rename resume to resumeAct in struts action.
|
6
|
+
* struts: added _js to function names generated from uml functions to avoid possible colision with existing javascript names (ex: delete)
|
7
|
+
* struts: function forms are not displayed if no input is required
|
8
|
+
* jpa: demo code returns null if no sample found in db
|
9
|
+
|
10
|
+
== 2.0.0
|
11
|
+
* all: move all java related gem in sub-packages ontomde-java gem
|
1
12
|
|
2
13
|
== 1.0.8 / 2008-10-27
|
3
14
|
* frontend: added loading of external configuration file (.ontomde-java)
|
data/Manifest.txt
CHANGED
@@ -3,7 +3,6 @@ Manifest.txt
|
|
3
3
|
README.txt
|
4
4
|
Rakefile
|
5
5
|
bin/ontomde-java
|
6
|
-
generateRdocFile.sh
|
7
6
|
lib/ontomde-java.rb
|
8
7
|
lib/ontomde-java/crank.rb
|
9
8
|
lib/ontomde-java/crank/context.rb
|
@@ -104,53 +103,4 @@ lib/ontomde-java/struts/validator.rb
|
|
104
103
|
lib/ontomde-java/struts/webXml.rb
|
105
104
|
lib/ontomde-java/struts/xmlForm.rb
|
106
105
|
lib/ontomde-java/version.rb
|
107
|
-
|
108
|
-
test/.classpath
|
109
|
-
test/.project
|
110
|
-
test/.settings/org.eclipse.jdt.core.prefs
|
111
|
-
test/Rakefile
|
112
|
-
test/build.xml
|
113
|
-
test/classpath.rb
|
114
|
-
test/lib/junit-4.1.jar
|
115
|
-
test/load1.rb
|
116
|
-
test/load2.rb
|
117
|
-
test/log4j.properties
|
118
|
-
test/model/.project
|
119
|
-
test/model/BigProject.mdzip
|
120
|
-
test/model/BigProject.mdzip.nt
|
121
|
-
test/model/ClassDiagram.EntArch.gif
|
122
|
-
test/model/ClassDiagram.emx.gif
|
123
|
-
test/model/ClassDiagram.mdzip.gif
|
124
|
-
test/model/model_ea71.bis.ea.xmi
|
125
|
-
test/model/model_ea71.ea.xmi
|
126
|
-
test/model/model_ea71.eap
|
127
|
-
test/model/model_ea71_README.txt
|
128
|
-
test/model/multipleInheritance.emx
|
129
|
-
test/model/multipleInheritance.emx.nt
|
130
|
-
test/model/simple1-530.ofp
|
131
|
-
test/model/simple1-includedAsReference.emx
|
132
|
-
test/model/simple1.emx
|
133
|
-
test/model/simple1.emx.fragments.nt
|
134
|
-
test/model/simple1.emx.nt
|
135
|
-
test/model/simple1.mdzip
|
136
|
-
test/model/simple1.mdzip.nt
|
137
|
-
test/model/simple1.oe530.nt
|
138
|
-
test/model/simple1.oe600.nt
|
139
|
-
test/src/RuntimeTest.java
|
140
|
-
test/src/testsLevel1.java
|
141
|
-
test/src/testsLevel2.java
|
142
|
-
test/src/testsLevel3.java
|
143
|
-
test/test-ea7.sh
|
144
|
-
test/test-magicDraw.sh
|
145
|
-
test/test-mi.sh
|
146
|
-
test/test-oe530.sh
|
147
|
-
test/test-oe600.sh
|
148
|
-
test/test-rsm.sh
|
149
|
-
test/test_export_ea71.rb
|
150
|
-
test/test_export_oe530.rb
|
151
|
-
test/test_export_oe600.rb
|
152
|
-
test/test_export_rsm60.rb
|
153
|
-
test/trace
|
154
|
-
test/uml_test.rb
|
155
|
-
test/uml_test.xls
|
156
|
-
test/unit_test.rb
|
106
|
+
lib/ontomde-java/vmware/vso.rb
|
data/lib/ontomde-java.rb
CHANGED
data/lib/ontomde-java/crank.rb
CHANGED
@@ -1,13 +1,13 @@
|
|
1
|
-
require 'ontomde-java'
|
2
|
-
require 'ontomde-java/jpa'
|
1
|
+
require 'ontomde-java/jpa.rb'
|
3
2
|
|
4
3
|
require 'ontomde-java/crank/helper.rb'
|
5
4
|
require 'ontomde-java/crank/main.rb'
|
6
|
-
require 'ontomde-java/crank/
|
7
|
-
require 'ontomde-java/crank/
|
8
|
-
require 'ontomde-java/crank/
|
9
|
-
require 'ontomde-java/crank/
|
10
|
-
require 'ontomde-java/crank/
|
11
|
-
require 'ontomde-java/crank/
|
5
|
+
require 'ontomde-java/crank/dao.rb'
|
6
|
+
#require 'ontomde-java/crank/context.rb'
|
7
|
+
#require 'ontomde-java/crank/facesconfig.rb'
|
8
|
+
#require 'ontomde-java/crank/facelets.rb'
|
9
|
+
#require 'ontomde-java/crank/menu2.rb'
|
10
|
+
#require 'ontomde-java/crank/validation.rb'
|
11
|
+
#require 'ontomde-java/crank/equals.rb'
|
12
12
|
|
13
13
|
require 'ontomde-java/crank/crankJpa.rb'
|
@@ -1,14 +1,19 @@
|
|
1
1
|
module Muml_Property
|
2
2
|
|
3
|
+
def jpa_addFetchType(ah)
|
4
|
+
ah.umlx_owner_one.java_import_add('javax.persistence.FetchType')
|
5
|
+
return "fetch=FetchType.LAZY"
|
6
|
+
end
|
7
|
+
|
3
8
|
def jpa_addRelationCascadeType(isIncludeType=true)
|
4
9
|
if crank_isMasterFromMasterDetail?
|
5
10
|
self.java_annotation_add("@xmda.jpa.annotations.MasterDetail")
|
6
11
|
self.umlx_owner_one.java_import_add("org.hibernate.annotations.Cascade");
|
7
12
|
self.java_annotation_add("@Cascade({org.hibernate.annotations.CascadeType.DELETE_ORPHAN})")
|
8
13
|
if (isIncludeType)
|
9
|
-
return ",cascade={CascadeType.ALL}"
|
14
|
+
return ",cascade={javax.persistence.CascadeType.ALL}"
|
10
15
|
else
|
11
|
-
return "(cascade={CascadeType.ALL})"
|
16
|
+
return "(cascade={javax.persistence.CascadeType.ALL})"
|
12
17
|
end
|
13
18
|
elsif crank_isDetailFromMasterDetail?
|
14
19
|
self.java_annotation_add("@xmda.jpa.annotations.Detail")
|
@@ -21,8 +26,8 @@ module Muml_Property
|
|
21
26
|
end
|
22
27
|
end
|
23
28
|
|
24
|
-
CRANK_DEFAULT_CASCADE="(cascade={CascadeType.MERGE, CascadeType.PERSIST, CascadeType.REFRESH})"
|
25
|
-
CRANK_DEFAULT_CASCADE_I=",cascade={CascadeType.MERGE, CascadeType.PERSIST, CascadeType.REFRESH}"
|
29
|
+
CRANK_DEFAULT_CASCADE="(cascade={javax.persistence.CascadeType.MERGE, javax.persistence.CascadeType.PERSIST, javax.persistence.CascadeType.REFRESH})"
|
30
|
+
CRANK_DEFAULT_CASCADE_I=",cascade={javax.persistence.CascadeType.MERGE, javax.persistence.CascadeType.PERSIST, javax.persistence.CascadeType.REFRESH}"
|
26
31
|
|
27
32
|
alias super_jpa_addPersistenceToAssociation! jpa_addPersistenceToAssociation!
|
28
33
|
def jpa_addPersistenceToAssociation!(ah)
|
@@ -45,6 +50,24 @@ end
|
|
45
50
|
|
46
51
|
|
47
52
|
module DAO
|
53
|
+
def jpa_addPersistenceContext!
|
54
|
+
end
|
55
|
+
def jpa_addPersist!
|
56
|
+
c=umlx_createAndAddOperation(rdf_uri+"_persist","persist")
|
57
|
+
c.java_code="\t\tget#{self.java_Name}DAO().persist(this);"
|
58
|
+
end
|
59
|
+
def jpa_addMerge!
|
60
|
+
c=umlx_createAndAddOperation(rdf_uri+"_merge","merge")
|
61
|
+
c.java_code="\t\treturn (#{self.java_qualifiedName})get#{self.java_Name}DAO().merge(this);"
|
62
|
+
r=c.umlx_createAndAddReturnParameter("#{c.rdf_uri}_ret")
|
63
|
+
r.uml_type=self
|
64
|
+
end
|
65
|
+
|
66
|
+
def jpa_addRemove!
|
67
|
+
c=umlx_createAndAddOperation(rdf_uri+"_remove","remove")
|
68
|
+
c.java_code="\t\tget#{self.java_Name}DAO().delete(this);"
|
69
|
+
end
|
70
|
+
|
48
71
|
DAOInterface="GenericDao"
|
49
72
|
DAOQualifiedInterface="org.crank.crud.GenericDao"
|
50
73
|
|
@@ -56,14 +79,15 @@ module DAO
|
|
56
79
|
return
|
57
80
|
end
|
58
81
|
|
59
|
-
log.debug { "adding dao for #{self}" }
|
60
82
|
p=umlx_package
|
61
83
|
|
62
84
|
p_dao=p.umlx_getOrCreatePackage(context[:dbDAOsubPackage,"dao"],p)
|
63
85
|
c=p_dao.umlx_createAndAddInterface(rdf_uri+"_dao")
|
64
86
|
c.db_isDAO=RDF_TRUE
|
65
87
|
c.db_isTransient=RDF_TRUE
|
66
|
-
|
88
|
+
# PATCH
|
89
|
+
# self.java_DAOClass=c
|
90
|
+
self.java_DAOClass=self
|
67
91
|
c.java_persistentClass=self
|
68
92
|
c.uml_name=uml_name_one+"DAO"
|
69
93
|
|
@@ -74,16 +98,35 @@ module DAO
|
|
74
98
|
|
75
99
|
self.jpa_addNamedQuery
|
76
100
|
|
77
|
-
log.debug { "DAO added: #{c.uml_name} in #{c.umlx_package.uml_name}"}
|
78
101
|
c.java_import_add(DAO::DAOQualifiedInterface)
|
79
102
|
c.java_import_add("#{self.java_qualifiedName}")
|
103
|
+
|
104
|
+
m=umlx_createAndAddOperation(rdf_uri+"_getdao")
|
105
|
+
m.uml_name="get#{self.java_Name}DAO"
|
106
|
+
m.uml_class=self
|
107
|
+
m.uml_visibility=Cuml_VisibilityKind::Public
|
108
|
+
m.uml_isStatic=RDF_TRUE
|
109
|
+
|
110
|
+
rp=m.umlx_createAndAddParameter(m.rdf_uri+"_ret_param","return")
|
111
|
+
rp.uml_direction=Cuml_ParameterDirectionKind::Return
|
112
|
+
rp.uml_upperValue=umlx_literal(1)
|
113
|
+
rp.uml_lowerValue=umlx_literal(1)
|
114
|
+
rp.uml_type=c
|
115
|
+
m.java_code="\t\treturn (#{c.java_qualifiedName}) xmda.jpa.SpringApplicationContext\n\t\t\t\t.getInstance().getBean(\"#{self.java_Name}Dao\");"
|
116
|
+
|
117
|
+
jpa_addPersist!
|
118
|
+
jpa_addMerge!
|
119
|
+
jpa_addRemove!
|
120
|
+
jpa_addFindByPrimaryKey!(self)
|
121
|
+
jpa_addFindAll!(self)
|
122
|
+
|
80
123
|
end
|
81
124
|
|
82
125
|
def jpa_addNamedQuery
|
83
126
|
namedQuery = "@javax.persistence.NamedQueries( {\n"
|
84
127
|
namedQuery << " @javax.persistence.NamedQuery( name = \"#{self.java_Name}.readPopulated\",\n"
|
85
128
|
namedQuery << " query = \"select distinct #{self.java_Name.downcase} from #{self.java_Name} #{self.java_Name.downcase} "
|
86
|
-
umlx_ownedAndInheritedAttribute.each { |a|
|
129
|
+
umlx_ownedAndInheritedAttribute.sort { |a,b| a.java_Name.to_s <=> b.java_Name.to_s }.each { |a|
|
87
130
|
next if a.uml_type_one.db_isTransient?
|
88
131
|
next if a.uml_isDerived?
|
89
132
|
if !a.umlx_isAttribute?
|
@@ -101,3 +144,10 @@ module DAO
|
|
101
144
|
end
|
102
145
|
|
103
146
|
end
|
147
|
+
|
148
|
+
module Muml_Class
|
149
|
+
def jpa_addEntityManager!
|
150
|
+
|
151
|
+
end
|
152
|
+
|
153
|
+
end
|
@@ -14,38 +14,55 @@ module Mrdf_Repository
|
|
14
14
|
|
15
15
|
|
16
16
|
def crank_generate_ForEachBean
|
17
|
-
crank_generate_facesconfig
|
18
|
-
crank_generate_home
|
19
|
-
eachCrankBean.each { |c|
|
20
|
-
c.crank_generate_listing
|
21
|
-
c.crank_generate_form
|
22
|
-
}
|
17
|
+
# crank_generate_facesconfig
|
18
|
+
# crank_generate_home
|
19
|
+
# eachCrankBean.each { |c|
|
20
|
+
# c.crank_generate_listing
|
21
|
+
# c.crank_generate_form
|
22
|
+
# }
|
23
23
|
end
|
24
24
|
|
25
25
|
#Called after java transformation
|
26
26
|
def crank_generate_ForEachBeanAfterTransform
|
27
|
-
umlx_reserved_model.crank_generate_context
|
28
|
-
eachCrankBean.each { |c|
|
29
|
-
c.crank_generate_validation
|
30
|
-
c.java_generate_equalsAndHash
|
31
|
-
}
|
27
|
+
# umlx_reserved_model.crank_generate_context
|
28
|
+
# eachCrankBean.each { |c|
|
29
|
+
# c.crank_generate_validation
|
30
|
+
# c.java_generate_equalsAndHash
|
31
|
+
# }
|
32
32
|
end
|
33
33
|
|
34
|
+
def crank_generate_context
|
35
|
+
crank_generate_dao
|
36
|
+
end
|
37
|
+
def crank_generate_validation
|
38
|
+
|
39
|
+
end
|
40
|
+
def crank_generate_facelets
|
41
|
+
|
42
|
+
end
|
34
43
|
|
35
44
|
def crank_generate_home
|
36
|
-
mtk_writeSession("#{context[:webContentDir]}/pages/Menu.xhtml") {
|
37
|
-
crank_home_header
|
38
|
-
crank_home_crankbean
|
39
|
-
crank_home_footer
|
40
|
-
}
|
45
|
+
# mtk_writeSession("#{context[:webContentDir]}/pages/Menu.xhtml") {
|
46
|
+
# crank_home_header
|
47
|
+
# crank_home_crankbean
|
48
|
+
# crank_home_footer
|
49
|
+
# }
|
41
50
|
end
|
42
51
|
|
43
52
|
def crank_generate_facesconfig
|
44
|
-
mtk_writeSession("#{context[:webContentDir]}/WEB-INF/faces-config.xml") {
|
45
|
-
crank_faces_header
|
46
|
-
crank_faces_crankbean
|
47
|
-
crank_faces_footer
|
48
|
-
}
|
53
|
+
# mtk_writeSession("#{context[:webContentDir]}/WEB-INF/faces-config.xml") {
|
54
|
+
# crank_faces_header
|
55
|
+
# crank_faces_crankbean
|
56
|
+
# crank_faces_footer
|
57
|
+
# }
|
49
58
|
end
|
50
59
|
|
60
|
+
def crank_generate_dao
|
61
|
+
mtk_writeSession("#{context[:jpaConfigDir]}/dao-beans.xml") {
|
62
|
+
crank_jpadao_header
|
63
|
+
crank_jpadao_crankbean
|
64
|
+
crank_jpadao_footer
|
65
|
+
}
|
66
|
+
|
67
|
+
end
|
51
68
|
end
|
@@ -25,7 +25,7 @@ DB_TYPE_DISCRIMINATOR=%w[:default,:int]
|
|
25
25
|
DB_TYPE_DISCRIMINATOR_ALIASES={"int"=>:int,"default"=>:default}
|
26
26
|
|
27
27
|
module Kernel
|
28
|
-
DEPS= ['ontomde-uml2-jpdl', 'ontomde-java/struts', 'ontomde-uml2-ejb2', 'ontomde-uml2-jdo', 'ontomde-java/jpa', 'ontomde-uml2/kb', 'ontomde-java/kbjava','ontomde-uml2-flex','ontomde-core/inspector', 'ontomde-
|
28
|
+
DEPS= ['ontomde-uml2-jpdl', 'ontomde-java/struts', 'ontomde-uml2-ejb2', 'ontomde-uml2-jdo', 'ontomde-java/jpa', 'ontomde-uml2/kb', 'ontomde-java/kbjava','ontomde-uml2-flex','ontomde-core/inspector', 'ontomde-java/crank']
|
29
29
|
def require_deps(f)
|
30
30
|
# make sure DEPS lists every libs
|
31
31
|
if !DEPS.include?(f)
|
@@ -98,15 +98,15 @@ puts "# # # Begin of debug script"
|
|
98
98
|
puts "# # # Move to original working directory"
|
99
99
|
Dir.chdir(File.dirname(__FILE__))
|
100
100
|
|
101
|
-
puts "# # # requesting ontomde-java
|
102
|
-
gem("ontomde-java
|
101
|
+
puts "# # # requesting ontomde-java version #{Ontomde::Java::VERSION}"
|
102
|
+
gem("ontomde-java","#{Ontomde::Java::VERSION}")
|
103
103
|
|
104
104
|
|
105
105
|
puts "# # # ARGV initialization"
|
106
106
|
#{initARGV}
|
107
107
|
|
108
108
|
puts "# # #loading ontomde-java command line script"
|
109
|
-
require 'ontomde-java
|
109
|
+
require 'ontomde-java/frontend/command.rb'
|
110
110
|
|
111
111
|
puts "# # # running ontomde-java"
|
112
112
|
runJavaFrontEnd(__FILE__)
|
@@ -161,11 +161,11 @@ def runJavaFrontEnd(startupFile)
|
|
161
161
|
else
|
162
162
|
#options[:installRessources]=false
|
163
163
|
options[:messageCheck]=false
|
164
|
-
options[:useUnzip]=false
|
164
|
+
#options[:useUnzip]=false
|
165
165
|
end
|
166
166
|
|
167
167
|
if options[:crank] #||options[:useUnzip] || options[:messageCheck]
|
168
|
-
require_deps 'ontomde-
|
168
|
+
require_deps 'ontomde-java/crank'
|
169
169
|
end
|
170
170
|
|
171
171
|
if options[:testDataRDFS].nil? && options[:testDataRDF]=~/\.rdf$/
|
@@ -199,7 +199,7 @@ def runJavaFrontEnd(startupFile)
|
|
199
199
|
require_deps 'ontomde-java/kbjava'
|
200
200
|
end
|
201
201
|
options[:db]=(options[:rel_mapping] != "none")
|
202
|
-
options[:javaDir]=options[:targetDir]+"/"+options[:javaRelativeDir]
|
202
|
+
#options[:javaDir]=options[:targetDir]+"/"+options[:javaRelativeDir]
|
203
203
|
options[:flexDir]=options[:targetDir]+"/"+options[:flexRelativeDir]
|
204
204
|
|
205
205
|
if !options[:jpaConfigDir].nil?
|
@@ -1,583 +0,0 @@
|
|
1
|
-
no configuration file found (.ontomde-java)
|
2
|
-
no configuration file found (.ontomde-java-user)
|
3
|
-
ontomde-java is a command line utility to generate Java Code from a UML2 model stored in a UML2/RDF model file.
|
4
|
-
|
5
|
-
This command line is a front end to OntoMDE generator offering a set of pre-packaged, yet powerfull generation rules.
|
6
|
-
|
7
|
-
This Java code generator is full featured and covers many UML features (incremental generation, loading of additional MDA transformation rules, ...)
|
8
|
-
|
9
|
-
== Example: generate java code from one model file
|
10
|
-
$ ontomde-java --nt myUmlModel.emx.nt
|
11
|
-
|
12
|
-
== Example: generate java code in a custom directory
|
13
|
-
$ ontomde-java --nt myUmlModel.emx.nt --target ./src
|
14
|
-
|
15
|
-
== Usage:
|
16
|
-
ontomde-java [options]
|
17
|
-
|
18
|
-
== Source and Target options :
|
19
|
-
|
20
|
-
===-nt FILE1.nt,FILE2.nt, ... :
|
21
|
-
|
22
|
-
Source UML2 model(s) (exported from a UML case tool)
|
23
|
-
|
24
|
-
|
25
|
-
<i>default:</i> --nt
|
26
|
-
|
27
|
-
===-ntList FILE1,FILE2,... :
|
28
|
-
|
29
|
-
File containing a list of nt file to be loaded
|
30
|
-
===-l, --load FILE1.rb,File2.rb :
|
31
|
-
|
32
|
-
Optionnal ruby extension or setup file (used as well new datatype declaration mappings, as for any generation customisation)
|
33
|
-
|
34
|
-
|
35
|
-
<i>default:</i> --load
|
36
|
-
===-loadDir DIRECTORY1,.. :
|
37
|
-
|
38
|
-
Optionnal ruby extension or setup file
|
39
|
-
(used as well new datatype declaration mappings, as for any generation customisation)
|
40
|
-
|
41
|
-
|
42
|
-
<i>default:</i> --loadDir
|
43
|
-
===-loadList FILE_list1,FILE_list2, ... :
|
44
|
-
|
45
|
-
File containing a list of ruby file to be loaded
|
46
|
-
(same as --load on each item)
|
47
|
-
===-javaRelativeDir DIRECTORY :
|
48
|
-
|
49
|
-
Relative destination directory for generated java files, properties, ...
|
50
|
-
relative to --targetDir
|
51
|
-
|
52
|
-
|
53
|
-
<i>default:</i> --javaRelativeDir src/main/java/
|
54
|
-
===-webResourcesDir DIRECTORY :
|
55
|
-
|
56
|
-
Relative destination directory for generated Web Resources properties, ...
|
57
|
-
relative to --targetDir
|
58
|
-
|
59
|
-
|
60
|
-
<i>default:</i> --webResourcesDir src/main/java/
|
61
|
-
===-javaFilePathRegexp REGEXP@DIRECTORY :
|
62
|
-
|
63
|
-
Relative destination directory for generated java files, properties, ...
|
64
|
-
relative to --targetDir
|
65
|
-
|
66
|
-
|
67
|
-
<i>default:</i> --javaFilePathRegexp
|
68
|
-
===-targetDir DIRECTORY :
|
69
|
-
|
70
|
-
Target generation root directory
|
71
|
-
|
72
|
-
|
73
|
-
<i>default:</i> --targetDir .
|
74
|
-
|
75
|
-
== Model pre-processors options :
|
76
|
-
|
77
|
-
===-[no-]withMultipleInheritance :
|
78
|
-
|
79
|
-
Apply pattern to map UML model with multiple inheritance to Java compliant model.
|
80
|
-
(Class inheritance is mapped to interface implementation)
|
81
|
-
|
82
|
-
|
83
|
-
<i>default:</i> --withMultipleInheritance
|
84
|
-
===-[no-]statemachine :
|
85
|
-
|
86
|
-
Apply state Machine genration on State Diagram.
|
87
|
-
State Machine
|
88
|
-
|
89
|
-
|
90
|
-
<i>default:</i> --no-statemachine
|
91
|
-
===-p, --[no-]withAutoImplementProperty :
|
92
|
-
|
93
|
-
Generate automatically missing property in concrete class implementing an interface uml properties
|
94
|
-
(feature introduced for model redondancy reduction)
|
95
|
-
|
96
|
-
|
97
|
-
<i>default:</i> --no-withAutoImplementProperty
|
98
|
-
===-o, --[no-]withAutoImplementOperation :
|
99
|
-
|
100
|
-
Generate automatically missing operations in concrete class implementing an interface
|
101
|
-
(feature introduced for model redondancy reduction)
|
102
|
-
|
103
|
-
|
104
|
-
<i>default:</i> --no-withAutoImplementOperation
|
105
|
-
===-[no-]makeCompositionBiNavigable :
|
106
|
-
|
107
|
-
Force compositions to be bi-navigable
|
108
|
-
(Feature introduced for web persistence handling)
|
109
|
-
|
110
|
-
|
111
|
-
<i>default:</i> --no-makeCompositionBiNavigable
|
112
|
-
===-[no-]contextualizeStaticProperties :
|
113
|
-
|
114
|
-
(alpha feature) Move static elements to composite owner.
|
115
|
-
This feature is used in order to have persistent static properties.
|
116
|
-
|
117
|
-
|
118
|
-
<i>default:</i> --no-contextualizeStaticProperties
|
119
|
-
|
120
|
-
== Model enhancement options:
|
121
|
-
|
122
|
-
===-a, --[no-]withEnumAssignable :
|
123
|
-
|
124
|
-
Generates for each class and interfaces an enum containing assignable class
|
125
|
-
(required for creators)
|
126
|
-
NOTE: also disable generation of createAndAdd methods
|
127
|
-
|
128
|
-
|
129
|
-
<i>default:</i> --withEnumAssignable
|
130
|
-
===-enumAssignableSubPackage SUBDIR :
|
131
|
-
|
132
|
-
Directory where enumAssignable artefacts wil be generated
|
133
|
-
|
134
|
-
|
135
|
-
<i>default:</i> --enumAssignableSubPackage assignable
|
136
|
-
===-f, --[no-]withGenerateMethodForm :
|
137
|
-
|
138
|
-
Apply a pattern to generate a form (as a class) for every method of the model.
|
139
|
-
(Feature introduced for web form handling)
|
140
|
-
|
141
|
-
|
142
|
-
<i>default:</i> --no-withGenerateMethodForm
|
143
|
-
|
144
|
-
== Pre-Java 5 compatibility options:
|
145
|
-
|
146
|
-
===-e, --[no-]withEnumAsString :
|
147
|
-
|
148
|
-
Generate additional string getter and setter
|
149
|
-
for properties with an enum type, so enums property can be manipulated as if it was a string
|
150
|
-
(feature introduced
|
151
|
-
for Flex interoperability)
|
152
|
-
|
153
|
-
|
154
|
-
<i>default:</i> --no-withEnumAsString
|
155
|
-
|
156
|
-
== Tests Data options:
|
157
|
-
|
158
|
-
===-[no-]excludeNonTestFiles :
|
159
|
-
|
160
|
-
Do not generate files which are not test files
|
161
|
-
junit,data,...
|
162
|
-
|
163
|
-
|
164
|
-
<i>default:</i> --no-excludeNonTestFiles
|
165
|
-
===-[no-]includeTestFiles :
|
166
|
-
|
167
|
-
Include test files in generation
|
168
|
-
junit,data,...
|
169
|
-
|
170
|
-
|
171
|
-
<i>default:</i> --includeTestFiles
|
172
|
-
|
173
|
-
== Access control enhancement options:
|
174
|
-
|
175
|
-
===-[no-]security :
|
176
|
-
|
177
|
-
Activate authentification and access control
|
178
|
-
|
179
|
-
|
180
|
-
<i>default:</i> --no-security
|
181
|
-
|
182
|
-
== Runtime scripting options:
|
183
|
-
|
184
|
-
===-[no-]script :
|
185
|
-
|
186
|
-
Activate script engine
|
187
|
-
|
188
|
-
|
189
|
-
<i>default:</i> --no-script
|
190
|
-
|
191
|
-
== WebService options:
|
192
|
-
|
193
|
-
===-[no-]webservice :
|
194
|
-
|
195
|
-
Activate Web Service
|
196
|
-
|
197
|
-
|
198
|
-
<i>default:</i> --no-webservice
|
199
|
-
|
200
|
-
== BPM enhancement options:
|
201
|
-
|
202
|
-
===-[no-]bpm :
|
203
|
-
|
204
|
-
Activate bpm processing
|
205
|
-
|
206
|
-
|
207
|
-
<i>default:</i> --no-bpm
|
208
|
-
===-jpdl FILE1.nt,FILE2.nt, ... :
|
209
|
-
|
210
|
-
Source jpdl xml BPM model(s)
|
211
|
-
|
212
|
-
|
213
|
-
<i>default:</i> --jpdl
|
214
|
-
===-jpdlList FILE_list1,FILE_list2, ... :
|
215
|
-
|
216
|
-
File containing a list of jpdl file to be loaded
|
217
|
-
===-bpm_javaSubPackage [SUBPACKAGE] :
|
218
|
-
|
219
|
-
Relative sub package where will be generated service class
|
220
|
-
(enums for transitions,...)
|
221
|
-
|
222
|
-
|
223
|
-
<i>default:</i> --bpm_javaSubPackage bpm
|
224
|
-
|
225
|
-
== Crank options
|
226
|
-
|
227
|
-
--[no-]crank Enable crank generation.
|
228
|
-
|
229
|
-
|
230
|
-
<i>default:</i> --no-crank
|
231
|
-
|
232
|
-
== Flex integration options:
|
233
|
-
|
234
|
-
===-[no-]generateXMLStrutsForm :
|
235
|
-
|
236
|
-
Add XML form serializer.
|
237
|
-
feature introduced for FLEX
|
238
|
-
|
239
|
-
|
240
|
-
<i>default:</i> --no-generateXMLStrutsForm
|
241
|
-
===-[no-]flex :
|
242
|
-
|
243
|
-
Generate flex code
|
244
|
-
|
245
|
-
|
246
|
-
<i>default:</i> --no-flex
|
247
|
-
|
248
|
-
== Database persistence options:
|
249
|
-
|
250
|
-
===-m, --relational_mapping objr :
|
251
|
-
|
252
|
-
Select object/relation library
|
253
|
-
(none,jpa,jdo,jpox,jpa)
|
254
|
-
|
255
|
-
|
256
|
-
<i>default:</i> --relation_mapping none
|
257
|
-
===-[no-]db_useStereotypeMarker :
|
258
|
-
|
259
|
-
Are persistent capable classes marked with a stereotype
|
260
|
-
|
261
|
-
|
262
|
-
<i>default:</i> --no-db_useStereotypeMarker
|
263
|
-
===-[no-]silentlyTruncateTableName :
|
264
|
-
|
265
|
-
Silently truncate generated table name to maximum sgbd allowed length.
|
266
|
-
|
267
|
-
|
268
|
-
<i>default:</i> --no-silentlyTruncateTableName
|
269
|
-
===-d, --ddl_mode [MODE] :
|
270
|
-
|
271
|
-
SGBD schema creation mode
|
272
|
-
(create/update/...)
|
273
|
-
|
274
|
-
|
275
|
-
<i>default:</i> --ddl_mode create
|
276
|
-
===-s, --[no-]simulateNotImplementedMethods :
|
277
|
-
|
278
|
-
Replace unimplemeted method with a simulation method.
|
279
|
-
|
280
|
-
|
281
|
-
<i>default:</i> --no-simulateNotImplementedMethods
|
282
|
-
===-[no-]java_addSuggester :
|
283
|
-
|
284
|
-
Add or remove the suggester method.
|
285
|
-
|
286
|
-
|
287
|
-
<i>default:</i> --no-java_addSuggester
|
288
|
-
===-dbTypeDiscriminator [objr] :
|
289
|
-
|
290
|
-
Column type used to store an object type in database.
|
291
|
-
(default,int,:default,:int)
|
292
|
-
|
293
|
-
|
294
|
-
<i>default:</i> --dbTypeDiscriminator :default,:int
|
295
|
-
===-dbDiscriminatorCacheRelFile [RBFILE] :
|
296
|
-
|
297
|
-
File where db discriminator will be saved
|
298
|
-
to allow subsquent generation to use the same ids
|
299
|
-
NOTE: generated file will not be used, unless specified using --load option
|
300
|
-
|
301
|
-
|
302
|
-
<i>default:</i> --dbDiscriminatorCacheRelFile dbDiscriminatorCache.rb
|
303
|
-
===-[no-]mysql :
|
304
|
-
|
305
|
-
Optimize for mysql.
|
306
|
-
|
307
|
-
|
308
|
-
<i>default:</i> --no-mysql
|
309
|
-
===-[no-]derby :
|
310
|
-
|
311
|
-
Optimize for derby.
|
312
|
-
|
313
|
-
|
314
|
-
<i>default:</i> --no-derby
|
315
|
-
===-jpaConfigDir JPA_CONFIG_DIR :
|
316
|
-
|
317
|
-
Directory for the persistence.xml
|
318
|
-
|
319
|
-
== Struts Webapp options:
|
320
|
-
|
321
|
-
===-[no-]struts :
|
322
|
-
|
323
|
-
Enable struts generation.
|
324
|
-
|
325
|
-
|
326
|
-
<i>default:</i> --no-struts
|
327
|
-
===-[no-]java_addJavaEnumInterface :
|
328
|
-
|
329
|
-
Add Enum Interface.
|
330
|
-
|
331
|
-
|
332
|
-
<i>default:</i> --no-java_addJavaEnumInterface
|
333
|
-
===-u, --[no-]useUnzip :
|
334
|
-
|
335
|
-
Use unzip to install resources.
|
336
|
-
|
337
|
-
|
338
|
-
<i>default:</i> --no-useUnzip
|
339
|
-
===-c, --[no-]message-check :
|
340
|
-
|
341
|
-
Check message ressources consistency.
|
342
|
-
|
343
|
-
|
344
|
-
<i>default:</i> --message-check
|
345
|
-
===-webContentRelativeDir [DIRECTORY] :
|
346
|
-
|
347
|
-
Directory where webapp artefacts wil be generated (WEB-INF, META-INF, JSP, ...)
|
348
|
-
|
349
|
-
|
350
|
-
<i>default:</i> --webContentRelativeDir ./WebContent/
|
351
|
-
===-strutsActionFormPackage [SUBPACKAGE] :
|
352
|
-
|
353
|
-
SubPackage where to generate struts related classes
|
354
|
-
|
355
|
-
|
356
|
-
<i>default:</i> --strutsActionFormPackage struts
|
357
|
-
|
358
|
-
== EJB options:
|
359
|
-
|
360
|
-
===-[no-]ejb2 :
|
361
|
-
|
362
|
-
Enable ejb2 experimental processing
|
363
|
-
|
364
|
-
|
365
|
-
<i>default:</i> --no-ejb2
|
366
|
-
===-[no-]generateComponent :
|
367
|
-
|
368
|
-
generate UML component as Java code
|
369
|
-
|
370
|
-
|
371
|
-
<i>default:</i> --generateComponent
|
372
|
-
===-t, --target_ejbconf DIRECTORY :
|
373
|
-
|
374
|
-
Destination directory for generated files
|
375
|
-
|
376
|
-
|
377
|
-
<i>default:</i> --target_ejbconf
|
378
|
-
|
379
|
-
== Misc. options:
|
380
|
-
|
381
|
-
===-[no-]generateAntBuildFile :
|
382
|
-
|
383
|
-
Generates a default ant build file
|
384
|
-
|
385
|
-
|
386
|
-
<i>default:</i> --no-generateAntBuildFile
|
387
|
-
===-versionSignature version :
|
388
|
-
|
389
|
-
Adds a version signature to generated code, so old cold will not compile.
|
390
|
-
(an implemented interface is added to class and interfaces)
|
391
|
-
|
392
|
-
|
393
|
-
<i>default:</i> --versionSignature
|
394
|
-
===-[no-]skipNoReverseMarker :
|
395
|
-
|
396
|
-
Only write markers when reverse is already set to yes. Usefull to get rid of unused reverse zone and get a better code browsing experience.
|
397
|
-
|
398
|
-
|
399
|
-
<i>default:</i> --no-skipNoReverseMarker
|
400
|
-
===-globalReverseFile FILE :
|
401
|
-
|
402
|
-
File containing all the tags of the reversed files
|
403
|
-
===-[no-]readGlobalReverseFile :
|
404
|
-
|
405
|
-
Read the global reverse file for protected code.
|
406
|
-
|
407
|
-
|
408
|
-
<i>default:</i> --readGlobalReverseFile
|
409
|
-
===-[no-]silentlyForceUnknownDatatypeToString :
|
410
|
-
|
411
|
-
Silently map an unknown datatype to String. This feature should only be used for testing.
|
412
|
-
|
413
|
-
|
414
|
-
<i>default:</i> --no-silentlyForceUnknownDatatypeToString
|
415
|
-
===-[no-]java_failIfNonUniqueName :
|
416
|
-
|
417
|
-
Stop generation immediately when a name unicitiy constraint failure is detected.
|
418
|
-
|
419
|
-
|
420
|
-
<i>default:</i> --java_failIfNonUniqueName
|
421
|
-
===-[no-]groovyExperimental :
|
422
|
-
|
423
|
-
Add experimental groovy features (alpha).
|
424
|
-
|
425
|
-
|
426
|
-
<i>default:</i> --no-groovyExperimental
|
427
|
-
===-[no-]inspector :
|
428
|
-
|
429
|
-
start inspector web server at the end of code generation. Inspector is a web application for browsing in-memory scructure. This features is usefull for browsing meta-model structure and meta-model method calls.
|
430
|
-
|
431
|
-
|
432
|
-
<i>default:</i> --no-inspector
|
433
|
-
===-[no-]inspectorAfterLoad :
|
434
|
-
|
435
|
-
start inspector web server just after loading models in memory. Inspector is a web application for browsing in-memory scructure. This features is usefull for browsing meta-model structure and meta-model method calls.
|
436
|
-
|
437
|
-
|
438
|
-
<i>default:</i> --no-inspectorAfterLoad
|
439
|
-
===-[no-]generateDebugLauncher :
|
440
|
-
|
441
|
-
generates ruby script helper for launching ontomde-java from a ruby debugger. (netbeans, ruby, ...)
|
442
|
-
|
443
|
-
|
444
|
-
<i>default:</i> --no-generateDebugLauncher
|
445
|
-
|
446
|
-
== Report generator:
|
447
|
-
|
448
|
-
===-rsm6WebDocURI URL :
|
449
|
-
|
450
|
-
Base URL of RSM6 model html export
|
451
|
-
|
452
|
-
|
453
|
-
<i>default:</i> --
|
454
|
-
===-[no-]hideJavadocReverseTag :
|
455
|
-
|
456
|
-
Hide javadoc reverse tag.
|
457
|
-
|
458
|
-
|
459
|
-
<i>default:</i> --no-reverseJavadoc
|
460
|
-
===-[no-]generateCompositionDiagram :
|
461
|
-
|
462
|
-
Generate a composition diagram (in graphviz dot file format)
|
463
|
-
|
464
|
-
|
465
|
-
<i>default:</i> --no-generateCompositionDiagram
|
466
|
-
===-[no-]checkForAbstractAndInheritance :
|
467
|
-
|
468
|
-
Check model for abstract class with inheriting classes. Stop generation if an invalid class is encountered.
|
469
|
-
|
470
|
-
|
471
|
-
<i>default:</i> --no-checkForAbstractAndInheritance
|
472
|
-
|
473
|
-
== Debug options:
|
474
|
-
|
475
|
-
===-[no-]salvage :
|
476
|
-
|
477
|
-
Tries to handle highly defective model using best guess.
|
478
|
-
This feature is only intended for **quick demo** purposes.
|
479
|
-
Do not use for serious work!
|
480
|
-
|
481
|
-
|
482
|
-
<i>default:</i> --no-salvage
|
483
|
-
|
484
|
-
== File creation options:
|
485
|
-
|
486
|
-
===-[no-]autoNewFileCreation :
|
487
|
-
|
488
|
-
Allows generator to create new file on its own
|
489
|
-
This feature should be deactivated for project under version control so no new file can be added to a project without a developper approval.
|
490
|
-
This feature should also be deactivated to help keep track of file rename and allow project refactoring
|
491
|
-
|
492
|
-
|
493
|
-
<i>default:</i> --autoNewFileCreation
|
494
|
-
===-[no-]allowAutomaticCodeDeletion :
|
495
|
-
|
496
|
-
Automatically ignore deleted protected code.
|
497
|
-
If disabled, generator will halt when reversed code is not reused in file newly created
|
498
|
-
|
499
|
-
|
500
|
-
<i>default:</i> --no-allowAutomaticCodeDeletion
|
501
|
-
===-[no-]dry-run :
|
502
|
-
|
503
|
-
Do a dry run without executing actions..
|
504
|
-
No file will be changed neither created on disk
|
505
|
-
|
506
|
-
|
507
|
-
<i>default:</i> --no-dry-run
|
508
|
-
===-v, --[no-]verbose :
|
509
|
-
|
510
|
-
Run in verbose mode
|
511
|
-
|
512
|
-
|
513
|
-
<i>default:</i> --no-verbose
|
514
|
-
===-[no-]benchmark :
|
515
|
-
|
516
|
-
Run in benchmark mode
|
517
|
-
Feature usefull for optimizing generation time
|
518
|
-
|
519
|
-
|
520
|
-
<i>default:</i> --no-benchmark
|
521
|
-
===-[no-]profile :
|
522
|
-
|
523
|
-
Run in profile mode
|
524
|
-
Feature usefull for optimizing generation time
|
525
|
-
|
526
|
-
|
527
|
-
<i>default:</i> --no-profile
|
528
|
-
===-[no-]logFileWrite :
|
529
|
-
|
530
|
-
Log file write access to screen
|
531
|
-
|
532
|
-
|
533
|
-
<i>default:</i> --no-logFileWrite
|
534
|
-
===-[no-]selfTestAndExit :
|
535
|
-
|
536
|
-
Self test and exit.
|
537
|
-
(loads every dependencies)
|
538
|
-
(Note: used by binary generator)
|
539
|
-
|
540
|
-
|
541
|
-
<i>default:</i> --no-selfTestAndExit
|
542
|
-
===-[no-]backTrace :
|
543
|
-
|
544
|
-
Display back trace on error.
|
545
|
-
|
546
|
-
|
547
|
-
<i>default:</i> --no-backTrace
|
548
|
-
|
549
|
-
== Knowledge base export options:
|
550
|
-
|
551
|
-
===-[no-]updateTestDataProject :
|
552
|
-
|
553
|
-
update data test file specified by testDataRDFS
|
554
|
-
|
555
|
-
|
556
|
-
<i>default:</i> --no-updateTestDataProject
|
557
|
-
===-testDataProject DATAPROJECT :
|
558
|
-
|
559
|
-
load Data from Protege/2000 RDF/RDFS DATAPROJECT (name of project without extension .pprj)
|
560
|
-
|
561
|
-
== XML schema export options:
|
562
|
-
|
563
|
-
===-[no-]generateXSD :
|
564
|
-
|
565
|
-
generate XSD schema files
|
566
|
-
|
567
|
-
|
568
|
-
<i>default:</i> --no-generateXSD
|
569
|
-
|
570
|
-
== Software As A Service (SaaS) options:
|
571
|
-
|
572
|
-
===-[no-]multiTenant :
|
573
|
-
|
574
|
-
enable multi-tenant mode which allows shared hosting of an application for multiple tenants.
|
575
|
-
|
576
|
-
|
577
|
-
<i>default:</i> --no-multiTenant
|
578
|
-
===-h, --help :
|
579
|
-
|
580
|
-
Show this message
|
581
|
-
===-help-rdoc :
|
582
|
-
|
583
|
-
Show help in rdoc format
|