You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ode.apache.org by mr...@apache.org on 2008/09/25 17:22:09 UTC

svn commit: r699001 - in /ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler: v1/PickGenerator.java v1/PickGeneratorMessages.java v2/PickGenerator.java v2/PickGeneratorMessages.java

Author: mriou
Date: Thu Sep 25 08:22:09 2008
New Revision: 699001

URL: http://svn.apache.org/viewvc?rev=699001&view=rev
Log:
Error message for pick with empty onMessage.

Modified:
    ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/v1/PickGenerator.java
    ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/v1/PickGeneratorMessages.java
    ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/v2/PickGenerator.java
    ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/v2/PickGeneratorMessages.java

Modified: ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/v1/PickGenerator.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/v1/PickGenerator.java?rev=699001&r1=699000&r2=699001&view=diff
==============================================================================
--- ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/v1/PickGenerator.java (original)
+++ ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/v1/PickGenerator.java Thu Sep 25 08:22:09 2008
@@ -31,46 +31,49 @@
  */
 class PickGenerator extends PickReceiveGenerator {
 
-  public OActivity newInstance(Activity src) {
+    public OActivity newInstance(Activity src) {
         return new OPickReceive(_context.getOProcess(), _context.getCurrent());
-  }
-
-  public void compile(OActivity output, Activity src) {
-    OPickReceive opick = (OPickReceive) output;
-    PickActivity pickDef = (PickActivity) src;
-
-    opick.createInstanceFlag = pickDef.isCreateInstance();
-    for (OnMessage sOnMessage : pickDef.getOnMessages()) {
-      OPickReceive.OnMessage oOnMessage = compileOnMessage(sOnMessage.getVariable(),
-              sOnMessage.getPartnerLink(),
-              sOnMessage.getOperation(),
-              sOnMessage.getMessageExchangeId(),
-              sOnMessage.getPortType(),
-              pickDef.isCreateInstance(),
-              sOnMessage.getCorrelations());
-      oOnMessage.activity = _context.compile(sOnMessage.getActivity());
-      opick.onMessages.add(oOnMessage);
     }
 
-    try {
-      for(OnAlarm onAlarmDef : pickDef.getOnAlarms()){
-        OPickReceive.OnAlarm oalarm = new OPickReceive.OnAlarm(_context.getOProcess());
-        oalarm.activity = _context.compile(onAlarmDef.getActivity());
-        if (onAlarmDef.getFor() != null && onAlarmDef.getUntil() == null) {
-          oalarm.forExpr = _context.compileExpr(onAlarmDef.getFor());
-        } else if (onAlarmDef.getFor() == null && onAlarmDef.getUntil() != null) {
-          oalarm.untilExpr = _context.compileExpr(onAlarmDef.getUntil());
-        } else {
-          throw new CompilationException(__cmsgs.errForOrUntilMustBeGiven().setSource(onAlarmDef));
-        }
+    public void compile(OActivity output, Activity src) {
+        OPickReceive opick = (OPickReceive) output;
+        PickActivity pickDef = (PickActivity) src;
+
+        opick.createInstanceFlag = pickDef.isCreateInstance();
+        for (OnMessage sOnMessage : pickDef.getOnMessages()) {
+            OPickReceive.OnMessage oOnMessage = compileOnMessage(sOnMessage.getVariable(),
+                    sOnMessage.getPartnerLink(),
+                    sOnMessage.getOperation(),
+                    sOnMessage.getMessageExchangeId(),
+                    sOnMessage.getPortType(),
+                    pickDef.isCreateInstance(),
+                    sOnMessage.getCorrelations());
+            if (sOnMessage.getActivity() == null)
+                throw new CompilationException(__cmsgs.errEmptyOnMessage().setSource(sOnMessage));
 
-        if (pickDef.isCreateInstance())
-          throw new CompilationException(__cmsgs.errOnAlarmWithCreateInstance().setSource(onAlarmDef));
+            oOnMessage.activity = _context.compile(sOnMessage.getActivity());
+            opick.onMessages.add(oOnMessage);
+        }
 
-        opick.onAlarms.add(oalarm);
-      }
-    } catch (CompilationException ce) {
-      _context.recoveredFromError(pickDef, ce);
+        try {
+            for(OnAlarm onAlarmDef : pickDef.getOnAlarms()){
+                OPickReceive.OnAlarm oalarm = new OPickReceive.OnAlarm(_context.getOProcess());
+                oalarm.activity = _context.compile(onAlarmDef.getActivity());
+                if (onAlarmDef.getFor() != null && onAlarmDef.getUntil() == null) {
+                    oalarm.forExpr = _context.compileExpr(onAlarmDef.getFor());
+                } else if (onAlarmDef.getFor() == null && onAlarmDef.getUntil() != null) {
+                    oalarm.untilExpr = _context.compileExpr(onAlarmDef.getUntil());
+                } else {
+                    throw new CompilationException(__cmsgs.errForOrUntilMustBeGiven().setSource(onAlarmDef));
+                }
+
+                if (pickDef.isCreateInstance())
+                    throw new CompilationException(__cmsgs.errOnAlarmWithCreateInstance().setSource(onAlarmDef));
+
+                opick.onAlarms.add(oalarm);
+            }
+        } catch (CompilationException ce) {
+            _context.recoveredFromError(pickDef, ce);
+        }
     }
-  }
 }

Modified: ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/v1/PickGeneratorMessages.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/v1/PickGeneratorMessages.java?rev=699001&r1=699000&r2=699001&view=diff
==============================================================================
--- ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/v1/PickGeneratorMessages.java (original)
+++ ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/v1/PickGeneratorMessages.java Thu Sep 25 08:22:09 2008
@@ -38,6 +38,10 @@
         return this.formatCompilationMessage("errForOrUntilMustBeGiven");
     }
 
+    public CompilationMessage errEmptyOnMessage() {
+        return this.formatCompilationMessage("An onMessage element withing a pick can't be empty.");
+    }
+
     // TODO: better error message
     public CompilationMessage errOnAlarmWithCreateInstance() {
         return this.formatCompilationMessage("errOnAlarmWithCreateInstance");

Modified: ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/v2/PickGenerator.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/v2/PickGenerator.java?rev=699001&r1=699000&r2=699001&view=diff
==============================================================================
--- ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/v2/PickGenerator.java (original)
+++ ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/v2/PickGenerator.java Thu Sep 25 08:22:09 2008
@@ -32,48 +32,50 @@
  */
 class PickGenerator extends PickReceiveGenerator {
 
-  public OActivity newInstance(Activity src) {
+    public OActivity newInstance(Activity src) {
         return new OPickReceive(_context.getOProcess(), _context.getCurrent());
-  }
-
-  public void compile(OActivity output, Activity src) {
-    OPickReceive opick = (OPickReceive) output;
-    PickActivity pickDef = (PickActivity) src;
-
-    opick.createInstanceFlag = pickDef.isCreateInstance();
-    for (OnMessage sOnMessage : pickDef.getOnMessages()) {
-      OPickReceive.OnMessage oOnMessage = compileOnMessage(sOnMessage.getVariable(),
-              sOnMessage.getPartnerLink(),
-              sOnMessage.getOperation(),
-              sOnMessage.getMessageExchangeId(),
-              sOnMessage.getPortType(),
-              pickDef.isCreateInstance(),
-              sOnMessage.getCorrelations());
-      oOnMessage.activity = _context.compile(sOnMessage.getActivity());
-      opick.onMessages.add(oOnMessage);
-      if (oOnMessage.variable != null)
-          opick.variableWr.add(oOnMessage.variable);
     }
 
-    try {
-      for(OnAlarm onAlarmDef : pickDef.getOnAlarms()){
-        OPickReceive.OnAlarm oalarm = new OPickReceive.OnAlarm(_context.getOProcess());
-        oalarm.activity = _context.compile(onAlarmDef.getActivity());
-        if (onAlarmDef.getFor() != null && onAlarmDef.getUntil() == null) {
-          oalarm.forExpr = _context.compileExpr(onAlarmDef.getFor());
-        } else if (onAlarmDef.getFor() == null && onAlarmDef.getUntil() != null) {
-          oalarm.untilExpr = _context.compileExpr(onAlarmDef.getUntil());
-        } else {
-          throw new CompilationException(__cmsgs.errForOrUntilMustBeGiven().setSource(onAlarmDef));
+    public void compile(OActivity output, Activity src) {
+        OPickReceive opick = (OPickReceive) output;
+        PickActivity pickDef = (PickActivity) src;
+
+        opick.createInstanceFlag = pickDef.isCreateInstance();
+        for (OnMessage sOnMessage : pickDef.getOnMessages()) {
+            OPickReceive.OnMessage oOnMessage = compileOnMessage(sOnMessage.getVariable(),
+                    sOnMessage.getPartnerLink(),
+                    sOnMessage.getOperation(),
+                    sOnMessage.getMessageExchangeId(),
+                    sOnMessage.getPortType(),
+                    pickDef.isCreateInstance(),
+                    sOnMessage.getCorrelations());
+            if (sOnMessage.getActivity() == null)
+                throw new CompilationException(__cmsgs.errEmptyOnMessage().setSource(sOnMessage));
+
+            oOnMessage.activity = _context.compile(sOnMessage.getActivity());
+            opick.onMessages.add(oOnMessage);
+            if (oOnMessage.variable != null) opick.variableWr.add(oOnMessage.variable);
         }
 
-        if (pickDef.isCreateInstance())
-          throw new CompilationException(__cmsgs.errOnAlarmWithCreateInstance().setSource(onAlarmDef));
-
-        opick.onAlarms.add(oalarm);
-      }
-    } catch (CompilationException ce) {
-      _context.recoveredFromError(pickDef, ce);
+        try {
+            for(OnAlarm onAlarmDef : pickDef.getOnAlarms()){
+                OPickReceive.OnAlarm oalarm = new OPickReceive.OnAlarm(_context.getOProcess());
+                oalarm.activity = _context.compile(onAlarmDef.getActivity());
+                if (onAlarmDef.getFor() != null && onAlarmDef.getUntil() == null) {
+                    oalarm.forExpr = _context.compileExpr(onAlarmDef.getFor());
+                } else if (onAlarmDef.getFor() == null && onAlarmDef.getUntil() != null) {
+                    oalarm.untilExpr = _context.compileExpr(onAlarmDef.getUntil());
+                } else {
+                    throw new CompilationException(__cmsgs.errForOrUntilMustBeGiven().setSource(onAlarmDef));
+                }
+
+                if (pickDef.isCreateInstance())
+                    throw new CompilationException(__cmsgs.errOnAlarmWithCreateInstance().setSource(onAlarmDef));
+
+                opick.onAlarms.add(oalarm);
+            }
+        } catch (CompilationException ce) {
+            _context.recoveredFromError(pickDef, ce);
+        }
     }
-  }
 }

Modified: ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/v2/PickGeneratorMessages.java
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/v2/PickGeneratorMessages.java?rev=699001&r1=699000&r2=699001&view=diff
==============================================================================
--- ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/v2/PickGeneratorMessages.java (original)
+++ ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/v2/PickGeneratorMessages.java Thu Sep 25 08:22:09 2008
@@ -37,6 +37,10 @@
         return this.formatCompilationMessage("An <onAlarm> block must include a <for> or <until> block.");
     }
 
+    public CompilationMessage errEmptyOnMessage() {
+        return this.formatCompilationMessage("An onMessage element withing a pick can't be empty.");
+    }
+    
     public CompilationMessage errOnAlarmWithCreateInstance() {
         return this.formatCompilationMessage("An <onAlarm> may not be used when createInstance=yes.");
     }