You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ode.apache.org by ad...@apache.org on 2006/02/28 17:05:47 UTC

svn commit: r381686 [38/40] - in /incubator/ode/scratch/bpe: ./ bpelTests/ bpelTests/probeService/ bpelTests/test1/ bpelTests/test10/ bpelTests/test12/ bpelTests/test13/ bpelTests/test14/ bpelTests/test15/ bpelTests/test16/ bpelTests/test17/ bpelTests/...

Added: incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/BPELPropertyAliasSerializer.java
URL: http://svn.apache.org/viewcvs/incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/BPELPropertyAliasSerializer.java?rev=381686&view=auto
==============================================================================
--- incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/BPELPropertyAliasSerializer.java (added)
+++ incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/BPELPropertyAliasSerializer.java Tue Feb 28 08:02:48 2006
@@ -0,0 +1,171 @@
+/*
+* Confidential property of Sybase, Inc.
+*
+* Copyright 1987 - 2006.
+*
+* Sybase, Inc. All rights reserved.
+*
+* Unpublished rights reserved under U.S. copyright laws.
+*
+* This software contains confidential and trade secret information
+* of Sybase, Inc. Use, duplication or disclosure of the software and
+* documentation by the U.S. Government is subject to restrictions
+* set forth in a license agreement between the Government and Sybase,
+* Inc. or other written agreement specifying the Government's rights
+* to use the software and any applicable FAR provisions, for example,
+* FAR 52.227-19.
+*
+* Sybase, Inc. One Sybase Drive, Dublin, CA 94568, USA
+*
+* http://www.sybase.com
+*/
+/*
+ * Created on Aug 11, 2003
+ *
+ */
+package com.sybase.bpe.wsdl.extensions;
+
+import java.io.PrintWriter;
+import java.io.Serializable;
+import java.util.Collection;
+import java.util.Iterator;
+
+import javax.wsdl.Definition;
+import javax.wsdl.WSDLException;
+import javax.wsdl.extensions.ExtensibilityElement;
+import javax.wsdl.extensions.ExtensionDeserializer;
+import javax.wsdl.extensions.ExtensionRegistry;
+import javax.wsdl.extensions.ExtensionSerializer;
+import javax.xml.namespace.QName;
+
+import org.w3c.dom.Element;
+
+import com.ibm.wsdl.Constants;
+import com.ibm.wsdl.util.xml.DOMUtils;
+import com.sybase.bpe.util.NamespaceUtil;
+
+/**
+ * @author waterman
+ *
+ */
+public class BPELPropertyAliasSerializer
+	implements ExtensionDeserializer, ExtensionSerializer, Serializable {
+	
+    static final long serialVersionUID = 4636224511528911916L;
+
+	/**
+	 * 
+	 */
+	public BPELPropertyAliasSerializer() {
+		super();
+	}
+
+	/**
+	 * @see javax.wsdl.extensions.ExtensionDeserializer#unmarshall(java.lang.Class, javax.xml.namespace.QName, org.w3c.dom.Element, javax.wsdl.Definition, javax.wsdl.extensions.ExtensionRegistry)
+	 */
+	public ExtensibilityElement unmarshall(
+		Class parentType,
+		QName elementType,
+		Element el,
+		Definition def,
+		ExtensionRegistry extReg)
+		throws WSDLException {
+			BPELPropertyAlias bpelPropertyAlias = (BPELPropertyAlias)extReg.createExtension(parentType,elementType);
+			QName propName = DOMUtils.getQualifiedAttributeValue(el,
+															ExtentionConstants.ATTR_PROPNAME,
+															ExtentionConstants.ELEM_PROPERTY,
+															false,def);
+			QName msgType = DOMUtils.getQualifiedAttributeValue(el,
+															ExtentionConstants.ATTR_MSGTYPE,
+															ExtentionConstants.ELEM_PROPERTY,
+															false,def);
+			String part = DOMUtils.getAttribute(el, ExtentionConstants.ATTR_PART);
+			String query = DOMUtils.getAttribute(el,ExtentionConstants.ATTR_QUERY);
+			
+			String requiredStr = DOMUtils.getAttributeNS(el,
+														 Constants.NS_URI_WSDL,
+														 Constants.ATTR_REQUIRED);
+
+			if (propName != null) bpelPropertyAlias.setPropertyName(propName);
+			if (msgType != null) bpelPropertyAlias.setMessageType(msgType);
+			if (part != null) bpelPropertyAlias.setPart(part);
+			if (query != null)
+			{
+				bpelPropertyAlias.setQuery(query);
+				// Need to build a namespace map
+				Collection nsCol = NamespaceUtil.getNamespacePrefixes(query);
+				//HashMap nsMap = new HashMap();
+				String nsMap = "";
+				for (Iterator iter = nsCol.iterator(); iter.hasNext(); )
+				{
+					String prefix = (String)iter.next();
+					nsMap += prefix;
+					nsMap +="|";
+					nsMap += def.getNamespace(prefix);
+					nsMap +="|";
+
+				}
+
+				bpelPropertyAlias.setNamespaceMap( nsMap );
+			}
+			if (requiredStr != null ) bpelPropertyAlias.setRequired(new Boolean(requiredStr));
+			
+
+
+			return bpelPropertyAlias;
+	}
+
+	/* (non-Javadoc)
+	 * @see javax.wsdl.extensions.ExtensionSerializer#marshall(java.lang.Class, javax.xml.namespace.QName, javax.wsdl.extensions.ExtensibilityElement, java.io.PrintWriter, javax.wsdl.Definition, javax.wsdl.extensions.ExtensionRegistry)
+	 */
+	public void marshall(
+		Class parentType,
+		QName elementType,
+		ExtensibilityElement extension,
+		PrintWriter pw,
+		Definition def,
+		ExtensionRegistry extReg)
+		throws WSDLException {
+			if (extension != null)
+			{
+				BPELPropertyAlias bpelPropertyAlias = (BPELPropertyAlias)extension;
+
+				
+			  String tagName =
+				DOMUtils.getQualifiedValue(ExtentionConstants.NS_URI_BPEL,
+										   ExtentionConstants.ELEM_ALIAS,
+										   def);
+
+			  pw.print("      <" + tagName);
+
+			  DOMUtils.printQualifiedAttribute(ExtentionConstants.ATTR_PROPNAME,
+												bpelPropertyAlias.getPropertyName(),
+												def,
+												pw);
+			  DOMUtils.printQualifiedAttribute(ExtentionConstants.ATTR_MSGTYPE,
+												  bpelPropertyAlias.getMessageType(),
+												  def,
+												  pw);
+              DOMUtils.printAttribute(ExtentionConstants.ATTR_PART,
+										bpelPropertyAlias.getPart(),
+										pw);
+			  DOMUtils.printAttribute(ExtentionConstants.ATTR_QUERY,
+										  bpelPropertyAlias.getQuery(),
+										  pw);
+
+			  Boolean required = bpelPropertyAlias.getRequired();
+
+			  if (required != null)
+			  {
+				DOMUtils.printQualifiedAttribute(Constants.Q_ATTR_REQUIRED,
+												 required.toString(),
+												 def,
+												 pw);
+			  }
+
+			  pw.println("/>");
+			}
+
+	}
+
+}

Added: incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/BPELPropertySerializer.java
URL: http://svn.apache.org/viewcvs/incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/BPELPropertySerializer.java?rev=381686&view=auto
==============================================================================
--- incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/BPELPropertySerializer.java (added)
+++ incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/BPELPropertySerializer.java Tue Feb 28 08:02:48 2006
@@ -0,0 +1,135 @@
+/*
+* Confidential property of Sybase, Inc.
+*
+* Copyright 1987 - 2006.
+*
+* Sybase, Inc. All rights reserved.
+*
+* Unpublished rights reserved under U.S. copyright laws.
+*
+* This software contains confidential and trade secret information
+* of Sybase, Inc. Use, duplication or disclosure of the software and
+* documentation by the U.S. Government is subject to restrictions
+* set forth in a license agreement between the Government and Sybase,
+* Inc. or other written agreement specifying the Government's rights
+* to use the software and any applicable FAR provisions, for example,
+* FAR 52.227-19.
+*
+* Sybase, Inc. One Sybase Drive, Dublin, CA 94568, USA
+*
+* http://www.sybase.com
+*/
+/*
+ * Created on Aug 11, 2003
+ *
+ */
+package com.sybase.bpe.wsdl.extensions;
+
+import java.io.PrintWriter;
+import java.io.Serializable;
+
+import javax.wsdl.Definition;
+import javax.wsdl.WSDLException;
+import javax.wsdl.extensions.ExtensibilityElement;
+import javax.wsdl.extensions.ExtensionDeserializer;
+import javax.wsdl.extensions.ExtensionRegistry;
+import javax.wsdl.extensions.ExtensionSerializer;
+import javax.xml.namespace.QName;
+
+import org.w3c.dom.Element;
+
+import com.ibm.wsdl.Constants;
+import com.ibm.wsdl.util.xml.DOMUtils;
+
+/**
+ * @author waterman
+ *
+ */
+public class BPELPropertySerializer
+	implements ExtensionDeserializer, ExtensionSerializer, Serializable {
+	
+    static final long serialVersionUID = 2411371675589717559L;
+
+	/**
+	 * 
+	 */
+	public BPELPropertySerializer() {
+		super();
+	}
+
+	/**
+	 * @see javax.wsdl.extensions.ExtensionDeserializer#unmarshall(java.lang.Class, javax.xml.namespace.QName, org.w3c.dom.Element, javax.wsdl.Definition, javax.wsdl.extensions.ExtensionRegistry)
+	 */
+	public ExtensibilityElement unmarshall(
+		Class parentType,
+		QName elementType,
+		Element el,
+		Definition def,
+		ExtensionRegistry extReg)
+		throws WSDLException {
+			BPELProperty bpelProperty = (BPELProperty)extReg.createExtension(parentType,elementType);
+			QName type = DOMUtils.getQualifiedAttributeValue(el,
+															ExtentionConstants.ATTR_TYPE,
+															ExtentionConstants.ELEM_PROPERTY,
+															false,def);
+			String name = DOMUtils.getAttribute(el, ExtentionConstants.ATTR_NAME);
+
+			String requiredStr = DOMUtils.getAttributeNS(el,
+														 Constants.NS_URI_WSDL,
+														 Constants.ATTR_REQUIRED);
+
+			if (name != null) bpelProperty.setName(name);
+			if (type != null)  bpelProperty.setType(type);
+			if (requiredStr != null ) bpelProperty.setRequired(new Boolean(requiredStr));
+
+			return bpelProperty;
+	}
+
+	/**
+	 * @see javax.wsdl.extensions.ExtensionSerializer#marshall(java.lang.Class, javax.xml.namespace.QName, javax.wsdl.extensions.ExtensibilityElement, java.io.PrintWriter, javax.wsdl.Definition, javax.wsdl.extensions.ExtensionRegistry)
+	 */
+	public void marshall(
+		Class parentType,
+		QName elementType,
+		ExtensibilityElement extension,
+		PrintWriter pw,
+		Definition def,
+		ExtensionRegistry extReg)
+		throws WSDLException {
+
+			if (extension != null)
+			{
+				BPELProperty bpelProperty = (BPELProperty)extension;
+
+				
+			  String tagName =
+				DOMUtils.getQualifiedValue(ExtentionConstants.NS_URI_BPEL,
+										   ExtentionConstants.ELEM_PROPERTY,
+										   def);
+
+			  pw.print("      <" + tagName);
+
+			  DOMUtils.printAttribute(ExtentionConstants.ATTR_NAME,
+									  bpelProperty.getName(),
+									  pw);
+			  DOMUtils.printQualifiedAttribute(ExtentionConstants.ATTR_TYPE,
+			  									bpelProperty.getType(),
+			  									def,
+			  									pw);
+
+			  Boolean required = bpelProperty.getRequired();
+
+			  if (required != null)
+			  {
+				DOMUtils.printQualifiedAttribute(Constants.Q_ATTR_REQUIRED,
+												 required.toString(),
+												 def,
+												 pw);
+			  }
+
+			  pw.println("/>");
+			}
+
+	}
+
+}

