Author: mriou
Date: Thu Aug 24 09:31:17 2006
New Revision: 434417

URL: http://svn.apache.org/viewvc?rev=434417&view=rev
Log:
Setting the expression language at the process level when specified.

Modified:
    
incubator/ode/trunk/bpel-parser/src/main/java/org/apache/ode/sax/fsa/bpel_2_0/BpelProcessState.java

Modified: 
incubator/ode/trunk/bpel-parser/src/main/java/org/apache/ode/sax/fsa/bpel_2_0/BpelProcessState.java
URL: 
http://svn.apache.org/viewvc/incubator/ode/trunk/bpel-parser/src/main/java/org/apache/ode/sax/fsa/bpel_2_0/BpelProcessState.java?rev=434417&r1=434416&r2=434417&view=diff
==============================================================================
--- 
incubator/ode/trunk/bpel-parser/src/main/java/org/apache/ode/sax/fsa/bpel_2_0/BpelProcessState.java
 (original)
+++ 
incubator/ode/trunk/bpel-parser/src/main/java/org/apache/ode/sax/fsa/bpel_2_0/BpelProcessState.java
 Thu Aug 24 09:31:17 2006
@@ -18,139 +18,150 @@
  */
 package org.apache.ode.sax.fsa.bpel_2_0;
 
-import org.apache.ode.bom.api.*;
+import org.apache.ode.bom.api.CorrelationSet;
+import org.apache.ode.bom.api.OnAlarm;
+import org.apache.ode.bom.api.OnEvent;
+import org.apache.ode.bom.api.PartnerLink;
 import org.apache.ode.bom.api.Process;
+import org.apache.ode.bom.api.Variable;
 import org.apache.ode.bom.impl.nodes.ProcessImpl;
-import org.apache.ode.sax.fsa.*;
 import org.apache.ode.sax.evt.StartElement;
 import org.apache.ode.sax.evt.XmlAttributes;
 import org.apache.ode.sax.evt.attspec.FilterSpec;
 import org.apache.ode.sax.evt.attspec.XmlAttributeSpec;
+import org.apache.ode.sax.fsa.ParseContext;
+import org.apache.ode.sax.fsa.ParseError;
+import org.apache.ode.sax.fsa.ParseException;
+import org.apache.ode.sax.fsa.State;
+import org.apache.ode.sax.fsa.StateFactory;
 
 import java.net.URL;
 import java.util.Iterator;
 
 class BpelProcessState extends BaseBpelState implements 
