[
https://issues.apache.org/jira/browse/TUSCANY-2009?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12561294#action_12561294
]
Amita Vadhavkar commented on TUSCANY-2009:
------------------------------------------
http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.emf.doc/references/javadoc/org/eclipse/emf/ecore/util/EcoreUtil.EqualityHelper.html
specifies that Java equality is followed and in Java below bt1 is not equal to
bt2.
byte[] bt1 = new byte[]{120, 80, -40};
byte[] bt2 = new byte[]{120, 80, -40};
if(bt1.equals(bt2)) {
//false
}
In SDO Impl, super.haveEqualAttribute(eObject1, eObject2, attribute); is
called. So to make meaningful comparisons, instead of calling super viz. EMF
EcoreUtil.EqualityHelper(), will meaningful equality check be needed inside SDO
Impl itself?
Regards,
Amita
> Java SDO's EqualityHelper doesn't compare Bytes values correctly
> ----------------------------------------------------------------
>
> Key: TUSCANY-2009
> URL: https://issues.apache.org/jira/browse/TUSCANY-2009
> Project: Tuscany
> Issue Type: Bug
> Components: Java SDO Implementation
> Affects Versions: Java-SDO-1.0
> Environment: n/a
> Reporter: David T. Adcox
> Fix For: Java-SDO-Next
>
> Attachments: Test2009.java
>
>
> Comparison of two Bytes values fails when it should succeed. The test for
> equality passes through the EqualityHelperImpl.equal method. In that method,
> the test is passed to EcoreUtil.haveEqualAttribute(EObject, EObject,
> EAttribute). For a simple type, it defers to java's '==' operator. So, two
> different object arrays are being compared, not for their contents, but
> rather if they are the same object. Attached is a test case which
> demonstrates this issue.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]