Added: incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/BPEOutput.java
URL: http://svn.apache.org/viewcvs/incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/BPEOutput.java?rev=381686&view=auto
==============================================================================
--- incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/BPEOutput.java (added)
+++ incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/BPEOutput.java Tue Feb 28 08:02:48 2006
@@ -0,0 +1,101 @@
+/*
+* Confidential property of Sybase, Inc.
+*
+* Copyright 1987 - 2006.
+*
+* Sybase, Inc. All rights reserved.
+*
+* Unpublished rights reserved under U.S. copyright laws.
+*
+* This software contains confidential and trade secret information
+* of Sybase, Inc. Use, duplication or disclosure of the software and
+* documentation by the U.S. Government is subject to restrictions
+* set forth in a license agreement between the Government and Sybase,
+* Inc. or other written agreement specifying the Government's rights
+* to use the software and any applicable FAR provisions, for example,
+* FAR 52.227-19.
+*
+* Sybase, Inc. One Sybase Drive, Dublin, CA 94568, USA
+*
+* http://www.sybase.com
+*/
+/*
+ * Created on:	Nov 8, 2003
+ * Project:		BPEELocal
+ * Package:		com.sybase.bpe.wsdl.extensions 
+ * Author:		waterman	
+ */
+package com.sybase.bpe.wsdl.extensions;
+
+import java.io.Serializable;
+
+import javax.wsdl.extensions.ExtensibilityElement;
+import javax.xml.namespace.QName;
+
+/**
+ * 
+ * 
+ * @author waterman
+ */
+public class BPEOutput implements ExtensibilityElement, Serializable {
+	
+    static final long serialVersionUID = -831277673520314104L;
+
+	protected QName elementType = ExtentionConstants.Q_ELEM_BPE_OUTPUT;
+	protected Boolean required;
+	protected String part;
+	protected String type;
+
+	/**
+	 * 
+	 */
+	public BPEOutput() {
+	}
+
+	/**
+	 * @see javax.wsdl.extensions.ExtensibilityElement#getElementType()
+	 */
+	public QName getElementType() {
+		return elementType;
+	}
+
+	/**
+	 * @see javax.wsdl.extensions.ExtensibilityElement#getRequired()
+	 */
+	public Boolean getRequired() {
+		return required;
+	}
+
+	/**
+	 * @see javax.wsdl.extensions.ExtensibilityElement#setElementType(javax.xml.namespace.QName)
+	 */
+	public void setElementType(QName arg0) {
+		elementType = arg0;
+
+	}
+
+	/**
+	 * @see javax.wsdl.extensions.ExtensibilityElement#setRequired(java.lang.Boolean)
+	 */
+	public void setRequired(Boolean arg0) {
+		required = arg0;
+
+	}
+	
+	public String getPart() {
+		return part;
+	}
+	
+	public void setPart(String arg0) {
+		part = arg0;
+	}
+
+	public String getType() {
+		return type;
+	}
+
+	public void setType(String arg0) {
+		type = arg0;
+	}
+
+}

Added: incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/BPEOutputSerializer.java
URL: http://svn.apache.org/viewcvs/incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/BPEOutputSerializer.java?rev=381686&view=auto
==============================================================================
--- incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/BPEOutputSerializer.java (added)
+++ incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/BPEOutputSerializer.java Tue Feb 28 08:02:48 2006
@@ -0,0 +1,132 @@
+/*
+* Confidential property of Sybase, Inc.
+*
+* Copyright 1987 - 2006.
+*
+* Sybase, Inc. All rights reserved.
+*
+* Unpublished rights reserved under U.S. copyright laws.
+*
+* This software contains confidential and trade secret information
+* of Sybase, Inc. Use, duplication or disclosure of the software and
+* documentation by the U.S. Government is subject to restrictions
+* set forth in a license agreement between the Government and Sybase,
+* Inc. or other written agreement specifying the Government's rights
+* to use the software and any applicable FAR provisions, for example,
+* FAR 52.227-19.
+*
+* Sybase, Inc. One Sybase Drive, Dublin, CA 94568, USA
+*
+* http://www.sybase.com
+*/
+/*
+ * Created on:	Nov 8, 2003
+ * Project:		BPEELocal
+ * Package:		com.sybase.bpe.wsdl.extensions 
+ * Author:		waterman	
+ */
+package com.sybase.bpe.wsdl.extensions;
+
+import java.io.PrintWriter;
+import java.io.Serializable;
+
+import javax.wsdl.Definition;
+import javax.wsdl.WSDLException;
+import javax.wsdl.extensions.ExtensibilityElement;
+import javax.wsdl.extensions.ExtensionDeserializer;
+import javax.wsdl.extensions.ExtensionRegistry;
+import javax.wsdl.extensions.ExtensionSerializer;
+import javax.xml.namespace.QName;
+
+import org.w3c.dom.Element;
+
+import com.ibm.wsdl.Constants;
+import com.ibm.wsdl.util.xml.DOMUtils;
+
+/**
+ * 
+ * 
+ * @author waterman
+ */
+public class BPEOutputSerializer
+	implements ExtensionDeserializer, ExtensionSerializer, Serializable {
+	
+    static final long serialVersionUID = -4354165166462080088L;
+
+	/**
+	 * 
+	 */
+	public BPEOutputSerializer() {
+	}
+
+	/**
+	 * @see javax.wsdl.extensions.ExtensionDeserializer#unmarshall(java.lang.Class, javax.xml.namespace.QName, org.w3c.dom.Element, javax.wsdl.Definition, javax.wsdl.extensions.ExtensionRegistry)
+	 */
+	public ExtensibilityElement unmarshall(
+		Class parentType,
+		QName elementType,
+		Element el,
+		Definition def,
+		ExtensionRegistry extReg)
+		throws WSDLException {
+			BPEOutput bpeOutput = (BPEOutput)extReg.createExtension(parentType,elementType);
+			String type = DOMUtils.getAttribute(el,ExtentionConstants.ATTR_TYPE);
+			String part = DOMUtils.getAttribute(el, ExtentionConstants.ATTR_PART);
+
+			String requiredStr = DOMUtils.getAttributeNS(el,
+														 Constants.NS_URI_WSDL,
+														 Constants.ATTR_REQUIRED);
+
+			if (part != null) bpeOutput.setPart(part);
+			if (type != null) bpeOutput.setType(type);
+			if (requiredStr != null ) bpeOutput.setRequired(new Boolean(requiredStr));
+
+			return bpeOutput;
+	}
+
+	/**
+	 * @see javax.wsdl.extensions.ExtensionSerializer#marshall(java.lang.Class, javax.xml.namespace.QName, javax.wsdl.extensions.ExtensibilityElement, java.io.PrintWriter, javax.wsdl.Definition, javax.wsdl.extensions.ExtensionRegistry)
+	 */
+	public void marshall(
+		Class parentType,
+		QName elementType,
+		ExtensibilityElement extension,
+		PrintWriter pw,
+		Definition def,
+		ExtensionRegistry extReg)
+		throws WSDLException {
+			if (extension != null)
+			{
+				BPEOutput bpeOutput = (BPEOutput)extension;
+
+				
+			  String tagName =
+				DOMUtils.getQualifiedValue(ExtentionConstants.NS_URI_BPE,
+										   ExtentionConstants.ELEM_OUTPUT,
+										   def);
+
+			  pw.print("      <" + tagName);
+
+			  DOMUtils.printAttribute(ExtentionConstants.ATTR_PART,
+									  bpeOutput.getPart(),
+									  pw);
+			  DOMUtils.printAttribute(ExtentionConstants.ATTR_TYPE,
+									  bpeOutput.getType(),
+									  pw);
+
+			  Boolean required = bpeOutput.getRequired();
+
+			  if (required != null)
+			  {
+				DOMUtils.printQualifiedAttribute(Constants.Q_ATTR_REQUIRED,
+												 required.toString(),
+												 def,
+												 pw);
+			  }
+
+			  pw.println("/>");
+			}
+
+	}
+
+}

Added: incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/BPEVariableMap.java
URL: http://svn.apache.org/viewcvs/incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/BPEVariableMap.java?rev=381686&view=auto
==============================================================================
--- incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/BPEVariableMap.java (added)
+++ incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/BPEVariableMap.java Tue Feb 28 08:02:48 2006
@@ -0,0 +1,132 @@
+/*
+* Confidential property of Sybase, Inc.
+*
+* Copyright 1987 - 2006.
+*
+* Sybase, Inc. All rights reserved.
+*
+* Unpublished rights reserved under U.S. copyright laws.
+*
+* This software contains confidential and trade secret information
+* of Sybase, Inc. Use, duplication or disclosure of the software and
+* documentation by the U.S. Government is subject to restrictions
+* set forth in a license agreement between the Government and Sybase,
+* Inc. or other written agreement specifying the Government's rights
+* to use the software and any applicable FAR provisions, for example,
+* FAR 52.227-19.
+*
+* Sybase, Inc. One Sybase Drive, Dublin, CA 94568, USA
+*
+* http://www.sybase.com
+*/
+/*
+ * Created on:	Nov 8, 2003
+ * Project:		BPEELocal
+ * Package:		com.sybase.bpe.wsdl.extensions 
+ * Author:		waterman	
+ */
+package com.sybase.bpe.wsdl.extensions;
+
+import java.io.Serializable;
+
+import javax.wsdl.extensions.ExtensibilityElement;
+import javax.xml.namespace.QName;
+
+import com.sybase.bpe.interaction.IInvocationFactory;
+import com.sybase.bpe.interaction.builders.IInteractionBuilder;
+
+/**
+ * 
+ * 
+ * @author waterman
+ */
+public class BPEVariableMap implements ExtensibilityElement, Serializable {
+	
+    static final long serialVersionUID = 1779014588217794117L;
+
+	protected QName elementType = ExtentionConstants.Q_ELEM_BPE_VAR;
+	protected Boolean required;
+	protected QName name;
+	protected String part;
+	protected String builder;
+	protected String invocationFactory;
+
+	/**
+	 * 
+	 */
+	public BPEVariableMap() {
+	}
+
+	/**
+	 * @see javax.wsdl.extensions.ExtensibilityElement#getElementType()
+	 */
+	public QName getElementType() {
+		return elementType;
+	}
+
+	/**
+	 * @see javax.wsdl.extensions.ExtensibilityElement#getRequired()
+	 */
+	public Boolean getRequired() {
+		return required;
+	}
+
+	/**
+	 * @see javax.wsdl.extensions.ExtensibilityElement#setElementType(javax.xml.namespace.QName)
+	 */
+	public void setElementType(QName arg0) {
+		elementType = arg0;
+	}
+
+	/**
+	 * @see javax.wsdl.extensions.ExtensibilityElement#setRequired(java.lang.Boolean)
+	 */
+	public void setRequired(Boolean arg0) {
+		required = arg0;
+
+	}
+	
+	public QName getName() {
+		return name;
+	}
+	
+	public void setName(QName arg0) {
+		name = arg0;
+	}
+
+	public String getPart() {
+		return part;
+	}
+
+	public void setPart(String arg0) {
+		part = arg0;
+	}
+	
+	public IInteractionBuilder getBuilder() throws ClassNotFoundException, InstantiationException, IllegalAccessException {
+		Class instClass = java.lang.Class.forName(builder);
+		// try to instantiate the subclass
+		return (IInteractionBuilder)instClass.newInstance();
+	}
+	
+	public String getBuilderName() {
+		return builder;
+	}
+	
+	public void setBuilderName(String arg0) {
+		builder = arg0;
+	}
+	
+	public String getInvocationFactoryName() {
+		return invocationFactory;
+	}
+	
+	public void setInvocationFactoryName(String arg0) {
+		invocationFactory = arg0;
+	}
+	
+	public IInvocationFactory getInvocationFactory() throws ClassNotFoundException, InstantiationException, IllegalAccessException {
+		Class instClass = java.lang.Class.forName(invocationFactory);
+		// try to instantiate the subclass
+		return (IInvocationFactory)instClass.newInstance();
+	}
+}

