Hi Andy,

This is similar to the detach listener issue. All the other listeners are specified to be called "around" the corresponding callbacks. The lack of text describing the listener/callback ordering is a bug in the spec.

Here's the proposed update.

<spec>
package javax.jdo.listener;
public interface AttachLifecycleListener
    extends InstanceLifecycleListener {
A12.15-13 [void preAttach(InstanceLifecycleEvent event);
}
This method is called before a detached instance is attached. The source instance is the detached instance].
A12.15-14 [void postAttach(InstanceLifecycleEvent event);
}
This method is called after a detached instance is attached. The source instance is the corresponding persistent instance in the cache; the target instance is the detached instance.]
</spec>

<proposed>
package javax.jdo.listener;
public interface AttachLifecycleListener
    extends InstanceLifecycleListener {
A12.15-13 [void preAttach(InstanceLifecycleEvent event);
}
This method is called before a detached instance is attached. The source instance is the detached instance. This method is called before the corresponding jdoPreAttach on the detached instance].
A12.15-14 [void postAttach(InstanceLifecycleEvent event);
}
This method is called after a detached instance is attached. The source instance is the corresponding persistent instance in the cache; the target instance is the detached instance. This method is called after the corresponding jdoPostAttach on the persistent instance.]
</proposed>

Thanks,

Craig

On Oct 22, 2005, at 1:07 AM, Andy Jefferson (JIRA) wrote:

     [ http://issues.apache.org/jira/browse/JDO-186?page=all ]

Andy Jefferson reassigned JDO-186:
----------------------------------

    Assign To: Craig Russell  (was: Andy Jefferson)

Actually was an issue in InstanceCallbacks and not InstanceLifecycleListener. JPOX CVS now uses the objects the other way around on the postAttach and that part of the test passes. The issue about

[java] Sequence verification failed for PRE_ATTACH_CALLBACK; expected: <2> actual: <0>
    [java]
[java] Sequence verification failed for POST_ATTACH_LISTENER; expected: <3> actual: <2>

remains. This seems to be down to the TCK test assuming something about ordering. What is the issue here ?


Attach lifecycle listeners are incorrectly implemented
------------------------------------------------------

         Key: JDO-186
         URL: http://issues.apache.org/jira/browse/JDO-186
     Project: JDO
        Type: Bug
  Components: tck20
 Environment: JPOX
    Reporter: Craig Russell
    Assignee: Craig Russell




The InstanceLifecycleListenerAttach test case fails with these errors. [java] testAttach (org.apache.jdo.tck.api.instancecallbacks.InstanceLifecycleListenerAt tach)junit.framework.AssertionFailedError: Assertion A12.15-13 (TestInstanceLifecycleListener) failed: [java] Assertion A12.15-14 (TestInstanceLifecycleListener) failed: in postAttach, source object should be persistent. [java] Assertion A12.15-14 (TestInstanceLifecycleListener) failed: in postAttach, target expected <org.apache.jdo.tck.api.instancecallbacks.InstanceLifecycleListenerAt [EMAIL PROTECTED]>, actual <null>
    [java]
[java] Sequence verification failed for PRE_ATTACH_CALLBACK; expected: <2> actual: <0>
    [java]
[java] Sequence verification failed for POST_ATTACH_LISTENER; expected: <3> actual: <2>
    [java]
[java] at org.apache.jdo.tck.api.instancecallbacks.AbstractInstanceLifecycleLis tener$InstanceLifecycleListenerImpl.verifyCallbacks (AbstractInstanceLifecycleListener.java:464) [java] at org.apache.jdo.tck.api.instancecallbacks.InstanceLifecycleListenerAtt ach.testAttach(InstanceLifecycleListenerAttach.java:111) [java] at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) [java] at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:39) [java] at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:25) [java] at org.apache.jdo.tck.JDO_Test.runBare (JDO_Test.java:204) [java] at org.apache.jdo.tck.util.BatchTestRunner.start (BatchTestRunner.java:120) [java] at org.apache.jdo.tck.util.BatchTestRunner.main (BatchTestRunner.java:95)


--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira



Reply via email to