Java Reference
In-Depth Information
toAnnotation('annotation', '@ManyToOne',
null
);
result
.eAnnotations +=
toAnnotation('annotation', '@JoinColumn(name="' +
self
.opposite.owner.name.toUpperCase() + '_ID")',
null
);
class.classImport +=
'javax.persistence.ManyToOne'.
map
toClass();
class.classImport += 'javax.persistence.JoinColumn'.
map
➥
toClass();
}
endif
;
var
columnName :
String
:=
null
;
if self
.name.toLowerCase() <>
self
.name
then
{
columnName :=
self
.name.toColumnName();
result
.eAnnotations +=
toAnnotation('annotation', '@Column(name="' + columnName + '")',
➥
null
)
}
endif
;
class.methods +=
self
.
map
toGetter();
class.methods +=
self
.
map
toSetter();
}
}
/**
* Creates getter method for Reference
*/
mapping
oocore::Reference::toGetter() : java::Method {
init
{
result
:=
object
java::Method {
name := 'get' +
self
.name.firstToUpper();
eType :=
self
.type.
late resolveone
(java::JavaClass);
javaVisibility := java::JavaVisibilityKind::PUBLIC;
source :=
object
java::Statement {
source := 'return ' +
self
.name + ';';
};
};
if
(
self
.lowerBound = 0
or self
.lowerBound = 1)
and
self
.upperBound = -1
then
{
result
.eAnnotations +=
toAnnotation('collection', 'type', 'java.util.Collection');
}
endif
;
}
}
/**
* Creates setter method for Reference
*/
mapping
oocore::Reference::toSetter() : java::Method {
init {
var
parameter :=
object
java::JavaParameter {
eType :=
self
.type.
late resolveone
(java::JavaClass);
name :=
self
.name;
};
if self
.lowerBound = 0
and self
.upperBound = -1
then
{
parameter.eAnnotations +=
Search WWH ::
Custom Search