Added: incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/BPEVariableMapSerializer.java
URL: http://svn.apache.org/viewcvs/incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/BPEVariableMapSerializer.java?rev=381686&view=auto
==============================================================================
--- incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/BPEVariableMapSerializer.java (added)
+++ incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/BPEVariableMapSerializer.java Tue Feb 28 08:02:48 2006
@@ -0,0 +1,166 @@
+/*
+* Confidential property of Sybase, Inc.
+*
+* Copyright 1987 - 2006.
+*
+* Sybase, Inc. All rights reserved.
+*
+* Unpublished rights reserved under U.S. copyright laws.
+*
+* This software contains confidential and trade secret information
+* of Sybase, Inc. Use, duplication or disclosure of the software and
+* documentation by the U.S. Government is subject to restrictions
+* set forth in a license agreement between the Government and Sybase,
+* Inc. or other written agreement specifying the Government's rights
+* to use the software and any applicable FAR provisions, for example,
+* FAR 52.227-19.
+*
+* Sybase, Inc. One Sybase Drive, Dublin, CA 94568, USA
+*
+* http://www.sybase.com
+*/
+/*
+ * Created on:	Nov 8, 2003
+ * Project:		BPEELocal
+ * Package:		com.sybase.bpe.wsdl.extensions 
+ * Author:		waterman	
+ */
+package com.sybase.bpe.wsdl.extensions;
+
+import java.io.PrintWriter;
+import java.io.Serializable;
+
+import javax.wsdl.Definition;
+import javax.wsdl.WSDLException;
+import javax.wsdl.extensions.ExtensibilityElement;
+import javax.wsdl.extensions.ExtensionDeserializer;
+import javax.wsdl.extensions.ExtensionRegistry;
+import javax.wsdl.extensions.ExtensionSerializer;
+import javax.xml.namespace.QName;
+
+import org.w3c.dom.Element;
+
+import com.ibm.wsdl.Constants;
+import com.ibm.wsdl.util.xml.DOMUtils;
+import com.sybase.bpe.lang.ResourceGetter;
+
+/**
+ * 
+ * 
+ * @author waterman
+ */
+public class BPEVariableMapSerializer
+	implements ExtensionDeserializer, ExtensionSerializer, Serializable {
+	
+    static final long serialVersionUID = 4341013775178735031L;
+    
+		
+	public static final String INVOCATION_FACTORY_DEFAULT = "com.sybase.bpe.interaction.InvocationFactory";
+
+	/**
+	 * 
+	 */
+	public BPEVariableMapSerializer() {
+	}
+
+	/**
+	 * @see javax.wsdl.extensions.ExtensionDeserializer#unmarshall(java.lang.Class, javax.xml.namespace.QName, org.w3c.dom.Element, javax.wsdl.Definition, javax.wsdl.extensions.ExtensionRegistry)
+	 */
+	public ExtensibilityElement unmarshall(
+		Class parentType,
+		QName elementType,
+		Element el,
+		Definition def,
+		ExtensionRegistry extReg)
+		throws WSDLException {
+			BPEVariableMap bpeVarMap = (BPEVariableMap)extReg.createExtension(parentType,elementType);
+			QName name = DOMUtils.getQualifiedAttributeValue(el,
+															ExtentionConstants.ATTR_NAME,
+															ExtentionConstants.ELEM_VAR,
+															false,def);
+
+			String part = DOMUtils.getAttribute(el,ExtentionConstants.ATTR_PART);
+			String builder = DOMUtils.getAttribute(el,ExtentionConstants.ATTR_BUILDER);
+			String invocation = DOMUtils.getAttribute(el,ExtentionConstants.ATTR_INV);
+
+
+			String requiredStr = DOMUtils.getAttributeNS(el,
+														 Constants.NS_URI_WSDL,
+														 Constants.ATTR_REQUIRED);
+
+			if (name == null) {
+				throw new WSDLException(WSDLException.OTHER_ERROR,ResourceGetter.getFormatted("WSDL_NAME_ATTR_REQ", null ));
+			}else {
+				 bpeVarMap.setName(name);
+			}
+				  
+			if (part != null) bpeVarMap.setPart(part);
+			
+			if (builder == null) {
+				throw new WSDLException(WSDLException.OTHER_ERROR,ResourceGetter.getFormatted("WSDL_BUILDER_ATTR_REQ", null ));
+			} else {
+				bpeVarMap.setBuilderName(builder);
+			} 
+			
+			if ( invocation == null ) {
+				bpeVarMap.setInvocationFactoryName(INVOCATION_FACTORY_DEFAULT);
+			} else {
+				bpeVarMap.setInvocationFactoryName(invocation);
+			}
+			
+			if (requiredStr != null ) bpeVarMap.setRequired(new Boolean(requiredStr));
+
+			return bpeVarMap;
+	}
+
+	/**
+	 * @see javax.wsdl.extensions.ExtensionSerializer#marshall(java.lang.Class, javax.xml.namespace.QName, javax.wsdl.extensions.ExtensibilityElement, java.io.PrintWriter, javax.wsdl.Definition, javax.wsdl.extensions.ExtensionRegistry)
+	 */
+	public void marshall(
+		Class parentType,
+		QName elementType,
+		ExtensibilityElement extension,
+		PrintWriter pw,
+		Definition def,
+		ExtensionRegistry extReg)
+		throws WSDLException {
+			if (extension != null)
+			{
+				BPEVariableMap bpeVarMap = (BPEVariableMap)extension;
+
+				
+			  String tagName =
+				DOMUtils.getQualifiedValue(ExtentionConstants.NS_URI_BPE,
+										   ExtentionConstants.ELEM_VAR,
+										   def);
+
+			  pw.print("      <" + tagName);
+
+			  DOMUtils.printQualifiedAttribute(ExtentionConstants.ATTR_NAME,
+												bpeVarMap.getName(),
+												def,
+												pw);
+			  if ( bpeVarMap.getPart() != null ) 
+			  	DOMUtils.printAttribute(ExtentionConstants.ATTR_PART,
+									  bpeVarMap.getPart(),
+									  pw);
+			  DOMUtils.printAttribute(ExtentionConstants.ATTR_BUILDER,
+										bpeVarMap.getBuilderName(),
+										pw);
+				if ( bpeVarMap.getInvocationFactoryName() != null ) 
+				  DOMUtils.printAttribute(ExtentionConstants.ATTR_PART,
+										bpeVarMap.getInvocationFactoryName(),
+										pw);
+
+			  if (bpeVarMap.getRequired() != null)
+					DOMUtils.printQualifiedAttribute(Constants.Q_ATTR_REQUIRED,
+												 bpeVarMap.getRequired().toString(),
+												 def,
+												 pw);
+
+			  pw.println("/>");
+			}
+
+	}
+
+}

Added: incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/ExtentionConstants.java
URL: http://svn.apache.org/viewcvs/incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/ExtentionConstants.java?rev=381686&view=auto
==============================================================================
--- incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/ExtentionConstants.java (added)
+++ incubator/ode/scratch/bpe/src/main/java/com/sybase/bpe/wsdl/extensions/ExtentionConstants.java Tue Feb 28 08:02:48 2006
@@ -0,0 +1,84 @@
+/*
+* Confidential property of Sybase, Inc.
+*
+* Copyright 1987 - 2006.
+*
+* Sybase, Inc. All rights reserved.
+*
+* Unpublished rights reserved under U.S. copyright laws.
+*
+* This software contains confidential and trade secret information
+* of Sybase, Inc. Use, duplication or disclosure of the software and
+* documentation by the U.S. Government is subject to restrictions
+* set forth in a license agreement between the Government and Sybase,
+* Inc. or other written agreement specifying the Government's rights
+* to use the software and any applicable FAR provisions, for example,
+* FAR 52.227-19.
+*
+* Sybase, Inc. One Sybase Drive, Dublin, CA 94568, USA
+*
+* http://www.sybase.com
+*/
+/*
+ * Created on Aug 11, 2003
+ *
+ */
+package com.sybase.bpe.wsdl.extensions;
+
+import javax.xml.namespace.*;
+
+/**
+ * Constants used for WSDL extensions
+ * 
+ * @author waterman
+ *
+ */
+public class ExtentionConstants {
+
+	// Namespace URIs.
+	public static final String NS_URI_BPEL =
+	  "http://schemas.xmlsoap.org/ws/2003/03/business-process/";
+	public static final String NS_URI_BPE = "urn:sybase:bpe";
+
+	// Element names.
+	public static final String ELEM_PROPERTY = "property";
+	public static final String ELEM_ALIAS = "propertyAlias";
+	public static final String ELEM_ACTION = "action";
+	public static final String ELEM_VAR = "variableMap";
+	public static final String ELEM_INPUT = "input";
+	public static final String ELEM_OUTPUT = "output";
+	public static final String ELEM_FAULT = "fault";
+
+
+	// Qualified element names.
+	public static final QName Q_ELEM_BPEL_PROPERTY =
+	  new QName(NS_URI_BPEL, ELEM_PROPERTY);
+	public static final QName Q_ELEM_BPEL_PROPERTY_ALIAS =
+	  new QName(NS_URI_BPEL, ELEM_ALIAS);
+	public static final QName Q_ELEM_BPE_ACTION =
+	  new QName(NS_URI_BPE, ELEM_ACTION);
+	public static final QName Q_ELEM_BPE_VAR =
+	  new QName(NS_URI_BPE, ELEM_VAR);
+	public static final QName Q_ELEM_BPE_INPUT =
+	  new QName(NS_URI_BPE, ELEM_INPUT);
+	public static final QName Q_ELEM_BPE_OUTPUT = 
+	  new QName(NS_URI_BPE, ELEM_OUTPUT);
+	public static final QName Q_ELEM_BPE_FAULT =
+	  new QName(NS_URI_BPE, ELEM_FAULT);
+
+
+
+	// Attribute names.
+	public static final String ATTR_NAME = "name";
+	public static final String ATTR_TYPE = "type";
+	public static final String ATTR_PROPNAME = "propertyName";
+	public static final String ATTR_MSGTYPE = "messageType";
+	public static final String ATTR_QUERY = "query";
+	public static final String ATTR_PART = "part";
+	public static final String ATTR_IMPL = "implementation";
+	public static final String ATTR_BPEIMPL = "bpeImplementation";
+	public static final String ATTR_BUILDER = "builder";
+	public static final String ATTR_INV = "invocationFactory";
+	public static final String ATTR_BPECONT = "bpeContainer";
+
+}

