Author: mriou
Date: Wed Feb 27 14:00:23 2008
New Revision: 631747

URL: http://svn.apache.org/viewvc?rev=631747&view=rev
Log:
Static check to forbid empty sequences.

Modified:
    
ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/CommonCompilationMessages.java
    
ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/SequenceGenerator.java

Modified: 
ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/CommonCompilationMessages.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/CommonCompilationMessages.java?rev=631747&r1=631746&r2=631747&view=diff
==============================================================================
--- 
ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/CommonCompilationMessages.java
 (original)
+++ 
ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/CommonCompilationMessages.java
 Wed Feb 27 14:00:23 2008
@@ -471,4 +471,8 @@
         return this.formatCompilationMessage("Empty scopes are forbidden.");
     }
 
+       public CompilationMessage errEmptySequence() {
+               return this.formatCompilationMessage("Empty sequences are 
forbidden.");
+       }
+
 }

Modified: 
ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/SequenceGenerator.java
URL: 
http://svn.apache.org/viewvc/ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/SequenceGenerator.java?rev=631747&r1=631746&r2=631747&view=diff
==============================================================================
--- 
ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/SequenceGenerator.java
 (original)
+++ 
ode/trunk/bpel-compiler/src/main/java/org/apache/ode/bpel/compiler/SequenceGenerator.java
 Wed Feb 27 14:00:23 2008
@@ -24,6 +24,7 @@
 import org.apache.ode.bpel.compiler.bom.SequenceActivity;
 import org.apache.ode.bpel.o.OActivity;
 import org.apache.ode.bpel.o.OSequence;
+import org.apache.ode.utils.msg.MessageBundle;
 
 
 /**
@@ -32,6 +33,9 @@
 
 class SequenceGenerator extends DefaultActivityGenerator {
 
+    private static final CommonCompilationMessages __cmsgs =
+        MessageBundle.getMessages(CommonCompilationMessages.class);
+
     public OActivity newInstance(Activity src) {
         return new OSequence(_context.getOProcess(), _context.getCurrent());
     }
@@ -42,6 +46,9 @@
     }
 
     protected void compileChildren(OSequence dest, CompositeActivity src) {
+        if (src.getActivities().size() == 0)
+            throw new 
CompilationException(__cmsgs.errEmptySequence().setSource(src));
+
         for (Activity child : src.getActivities()) {
             try {
                 OActivity compiledChild = _context.compile(child);


Reply via email to