Details

    • Type: Improvement Improvement
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.4
    • Component/s: None
    • Labels:
      None

      Description

      Upgrade the apt support in jacob-ap to jsr-269. The old mirror api is deprecated anyway.

      1. examples-jacob.zip
        7 kB
        Hadrian Zbarcea
      2. ode-979.patch
        22 kB
        Hadrian Zbarcea

        Issue Links

          Activity

          Hide
          Hudson added a comment -

          Integrated in ODE-trunk-jdk6 #433 (See https://builds.apache.org/job/ODE-trunk-jdk6/433/)
          ODE-979. Remove all the code generator functionality. Not longer used nor needed. (Revision 1434557)
          ODE-979. Remove the last *Channel classes (Revision 1434554)
          ODE-979. Remove use the last batch of *Channel classes (Revision 1434553)

          Result = SUCCESS
          hadrian : http://svn.apache.org/viewvc/ode/trunk/?view=rev&rev=1434557
          Files :

          • /ode/trunk/Rakefile
          • /ode/trunk/jacob-annotation/pom.xml
          • /ode/trunk/jacob-annotation/src/main/java/org/apache/ode/jacob/annotation/ChannelType.java
          • /ode/trunk/jacob-ap/pom.xml
          • /ode/trunk/jacob-ap/src/main/java/org/apache/ode/jacob/ap/ChannelTypeAnnotationProcessor.java
          • /ode/trunk/jacob-ap/src/main/java/org/apache/ode/jacob/ap/JacobAnnotationProcessorFactory.java
          • /ode/trunk/jacob-ap/src/main/resources/META-INF/services/com.sun.mirror.apt.AnnotationProcessorFactory
          • /ode/trunk/jacob-generator/pom.xml
          • /ode/trunk/jacob-generator/src/main/java/org/apache/ode/jacob/generator/ChannelTypeProcessor.java
          • /ode/trunk/jacob-generator/src/main/resources/META-INF/services/javax.annotation.processing.Processor
          • /ode/trunk/pom.xml

          hadrian : http://svn.apache.org/viewvc/ode/trunk/?view=rev&rev=1434554
          Files :

          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ActivityRecoveryChannel.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/InvokeResponseChannel.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ParentScopeChannel.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/PickResponseChannel.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/TerminationChannel.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/TimerResponseChannel.java
          • /ode/trunk/jacob/src/main/java/org/apache/ode/jacob/SynchChannel.java

          hadrian : http://svn.apache.org/viewvc/ode/trunk/?view=rev&rev=1434553
          Files :

          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelRuntimeContextImpl.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/replayer/ReplayerBpelRuntimeContextImpl.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/ACTIVITYGUARD.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/ActivityInfo.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/BpelRuntimeContext.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/COMPENSATIONHANDLER_.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/EH_ALARM.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/EH_EVENT.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/FLOW.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/FOREACH.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/INVOKE.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/PICK.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/PROCESS.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/REPEATUNTIL.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/SCOPE.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/SCOPEACT.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/SEQUENCE.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/WAIT.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/WHILE.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/PickResponse.java
          • /ode/trunk/bpel-runtime/src/test/java/org/apache/ode/bpel/runtime/CoreBpelTest.java
          Show
          Hudson added a comment - Integrated in ODE-trunk-jdk6 #433 (See https://builds.apache.org/job/ODE-trunk-jdk6/433/ ) ODE-979 . Remove all the code generator functionality. Not longer used nor needed. (Revision 1434557) ODE-979 . Remove the last *Channel classes (Revision 1434554) ODE-979 . Remove use the last batch of *Channel classes (Revision 1434553) Result = SUCCESS hadrian : http://svn.apache.org/viewvc/ode/trunk/?view=rev&rev=1434557 Files : /ode/trunk/Rakefile /ode/trunk/jacob-annotation/pom.xml /ode/trunk/jacob-annotation/src/main/java/org/apache/ode/jacob/annotation/ChannelType.java /ode/trunk/jacob-ap/pom.xml /ode/trunk/jacob-ap/src/main/java/org/apache/ode/jacob/ap/ChannelTypeAnnotationProcessor.java /ode/trunk/jacob-ap/src/main/java/org/apache/ode/jacob/ap/JacobAnnotationProcessorFactory.java /ode/trunk/jacob-ap/src/main/resources/META-INF/services/com.sun.mirror.apt.AnnotationProcessorFactory /ode/trunk/jacob-generator/pom.xml /ode/trunk/jacob-generator/src/main/java/org/apache/ode/jacob/generator/ChannelTypeProcessor.java /ode/trunk/jacob-generator/src/main/resources/META-INF/services/javax.annotation.processing.Processor /ode/trunk/pom.xml hadrian : http://svn.apache.org/viewvc/ode/trunk/?view=rev&rev=1434554 Files : /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ActivityRecoveryChannel.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/InvokeResponseChannel.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ParentScopeChannel.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/PickResponseChannel.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/TerminationChannel.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/TimerResponseChannel.java /ode/trunk/jacob/src/main/java/org/apache/ode/jacob/SynchChannel.java hadrian : http://svn.apache.org/viewvc/ode/trunk/?view=rev&rev=1434553 Files : /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/BpelRuntimeContextImpl.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/engine/replayer/ReplayerBpelRuntimeContextImpl.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/ACTIVITYGUARD.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/ActivityInfo.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/BpelRuntimeContext.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/COMPENSATIONHANDLER_.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/EH_ALARM.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/EH_EVENT.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/FLOW.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/FOREACH.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/INVOKE.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/PICK.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/PROCESS.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/REPEATUNTIL.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/SCOPE.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/SCOPEACT.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/SEQUENCE.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/WAIT.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/WHILE.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/PickResponse.java /ode/trunk/bpel-runtime/src/test/java/org/apache/ode/bpel/runtime/CoreBpelTest.java
          Hide
          Hadrian Zbarcea added a comment -

          Done, finally. After a bit of refactoring, jacob does not need the generated Channels and Listeners anymore.

          Show
          Hadrian Zbarcea added a comment - Done, finally. After a bit of refactoring, jacob does not need the generated Channels and Listeners anymore.
          Hide
          Hadrian Zbarcea added a comment -

          Some of the commits were mistakenly reported against ODE-987. That is because some of the changes were contingent on api refactoring.

          Show
          Hadrian Zbarcea added a comment - Some of the commits were mistakenly reported against ODE-987 . That is because some of the changes were contingent on api refactoring.
          Hide
          Hudson added a comment -

          Integrated in ODE-trunk-jdk6 #429 (See https://builds.apache.org/job/ODE-trunk-jdk6/429/)
          ODE-979. Remove dependencies on removed ChannelListener(s) (Revision 1433671)
          ODE-979. Remove no longer used generated *ChannelListener(s) (Revision 1433670)

          Result = SUCCESS
          hadrian : http://svn.apache.org/viewvc/ode/trunk/?view=rev&rev=1433671
          Files :

          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/SCOPEACT.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ActivityRecoveryChannel.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/CompensationChannel.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/EventHandlerControlChannel.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/InvokeResponseChannel.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/LinkStatusChannel.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ParentScopeChannel.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/PickResponseChannel.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/TerminationChannel.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/TimerResponseChannel.java
          • /ode/trunk/jacob-generator/src/main/java/org/apache/ode/jacob/generator/ChannelTypeProcessor.java

          hadrian : http://svn.apache.org/viewvc/ode/trunk/?view=rev&rev=1433670
          Files :

          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ActivityRecoveryChannelListener.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/CompensationChannelListener.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/EventHandlerControlChannelListener.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/InvokeResponseChannelListener.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/LinkStatusChannelListener.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ParentScopeChannelListener.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/PickResponseChannelListener.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/TerminationChannelListener.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/TimerResponseChannelListener.java
          Show
          Hudson added a comment - Integrated in ODE-trunk-jdk6 #429 (See https://builds.apache.org/job/ODE-trunk-jdk6/429/ ) ODE-979 . Remove dependencies on removed ChannelListener(s) (Revision 1433671) ODE-979 . Remove no longer used generated *ChannelListener(s) (Revision 1433670) Result = SUCCESS hadrian : http://svn.apache.org/viewvc/ode/trunk/?view=rev&rev=1433671 Files : /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/SCOPEACT.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ActivityRecoveryChannel.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/CompensationChannel.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/EventHandlerControlChannel.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/InvokeResponseChannel.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/LinkStatusChannel.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ParentScopeChannel.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/PickResponseChannel.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/TerminationChannel.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/TimerResponseChannel.java /ode/trunk/jacob-generator/src/main/java/org/apache/ode/jacob/generator/ChannelTypeProcessor.java hadrian : http://svn.apache.org/viewvc/ode/trunk/?view=rev&rev=1433670 Files : /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ActivityRecoveryChannelListener.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/CompensationChannelListener.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/EventHandlerControlChannelListener.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/InvokeResponseChannelListener.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/LinkStatusChannelListener.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ParentScopeChannelListener.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/PickResponseChannelListener.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/TerminationChannelListener.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/TimerResponseChannelListener.java
          Hide
          Hudson added a comment -

          Integrated in ODE-trunk-jdk6 #428 (See https://builds.apache.org/job/ODE-trunk-jdk6/428/)
          ODE-979. Finish removing dependencies on generated ChannelListeners (Revision 1433527)

          Result = SUCCESS
          hadrian : http://svn.apache.org/viewvc/ode/trunk/?view=rev&rev=1433527
          Files :

          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/ACTIVITYGUARD.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/COMPENSATIONHANDLER_.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/EH_ALARM.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/EH_EVENT.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/FLOW.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/FOREACH.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/INVOKE.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/PICK.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/PROCESS.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/REPEATUNTIL.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/SCOPE.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/SCOPEACT.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/SEQUENCE.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/WAIT.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/WHILE.java
          Show
          Hudson added a comment - Integrated in ODE-trunk-jdk6 #428 (See https://builds.apache.org/job/ODE-trunk-jdk6/428/ ) ODE-979 . Finish removing dependencies on generated ChannelListeners (Revision 1433527) Result = SUCCESS hadrian : http://svn.apache.org/viewvc/ode/trunk/?view=rev&rev=1433527 Files : /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/ACTIVITYGUARD.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/COMPENSATIONHANDLER_.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/EH_ALARM.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/EH_EVENT.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/FLOW.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/FOREACH.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/INVOKE.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/PICK.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/PROCESS.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/REPEATUNTIL.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/SCOPE.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/SCOPEACT.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/SEQUENCE.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/WAIT.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/WHILE.java
          Hide
          Hudson added a comment -

          Integrated in ODE-trunk-jdk6 #425 (See https://builds.apache.org/job/ODE-trunk-jdk6/425/)
          ODE-979. Remove no longer used listeners (Revision 1432512)

          Result = SUCCESS
          hadrian : http://svn.apache.org/viewvc/ode/trunk/?view=rev&rev=1432512
          Files :

          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/READWRITELOCK.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ReadWriteLockChannel.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ReadWriteLockChannelListener.java
          • /ode/trunk/jacob/src/main/java/org/apache/ode/jacob/SynchChannel.java
          • /ode/trunk/jacob/src/main/java/org/apache/ode/jacob/SynchChannelListener.java
          • /ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ValChannel.java
          • /ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ValChannelListener.java
          • /ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/cell/CellChannel.java
          • /ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/cell/CellChannelListener.java
          • /ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/eratosthenes/NaturalNumberStreamChannel.java
          • /ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/eratosthenes/NaturalNumberStreamChannelListener.java
          • /ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/synch/SynchPrintChannel.java
          • /ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/synch/SynchPrintChannelListener.java
          Show
          Hudson added a comment - Integrated in ODE-trunk-jdk6 #425 (See https://builds.apache.org/job/ODE-trunk-jdk6/425/ ) ODE-979 . Remove no longer used listeners (Revision 1432512) Result = SUCCESS hadrian : http://svn.apache.org/viewvc/ode/trunk/?view=rev&rev=1432512 Files : /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/READWRITELOCK.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ReadWriteLockChannel.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/channels/ReadWriteLockChannelListener.java /ode/trunk/jacob/src/main/java/org/apache/ode/jacob/SynchChannel.java /ode/trunk/jacob/src/main/java/org/apache/ode/jacob/SynchChannelListener.java /ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ValChannel.java /ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ValChannelListener.java /ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/cell/CellChannel.java /ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/cell/CellChannelListener.java /ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/eratosthenes/NaturalNumberStreamChannel.java /ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/eratosthenes/NaturalNumberStreamChannelListener.java /ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/synch/SynchPrintChannel.java /ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/synch/SynchPrintChannelListener.java
          Hide
          Hadrian Zbarcea added a comment - - edited

          A few commits later we're left with only 10 Listener classes I cannot get rid of easily because of serialization issues. For now, however, Jacob is Listener free and all tests are passing. I fear though that we cannot delay fixing serialization much longer.

          Show
          Hadrian Zbarcea added a comment - - edited A few commits later we're left with only 10 Listener classes I cannot get rid of easily because of serialization issues. For now, however, Jacob is Listener free and all tests are passing. I fear though that we cannot delay fixing serialization much longer.
          Hide
          Hudson added a comment -

          Integrated in ODE-trunk-jdk6 #424 (See https://builds.apache.org/job/ODE-trunk-jdk6/424/)
          ODE-979. Remove anonymous ChannelListener implementations in bpel-runtime (ongoing) (Revision 1431889)
          ODE-979. Remove anonymous ChannelListener implementations in jacob (Revision 1431888)
          ODE-979. Remove anonymous ChannelListener implementations in jacob (Revision 1431887)
          ODE-979. Replace ChannelListener with ReceiveProcess to make code generation unnecessary (Revision 1431886)

          Result = SUCCESS
          hadrian : http://svn.apache.org/viewvc/ode/trunk/?view=rev&rev=1431889
          Files :

          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/EH_ALARM.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/READWRITELOCK.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/SCOPEACT.java

          hadrian : http://svn.apache.org/viewvc/ode/trunk/?view=rev&rev=1431888
          Files :

          • /ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/synch/SynchPrinter.java

          hadrian : http://svn.apache.org/viewvc/ode/trunk/?view=rev&rev=1431887
          Files :

          • /ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ReceiveProcess.java
          • /ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/cell/CELL_.java
          • /ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/eratosthenes/Sieve.java

          hadrian : http://svn.apache.org/viewvc/ode/trunk/?view=rev&rev=1431886
          Files :

          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/COMPENSATE.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/ORDEREDCOMPENSATOR.java
          • /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/SCOPEACT.java
          • /ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ChannelListener.java
          • /ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ClassUtil.java
          • /ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ReceiveProcess.java
          • /ode/trunk/jacob/src/main/java/org/apache/ode/jacob/vpu/JacobVPU.java
          • /ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/cell/JacobCellTest.java
          • /ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/eratosthenes/Sieve.java
          • /ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/sequence/Sequence.java
          • /ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/synch/SynchPrinter.java
          Show
          Hudson added a comment - Integrated in ODE-trunk-jdk6 #424 (See https://builds.apache.org/job/ODE-trunk-jdk6/424/ ) ODE-979 . Remove anonymous ChannelListener implementations in bpel-runtime (ongoing) (Revision 1431889) ODE-979 . Remove anonymous ChannelListener implementations in jacob (Revision 1431888) ODE-979 . Remove anonymous ChannelListener implementations in jacob (Revision 1431887) ODE-979 . Replace ChannelListener with ReceiveProcess to make code generation unnecessary (Revision 1431886) Result = SUCCESS hadrian : http://svn.apache.org/viewvc/ode/trunk/?view=rev&rev=1431889 Files : /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/EH_ALARM.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/READWRITELOCK.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/SCOPEACT.java hadrian : http://svn.apache.org/viewvc/ode/trunk/?view=rev&rev=1431888 Files : /ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/synch/SynchPrinter.java hadrian : http://svn.apache.org/viewvc/ode/trunk/?view=rev&rev=1431887 Files : /ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ReceiveProcess.java /ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/cell/CELL_.java /ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/eratosthenes/Sieve.java hadrian : http://svn.apache.org/viewvc/ode/trunk/?view=rev&rev=1431886 Files : /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/COMPENSATE.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/ORDEREDCOMPENSATOR.java /ode/trunk/bpel-runtime/src/main/java/org/apache/ode/bpel/runtime/SCOPEACT.java /ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ChannelListener.java /ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ClassUtil.java /ode/trunk/jacob/src/main/java/org/apache/ode/jacob/ReceiveProcess.java /ode/trunk/jacob/src/main/java/org/apache/ode/jacob/vpu/JacobVPU.java /ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/cell/JacobCellTest.java /ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/eratosthenes/Sieve.java /ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/sequence/Sequence.java /ode/trunk/jacob/src/test/java/org/apache/ode/jacob/examples/synch/SynchPrinter.java
          Hide
          Tammo van Lessen added a comment -

          Sounds awesome! Tests are running fine, no objections from my side. Go for it

          Show
          Tammo van Lessen added a comment - Sounds awesome! Tests are running fine, no objections from my side. Go for it
          Hide
          Hadrian Zbarcea added a comment -

          Attached patch for reference.

          Show
          Hadrian Zbarcea added a comment - Attached patch for reference.
          Hide
          Hadrian Zbarcea added a comment -

          I already have this implemented on a private branch. I completely removed the dependencies on Synch and Val ChannelListeners and needless to say all tests pass. There are some 15 more ChannelListeners to be replaced with ReceiveProcess for this part to be complete. I'll take care of it once I get a nod.

          Show
          Hadrian Zbarcea added a comment - I already have this implemented on a private branch. I completely removed the dependencies on Synch and Val ChannelListeners and needless to say all tests pass. There are some 15 more ChannelListeners to be replaced with ReceiveProcess for this part to be complete. I'll take care of it once I get a nod.
          Hide
          Hadrian Zbarcea added a comment -

          I didn't close this issue because I was looking into a better way of doing it. The Channels and ChannelListeners are basic concepts and any changes have significant impacts all over the rest of the code. However they are not really necessary in this form.

          Firstly the generated Channel is not really needed, because they are always used via Proxies. However, Proxies could implement multiple interfaces so there is no real need for a (generated) class that implements both T (the generic channel interface) and Channel. Things are a bit more complicated with ChannelListeners and the challenge is to come up with a solution that allows to change things incrementally.

          There are 2 things that go against each other. The listener is invoked on to pass the message, so they need to implement the generic channel interface T, but the implementation has to interact with the runtime, so it needs to extend JacobObject as well. Since java does not allow a generic class to implement (or extend) a generic type, the solution was code generation. The best solution I could come up with that would allow an incremental transition is introducing a new abstract class RecieveProcess that does not implement T, but uses a T:

          public abstract class ReceiveProcess<C extends Channel, R> extends ChannelListener<C> {
              final R receiver;
          [...]
              public Object receiver() {
                  return receiver;
              }
              public Set<Method> getImplementedMethods() {
                  if (_implementedMethods == null) {
                      Set<Method> implementedMethods = new HashSet<Method>();
                      ClassUtil.getImplementedMethods(implementedMethods, receiver.getClass());
                      _implementedMethods = Collections.unmodifiableSet(implementedMethods);
                  }
                  return _implementedMethods;
              }
          }
          

          (NOTE: getImplementedMethods returns the list of methods supported by the channel. It's kinda like the messages passed along the pi calculus channels are instances of java.lang.reflect.Method, which are actuall, well, Continuations).

          Then I modified JacobVpu.JacobThreadImpl.run() like this:

              _method.invoke(_methodBody instanceof ReceiveProcess ? 
                  ((ReceiveProcess<?, ?>)_methodBody).receiver() : _methodBody, args);
          

          Now given the fact that most of the listeners are implemented as anonymous classes within the context of a JacobObject (Runnable), the JacobVPU (pi calculus) methods (object/instance/message/newChannel) will be accessible. In the rare cases where not, the access will be provided by getting the JacobThread from the TLS.

          So the new code will look like:

                object(new ReceiveProcess<ValChannel, Val>(retChannel, new Val() {
                    public void val(Object retVal) {
                        _val = retVal;
                      }
                }) {});
          

          Once the whole code transitions to using ReceiveProcesses instead of generated ChannelListeners, the code can be further simplified by eliminating the ChannelListener completely and changing the ReceiveProcess to use only one generic argument.

          Since this change will have ripple effect across the whole code, I would appreciate your thoughts before committing.

          Show
          Hadrian Zbarcea added a comment - I didn't close this issue because I was looking into a better way of doing it. The Channels and ChannelListeners are basic concepts and any changes have significant impacts all over the rest of the code. However they are not really necessary in this form. Firstly the generated Channel is not really needed, because they are always used via Proxies. However, Proxies could implement multiple interfaces so there is no real need for a (generated) class that implements both T (the generic channel interface) and Channel. Things are a bit more complicated with ChannelListeners and the challenge is to come up with a solution that allows to change things incrementally. There are 2 things that go against each other. The listener is invoked on to pass the message, so they need to implement the generic channel interface T, but the implementation has to interact with the runtime, so it needs to extend JacobObject as well. Since java does not allow a generic class to implement (or extend) a generic type, the solution was code generation. The best solution I could come up with that would allow an incremental transition is introducing a new abstract class RecieveProcess that does not implement T, but uses a T: public abstract class ReceiveProcess<C extends Channel, R> extends ChannelListener<C> { final R receiver; [...] public Object receiver() { return receiver; } public Set<Method> getImplementedMethods() { if (_implementedMethods == null ) { Set<Method> implementedMethods = new HashSet<Method>(); ClassUtil.getImplementedMethods(implementedMethods, receiver.getClass()); _implementedMethods = Collections.unmodifiableSet(implementedMethods); } return _implementedMethods; } } (NOTE: getImplementedMethods returns the list of methods supported by the channel. It's kinda like the messages passed along the pi calculus channels are instances of java.lang.reflect.Method, which are actuall, well, Continuations). Then I modified JacobVpu.JacobThreadImpl.run() like this: _method.invoke(_methodBody instanceof ReceiveProcess ? ((ReceiveProcess<?, ?>)_methodBody).receiver() : _methodBody, args); Now given the fact that most of the listeners are implemented as anonymous classes within the context of a JacobObject (Runnable), the JacobVPU (pi calculus) methods (object/instance/message/newChannel) will be accessible. In the rare cases where not, the access will be provided by getting the JacobThread from the TLS. So the new code will look like: object( new ReceiveProcess<ValChannel, Val>(retChannel, new Val() { public void val( Object retVal) { _val = retVal; } }) {}); Once the whole code transitions to using ReceiveProcesses instead of generated ChannelListeners, the code can be further simplified by eliminating the ChannelListener completely and changing the ReceiveProcess to use only one generic argument. Since this change will have ripple effect across the whole code, I would appreciate your thoughts before committing.
          Hide
          Hudson added a comment -

          Integrated in ODE-trunk-jdk6 #420 (See https://builds.apache.org/job/ODE-trunk-jdk6/420/)
          ODE-979. ... and fix ugly tabs in code (Revision 1422085)
          ODE-979. Completed code generation to match previous versions (Revision 1422084)

          Result = SUCCESS
          hadrian : http://svn.apache.org/viewvc/ode/trunk/?view=rev&rev=1422085
          Files :

          • /ode/trunk/jacob-generator/src/main/java/org/apache/ode/jacob/generator/ChannelTypeProcessor.java

          hadrian : http://svn.apache.org/viewvc/ode/trunk/?view=rev&rev=1422084
          Files :

          • /ode/trunk/jacob-generator/src/main/java/org/apache/ode/jacob/generator/ChannelTypeProcessor.java
          Show
          Hudson added a comment - Integrated in ODE-trunk-jdk6 #420 (See https://builds.apache.org/job/ODE-trunk-jdk6/420/ ) ODE-979 . ... and fix ugly tabs in code (Revision 1422085) ODE-979 . Completed code generation to match previous versions (Revision 1422084) Result = SUCCESS hadrian : http://svn.apache.org/viewvc/ode/trunk/?view=rev&rev=1422085 Files : /ode/trunk/jacob-generator/src/main/java/org/apache/ode/jacob/generator/ChannelTypeProcessor.java hadrian : http://svn.apache.org/viewvc/ode/trunk/?view=rev&rev=1422084 Files : /ode/trunk/jacob-generator/src/main/java/org/apache/ode/jacob/generator/ChannelTypeProcessor.java
          Hide
          Hadrian Zbarcea added a comment -

          @Tammo: this is now complete, pushed to my fork at https://github.com/hzbarcea/ode.

          It would be great if you could merge from my fork to try the patch. If that won't work I'll try to attach here a cumulative patch (the fork has a few commits, but all related to this issue). The attached example shows a test using the new jsr-269 based generator in action). If this works I'll go ahead and refactor jacob and look at the model.

          Thanks.

          Show
          Hadrian Zbarcea added a comment - @Tammo: this is now complete, pushed to my fork at https://github.com/hzbarcea/ode . It would be great if you could merge from my fork to try the patch. If that won't work I'll try to attach here a cumulative patch (the fork has a few commits, but all related to this issue). The attached example shows a test using the new jsr-269 based generator in action). If this works I'll go ahead and refactor jacob and look at the model. Thanks.
          Hide
          Hadrian Zbarcea added a comment -

          I have the patch almost ready. I ended up separating the code into two jars and using a different package for @ChannelType. I believe it'll work better for the code generation.

          Show
          Hadrian Zbarcea added a comment - I have the patch almost ready. I ended up separating the code into two jars and using a different package for @ChannelType. I believe it'll work better for the code generation.

            People

            • Assignee:
              Hadrian Zbarcea
              Reporter:
              Hadrian Zbarcea
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development