Added: incubator/ode/scratch/bpe/src/main/java/com/sybase/uo/util/ApplicationLocal.java
URL: http://svn.apache.org/viewcvs/incubator/ode/scratch/bpe/src/main/java/com/sybase/uo/util/ApplicationLocal.java?rev=381686&view=auto
==============================================================================
--- incubator/ode/scratch/bpe/src/main/java/com/sybase/uo/util/ApplicationLocal.java (added)
+++ incubator/ode/scratch/bpe/src/main/java/com/sybase/uo/util/ApplicationLocal.java Tue Feb 28 08:02:48 2006
@@ -0,0 +1,46 @@
+/*
+* Confidential property of Sybase, Inc.
+*
+* Copyright 1987 - 2006.
+*
+* Sybase, Inc. All rights reserved.
+*
+* Unpublished rights reserved under U.S. copyright laws.
+*
+* This software contains confidential and trade secret information
+* of Sybase, Inc. Use, duplication or disclosure of the software and
+* documentation by the U.S. Government is subject to restrictions
+* set forth in a license agreement between the Government and Sybase,
+* Inc. or other written agreement specifying the Government's rights
+* to use the software and any applicable FAR provisions, for example,
+* FAR 52.227-19.
+*
+* Sybase, Inc. One Sybase Drive, Dublin, CA 94568, USA
+*
+* http://www.sybase.com
+*/
+package com.sybase.uo.util;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * The store is unique to each classloader that loads ApplcationLocal.
+ */
+public class ApplicationLocal implements IApplicationLocal {
+	
+	private static Map store = Collections.synchronizedMap(new HashMap());
+	
+	public Object get(Object key) {
+		return store.get(key);
+	}
+	
+	public void set(Object key, Object value) {
+			store.put(key,value);	
+	}
+
+	public void clear() {
+		store.clear();
+	}
+	
+}

Added: incubator/ode/scratch/bpe/src/main/java/com/sybase/uo/util/ApplicationLocalStore.java
URL: http://svn.apache.org/viewcvs/incubator/ode/scratch/bpe/src/main/java/com/sybase/uo/util/ApplicationLocalStore.java?rev=381686&view=auto
==============================================================================
--- incubator/ode/scratch/bpe/src/main/java/com/sybase/uo/util/ApplicationLocalStore.java (added)
+++ incubator/ode/scratch/bpe/src/main/java/com/sybase/uo/util/ApplicationLocalStore.java Tue Feb 28 08:02:48 2006
@@ -0,0 +1,67 @@
+/*
+* Confidential property of Sybase, Inc.
+*
+* Copyright 1987 - 2006.
+*
+* Sybase, Inc. All rights reserved.
+*
+* Unpublished rights reserved under U.S. copyright laws.
+*
+* This software contains confidential and trade secret information
+* of Sybase, Inc. Use, duplication or disclosure of the software and
+* documentation by the U.S. Government is subject to restrictions
+* set forth in a license agreement between the Government and Sybase,
+* Inc. or other written agreement specifying the Government's rights
+* to use the software and any applicable FAR provisions, for example,
+* FAR 52.227-19.
+*
+* Sybase, Inc. One Sybase Drive, Dublin, CA 94568, USA
+*
+* http://www.sybase.com
+*/
+package com.sybase.uo.util;
+
+/**
+ * Provides classloader level storage.  The classloader the store will reside
+ * in is the classloader that loads the ApplicationLocal.class.
+ */
+public class ApplicationLocalStore {
+	
+	private static IApplicationLocal getApplicationLocal() {
+		try {
+			Class clazz = Thread.currentThread().getContextClassLoader().loadClass(
+					"com.sybase.uo.util.ApplicationLocal");
+			return (IApplicationLocal) clazz.newInstance();	
+		} catch ( Exception e ) {
+			throw new RuntimeException(e);
+		}
+		
+	}
+	
+	/**
+	 * Set a mapped value in the store.
+	 * @param key key for the value
+	 * @param value the object to store
+	 */
+	public static void set(Object key, Object value){
+		getApplicationLocal().set(key,value);
+	}
+	
+	/**
+	 * Get a mapped value out of the store.
+	 * @param key key for the object to get
+	 * @return object from the store
+	 */
+	public static Object get(Object key){
+		return getApplicationLocal().get(key);
+	}
+	
+	/**
+	 * Clear the store.
+	 *
+	 */
+	public static void clear() {
+		getApplicationLocal().clear();
+	}
+
+}

Added: incubator/ode/scratch/bpe/src/main/java/com/sybase/uo/util/IApplicationLocal.java
URL: http://svn.apache.org/viewcvs/incubator/ode/scratch/bpe/src/main/java/com/sybase/uo/util/IApplicationLocal.java?rev=381686&view=auto
==============================================================================
--- incubator/ode/scratch/bpe/src/main/java/com/sybase/uo/util/IApplicationLocal.java (added)
+++ incubator/ode/scratch/bpe/src/main/java/com/sybase/uo/util/IApplicationLocal.java Tue Feb 28 08:02:48 2006
@@ -0,0 +1,28 @@
+/*
+* Confidential property of Sybase, Inc.
+*
+* Copyright 1987 - 2006.
+*
+* Sybase, Inc. All rights reserved.
+*
+* Unpublished rights reserved under U.S. copyright laws.
+*
+* This software contains confidential and trade secret information
+* of Sybase, Inc. Use, duplication or disclosure of the software and
+* documentation by the U.S. Government is subject to restrictions
+* set forth in a license agreement between the Government and Sybase,
+* Inc. or other written agreement specifying the Government's rights
+* to use the software and any applicable FAR provisions, for example,
+* FAR 52.227-19.
+*
+* Sybase, Inc. One Sybase Drive, Dublin, CA 94568, USA
+*
+* http://www.sybase.com
+*/
+package com.sybase.uo.util;
+
+public interface IApplicationLocal {
+	public void set(Object key, Object value);
+	public Object get(Object key);
+	public void clear();
+}

Added: incubator/ode/scratch/bpe/src/main/java/com/sybase/uo/util/ejb/ApplicationLocalStoreBean.java
URL: http://svn.apache.org/viewcvs/incubator/ode/scratch/bpe/src/main/java/com/sybase/uo/util/ejb/ApplicationLocalStoreBean.java?rev=381686&view=auto
==============================================================================
--- incubator/ode/scratch/bpe/src/main/java/com/sybase/uo/util/ejb/ApplicationLocalStoreBean.java (added)
+++ incubator/ode/scratch/bpe/src/main/java/com/sybase/uo/util/ejb/ApplicationLocalStoreBean.java Tue Feb 28 08:02:48 2006
@@ -0,0 +1,79 @@
+/*
+* Confidential property of Sybase, Inc.
+*
+* Copyright 1987 - 2006.
+*
+* Sybase, Inc. All rights reserved.
+*
+* Unpublished rights reserved under U.S. copyright laws.
+*
+* This software contains confidential and trade secret information
+* of Sybase, Inc. Use, duplication or disclosure of the software and
+* documentation by the U.S. Government is subject to restrictions
+* set forth in a license agreement between the Government and Sybase,
+* Inc. or other written agreement specifying the Government's rights
+* to use the software and any applicable FAR provisions, for example,
+* FAR 52.227-19.
+*
+* Sybase, Inc. One Sybase Drive, Dublin, CA 94568, USA
+*
+* http://www.sybase.com
+*/
+package com.sybase.uo.util.ejb;
+
+import java.io.Serializable;
+
+import javax.ejb.SessionBean;
+import javax.ejb.SessionContext;
+
+import com.sybase.uo.util.ApplicationLocalStore;
+
+/**
+ * This bean holds properties about the package.
+ * @ejb:bean 
+ *    type="Stateless"
+ *    name="ApplicationLocalStore"
+ *    jndi-name="UOBASE/ApplicationLocalStore"
+ *    view-type="remote"
+ * 
+ * @ejb.transaction type="Supports" 
+ * 
+ */
+public class ApplicationLocalStoreBean implements SessionBean {
+
+	/**
+	 * @ejb:interface-method
+	 */
+	public void clearStore() {
+		ApplicationLocalStore.clear();
+	}
+	
+	/**
+	 * @ejb:interface-method
+	 */
+	public void set(Serializable key, Serializable value){
+		ApplicationLocalStore.set(key,value);
+	}
+	
+	/**
+	 * @ejb:interface-method
+	 */
+	public Serializable get(Serializable key){
+		return (Serializable)ApplicationLocalStore.get(key);
+	}
+	
+	public void ejbCreate() {
+	}
+	public void setSessionContext(SessionContext ctx) {
+	}
+	public void ejbRemove() {
+	}
+	public void ejbActivate() {
+	}
+	public void ejbPassivate() {
+	}
+	public void ejbLoad() {
+	}
+	public void ejbStore() {
+	}
+}

