ontomde-uml2-jpa 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-jpa/jpa.rb +6 -1
- data/lib/ontomde-uml2-jpa/mapping.rb +18 -11
- data/lib/ontomde-uml2-jpa/version.rb +1 -1
- metadata +3 -12
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-jpa/version.rb'
|
6
6
|
|
7
|
-
|
7
|
+
OntomdeHoe.new('ontomde-uml2-jpa', Ontomde::Uml2::Jpa::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'
|
data/lib/ontomde-uml2-jpa/jpa.rb
CHANGED
@@ -189,7 +189,7 @@ module Mrdf_Model
|
|
189
189
|
|
190
190
|
def db_saveDB_DISCRIMINATOR
|
191
191
|
return unless context[:dbTypeDiscriminator]==:int
|
192
|
-
mtk_writeSession("#{context[:
|
192
|
+
mtk_writeSession("#{context[:dbDiscriminatorCacheRelFile]}") {
|
193
193
|
write <<END
|
194
194
|
# saved discriminator numbers
|
195
195
|
# This file is read and rewritten by generator
|
@@ -434,6 +434,7 @@ END
|
|
434
434
|
|
435
435
|
end
|
436
436
|
module Muml_Classifier
|
437
|
+
|
437
438
|
def jpa_addPersistenceId!
|
438
439
|
#return unless uml_generalization.empty?
|
439
440
|
return unless context[:db_useOptimisticLocking,true]
|
@@ -450,6 +451,10 @@ module Muml_Classifier
|
|
450
451
|
gettter = p.java_AttributeGlobalGetter
|
451
452
|
#removed ? : operator to make checkstyle happy.
|
452
453
|
gettter[0].java_code = %{if(#{p.java_Name} == null) { return Long.valueOf(0);} else {return #{p.java_Name};}}
|
454
|
+
|
455
|
+
stereo = umlx_package.umlx_createAndAddStereotype(rdf_uri+"Equals", "EqualsValue")
|
456
|
+
p.uml_appliedStereotype = stereo
|
457
|
+
|
453
458
|
end
|
454
459
|
end
|
455
460
|
module Muml_Property
|
@@ -39,6 +39,13 @@ module Muml_Property
|
|
39
39
|
def jpa_isPersistent?
|
40
40
|
return true
|
41
41
|
end
|
42
|
+
def jpa_addRelationCascadeType(isIncludeType=true)
|
43
|
+
if (isIncludeType)
|
44
|
+
return DEFAULT_CASCADE_I
|
45
|
+
else
|
46
|
+
return DEFAULT_CASCADE
|
47
|
+
end
|
48
|
+
end
|
42
49
|
def jpa_addPersistenceUnidirOneToOne!(ah)
|
43
50
|
#TODO: unicity constraint
|
44
51
|
ah.java_annotation_add("@OneToOne(cascade=CascadeType.ALL) /*TPL: 101*/")
|
@@ -46,28 +53,28 @@ module Muml_Property
|
|
46
53
|
end
|
47
54
|
|
48
55
|
def jpa_addPersistenceUnidirOneToMany!(ah)
|
49
|
-
ah.java_annotation_add(%{@OneToMany(
|
56
|
+
ah.java_annotation_add(%{@OneToMany(fetch=FetchType.EAGER #{jpa_addRelationCascadeType(true)}) /*TPL:102*/})
|
50
57
|
jpa_addJoinTable(ah)
|
51
58
|
end
|
52
59
|
DEFAULT_CASCADE="(cascade=CascadeType.ALL)"
|
53
60
|
DEFAULT_CASCADE_I=",cascade=CascadeType.ALL"
|
54
61
|
def jpa_addPersistenceUnidirManyToOne!(ah)
|
55
|
-
ah.java_annotation_add("@ManyToOne #{
|
62
|
+
ah.java_annotation_add("@ManyToOne #{jpa_addRelationCascadeType(false)} /*TPL:104*/")
|
56
63
|
jpa_addJoinColumn!(ah)
|
57
64
|
end
|
58
65
|
|
59
66
|
def jpa_addPersistenceUnidirManyToMany!(ah)
|
60
|
-
ah.java_annotation_add("@ManyToMany #{
|
67
|
+
ah.java_annotation_add("@ManyToMany #{jpa_addRelationCascadeType(false)} /*TPL:105*/")
|
61
68
|
jpa_addJoinTable(ah)
|
62
69
|
jpa_addJoinColumn!(ah)
|
63
70
|
end
|
64
71
|
def jpa_addPersistenceBidirManyToManyMaster!(ah)
|
65
|
-
ah.java_annotation_add("@ManyToMany #{
|
72
|
+
ah.java_annotation_add("@ManyToMany #{jpa_addRelationCascadeType(false)}/*TPL:106*/")
|
66
73
|
jpa_addJoinColumn!(ah)
|
67
74
|
jpa_addJoinTable(ah)
|
68
75
|
end
|
69
76
|
def jpa_addPersistenceBidirManyToManySlave!(ah)
|
70
|
-
ah.java_annotation_add("@ManyToMany #{
|
77
|
+
ah.java_annotation_add("@ManyToMany #{jpa_addRelationCascadeType(false)}/*TPL:107*/")
|
71
78
|
jpa_addJoinColumn!(ah)
|
72
79
|
#Do not add join column !
|
73
80
|
#(or you will get 2 join tables)
|
@@ -75,30 +82,30 @@ module Muml_Property
|
|
75
82
|
end
|
76
83
|
|
77
84
|
def jpa_addPersistenceBidirOneToOneMaster!(ah)
|
78
|
-
ah.java_annotation_add(%{@OneToOne #{
|
85
|
+
ah.java_annotation_add(%{@OneToOne #{jpa_addRelationCascadeType(false)}/*TPL:108*/})
|
79
86
|
jpa_addJoinColumn!(ah)
|
80
87
|
end
|
81
88
|
def jpa_addPersistenceBidirOneToOneSlave!(ah)
|
82
|
-
ah.java_annotation_add(%{@OneToOne(mappedBy="#{umlx_otherEnd.java_NameProperty}" #{
|
89
|
+
ah.java_annotation_add(%{@OneToOne(mappedBy="#{umlx_otherEnd.java_NameProperty}" #{jpa_addRelationCascadeType}) /*TPL:109*/})
|
83
90
|
end
|
84
91
|
|
85
92
|
def jpa_addPersistenceBidirOneToManyMaster!(ah)
|
86
|
-
ah.java_annotation_add(%{@OneToMany (mappedBy="#{umlx_otherEnd.java_NameProperty}"#{
|
93
|
+
ah.java_annotation_add(%{@OneToMany (mappedBy="#{umlx_otherEnd.java_NameProperty}"#{jpa_addRelationCascadeType}) /*TPL:110*/})
|
87
94
|
end
|
88
95
|
def jpa_addPersistenceBidirOneToManySlave!(ah)
|
89
|
-
ah.java_annotation_add(%{@OneToMany (mappedBy="#{umlx_otherEnd.java_NameProperty}"#{
|
96
|
+
ah.java_annotation_add(%{@OneToMany (mappedBy="#{umlx_otherEnd.java_NameProperty}"#{jpa_addRelationCascadeType}) /*TPL:111*/})
|
90
97
|
#jpa_addJoinColumn!(ah)
|
91
98
|
end
|
92
99
|
|
93
100
|
def jpa_addPersistenceBidirManyToOneMaster!(ah)
|
94
101
|
#ah.java_annotation_add(%{@ManyToOne(mappedBy="#{umlx_otherEnd.java_NameProperty}") /*TPL:112*/})
|
95
|
-
ah.java_annotation_add(%{@ManyToOne #{
|
102
|
+
ah.java_annotation_add(%{@ManyToOne #{jpa_addRelationCascadeType(false)} /*TPL:112*/})
|
96
103
|
#ah.java_annotation_add(%{@JoinColumn(name="#{java_NameProperty}_fk"})
|
97
104
|
jpa_addJoinColumn!(ah)
|
98
105
|
end
|
99
106
|
def jpa_addPersistenceBidirManyToOneSlave!(ah)
|
100
107
|
#ah.java_annotation_add(%{@ManyToOne(mappedBy="#{umlx_otherEnd.java_NameProperty}") /*TPL:113*/})
|
101
|
-
ah.java_annotation_add(%{@ManyToOne #{
|
108
|
+
ah.java_annotation_add(%{@ManyToOne #{jpa_addRelationCascadeType(false)} /*TPL:113*/})
|
102
109
|
#ah.java_annotation_add(%{@JoinColumn(name="#{java_NameProperty}_fk"})
|
103
110
|
jpa_addJoinColumn!(ah)
|
104
111
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ontomde-uml2-jpa
|
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,16 +19,7 @@ dependencies:
|
|
19
19
|
requirements:
|
20
20
|
- - "="
|
21
21
|
- !ruby/object:Gem::Version
|
22
|
-
version: 1.0.
|
23
|
-
version:
|
24
|
-
- !ruby/object:Gem::Dependency
|
25
|
-
name: hoe
|
26
|
-
version_requirement:
|
27
|
-
version_requirements: !ruby/object:Gem::Requirement
|
28
|
-
requirements:
|
29
|
-
- - ">="
|
30
|
-
- !ruby/object:Gem::Version
|
31
|
-
version: 1.5.0
|
22
|
+
version: 1.0.6
|
32
23
|
version:
|
33
24
|
description: "JPA annotation generator library. Most users will used this library trough ontomde-java-frontend command line utility options. == FEATURES/PROBLEMS: == SYNOPSIS: == REQUIREMENTS:"
|
34
25
|
email: stephanepierre.carrie@orange-ftgroup.com
|