org.apache.ode.bpel.parser.BpelProcessState {
 
-  private static final StateFactory _factory = new Factory();
-    
-  // TODO: still needed?
-  private static final XmlAttributeSpec spec = new FilterSpec(
-        new String[] {"name","targetNamespace"},
-        new String[] 
{"queryLanguage","expressionLanguage","suppressJoinFailure",
-            "abstractProcess"}
-      );
-  
-  private Process _process;
-  
-  BpelProcessState(StartElement se, ParseContext pc) throws ParseException {
-    super(pc);
-    XmlAttributes atts = se.getAttributes();
-    String name = atts.getValue("name");
-    String tns = atts.getValue("targetNamespace");
+    private static final StateFactory _factory = new Factory();
+
     // TODO: still needed?
-    short suppressJoinFailure;
-    // TODO: Come back and fix this!
-    URL url = null;
-    
-    _process = new ProcessImpl();
-    _process.setBpelVersion(Process.BPEL_V200);
-    _process.setNamespaceContext(se.getNamespaceContext());
-    _process.setName(name);
-    _process.setTargetNamespace(tns);
-    _process.setSource(se.getLocation().getSystemId());
-    _process.setSuppressJoinFailure(getSuppressJoinFailure(atts));
-    if (atts.hasAtt("queryLanguage")) {
-      _process.setQueryLanguage(atts.getValue("queryLanguage"));
-    }
-    /*
-     * NOTE: Xerces automatically fills in the default value of the attribute 
for us,
-     * in this case "no" for enableInstanceCompensation and abstractProcess.  
Thus,
-     * we can't warn if it's present because we don't know if the user or the 
parser
-     * put it in...
+    private static final XmlAttributeSpec spec = new FilterSpec(
+            new String[] {"name","targetNamespace"},
+            new String[] 
{"queryLanguage","expressionLanguage","suppressJoinFailure",
+                    "abstractProcess"}
+    );
+
+    private Process _process;
+
+    BpelProcessState(StartElement se, ParseContext pc) throws ParseException {
+        super(pc);
+        XmlAttributes atts = se.getAttributes();
+        String name = atts.getValue("name");
+        String tns = atts.getValue("targetNamespace");
+        // TODO: still needed?
+        short suppressJoinFailure;
+        // TODO: Come back and fix this!
+        URL url = null;
+
+        _process = new ProcessImpl();
+        _process.setBpelVersion(Process.BPEL_V200);
+        _process.setNamespaceContext(se.getNamespaceContext());
+        _process.setName(name);
+        _process.setTargetNamespace(tns);
+        _process.setSource(se.getLocation().getSystemId());
+        _process.setSuppressJoinFailure(getSuppressJoinFailure(atts));
+        if (atts.hasAtt("queryLanguage")) {
+            _process.setQueryLanguage(atts.getValue("queryLanguage"));
+        }
+        if (atts.hasAtt("expressionLanguage")) {
+            
_process.setExpressionLanguage(atts.getValue("expressionLanguage"));
+        }
+        /*
+        * NOTE: Xerces automatically fills in the default value of the 
attribute for us,
+        * in this case "no" for enableInstanceCompensation and 
abstractProcess.  Thus,
+        * we can't warn if it's present because we don't know if the user or 
the parser
+        * put it in...
+        */
+        if (atts.hasAtt("enableInstanceCompensation") && 
checkYesNo(atts.getValue("enableInstanceCompensation"))) {
+            pc.parseError(ParseError.WARNING,se,
+                    "","Instance compensation is not well-defined; it will not 
be used at runtime.");
+        }
+        if (atts.hasAtt("abstractProcess") && 
checkYesNo(atts.getValue("abstractProcess"))) {
+            pc.parseError(ParseError.FATAL,se,
+                    "","ODE does not support the parsing or compilation of 
abstract processes.");
+            // TODO: Get a real error key.
+        }
+    }
+
+    /**
+     * @see 
org.apache.ode.sax.fsa.State#handleChildCompleted(org.apache.ode.sax.fsa.State)
+     */
+    public void handleChildCompleted(State pn) throws ParseException {
+        switch (pn.getType()) {
+            case BPEL_IMPORT:
+                _process.addImport(((BpelImportState)pn).getImport());
+                break;
+            case BPEL_PARTNERLINKS:
+                for (Iterator<PartnerLink> it = 
((BpelPartnerLinksState)pn).getPartnerLinks();it.hasNext();) {
+                    _process.addPartnerLink(it.next());
+                }
+                break;
+            case BPEL_PARTNERS:
+                throw new IllegalStateException("" + BPEL_PARTNERS);
+            case BPEL_VARIABLES:
+                for (Iterator<Variable> it = 
((BpelVariablesState)pn).getVariables();it.hasNext();) {
+                    _process.addVariable(it.next());
+                }
+                break;
+            case BPEL_CORRELATIONSETS:
+                for (Iterator<CorrelationSet> it = 
((BpelCorrelationSetsState)pn).getCorrelationSets();it.hasNext();) {
+                    _process.addCorrelationSet(it.next());
+                }
+                break;
+            case BPEL_FAULTHANDLERS:
+                
_process.setFaultHandler(((BpelFaultHandlersState)pn).getFaultHandler());
+                break;
+            case BPEL_TERMINATIONHANDLER:
+                
_process.setTerminationHandler(((BpelTerminationHandlerState)pn).getTerminationHandler());
+                break;
+            case BPEL_EVENTHANDLERS:
+                for (Iterator<OnEvent> it = 
((BpelEventHandlersState)pn).getOnEventHandlers();it.hasNext();) {
+                    _process.addOnEventHandler(it.next());
+                }
+                for (Iterator<OnAlarm> it = 
((BpelEventHandlersState)pn).getOnAlarmHandlers();it.hasNext();) {
+                    _process.addOnAlarmEventHandler(it.next());
+                }
+                break;
+            default:
+                if (pn instanceof ActivityStateI) {
+                    
_process.setRootActivity(((ActivityStateI)pn).getActivity());
+                } else {
+                    super.handleChildCompleted(pn);
+                }
+        }
+    }
+
+    public Process getProcess() {
+        return _process;
+    }
+
+    /**
+     * @see org.apache.ode.sax.fsa.State#getFactory()
+     */
+    public StateFactory getFactory() {
+        return _factory;
+    }
+
+    /**
+     * @see org.apache.ode.sax.fsa.State#getType()
      */
-    if (atts.hasAtt("enableInstanceCompensation") && 
checkYesNo(atts.getValue("enableInstanceCompensation"))) {
-      pc.parseError(ParseError.WARNING,se,
-          "","Instance compensation is not well-defined; it will not be used 
at runtime.");
-    }
-    if (atts.hasAtt("abstractProcess") && 
checkYesNo(atts.getValue("abstractProcess"))) {
-      pc.parseError(ParseError.FATAL,se,
-          "","ODE does not support the parsing or compilation of abstract 
processes.");
-      // TODO: Get a real error key.
-    }
-  }
-  
-  /**
-   * @see 
org.apache.ode.sax.fsa.State#handleChildCompleted(org.apache.ode.sax.fsa.State)
-   */
-  public void handleChildCompleted(State pn) throws ParseException {
-    switch (pn.getType()) {
-    case BPEL_IMPORT:
-      _process.addImport(((BpelImportState)pn).getImport());
-      break;
-    case BPEL_PARTNERLINKS:
-      for (Iterator<PartnerLink> it = 
((BpelPartnerLinksState)pn).getPartnerLinks();it.hasNext();) {
-        _process.addPartnerLink(it.next());
-      }
-      break;
-    case BPEL_PARTNERS:
-      throw new IllegalStateException("" + BPEL_PARTNERS);
-    case BPEL_VARIABLES:
-      for (Iterator<Variable> it = 
((BpelVariablesState)pn).getVariables();it.hasNext();) {
-        _process.addVariable(it.next());
-      }
-      break;
-    case BPEL_CORRELATIONSETS:
-      for (Iterator<CorrelationSet> it = 
((BpelCorrelationSetsState)pn).getCorrelationSets();it.hasNext();) {
-        _process.addCorrelationSet(it.next());
-      }
-      break;
-    case BPEL_FAULTHANDLERS:
-      _process.setFaultHandler(((BpelFaultHandlersState)pn).getFaultHandler());
-      break;
-    case BPEL_TERMINATIONHANDLER:
-      
_process.setTerminationHandler(((BpelTerminationHandlerState)pn).getTerminationHandler());
-      break;
-    case BPEL_EVENTHANDLERS:
-      for (Iterator<OnEvent> it = 
((BpelEventHandlersState)pn).getOnEventHandlers();it.hasNext();) {
-        _process.addOnEventHandler(it.next());
-      }
-      for (Iterator<OnAlarm> it = 
((BpelEventHandlersState)pn).getOnAlarmHandlers();it.hasNext();) {
-        _process.addOnAlarmEventHandler(it.next());
-      }      
-      break;
-    default:
-      if (pn instanceof ActivityStateI) {
-        _process.setRootActivity(((ActivityStateI)pn).getActivity()); 
-      } else {
-        super.handleChildCompleted(pn);
-      }
-    }
-  }
-
-  public Process getProcess() {
-    return _process;
-  }
-  
-  /**
-   * @see org.apache.ode.sax.fsa.State#getFactory()
-   */
-  public StateFactory getFactory() {
-    return _factory;
-  }
-
-  /**
-   * @see org.apache.ode.sax.fsa.State#getType()
-   */
-  public int getType() {
-    return BPEL_PROCESS;
-  }
-  
-  public static class Factory implements StateFactory {
-    
+    public int getType() {
+        return BPEL_PROCESS;
+    }
+
+    public static class Factory implements StateFactory {
+
 
-    public State newInstance(StartElement se, ParseContext pc) throws 
ParseException {
-      return new BpelProcessState(se,pc);
+        public State newInstance(StartElement se, ParseContext pc) throws 
ParseException {
+            return new BpelProcessState(se,pc);
+        }
     }
-  }
 }


Reply via email to