Added: incubator/ode/scratch/bpe/src/main/resources/com/sybase/bpe/lang/ResourceBundle.properties
URL: http://svn.apache.org/viewcvs/incubator/ode/scratch/bpe/src/main/resources/com/sybase/bpe/lang/ResourceBundle.properties?rev=381686&view=auto
==============================================================================
--- incubator/ode/scratch/bpe/src/main/resources/com/sybase/bpe/lang/ResourceBundle.properties (added)
+++ incubator/ode/scratch/bpe/src/main/resources/com/sybase/bpe/lang/ResourceBundle.properties Tue Feb 28 08:02:48 2006
@@ -0,0 +1,153 @@
+NON_BPEL_CATCHALL=Default Error or Fault handler handled the following undefined error.
+SS_BAD_COMP_SCOPE_NAME=Explicit compensate error: Scope "{0}" does not exist.  Make sure the scope attribute of the compensate activity exists.
+ED_ED_SCMP=Syncronous call can not route to multiple processes.
+ED_ED_CE=Correlation Exception while routing message
+ED_ED_ISE=Instance Service  Exception while routing message
+ED_ED_BPE=BP Exception while routing message
+ED_ED_EWM=Error while matching registrations.
+IS_IMPL_PNF=Process not found: {0}
+DEF_IMPL_RDNF=Root definition not found: {0}
+ENG_PI_PNS=Process {0} not started; current state is {1}
+ACT_REG_MPN=Matching part name for {0} metadata not found.
+ED_ED_SMT=Stateless EventDirector can not spawn threads.
+ED_ED_ENM=Event was not matched to any action.
+ED_TMDB_MUT=Message body is not a matching object.
+ED_TMDB_NOBJ=Message is not an ObjectMessage.
+DEF_UTIL_USEAGE=Usage: DefintionServiceUtils load FILE or: DefintionServiceUtils get ID FILE
+DEF_UTIL_CHECK_FILE=Make sure file exists and is readable.
+DEF_PROC_USEAGE=Usage: ProcessControlUtilsstart ID
+LOADNGO_USEAGE=Usage: LoadandGo FILE ID
+ED_ED_NSR=No StaticRegistration found for key value {0}.
+ED_ED_NSR_R=An error occurred when attempting to route the service request for operation: {0}, port type: {1}, target namespace {2}, correlation key(s): {3} to a business process instance.  The correlation definition for this operation is as follows: {4}.  Inspect the business process design and verify that a business process instance is waiting for this request to be sent.
+CS_SR_NODUPS=Duplicate StaticRegistrations not allowed.
+CS_NO_SPRAY=Message route not unique, routing to multiple processes not supported.
+CS_NO_RECIEVE=No recieve activated for this message.
+ACT_NO_ME_PART={0} part not found in message.
+ACT_NO_ME=No message received.
+DS_DUP_STATIC=Duplicate static key definition, process definition {0} will not be referenced by {1}
+CS_NON_BPEL=Message can not be routed to two processes in a BPEL compliant engine.
+DEF_REPLACE=Replacing definition "{0}(version {1})" in definition repostiory.
+NULL_PROP=Null property value {0} found in initialization of action {1}.
+RT_XPATH=Attempt to use unitialized variable: {0} within XPATH expression: {1}.
+ACT_REG_BPEL_COMP=Error: Only one receive with the same namespace, port type, operation and correlation key can be active.  The following receive is already active: namespace:{0}, port type:{1}, operation:{2}, correlation key:{3}.  The active receive must be fulfilled before another can be registered.
+TIME_PARSE=Time parse for {0}
+TIME_NOT_SET=Duration or deadline not defined or not valid. 
+ASSIGN_ERROR=An error occurred during the execution of the business process.\n\tBusiness process name: {0}\n\tBusiness process instance ID: {1}\n\tActivity: Assign/Graft\n\tActivity ID: {2}\n\tSource variable: {3}\n\tTarget variable: {4}\n\tCause: Review previous messages in the log file for the exact cause.
+PRUNE_ERROR=An error occurred during the execution of the business process.\n\tBusiness process name: {0}\n\tBusiness process instance ID: {1}\n\tActivity: Prune\n\tActivity ID: {2}\n\tTarget variable{3}\n\tCause: Review previous messages in the log file for the exact cause.
+#REPLY_ERROR=The reply activity {0} failed.  The reply variable {1} is uninitialized.  Review the business process logic to ensure the reply variable is initialized prior to use.
+REPLY_ERROR=An error occurred during the execution of the business process.\n\tBusiness process name: {0}\n\tBusiness process instance ID: {1}\n\tActivity: Reply\n\tActivity ID: {2}\n\tCause: The response variable {3} is uninitialized.  Review the business process logic to ensure the reply variable is initialized prior to use.
+UNINITIALIZED_ASSIGN_ERROR=An error occurred during the execution of the business process.\n\tBusiness process name: {0}\n\tBusiness process instance ID: {1}\n\tActivity: Assign\n\tActivity ID: {2}\n\tSource variable: {3}\n\tTarget Variable: {4}\n\tCause: The source variable is uninitialized.  Review the business process logic to ensure that the source variable is set prior to this activity or that the correct source variable has been selected.
+UNINITIALIZED_INVOKE_ERROR=An error occurred during the execution of the business process.\n\tBusiness process name: {0}\n\tBusiness process instance ID: {1}\n\tActivity: Service Invocation\n\tActivity ID: {2}\n\tCause: The service invocation failed for operation: {3} service: {4} port type: {5} port type namespace: {6}.  The service input variable {7} is uninitialized.  Review the business process logic to ensure that the service input variable(s) have been set.
+INVOKE_ERROR=An error occurred during the execution of the business process.\n\tBusiness process name: {0}\n\tBusiness process instance ID: {1}\n\tActivity: Service Invocation\n\tActivity ID: {2}\n\tCause: The service invocation failed for operation: {3} service: {4} port type: {5} port type namespace: {6}.  The service input variables are as follows:\n{7}.
+SINGLE_RULE_ERROR=An error occurred during the execution of the business process.\n\tBusiness process name: {0}\n\tBusiness process instance ID: {1}\n\tActivity: Single Rule\n\tActivity ID: {2}\n\tCause: Review previous messages in the log file for the exact cause.
+
+# Event Exceptions
+EVENT_PARSE_EXCEPTION=Error while parsing event message.
+NO_RESPONSE_EXCEPTION=No response is allowed.
+READ_ONLY_EVENT=Read Only Event.
+UNSUPPORTED_INTERACTION_TYPE=Unsupported interaction type.
+INVALID_PROCESS_ID=Process ID {0} is not a valid ID.
+INVALID_PROCESS_STATE=Process State {0} is not a valid state.
+
+# Interaction Exceptions
+AMBIGUOUS_NODE=Ambiguous node.  Query using xpath {0} resulted in the return of multiple nodes.  Only one node can be returned.  Review the business process and determine if a predicate might be used in the xpath query.
+INVALID_INPUT_PARAM=Invalid input parameter.
+INVOCATION_MISMATCH=Invocation mismatch.
+NON_EXISTENT_NODE=Node {0} not found.  Check the associated business process to ensure that the source variable has been initialized and check runtime data to ensure that the requested element exists in the source variable.
+NULL_INVOCATION=Null Invocation.
+
+# Persistance
+METHOD_UNSUPPORTED=The method {0} is not supported by {1}.
+JNDI_LOOKUP=JNDI lookup failed on: {0}
+EJB_FIND_PRIMARY=Object not found for primary key: {0}
+SQL_EXCEPTION=SQL exception on statment: {0}
+EJB_REMOVE=EJB delete cmd: {0} primary key: {1}
+EJB_UPDATE=EJB update cmd: {0} primary key: {1}
+EJB_INSERT=EJB insert cmd: {0} primary key: {1}
+EJB_SELECT=EJB select cmd: {0} primary key: {1}
+TYPE_CAST=Expecting type {0} and found type {1}
+CLASS_NOT_FOUND=Class {0} not found
+ACCESSCONTROL_UNSUPPORTED=Object does not support com.sybase.bpe.context.IAccessControl
+CLONEABLE_UNSUPPORTED=Object does not support com.sybase.bpe.context.ICloneable
+NODE_CREATED=The node should be in the DB {0}
+NATIVE_EXCEPTION=Native Exception: {0}. Native Message: {1}
+
+#UUID Service Exceptions
+UUID_CLASS_NOT_FOUND=Class not found: {0}
+UUID_NOT_SUPPORTED=The method {0} is not supported by the UUID Connector
+UUID_MANAGED_FACTORY=This connection factory does not manage this instance of the factory
+UUID_POOL_EXCEPTION=Caught a POOL execption wrap with ResourceException
+UUID_UNKNOWN_OBJECT=Found an object in pool that does not implement ObjPoolObject or UUIDManagedConnection
+UUID_RESOURCE_EXCEPTION=Caught a ResourceException wrap with PoolException.
+UUID_UNKNOWN_EXCEPTION=Caught an unknown exception wrap with ResourceException.
+UUID_CAST_EXCEPTION=Could not cast {0} to the expected type {1}
+
+#Pool Exceptions
+POOL_INIT_1=The pool is being initialized with a non-empty collection.
+POOL_INIT_2=Pool not initialized for this object type.
+POOL_INIT_3=Pool already initialized.
+POOL_ADJ_1=Cannot shrink pool: new size is smaller than number of objects in use.
+POOL_ADJ_2=Cannot shrink pool: new size is smaller than initial pool size.
+POOL_ADJ_3=Cannot shrink pool: new size would cause evictions from the pool.
+
+#BPEL Deploy Messages
+BPEL_STATIC_KEY_TO_LONG=Business process message routing string too long. Target namespace({0}) plus port type({1}) plus operation({2}) can be no longer than 256 characters.  Shorten the strings so there concatenation is less that 256 characters.
+DEPLOY_EXTRACT=Extracting from jar: {0}.
+DEPLOY_UNHANDLED_TAG=The tag <{0}> is not handled by BPELRepositoryHandler.
+DEPLOY_WSDL_NOTFOUND=[{0}] supporting WSDL document {1} not found in the deployment package.
+DEPLOY_UNKNOWN_NS=[{0}] namespace for prefix {1} not found.
+BPEL_FROM_INVALID=[{0}] invalid copy from clause: {1}.
+BPEL_TO_INVALID=[{0}] invalid copy to clause: {1}.
+BPEL_PROPERTY_NOTFOUND=[{0}] property element: {1} not found.
+BPEL_CORR_NONINIT=[{0}] an instance creating receive may not use a non-initializing correlation set.
+BPEL_CREATEACTION=[{0}] failed to create runtime action for BPEL node: {1}.
+BPEL_CREATELOCATOR=[{0}] failed to create runtime Locator for {1} at context location {2} and query {3}.
+BPEL_CREATEPROP=[{0}] failed to create runtime Property for {1}.
+BPEL_ADDOBSERVER=[{0}] failed to create runtime observing process.
+BPEL_CREATEUNLINK=[{0}] failed to create runtime unlinked process.
+BPEL_CREATEPROCESS=[{0}] failed to create process for {1}.
+BPEL_CREATEPROCESSROOT=[{0}] failed to create process definition root for {1}.
+BPEL_UPDATE=[{0}] definition service failed to update on BPEL process completion.
+BPEL_VARNOTFOUND=[{0}] the variable {1} not found.
+BPEL_NULLVARPARM=[{0}] expression statement contains an invalid variable parm: {1}.
+BPEL_PROPIVALID=[{0}] expression is invalid, the getProperty function requires two params: {1}.
+BPEL_LINKINVALID=[{0}] link status expression is invalid, a link name is required: {1}.
+BPEL_LINKREF=[{0}] link {1} has the same source and target reference.
+BPEL_NULLLINKREF=[{0}] null reference found for link {1}.
+BPEL_MSG_NOTFOUND=[{0}] message type {1} not found. Make sure the WSDL has been imported and namespaces have been set up consistently.
+BPEL_PT_NOTFOUND=[{0}] port type {1} not found. Make sure the WSDL has been imported and namespaces have been set up consistently.
+BPEL_OPR_NOTFOUND=[{0}] operation {1} not found. Make sure the BPEL invoke variables match in type to the input/ouput params on portTypes available operations.
+BPEL_VAR_NOTWSDL=[{0}] invoke {1} references input/output variable {2} that is not a WSDL message type.
+BPEL_OPER_NOTFOUND=[{0}] matching operation on the PortType {1} not found for BPEL Invoke: {2}.
+BPEL_WSDL_LOCATION=[{0}] Note: currently the WSIF implementation does not support a metadata locator. Therefore a namespace is required "lns" that defines the absolute path of the WSDL doc. 
+BPEL_UUIDINVALID=Could not create the UUID service. See Log for details.
+BPEL_DEFINVALID=Could not create the Definition service. See Log for details.
+BPEL_CORRSET=[{0}] correlation set name {1} not found.
+BPEL_IOERR=[{0}] IO error encountered when reading WSDL doc: {1}.
+BPEL_WSDLREADER=[{0}] WSDL reader error on file {1}. Native Message: {2}.
+BPEL_CORRVAR=[{0}] correlation set is not valid without an input variable. See activity {1}.
+BPEL_WSDL_OP_NAME=[{0}] WSIF interface requires an operation name attribute for - portType: {1} operation: {2}.
+BPEL_MSGTYPE_NOTFOUND=[{0}] when using a property attribute the variable {1} requires a message type.
+BPEL_CLASS_NOTFOUND=[{0}] class {1} not found on load.
+BPEL_CLASS_ILLINST=[{0}] class {1} could not be instantiated on load.
+BPEL_CLASS_ILLACCESS=[{0}} class {1} illegal access on load.
+BPEL_VAR_BINDING=[{0}] could not find bpe:variableMap for BPEL variable: {1}.
+BPEL_PART_BINDING=[{0}] could not find bpe:variableMap for BPEL variable: {1} part: {2}.
+BPEL_EXP_INVALID=[{0}] error found in expression: {1} 
+BPEL_RT_uninitializedVariable=Attempt to use unitialized variable: {0} as a source.
+BPEL_XPATH_INVALID=[{0}] XPATH expression error; Native Expression: {1}; Parsed expression: {2}; Native message: {3}.
+BPEL_IMPL_REQ=[{0}] The bpe:action element requires the implementation attribute ( see BPEBindings.xsd ).
+BPEL_FAULT_NOTFOUND=[{0}] catch could not find a WSDL operation with fault name: {1}.
+BPEL_PROTECT_INST=A process instantiating and non instantiating activity share namspace,portType and operation attributes. This will cause performance degradation at process instantiation time.
+
+#WSDL Extensibility Elements
+WSDL_NAME_ATTR_REQ=Element bpe:variableMap requires a name attribute.
+WSDL_BUILDER_ATTR_REQ=Element bpe:variableMap requires a builder attribute.
+
+#WSIF Use Messages
+INVOKE_LOOKUP_RA=Lookup of WSIF connector: JNDI_NAME={0} failed. Defaulting to unmanaged connection.
+INVOKE_CF=Error creating unmanaged connection factory {0}.
+INVOKE_CONN=Exception thrown when invoking WSIF connector. See log for details.
+INVOKE_CONTEXT=Exception thrown by process context within the WSIF BPE Action. See log for details.
+INVOKE_RESOLVER=Exception thrown by process context within the WSIF BPE Action. See log for details.
+INVOKE_CONN_CLOSE=Exception thrown when attempting to close WSIF RA connection.

