Update of
/cvsroot/xdoclet/xdoclet/modules/ejb/src/xdoclet/modules/ejb/entity/resources
In directory
sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3315/modules/ejb/src/xdoclet/modules/ejb/entity/resources
Modified Files:
valueobject.xdt
Log Message:
Re-Added isIdentical() Method and renamed getUnderlying() to underlying() to
avoid conflicts. Thanks to Tyler Ward for patches. (XDT-1313)
Index: valueobject.xdt
===================================================================
RCS file:
/cvsroot/xdoclet/xdoclet/modules/ejb/src/xdoclet/modules/ejb/entity/resources/valueobject.xdt,v
retrieving revision 1.31
retrieving revision 1.32
diff -C2 -r1.31 -r1.32
*** valueobject.xdt 5 Apr 2005 11:19:26 -0000 1.31
--- valueobject.xdt 6 Apr 2005 07:12:40 -0000 1.32
***************
*** 479,482 ****
--- 479,540 ----
}
+ /**
+ *
+ * @deprecated use [EMAIL PROTECTED] #equals}
+ */
+ public <XDtClass:ifClassTagValueEquals tagName="ejb:value-object"
paramName="synchronization" value="full">synchronized
</XDtClass:ifClassTagValueEquals>boolean isIdentical(Object other)
+ {
+ if (other instanceof
<XDtClass:classOf><XDtEjbValueObj:valueObjectClass/></XDtClass:classOf>)
+ {
+
<XDtClass:classOf><XDtEjbValueObj:valueObjectClass/></XDtClass:classOf> that =
(<XDtClass:classOf><XDtEjbValueObj:valueObjectClass/></XDtClass:classOf>) other;
+ boolean lEquals = true;
+ <XDtEjbPersistent:forAllPersistentFields superclasses="true"
valueobject="<XDtEjbValueObj:valueObjectMatch/>" not-pk="true">
+ <XDtType:ifIsPrimitive value="<XDtMethod:methodType/>">
+ lEquals = lEquals && this.<XDtMethod:propertyName/> ==
that.<XDtMethod:propertyName/>;
+ </XDtType:ifIsPrimitive>
+ <XDtType:ifIsNotPrimitive value="<XDtMethod:methodType/>">
+ if( this.<XDtMethod:propertyName/> == null )
+ {
+ lEquals = lEquals && ( that.<XDtMethod:propertyName/>
== null );
+ }
+ else
+ {
+ lEquals = lEquals &&
this.<XDtMethod:propertyName/>.equals( that.<XDtMethod:propertyName/> );
+ }
+ </XDtType:ifIsNotPrimitive>
+ </XDtEjbPersistent:forAllPersistentFields>
+ <XDtEjbValueObj:forAllRelations superclasses="false"
valueobject="<XDtEjbValueObj:valueObjectMatch/>">
+ <XDtMethod:ifDoesntHaveMethodTag tagName="ejb:value-object"
paramName="type">
+ if( this.<XDtEjbValueObj:currentAggregateName/> == null )
+ {
+ lEquals = lEquals && (
that.<XDtEjbValueObj:currentAggregateName/> == null );
+ }
+ else
+ {
+ lEquals = lEquals &&
this.<XDtEjbValueObj:currentAggregateName/>.equals(
that.<XDtEjbValueObj:currentAggregateName/> );
+ }
+ </XDtMethod:ifDoesntHaveMethodTag>
+ <XDtMethod:ifHasMethodTag tagName="ejb:value-object"
paramName="type">
+ if( this.get<XDtEjbValueObj:currentAggregateName/>s() ==
null )
+ {
+ lEquals = lEquals && (
that.get<XDtEjbValueObj:currentAggregateName/>s() == null );
+ }
+ else
+ {
+ lEquals = lEquals &&
java.util.Arrays.equals(this.get<XDtEjbValueObj:currentAggregateName/>s() ,
that.get<XDtEjbValueObj:currentAggregateName/>s()) ;
+ }
+ </XDtMethod:ifHasMethodTag>
+ </XDtEjbValueObj:forAllRelations>
+
+ return lEquals;
+ }
+ else
+ {
+ return false;
+ }
+ }
+
+
+
public <XDtClass:ifClassTagValueEquals tagName="ejb:value-object"
paramName="synchronization" value="full">synchronized
</XDtClass:ifClassTagValueEquals>boolean equals(Object other) {
***************
*** 895,899 ****
implements java.lang.Cloneable,
java.io.Serializable<XDtClass:ifClassTagValueEquals tagName="ejb:value-object"
paramName="ordering" value="strict">,
java.lang.Comparable</XDtClass:ifClassTagValueEquals>
<XDtEjbValueObj:valueObjectImplements/>
{
! private
<XDtClass:classOf><XDtEjbValueObj:valueObjectClass/></XDtClass:classOf>
getUnderlying() {
return
<XDtClass:classOf><XDtEjbValueObj:valueObjectClass/></XDtClass:classOf>.this;
}
--- 953,957 ----
implements java.lang.Cloneable,
java.io.Serializable<XDtClass:ifClassTagValueEquals tagName="ejb:value-object"
paramName="ordering" value="strict">,
java.lang.Comparable</XDtClass:ifClassTagValueEquals>
<XDtEjbValueObj:valueObjectImplements/>
{
! private
<XDtClass:classOf><XDtEjbValueObj:valueObjectClass/></XDtClass:classOf>
underlying() {
return
<XDtClass:classOf><XDtEjbValueObj:valueObjectClass/></XDtClass:classOf>.this;
}
***************
*** 902,906 ****
<XDtEjbPersistent:forAllPersistentFields superclasses="true"
valueobject="<XDtEjbValueObj:valueObjectMatch/>">
public <XDtMethod:methodType/> <XDtMethod:getterMethod/>() {
! return
<XDtClass:classOf><XDtEjbValueObj:valueObjectClass/></XDtClass:classOf>.this.<XDtMethod:propertyName/>;
}
--- 960,964 ----
<XDtEjbPersistent:forAllPersistentFields superclasses="true"
valueobject="<XDtEjbValueObj:valueObjectMatch/>">
public <XDtMethod:methodType/> <XDtMethod:getterMethod/>() {
! return underlying().<XDtMethod:propertyName/>;
}
***************
*** 910,935 ****
public <XDtEjbValueObj:currentAggregateType/>
get<XDtEjbValueObj:currentAggregateName/>()
{
! return getUnderlying().<XDtEjbValueObj:currentAggregateName/>;
}
</XDtEjbValueObj:ifIsNotCollection>
<XDtEjbValueObj:ifIsCollection>
public <XDtEjbValueObj:collectionType/>
getAdded<XDtEjbValueObj:currentAggregateName plural="true"/>() {
! return
getUnderlying().getAdded<XDtEjbValueObj:currentAggregateName plural="true"/>();
}
public <XDtEjbValueObj:collectionType/>
getOnceAdded<XDtEjbValueObj:currentAggregateName plural="true"/>() {
! return
getUnderlying().getOnceAdded<XDtEjbValueObj:currentAggregateName
plural="true"/>();
}
public <XDtEjbValueObj:collectionType/>
getRemoved<XDtEjbValueObj:currentAggregateName plural="true"/>() {
! return
getUnderlying().getRemoved<XDtEjbValueObj:currentAggregateName
plural="true"/>();
}
public <XDtEjbValueObj:collectionType/>
getUpdated<XDtEjbValueObj:currentAggregateName plural="true"/>() {
! return
getUnderlying().getUpdated<XDtEjbValueObj:currentAggregateName
plural="true"/>();
}
public <XDtEjbValueObj:collectionType/>
get<XDtEjbValueObj:currentAggregateName/>Collection() {
! return
getUnderlying().get<XDtEjbValueObj:currentAggregateName/>Collection();
}
</XDtEjbValueObj:ifIsCollection>
</XDtEjbValueObj:forAllRelations>
<XDtClass:ifClassTagValueEquals tagName="ejb:value-object"
paramName="ordering" value="strict">
--- 968,1015 ----
public <XDtEjbValueObj:currentAggregateType/>
get<XDtEjbValueObj:currentAggregateName/>()
{
! return underlying().<XDtEjbValueObj:currentAggregateName/>;
}
</XDtEjbValueObj:ifIsNotCollection>
<XDtEjbValueObj:ifIsCollection>
public <XDtEjbValueObj:collectionType/>
getAdded<XDtEjbValueObj:currentAggregateName plural="true"/>() {
! return underlying().getAdded<XDtEjbValueObj:currentAggregateName
plural="true"/>();
}
public <XDtEjbValueObj:collectionType/>
getOnceAdded<XDtEjbValueObj:currentAggregateName plural="true"/>() {
! return
underlying().getOnceAdded<XDtEjbValueObj:currentAggregateName
plural="true"/>();
}
public <XDtEjbValueObj:collectionType/>
getRemoved<XDtEjbValueObj:currentAggregateName plural="true"/>() {
! return
underlying().getRemoved<XDtEjbValueObj:currentAggregateName plural="true"/>();
}
public <XDtEjbValueObj:collectionType/>
getUpdated<XDtEjbValueObj:currentAggregateName plural="true"/>() {
! return
underlying().getUpdated<XDtEjbValueObj:currentAggregateName plural="true"/>();
}
public <XDtEjbValueObj:collectionType/>
get<XDtEjbValueObj:currentAggregateName/>Collection() {
! return
underlying().get<XDtEjbValueObj:currentAggregateName/>Collection();
}
</XDtEjbValueObj:ifIsCollection>
</XDtEjbValueObj:forAllRelations>
+ public int hashCode() {
+ return 101 * underlying().hashCode();
+ }
+
+ public boolean equals(Object o) {
+
+ if(o instanceof
ReadOnly<XDtClass:classOf><XDtEjbValueObj:valueObjectClass/></XDtClass:classOf>)
{
+ return
this.equals((ReadOnly<XDtClass:classOf><XDtEjbValueObj:valueObjectClass/></XDtClass:classOf>)
o);
+ }
+
+ return false;
+ }
+
+ public boolean
equals(ReadOnly<XDtClass:classOf><XDtEjbValueObj:valueObjectClass/></XDtClass:classOf>
that) {
+ if(null == that) {
+ return false;
+ }
+
+ return this.underlying().equals(that.underlying());
+ }
+
+
<XDtClass:ifClassTagValueEquals tagName="ejb:value-object"
paramName="ordering" value="strict">
***************
*** 964,968 ****
*/
public int
compareTo(ReadOnly<XDtClass:classOf><XDtEjbValueObj:valueObjectClass/></XDtClass:classOf>
that) {
! return getUnderlying().compareTo(that.getUnderlying());
}
--- 1044,1048 ----
*/
public int
compareTo(ReadOnly<XDtClass:classOf><XDtEjbValueObj:valueObjectClass/></XDtClass:classOf>
that) {
! return underlying().compareTo(that.underlying());
}
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
xdoclet-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xdoclet-devel