Added: incubator/ode/scratch/bpe/src/main/xsd/bpebinding.xsd
URL: http://svn.apache.org/viewcvs/incubator/ode/scratch/bpe/src/main/xsd/bpebinding.xsd?rev=381686&view=auto
==============================================================================
--- incubator/ode/scratch/bpe/src/main/xsd/bpebinding.xsd (added)
+++ incubator/ode/scratch/bpe/src/main/xsd/bpebinding.xsd Tue Feb 28 08:02:48 2006
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema targetNamespace="http://sybase.com/bpe/binding/bpe" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:bpe="http://sybase.com/bpe/binding/bpe" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+	<xs:complexType name="tExtensibleAttributes">
+		<xs:annotation>
+			<xs:documentation>
+                 This type is extended by other bpe elements to allow any attribute
+            </xs:documentation>
+		</xs:annotation>
+		<xs:anyAttribute namespace="##other" processContents="lax"/>
+	</xs:complexType>
+	<xs:complexType name="tAction">
+		<xs:complexContent>
+			<xs:extension base="bpe:tExtensibleAttributes">
+				<xs:attribute name="implementation" type="xs:string" use="required"/>
+				<xs:attribute name="bpeImplementation" type="xs:string" use="optional"/>
+			</xs:extension>
+		</xs:complexContent>
+	</xs:complexType>
+	<xs:complexType name="tSimpleNodeType">
+		<xs:attribute name="simpleNodeType" type="xs:string" use="required"/>
+	</xs:complexType>
+	<xs:complexType name="tOperation">
+		<xs:sequence>
+			<xs:element name="action" type="bpe:tAction"/>
+		</xs:sequence>
+		<xs:attribute name="name" type="xs:string" use="required"/>
+	</xs:complexType>
+	<xs:complexType name="tBinding">
+		<xs:sequence>
+			<xs:element name="operation" type="bpe:tOperation" maxOccurs="unbounded"/>
+		</xs:sequence>
+		<xs:attribute name="name" type="xs:string" use="required"/>
+		<xs:attribute name="nameSpace" type="xs:string" use="required"/>
+		<xs:attribute name="portType" type="xs:string" use="required"/>
+	</xs:complexType>
+	<xs:complexType name="tActionBindings">
+		<xs:sequence>
+			<xs:element name="binding" type="bpe:tBinding" maxOccurs="unbounded"/>
+		</xs:sequence>
+	</xs:complexType>
+	<xs:complexType name="tNodeTypeBindings">
+		<xs:sequence>
+			<xs:element name="nodeTypeBinding" type="bpe:tSimpleNodeType" maxOccurs="unbounded"/>
+		</xs:sequence>
+	</xs:complexType>
+	<xs:complexType name="tActivityBindings">
+		<xs:sequence>
+			<xs:element name="ActivityBinding" type="bpe:tActivityBinding" maxOccurs="unbounded"/>
+		</xs:sequence>
+	</xs:complexType>
+	<xs:complexType name="tActivityBinding">
+		<xs:attribute name="activityName" type="xs:string" use="required"/>
+		<xs:attribute name="interpretation" type="xs:string" use="required"/>
+	</xs:complexType>
+	<xs:complexType name="tSchema">
+		<xs:sequence>
+			<xs:element name="ActionBindings" type="bpe:tActionBindings" minOccurs="0"/>
+			<xs:element name="NodeTypeBindings" type="bpe:tNodeTypeBindings" minOccurs="0"/>
+			<xs:element name="ActivityBindings" type="bpe:tActivityBindings" minOccurs="0"/>
+		</xs:sequence>
+	</xs:complexType>
+	<xs:element name="BPEBinding" type="bpe:tSchema"/>
+</xs:schema>

Added: incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/event/test/SOAPEventTest.java
URL: http://svn.apache.org/viewcvs/incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/event/test/SOAPEventTest.java?rev=381686&view=auto
==============================================================================
--- incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/event/test/SOAPEventTest.java (added)
+++ incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/event/test/SOAPEventTest.java Tue Feb 28 08:02:48 2006
@@ -0,0 +1,131 @@
+/*
+* Confidential property of Sybase, Inc.
+*
+* Copyright 1987 - 2006.
+*
+* Sybase, Inc. All rights reserved.
+*
+* Unpublished rights reserved under U.S. copyright laws.
+*
+* This software contains confidential and trade secret information
+* of Sybase, Inc. Use, duplication or disclosure of the software and
+* documentation by the U.S. Government is subject to restrictions
+* set forth in a license agreement between the Government and Sybase,
+* Inc. or other written agreement specifying the Government's rights
+* to use the software and any applicable FAR provisions, for example,
+* FAR 52.227-19.
+*
+* Sybase, Inc. One Sybase Drive, Dublin, CA 94568, USA
+*
+* http://www.sybase.com
+*/
+package com.sybase.bpe.event.test;
+
+import java.io.FileInputStream;
+import java.io.InputStream;
+
+import junit.framework.TestCase;
+
+import org.apache.axis.Message;
+import org.apache.axis.message.SOAPEnvelope;
+import org.w3c.dom.Document;
+
+import com.sybase.bpe.event.Fault;
+import com.sybase.bpe.event.IStaticKey;
+import com.sybase.bpe.event.SOAPRequestMessageEvent;
+import com.sybase.bpe.event.SOAPResponseMessage;
+import com.sybase.bpe.interaction.InteractionFactory;
+import com.sybase.bpe.interaction.XMLInteractionObject;
+
+public class SOAPEventTest extends TestCase
+{
+	private InputStream m_inputStream = null;
+	
+	public SOAPEventTest( InputStream iSOAPRequestSource )
+	{
+		super("go");
+		m_inputStream = iSOAPRequestSource;
+	}
+	
+	private SOAPEnvelope getRequestEnvelope() throws Exception
+	{
+		Message message = new Message( m_inputStream );
+		return message.getSOAPEnvelope();
+	}
+	
+	private SOAPEnvelope getResponseEnvelope() throws Exception
+	{
+		return new SOAPEnvelope();
+	}
+	
+	public SOAPRequestMessageEvent createSOAPEventMessage(
+	  SOAPEnvelope iRequestEnvelope, SOAPEnvelope iResponseEnvelope ) 
+	  throws Exception
+	{
+		return new SOAPRequestMessageEvent( iRequestEnvelope,
+		 iResponseEnvelope);
+	  	
+	}
+	
+	
+	public void go() throws Exception
+	{
+		SOAPEnvelope requestEnvelope = getRequestEnvelope();
+		SOAPEnvelope responseEnvelope = getResponseEnvelope();
+		
+		SOAPRequestMessageEvent srme = createSOAPEventMessage(
+		  requestEnvelope, responseEnvelope );
+		  
+		IStaticKey staticKey = srme.getStaticKey();
+		assertTrue ( staticKey != null );
+		
+		XMLInteractionObject xio = 
+		  ( XMLInteractionObject )(srme.getPart("Order"));
+		assertTrue( xio != null );
+		Document document = xio.getDocument();
+		assertTrue( document != null ); 
+		
+		XMLInteractionObject xioDummyHeaderElement = 
+		  ( XMLInteractionObject )( srme.getHeaderElement("dummy") );
+		document = xioDummyHeaderElement.getDocument();
+		assertTrue( document!= null );
+		
+		String responseString = 
+			"<Response><count>2</count><cost>10.00</cost></Response>";
+			
+		InteractionFactory factory = InteractionFactory.newInstance();
+		XMLInteractionObject xior = (XMLInteractionObject)
+		   factory.createXMLInteraction( responseString.getBytes());
+		    
+		SOAPResponseMessage responseMessage = 
+		  (SOAPResponseMessage)srme.createResponseMessage();		  
+		responseMessage.setPart("Response", xior);	
+		//responseMessage.setHeaderElement("dummy", xioDummyHeaderElement);
+					 		
+		Fault fault = new Fault();		
+		fault.setFaultActor( "Client");
+		fault.setFaultCode("Invalid Request");
+		fault.setFaultString("Something bad happened.");	
+		responseMessage.setFault( fault );		
+		SOAPEnvelope se = (SOAPEnvelope) responseMessage.getResponseEnvelope();
+		
+		Document seDocument = se.getAsDocument();
+		assertTrue( seDocument != null );
+		
+		XMLInteractionObject xioDump = 
+		  (XMLInteractionObject) factory.createDocumentInteraction( seDocument );
+		assertTrue( xioDump != null );
+		
+		System.out.println( new String(xioDump.getXMLBuffer()) );
+	}
+	
+	public static void main( String iArgs[] ) throws Exception
+	{
+		FileInputStream requestMessageSource 
+		  = new FileInputStream( "D:/bpesource/BPEE/src/com/sybase/bpe/event/test/SubmitPurchaseOrderSOAP.xml");
+		SOAPEventTest test = new SOAPEventTest( requestMessageSource );
+		test.go();
+		System.out.println( "SOAPEventTest complete.");
+	}
+
+}

Added: incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/event/test/SubmitPurchaseOrderSOAP.xml
URL: http://svn.apache.org/viewcvs/incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/event/test/SubmitPurchaseOrderSOAP.xml?rev=381686&view=auto
==============================================================================
--- incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/event/test/SubmitPurchaseOrderSOAP.xml (added)
+++ incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/event/test/SubmitPurchaseOrderSOAP.xml Tue Feb 28 08:02:48 2006
@@ -0,0 +1,21 @@
+<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:m0="http://www.your-company.com/PurchaseOrderService.xsd1" xmlns:wsa="http://schemas.xmlsoap.org/ws/2003/03/addressing" xmlns:d="http://dummy.dummy.dummy/dummy">
+	<SOAP-ENV:Header>
+		<wsa:To>http://fabrikam123.com/Purchasing/SubmitPO</wsa:To>
+		<dummy>dummyHeader</dummy>
+	</SOAP-ENV:Header>
+	<SOAP-ENV:Body>
+		<m:SubmitPurchaseOrder xmlns:m="http://www.your-company.com/PurchaseOrderService/binding">
+			<Order xsi:type="m0:Order">
+				<AccountIdentifier xsi:type="xsd:positiveInteger">2</AccountIdentifier>
+				<OrderDate xsi:type="xsd:dateTime">2001-12-17T09:30:47-05:00</OrderDate>
+				<MustDeliverBy xsi:type="xsd:dateTime">2001-12-17T09:30:47-05:00</MustDeliverBy>
+				<OrderItems xsi:type="m1:OrderItems">
+					<ProductIdentifier xsi:type="xsd:positiveInteger">2</ProductIdentifier>
+					<ProductDescription xsi:type="xsd:string">String</ProductDescription>
+					<Price xsi:type="xsd:float">3.14159</Price>
+					<Quantity xsi:type="xsd:positiveInteger">2</Quantity>
+				</OrderItems>
+			</Order>
+		</m:SubmitPurchaseOrder>
+	</SOAP-ENV:Body>
+</SOAP-ENV:Envelope>

Added: incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/interaction/test/DocumentInteractionTest.java
URL: http://svn.apache.org/viewcvs/incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/interaction/test/DocumentInteractionTest.java?rev=381686&view=auto
==============================================================================
--- incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/interaction/test/DocumentInteractionTest.java (added)
+++ incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/interaction/test/DocumentInteractionTest.java Tue Feb 28 08:02:48 2006
@@ -0,0 +1,69 @@
+/*
+* Confidential property of Sybase, Inc.
+*
+* Copyright 1987 - 2006.
+*
+* Sybase, Inc. All rights reserved.
+*
+* Unpublished rights reserved under U.S. copyright laws.
+*
+* This software contains confidential and trade secret information
+* of Sybase, Inc. Use, duplication or disclosure of the software and
+* documentation by the U.S. Government is subject to restrictions
+* set forth in a license agreement between the Government and Sybase,
+* Inc. or other written agreement specifying the Government's rights
+* to use the software and any applicable FAR provisions, for example,
+* FAR 52.227-19.
+*
+* Sybase, Inc. One Sybase Drive, Dublin, CA 94568, USA
+*
+* http://www.sybase.com
+*/
+package com.sybase.bpe.interaction.test;
+
+import java.io.ByteArrayInputStream;
+
+import javax.xml.parsers.DocumentBuilderFactory;
+
+import org.w3c.dom.Document;
+
+import com.sybase.bpe.interaction.IInteraction;
+import com.sybase.bpe.interaction.InteractionFactory;
+
+public class DocumentInteractionTest extends InteractionTest
+{
+	public DocumentInteractionTest()
+	{
+		super("go");
+	}
+
+	public DocumentInteractionTest(String iMethodName)
+	{
+		super(iMethodName);
+	}
+
+	protected void createInteraction() throws Exception
+	{
+		String xmldoc = getXMLString();
+
+		ByteArrayInputStream bais = new ByteArrayInputStream(xmldoc.getBytes());
+
+		DocumentBuilderFactory dfactory = DocumentBuilderFactory.newInstance();
+		dfactory.setNamespaceAware(true);
+		Document doc = dfactory.newDocumentBuilder().parse(bais);
+
+		IInteraction newInteraction =
+			InteractionFactory.newInstance().createDocumentInteraction(
+				doc);
+
+		setInteraction(newInteraction);
+	}
+	
+	public static void main( String[] iArgs ) throws Exception
+	{
+		DocumentInteractionTest test = new DocumentInteractionTest();
+		test.go();
+		System.out.println( "Document interaction test complete.");
+	}
+
+}

Added: incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/interaction/test/InteractionSuite.java
URL: http://svn.apache.org/viewcvs/incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/interaction/test/InteractionSuite.java?rev=381686&view=auto
==============================================================================
--- incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/interaction/test/InteractionSuite.java (added)
+++ incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/interaction/test/InteractionSuite.java Tue Feb 28 08:02:48 2006
@@ -0,0 +1,40 @@
+/*
+* Confidential property of Sybase, Inc.
+*
+* Copyright 1987 - 2006.
+*
+* Sybase, Inc. All rights reserved.
+*
+* Unpublished rights reserved under U.S. copyright laws.
+*
+* This software contains confidential and trade secret information
+* of Sybase, Inc. Use, duplication or disclosure of the software and
+* documentation by the U.S. Government is subject to restrictions
+* set forth in a license agreement between the Government and Sybase,
+* Inc. or other written agreement specifying the Government's rights
+* to use the software and any applicable FAR provisions, for example,
+* FAR 52.227-19.
+*
+* Sybase, Inc. One Sybase Drive, Dublin, CA 94568, USA
+*
+* http://www.sybase.com
+*/
+package com.sybase.bpe.interaction.test;
+
+import junit.framework.Test;
+import junit.framework.TestCase;
+import junit.framework.TestSuite;
+
+public class InteractionSuite extends TestCase
+{
+
+	public static Test suite()
+	{
+		TestSuite suite = new TestSuite();
+		suite.addTest(new PropertiesInteractionTest());
+		suite.addTest(new DocumentInteractionTest());
+		suite.addTest(new XMLBufferInteractionTest());
+		return suite;
+	}
+
+}

Added: incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/interaction/test/InteractionTest.java
URL: http://svn.apache.org/viewcvs/incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/interaction/test/InteractionTest.java?rev=381686&view=auto
==============================================================================
--- incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/interaction/test/InteractionTest.java (added)
+++ incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/interaction/test/InteractionTest.java Tue Feb 28 08:02:48 2006
@@ -0,0 +1,166 @@
+/*
+* Confidential property of Sybase, Inc.
+*
+* Copyright 1987 - 2006.
+*
+* Sybase, Inc. All rights reserved.
+*
+* Unpublished rights reserved under U.S. copyright laws.
+*
+* This software contains confidential and trade secret information
+* of Sybase, Inc. Use, duplication or disclosure of the software and
+* documentation by the U.S. Government is subject to restrictions
+* set forth in a license agreement between the Government and Sybase,
+* Inc. or other written agreement specifying the Government's rights
+* to use the software and any applicable FAR provisions, for example,
+* FAR 52.227-19.
+*
+* Sybase, Inc. One Sybase Drive, Dublin, CA 94568, USA
+*
+* http://www.sybase.com
+*/
+package com.sybase.bpe.interaction.test;
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.ObjectInputStream;
+import java.io.ObjectOutputStream;
+import java.util.HashMap;
+
+import junit.framework.TestCase;
+
+import com.sybase.bpe.interaction.IInteraction;
+import com.sybase.bpe.interaction.IInvocation;
+import com.sybase.bpe.interaction.InvocationFactory;
+import com.sybase.bpe.util.BPEDecoder;
+import com.sybase.bpe.util.BPEEncoder;
+
+
+public abstract class InteractionTest extends TestCase
+{
+	protected abstract void createInteraction() throws Exception;
+	
+	protected InteractionTest( String iMethod )
+	{
+		super( iMethod );
+	}
+	
+	protected void setUp() throws Exception
+	{
+		createInteraction();	
+	}
+	
+	protected String getXMLString()
+	{
+		return 
+		"<Properties xmlns:blah = \"http://www.blah.com\" >" +
+		"<Property><blah:name>CustName</blah:name><value>King</value></Property>" +
+		"<Property><blah:name>Age</blah:name><value>53</value></Property>" +
+		"<Property><blah:name>Income</blah:name><value>1000000</value></Property>" +
+		"</Properties>";
+
+	}
+	
+	protected String[] getXPATHQueries()
+	{
+		return new String[] 
+		{
+		
+			"/Properties/Property[blimey:name='CustName']/value",
+			"/Properties/Property[blimey:name='Age']/value > 100",
+			"/Properties/Property[blimey:name='Income']/value = 1000000"
+		};
+	}
+	
+	protected String[] getXPATHQueryExpectedResults()
+	{
+		return new String[]
+		{
+			
+			"King", 
+			"false",
+			"true"	
+		};
+	}
+
+	protected String runXPathQuery(
+		String iXPATHQuery,
+		IInteraction iInteraction)
+		throws Exception
+	{
+		HashMap namespacemap = new HashMap();
+		namespacemap.put("blimey", "http://www.blah.com");
+			
+		IInvocation invocation = 
+		InvocationFactory.newInstance().
+		createXPathQueryNodeValueInvocation(iXPATHQuery, namespacemap);
+		
+		// Encode and decode the invocation to test xml serialization
+		ByteArrayOutputStream baos = new ByteArrayOutputStream();
+		BPEEncoder encoder = new BPEEncoder( baos );
+		encoder.writeObject( invocation );
+		encoder.close();
+		
+		ByteArrayInputStream bais = new ByteArrayInputStream( baos.toByteArray());
+		BPEDecoder decoder = new BPEDecoder( bais );
+		invocation = ( IInvocation ) decoder.readObject();
+		decoder.close();
+				
+		String returnValue = ( String ) iInteraction.invoke(invocation);
+
+		return returnValue;
+	}
+
+	public void testSerializationDeserialization() throws Exception
+	{
+		IInteraction i1 = getInteraction();
+		ByteArrayOutputStream baos = new ByteArrayOutputStream();
+		ObjectOutputStream oos = new ObjectOutputStream( baos );
+		oos.writeObject( i1 );
+		
+		ByteArrayInputStream bais = new ByteArrayInputStream( baos.toByteArray() );
+		ObjectInputStream ois = new ObjectInputStream( bais );
+		IInteraction i2 = ( IInteraction ) (  ois.readObject() );
+		
+		executeXPathQueries( i2 );
+	
+	}
+	
+	public void testXPathQueries() throws Exception
+	{
+		executeXPathQueries( getInteraction() );
+	}
+
+	private void executeXPathQueries( IInteraction iInteraction ) throws Exception
+	{
+		String[] queries = getXPATHQueries();
+		String[] expectedResults = getXPATHQueryExpectedResults();
+		for( int i = 0; i< queries.length; i++ )
+		{
+			String query = queries[i];
+			String result = runXPathQuery(query, iInteraction );
+			String expectedResult = expectedResults[i];
+			assertTrue( expectedResult.equals( result ) );
+		}
+	
+	}
+	
+	protected IInteraction getInteraction()
+	{
+		return m_interaction;
+	}
+	
+	protected void setInteraction( IInteraction iInteraction )
+	{
+		m_interaction = iInteraction;
+	}
+	
+	public void go() throws Exception
+	{
+		setUp();
+		testXPathQueries();
+		testSerializationDeserialization();
+	}
+	
+	private IInteraction m_interaction;
+	
+}

Added: incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/interaction/test/InvocationSerializationTest.java
URL: http://svn.apache.org/viewcvs/incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/interaction/test/InvocationSerializationTest.java?rev=381686&view=auto
==============================================================================
--- incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/interaction/test/InvocationSerializationTest.java (added)
+++ incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/interaction/test/InvocationSerializationTest.java Tue Feb 28 08:02:48 2006
@@ -0,0 +1,54 @@
+/*
+* Confidential property of Sybase, Inc.
+*
+* Copyright 1987 - 2006.
+*
+* Sybase, Inc. All rights reserved.
+*
+* Unpublished rights reserved under U.S. copyright laws.
+*
+* This software contains confidential and trade secret information
+* of Sybase, Inc. Use, duplication or disclosure of the software and
+* documentation by the U.S. Government is subject to restrictions
+* set forth in a license agreement between the Government and Sybase,
+* Inc. or other written agreement specifying the Government's rights
+* to use the software and any applicable FAR provisions, for example,
+* FAR 52.227-19.
+*
+* Sybase, Inc. One Sybase Drive, Dublin, CA 94568, USA
+*
+* http://www.sybase.com
+*/
+package com.sybase.bpe.interaction.test;
+
+
+import java.io.FileOutputStream;
+import java.util.HashMap;
+
+//import com.sybase.bpe.interaction.IInvocation;
+import com.sybase.bpe.interaction.InvocationFactory;
+import com.sybase.bpe.util.BPEEncoder;
+
+public class InvocationSerializationTest
+{
+	public static void main(String iArgs[]) throws Exception
+	{	
+		HashMap namespacemap = new HashMap();
+		namespacemap.put("blimey", "http://www.blah.com");
+			
+		InvocationFactory.newInstance().
+		createXPathQueryNodeValueInvocation(			"/Properties/Property[blimey:name='CustName']/value", 
+			namespacemap);
+			
+		FileOutputStream baos = new FileOutputStream( "d:/eclipse/workspace/BPEE_old/serialized.xml");
+		BPEEncoder encoder = new BPEEncoder(baos);
+		//encoder.writeObject( (JaxenNodeValueQuery) invocation );	
+		encoder.writeObject( namespacemap );
+		encoder.close();
+		
+		System.out.println( "Serialization Test complete.");
+		
+		
+	}
+
+}

Added: incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/interaction/test/PropertiesInteractionTest.java
URL: http://svn.apache.org/viewcvs/incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/interaction/test/PropertiesInteractionTest.java?rev=381686&view=auto
==============================================================================
--- incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/interaction/test/PropertiesInteractionTest.java (added)
+++ incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/interaction/test/PropertiesInteractionTest.java Tue Feb 28 08:02:48 2006
@@ -0,0 +1,64 @@
+/*
+* Confidential property of Sybase, Inc.
+*
+* Copyright 1987 - 2006.
+*
+* Sybase, Inc. All rights reserved.
+*
+* Unpublished rights reserved under U.S. copyright laws.
+*
+* This software contains confidential and trade secret information
+* of Sybase, Inc. Use, duplication or disclosure of the software and
+* documentation by the U.S. Government is subject to restrictions
+* set forth in a license agreement between the Government and Sybase,
+* Inc. or other written agreement specifying the Government's rights
+* to use the software and any applicable FAR provisions, for example,
+* FAR 52.227-19.
+*
+* Sybase, Inc. One Sybase Drive, Dublin, CA 94568, USA
+*
+* http://www.sybase.com
+*/
+package com.sybase.bpe.interaction.test;
+
+import java.util.Properties;
+
+import com.sybase.bpe.interaction.IInteraction;
+import com.sybase.bpe.interaction.InteractionFactory;
+
+public class PropertiesInteractionTest extends InteractionTest
+{
+	public PropertiesInteractionTest()
+	{
+		super( "go" );
+	}
+	
+	public PropertiesInteractionTest(String iMethodName)
+	{
+		super(iMethodName);
+	}
+
+	protected void createInteraction() throws Exception
+	{
+		Properties testProperties = new Properties();
+
+		testProperties.put("CustName", "King");
+		testProperties.put("Income", "1000000");
+		testProperties.put("Age", "53");
+		IInteraction newInteraction =
+			InteractionFactory.newInstance().createPropertiesInteraction(
+				testProperties);
+
+		setInteraction(newInteraction);
+	}
+	
+	
+	
+	public static void main( String[] iArgs ) throws Exception
+	{
+		PropertiesInteractionTest test = new PropertiesInteractionTest();
+		test.go();
+		
+	}
+
+}

Added: incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/interaction/test/XMLBufferInteractionTest.java
URL: http://svn.apache.org/viewcvs/incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/interaction/test/XMLBufferInteractionTest.java?rev=381686&view=auto
==============================================================================
--- incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/interaction/test/XMLBufferInteractionTest.java (added)
+++ incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/interaction/test/XMLBufferInteractionTest.java Tue Feb 28 08:02:48 2006
@@ -0,0 +1,63 @@
+/*
+* Confidential property of Sybase, Inc.
+*
+* Copyright 1987 - 2006.
+*
+* Sybase, Inc. All rights reserved.
+*
+* Unpublished rights reserved under U.S. copyright laws.
+*
+* This software contains confidential and trade secret information
+* of Sybase, Inc. Use, duplication or disclosure of the software and
+* documentation by the U.S. Government is subject to restrictions
+* set forth in a license agreement between the Government and Sybase,
+* Inc. or other written agreement specifying the Government's rights
+* to use the software and any applicable FAR provisions, for example,
+* FAR 52.227-19.
+*
+* Sybase, Inc. One Sybase Drive, Dublin, CA 94568, USA
+*
+* http://www.sybase.com
+*/
+package com.sybase.bpe.interaction.test;
+
+import com.sybase.bpe.interaction.IInteraction;
+import com.sybase.bpe.interaction.InteractionException;
+import com.sybase.bpe.interaction.InteractionFactory;
+
+public class XMLBufferInteractionTest extends InteractionTest
+{
+	public XMLBufferInteractionTest()
+	{
+		super("go");
+	}
+	
+	
+	public XMLBufferInteractionTest( String iMethod )
+	{
+		super( iMethod );
+		
+	}
+	
+	
+	protected void createInteraction() throws InteractionException
+	{
+		String xmldoc = getXMLString();
+			
+
+		IInteraction newInteraction =
+			InteractionFactory.newInstance().createXMLInteraction(
+				xmldoc.getBytes());
+
+		setInteraction(newInteraction);	
+	}
+	
+		
+	public static void main( String[] iArgs ) throws Exception
+	{
+		XMLBufferInteractionTest test = new XMLBufferInteractionTest();
+		test.go();
+		
+	}
+
+}

Added: incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/performance/BPEClientThread.java
URL: http://svn.apache.org/viewcvs/incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/performance/BPEClientThread.java?rev=381686&view=auto
==============================================================================
--- incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/performance/BPEClientThread.java (added)
+++ incubator/ode/scratch/bpe/src/test/java/com/sybase/bpe/performance/BPEClientThread.java Tue Feb 28 08:02:48 2006
@@ -0,0 +1,161 @@
+/*
+* Confidential property of Sybase, Inc.
+*
+* Copyright 1987 - 2006.
+*
+* Sybase, Inc. All rights reserved.
+*
+* Unpublished rights reserved under U.S. copyright laws.
+*
+* This software contains confidential and trade secret information
+* of Sybase, Inc. Use, duplication or disclosure of the software and
+* documentation by the U.S. Government is subject to restrictions
+* set forth in a license agreement between the Government and Sybase,
+* Inc. or other written agreement specifying the Government's rights
+* to use the software and any applicable FAR provisions, for example,
+* FAR 52.227-19.
+*
+* Sybase, Inc. One Sybase Drive, Dublin, CA 94568, USA
+*
+* http://www.sybase.com
+*/
+/*
+ * Created on Jan 23, 2004
+ *
+ * To change the template for this generated file go to
+ * Window>Preferences>Java>Code Generation>Code and Comments
+ */
+package com.sybase.bpe.performance;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+import java.util.regex.Pattern;
+
+import com.sybase.bpe.bped.EventDirector;
+import com.sybase.bpe.event.IResponseMessage;
+import com.sybase.bpe.event.SimpleRequestMessageEvent;
+import com.sybase.bpe.interaction.InteractionFactory;
+import com.sybase.bpe.util.BPException;
+
+/**
+ * @author charper
+ *
+ * To change the template for this generated type comment go to
+ * Window>Preferences>Java>Code Generation>Code and Comments
+ */
+public class BPEClientThread extends Thread {
+
+	private static Logger logger =
+		Logger.getLogger(BPEClientThread.class.getName());
+		
+	private static InteractionFactory interactionfactory =
+		InteractionFactory.newInstance();
+
+	private ThreadCounter tcw;
+	private EventDirector ed;
+	private int numMsgs;
+	private SimpleRequestMessageEvent[] msgs;
+	private String uniquePart;
+	private ArrayList partNames;
+	private String[] responses;
+
+	public BPEClientThread(
+		EventDirector ed,
+		int numMsgs,
+		SimpleRequestMessageEvent[] msgs,
+		ThreadCounter tcw, String uniquePart, ArrayList partNames) {
+		this.ed = ed;
+		this.numMsgs = numMsgs;
+		this.msgs = msgs;
+		this.tcw = tcw;
+		this.uniquePart = uniquePart;
+		this.partNames = partNames;
+	}
+	
+	public BPEClientThread(
+			EventDirector ed,
+			int numMsgs,
+			SimpleRequestMessageEvent[] msgs,
+			ThreadCounter tcw, String uniquePart, ArrayList partNames,
+			String[] responses) {
+		this(ed,numMsgs,msgs,tcw,uniquePart,partNames);
+		this.responses = responses;
+	}
+
+	/* (non-Javadoc)
+	 * @see java.lang.Runnable#run()
+	 */
+	public void run() {
+
+		// let the thread counter know this thread is started
+		tcw.increment();
+
+		// send the specified number of message groups
+		for (int i = 0; i < numMsgs; i++) {
+			
+			//send each message
+			SimpleRequestMessageEvent[] msgsToSend = 
+				new SimpleRequestMessageEvent[msgs.length];
+			String uniqueNumber = tcw.getUniqueNumber();
+			for ( int j = 0; j < msgs.length; j++ ) {
+				if ( uniquePart != null ) {
+				
+					msgsToSend[j]=buildUniquePart(msgs[j],uniqueNumber);
+				} else {
+					msgsToSend[j]=msgs[j];
+				}
+			}
+			
+			for ( int j = 0; j < msgs.length; j++ ) {
+				//send the event syncronously
+				try {
+					IResponseMessage rsp = ed.sendEvent(msgsToSend[j], true);
+					if ( responses != null ) {
+						if ( ! Pattern.compile(responses[j],Pattern.DOTALL).matcher(rsp.toString()).matches()) {
+							System.err.println("Test " + this.getName() +" Response:");
+							System.err.println(responses.toString());
+							System.err.println("Matching RegEx for " + this.getName() +" Response:");
+							System.err.println(responses[j]);
+							tcw.setFaulted();
+							tcw.decrement();
+							return;
+						}
+					}
+				} catch (BPException e) {
+					logger.log(Level.SEVERE,"",e);
+				}
+			}
+		}
+
+		// let the thread counter know this thread is finished
+		tcw.decrement();
+
+	}
+	
+	private SimpleRequestMessageEvent buildUniquePart(SimpleRequestMessageEvent msg,
+		String uniqueNumber){
+		SimpleRequestMessageEvent newMsg = new SimpleRequestMessageEvent();
+		try {
+			// set the key
+			newMsg.setStaticKey(msg.getStaticKey());
+			
+			Iterator it = partNames.iterator();
+			while ( it.hasNext() ) {
+				String partName = (String)it.next();
+				if ( partName.compareTo(uniquePart) == 0 ) {
+					newMsg.setPart(partName,
+						interactionfactory.createObjectInteraction(uniqueNumber));
+				} else {
+					newMsg.setPart(partName,msg.getPart(partName));
+				}
+			}
+		
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
+		return newMsg;
+	}
+
+}