[jboss-svn-commits] JBossWS SVN: r767 - in branches/jbossws-1.0/src/main/java/javax/xml/rpc: . encoding handler handler/soap holders server soap

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Fri Aug 18 04:20:19 EDT 2006


Author: thomas.diesler at jboss.com
Date: 2006-08-18 04:19:55 -0400 (Fri, 18 Aug 2006)
New Revision: 767

Added:
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/Call.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/JAXRPCException.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/NamespaceConstants.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/ParameterMode.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/Service.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/ServiceException.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/ServiceFactory.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/Stub.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/DeserializationContext.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/Deserializer.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/DeserializerFactory.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/SerializationContext.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/Serializer.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/SerializerFactory.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/TypeMapping.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/TypeMappingRegistry.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/XMLType.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/GenericHandler.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/Handler.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/HandlerChain.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/HandlerInfo.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/HandlerRegistry.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/MessageContext.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/soap/
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/soap/SOAPMessageContext.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/BigDecimalHolder.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/BigIntegerHolder.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/BooleanHolder.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/BooleanWrapperHolder.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ByteArrayHolder.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ByteHolder.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ByteWrapperHolder.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/CalendarHolder.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/DoubleHolder.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/DoubleWrapperHolder.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/FloatHolder.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/FloatWrapperHolder.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/Holder.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/IntHolder.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/IntegerWrapperHolder.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/LongHolder.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/LongWrapperHolder.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ObjectHolder.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/QNameHolder.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ShortHolder.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ShortWrapperHolder.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/StringHolder.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/server/
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/server/ServiceLifecycle.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/server/ServletEndpointContext.java
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/soap/
   branches/jbossws-1.0/src/main/java/javax/xml/rpc/soap/SOAPFaultException.java
Log:
copy jaxrpc to jbossws

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/Call.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/Call.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/Call.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,259 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package javax.xml.rpc;
+
+import javax.xml.namespace.QName;
+import java.rmi.RemoteException;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+
+/** The javax.xml.rpc.Call interface provides support for the dynamic invocation of a service endpoint.
+ * The javax.xml.rpc.Service interface acts as a factory for the creation of Call instances.
+ *
+ * Once a Call instance is created, various setter and getter methods may be used to configure this Call instance.
+ *
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public interface Call
+{
+   /** Standard property: User name for authentication Type: java.lang.String */
+   public static final String USERNAME_PROPERTY = "javax.xml.rpc.security.auth.username";
+   /** Standard property: Password for authentication Type: java.lang.String */
+   public static final String PASSWORD_PROPERTY = "javax.xml.rpc.security.auth.password";
+   /** Standard property for operation style. */
+   public static final String OPERATION_STYLE_PROPERTY = "javax.xml.rpc.soap.operation.style";
+   /** Standard property for SOAPAction. */
+   public static final String SOAPACTION_USE_PROPERTY = "javax.xml.rpc.soap.http.soapaction.use";
+   /** Standard property for SOAPAction. */
+   public static final String SOAPACTION_URI_PROPERTY = "javax.xml.rpc.soap.http.soapaction.uri";
+   /** Standard property for encoding Style: Encoding style specified as a namespace URI. */
+   public static final String ENCODINGSTYLE_URI_PROPERTY = "javax.xml.rpc.encodingstyle.namespace.uri";
+   /** Standard property: This boolean property is used by a service client to indicate whether or not it wants to participate in a session with a service endpoint. */
+   public static final String SESSION_MAINTAIN_PROPERTY = "javax.xml.rpc.session.maintain";
+
+   /** Indicates whether addParameter and setReturnType methods are to be invoked to specify the parameter and return
+    * type specification for a specific operation.
+    * @param operationName Qualified name of the operation
+    * @return Returns true if the Call implementation class requires addParameter and setReturnType to be invoked in the client code for the specified operation. This method returns false otherwise.
+    * @throws IllegalArgumentException If invalid operation name is specified
+    */
+   public boolean isParameterAndReturnSpecRequired(QName operationName);
+
+   /** Adds a parameter type and mode for a specific operation.
+    * Note that the client code may not call any addParameter and setReturnType methods before calling the invoke method.
+    * In this case, the Call implementation class determines the parameter types by using reflection on parameters,
+    * using the WSDL description and configured type mapping registry.
+    *
+    * @param paramName Name of the parameter
+    * @param xmlType XML type of the parameter
+    * @param parameterMode Mode of the parameter-whether ParameterMode.IN, ParameterMode.OUT, or ParameterMode.INOUT
+    * @throws JAXRPCException This exception may be thrown if the method isParameterAndReturnSpecRequired returns false for this operation.
+    * @throws IllegalArgumentException If any illegal parameter name or XML type is specified
+    */
+   public void addParameter(String paramName, QName xmlType, ParameterMode parameterMode);
+
+   /** Adds a parameter type and mode for a specific operation.
+    * This method is used to specify the Java type for either OUT or INOUT parameters.
+    *
+    * @param paramName Name of the parameter
+    * @param xmlType XML type of the parameter
+    * @param javaType  Java class of the parameter
+    * @param parameterMode Mode of the parameter-whether ParameterMode.IN, ParameterMode.OUT, or ParameterMode.INOUT
+    * @throws JAXRPCException
+    * <ul>
+    *    <li>This exception may be thrown if the method isParameterAndReturnSpecRequired returns false for this operation.
+    *    <li>If specified XML type and Java type mapping is not valid. For example, TypeMappingRegistry has no serializers for this mapping.
+    * </ul>
+    * @throws IllegalArgumentException If any illegal parameter name or XML type is specified
+    * @throws UnsupportedOperationException If this method is not supported
+    */
+   public void addParameter(String paramName, QName xmlType, Class javaType, ParameterMode parameterMode);
+
+   /** Gets the XML type of a parameter by name.
+    *
+    * @param paramName - Name of the parameter
+    * @return Returns XML type for the specified parameter
+    */
+   public QName getParameterTypeByName(String paramName);
+
+   /** Sets the return type for a specific operation. Invoking setReturnType(null) removes the return type for this Call object.
+    *
+    * @param xmlType XML data type of the return value
+    * @throws JAXRPCException This exception may be thrown when the method isParameterAndReturnSpecRequired returns false.
+    * @throws IllegalArgumentException If an illegal XML type is specified
+    */
+   public void setReturnType(QName xmlType);
+
+   /** Sets the return type for a specific operation.
+    *
+    * @param xmlType XML data type of the return value
+    * @param javaType Java Class of the return value
+    * @throws JAXRPCException
+    * <ul>
+    *    <li>This exception may be thrown if this method is invoked when the method isParameterAndReturnSpecRequired returns false.
+    *    <li>If XML type and Java type cannot be mapped using the standard type mapping or TypeMapping registry
+    * </ul>
+    * @throws UnsupportedOperationException If this method is not supported
+    * @throws IllegalArgumentException If an illegal XML type is specified
+    */
+   public void setReturnType(QName xmlType, Class javaType);
+
+   /** Gets the return type for a specific operation
+    *
+    * @return Returns the XML type for the return value
+    */
+   public QName getReturnType();
+
+   /** Removes all specified parameters from this Call instance. Note that this method removes only the parameters and
+    * not the return type. The setReturnType(null) is used to remove the return type.
+    * @throws JAXRPCException This exception may be thrown If this method is called when the method isParameterAndReturnSpecRequired returns false for this Call's operation.
+    */
+   public void removeAllParameters();
+
+   /** Gets the name of the operation to be invoked using this Call instance.
+    * @return Qualified name of the operation
+    */
+   public QName getOperationName();
+
+   /** Sets the name of the operation to be invoked using this Call instance.
+    *
+    * @param operationName QName of the operation to be invoked using the Call instance
+    */
+   public void setOperationName(QName operationName);
+
+   /** Gets the qualified name of the port type.
+    * @return Qualified name of the port type
+    */
+   public QName getPortTypeName();
+
+   /** Sets the qualified name of the port type.
+    *
+    * @param portType - Qualified name of the port type
+    */
+   public void setPortTypeName(QName portType);
+
+   /** Sets the address of the target service endpoint. This address must correspond to the transport
+    * specified in the binding for this Call instance.
+    *
+    * @param address Address of the target service endpoint; specified as an URI
+    */
+   public void setTargetEndpointAddress(String address);
+
+   /** Gets the address of a target service endpoint.
+    * @return Address of the target service endpoint as an URI
+    */
+   public String getTargetEndpointAddress();
+
+   /** Sets the value for a named property.
+    * JAX-RPC specification specifies a standard set of properties that may be passed to the Call.setProperty method.
+    *
+    * @param name Name of the property
+    * @param value Value of the property
+    * @throws JAXRPCException
+    * <ul>
+    *    <li> If an optional standard property name is specified, however this Call implementation class does not support the configuration of this property.
+    *    <li> If an invalid (or unsupported) property name is specified or if a value of mismatched property type is passed.
+    *    <li> If there is any error in the configuration of a valid property.
+    * </ul>
+    */
+   public void setProperty(String name, Object value);
+
+   /** Gets the value of a named property.
+    *
+    * @param name Name of the property
+    * @return Value of the named property
+    * @throws JAXRPCException if an invalid or unsupported property name is passed.
+    */
+   public Object getProperty(String name);
+
+   /** Removes a named property.
+    * @param name Name of the property
+    * @throws JAXRPCException if an invalid or unsupported property name is passed.
+    */
+   public void removeProperty(String name);
+
+   /** Gets the names of configurable properties supported by this Call object.
+    * @return Iterator for the property names
+    */
+   public Iterator getPropertyNames();
+
+   /** Invokes a specific operation using a synchronous request-response interaction mode.
+   *
+   * @param inputParams Object[]--Parameters for this invocation. This includes only the input params
+   * @return Returns the return value or null
+   * @throws RemoteException if there is any error in the remote method invocation
+   * @throws javax.xml.rpc.soap.SOAPFaultException Indicates a SOAP fault
+   * @throws JAXRPCException
+   * <ul>
+   *    <li>If there is an error in the configuration of the Call object
+   *    <li> If inputParams do not match the required parameter set (as specified through the addParameter invocations or in the corresponding WSDL)
+   *    <li> If parameters and return type are incorrectly specified
+   * </ul>
+   */
+  public Object invoke(Object[] inputParams) throws RemoteException;
+
+  /** Invokes a specific operation using a synchronous request-response interaction mode.
+   *
+   * @param operationName QName of the operation
+   * @param inputParams Object[]--Parameters for this invocation. This includes only the input params.
+   * @return Return value or null
+   * @throws RemoteException if there is any error in the remote method invocation.
+   * @throws javax.xml.rpc.soap.SOAPFaultException - Indicates a SOAP fault
+   * @throws JAXRPCException
+   * <ul>
+   *    <li> If there is an error in the configuration of the Call object
+   *    <li> If inputParams do not match the required parameter set (as specified through the addParameter invocations or in the corresponding WSDL)
+   *    <li> If parameters and return type are incorrectly specified
+   * </ul>
+   */
+  public Object invoke(QName operationName, Object[] inputParams) throws RemoteException;
+
+   /** Invokes a remote method using the one-way interaction mode.
+    * The client thread does not normally block waiting for the completion of the server processing for this
+    * remote method invocation. When the protocol in use is SOAP/HTTP, this method should block until an HTTP response
+    * code has been received or an error occurs. This method must not throw any remote exceptions.
+    * This method may throw a JAXRPCException during the processing of the one-way remote call.
+    *
+    * @param inputParams Object[]--Parameters for this invocation. This includes only the input params.
+    * @throws JAXRPCException if there is an error in the configuration of the Call object
+    * (example: a non-void return type has been incorrectly specified for the one-way call) or
+    * if there is any error during the invocation of the one-way remote call
+    */
+   public void invokeOneWay(Object[] inputParams);
+
+   /** Returns a Map of {name, value} for the output parameters of the last invoked operation.
+    *  The parameter names in the returned Map are of type java.lang.String.
+    *
+    * @return Map Output parameters for the last Call.invoke(). Empty Map is returned if there are no output parameters.
+    * @throws JAXRPCException If this method is invoked for a one-way operation or is invoked before any invoke method has been called.
+    */
+   public Map getOutputParams();
+
+   /** Returns a List values for the output parameters of the last invoked operation.
+   *
+   * @return java.util.List Values for the output parameters. An empty List is returned if there are no output values.
+   * @throws JAXRPCException If this method is invoked for a one-way operation or is invoked before any invoke method has been called.
+   */
+  public List getOutputValues();
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/Call.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/JAXRPCException.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/JAXRPCException.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/JAXRPCException.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,65 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc;
+
+import org.jboss.util.id.SerialVersion;
+
+/**
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public class JAXRPCException extends RuntimeException
+{
+   /** @since 4.0.2 */
+   static final long serialVersionUID;
+   static
+   {
+      if (SerialVersion.version == SerialVersion.LEGACY)
+         serialVersionUID = 2012915834079496799L;
+      else
+         serialVersionUID = 5213579554532711730L;
+   }
+
+   public JAXRPCException()
+   {
+   }
+
+   public JAXRPCException(String message)
+   {
+      super(message);
+   }
+
+   public JAXRPCException(String message, Throwable cause)
+   {
+      super(message, cause);
+   }
+
+   public JAXRPCException(Throwable cause)
+   {
+      super(cause);
+   }
+
+   public Throwable getLinkedCause()
+   {
+      return super.getCause();
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/JAXRPCException.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/NamespaceConstants.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/NamespaceConstants.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/NamespaceConstants.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,40 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package javax.xml.rpc;
+
+/** Constants used in JAX-RPC for namespace prefixes and URIs
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public class NamespaceConstants
+{
+   public static final String NSPREFIX_SOAP_ENVELOPE = "soapenv";
+   public static final String NSPREFIX_SOAP_ENCODING = "soapenc";
+   public static final String NSPREFIX_SCHEMA_XSD = "xsd";
+   public static final String NSPREFIX_SCHEMA_XSI = "xsi";
+   public static final String NSURI_SOAP_ENVELOPE = "http://schemas.xmlsoap.org/soap/envelope/";
+   public static final String NSURI_SOAP_ENCODING = "http://schemas.xmlsoap.org/soap/encoding/";
+   public static final String NSURI_SOAP_NEXT_ACTOR = "http://schemas.xmlsoap.org/soap/actor/next";
+   public static final String NSURI_SCHEMA_XSD = "http://www.w3.org/2001/XMLSchema";
+   public static final String NSURI_SCHEMA_XSI = "http://www.w3.org/2001/XMLSchema-instance";
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/NamespaceConstants.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/ParameterMode.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/ParameterMode.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/ParameterMode.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,46 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc;
+
+/** A type-safe enumeration for parameter passing modes.
+ *  
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public class ParameterMode
+{
+   private String mode;
+
+   public static final ParameterMode IN = new ParameterMode("IN");
+   public static final ParameterMode OUT = new ParameterMode("OUT");
+   public static final ParameterMode INOUT = new ParameterMode("INOUT");
+
+   private ParameterMode(String mode)
+   {
+      this.mode = mode;
+   }
+
+   public String toString()
+   {
+      return mode;
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/ParameterMode.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/Service.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/Service.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/Service.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,151 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package javax.xml.rpc;
+
+import javax.xml.namespace.QName;
+import javax.xml.rpc.encoding.TypeMappingRegistry;
+import javax.xml.rpc.handler.HandlerRegistry;
+import java.net.URL;
+import java.rmi.Remote;
+import java.util.Iterator;
+
+/** Service class acts as a factory for:
+ * <ul>
+ *    <li>Dynamic proxy for the target service endpoint.
+ *    <li>Instance of the type javax.xml.rpc.Call for the dynamic invocation of a remote operation on the target service endpoint.
+ *    <li>Instance of a generated stub class
+ * </ul>
+ *
+ * @author Scott.Stark at jboss.org
+ * @author Thomas.Diesler at jboss.org
+ * @version $Revision$
+ */
+public interface Service
+{
+   /**
+    * The getPort method returns either an instance of a generated stub implementation class or a dynamic proxy.
+    * A service client uses this dynamic proxy to invoke operations on the target service endpoint.
+    * The serviceEndpointInterface specifies the service endpoint interface that is supported by the created dynamic proxy or stub instance.
+    *
+    * @param portName Qualified name of the service endpoint in the WSDL service descr
+    * @param seiClass Service endpoint interface supported by the dynamic proxy or stub instance
+    * @return Stub instance or dynamic proxy that supports the specified service endpoint interface
+    * @throws ServiceException This exception is thrown in the following cases:
+    * <ul>
+    *    <li>If there is an error in creation of the dynamic proxy or stub instance
+    *    <li>If there is any missing WSDL metadata as required by this method
+    *    <li>Optionally, if an illegal serviceEndpointInterface or portName is specified 
+    * </ul>
+    */
+   public Remote getPort(QName portName, Class seiClass) throws ServiceException;
+
+   /**
+    * The getPort method returns either an instance of a generated stub implementation class or a dynamic proxy.
+    * The parameter serviceEndpointInterface specifies the service endpoint interface that is supported by the returned stub or proxy.
+    * In the implementation of this method, the JAX-RPC runtime system takes the responsibility of selecting a protocol binding (and a port)
+    * and configuring the stub accordingly. The returned Stub instance should not be reconfigured by the client.
+    */
+   public Remote getPort(Class seiClass) throws ServiceException;
+
+   /** Gets an array of preconfigured Call objects for invoking operations on the specified port.
+    * There is one Call object per operation that can be invoked on the specified port.
+    * Each Call object is pre-configured and does not need to be configured using the setter methods on Call interface.
+    *
+    * Each invocation of the getCalls method returns a new array of preconfigured Call objects
+    *
+    * This method requires the Service implementation class to have access to the WSDL related metadata.
+    *
+    * @param portName  Qualified name for the target service endpoint
+    * @return Call[] Array of pre-configured Call objects
+    * @throws ServiceException If this Service class does not have access to the required WSDL metadata or if an illegal portName is specified.
+    */
+   public Call[] getCalls(QName portName) throws ServiceException;
+
+   /** Creates a Call instance.
+    *
+    * @param portName Qualified name for the target service endpoint
+    * @return Call instance
+    * @throws ServiceException  If any error in the creation of the Call object
+    */
+   public Call createCall(QName portName) throws ServiceException;
+
+   /** Creates a Call instance.
+    *
+    * @param portName  Qualified name for the target service endpoint
+    * @param operationName Qualified name of the operation for which this Call object is to be created.
+    * @return  Call instance
+    * @throws ServiceException  If any error in the creation of the Call object
+    */
+   public Call createCall(QName portName, QName operationName) throws ServiceException;
+
+   /** Creates a Call instance.
+    *
+    * @param portName  Qualified name for the target service endpoint
+    * @param operationName   Name of the operation for which this Call object is to be created.
+    * @return  Call instance
+    * @throws ServiceException  If any error in the creation of the Call object
+    */
+   public Call createCall(QName portName, String operationName) throws ServiceException;
+
+   /**
+    * Creates a Call object not associated with specific operation or target service endpoint.
+    * This Call object needs to be configured using the setter methods on the Call interface.
+    *
+    * @return Call object
+    * @throws ServiceException   If any error in the creation of the Call object
+    */
+   public Call createCall() throws ServiceException;
+
+   /** Gets the name of this service.
+    * @return Qualified name of this service
+    */
+   public QName getServiceName();
+
+   /** Returns an Iterator for the list of QNames of service endpoints grouped by this service
+    *
+    * @return Returns java.util.Iterator with elements of type javax.xml.namespace.QName
+    * @throws ServiceException If this Service class does not have access to the required WSDL metadata
+    */
+   public Iterator getPorts() throws ServiceException;
+
+   /** Gets the location of the WSDL document for this Service.
+    *
+    * @return URL for the location of the WSDL document for this service
+    */
+   public URL getWSDLDocumentLocation();
+
+   /** Gets the TypeMappingRegistry for this Service object. The returned TypeMappingRegistry instance is pre-configured
+    * to support the standard type mapping between XML and Java types types as required by the JAX-RPC specification.
+    *
+    * @return The TypeMappingRegistry for this Service object.
+    * @throws java.lang.UnsupportedOperationException if the Service class does not support the configuration of TypeMappingRegistry.
+    */
+   public TypeMappingRegistry getTypeMappingRegistry();
+
+   /** Returns the configured HandlerRegistry instance for this Service instance.
+    *
+    * @return HandlerRegistry
+    * @throws java.lang.UnsupportedOperationException if the Service class does not support the configuration of a HandlerRegistry
+    */
+   public HandlerRegistry getHandlerRegistry();
+
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/Service.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/ServiceException.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/ServiceException.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/ServiceException.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,65 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc;
+
+import org.jboss.util.id.SerialVersion;
+
+/**
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public class ServiceException extends Exception
+{
+   /** @since 4.0.2 */
+   static final long serialVersionUID;
+   static
+   {
+      if (SerialVersion.version == SerialVersion.LEGACY)
+         serialVersionUID = -4042547292194127311L;
+      else
+         serialVersionUID = -6582148924441189775L;
+   }
+
+   public ServiceException()
+   {
+   }
+
+   public ServiceException(String message)
+   {
+      super(message);
+   }
+
+   public ServiceException(String message, Throwable cause)
+   {
+      super(message, cause);
+   }
+
+   public ServiceException(Throwable cause)
+   {
+      super(cause);
+   }
+
+   public Throwable getLinkedCause()
+   {
+      return super.getCause();
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/ServiceException.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/ServiceFactory.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/ServiceFactory.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/ServiceFactory.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,193 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package javax.xml.rpc;
+
+import java.net.URL;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+import java.util.Properties;
+
+import javax.xml.namespace.QName;
+
+import org.jboss.logging.Logger;
+
+/** The javax.xml.rpc.ServiceFactory is an abstract class that provides a
+ * factory for the creation of instances of the type javax.xml.rpc.Service.
+ * This abstract class follows the abstract static factory design pattern.
+ * This enables a J2SE based client to create a Service instance in a portable
+ * manner without using the constructor of the Service implementation class.
+ * 
+ * The ServiceFactory implementation class is set using the
+ * javax.xml.rpc.ServiceFactory System property.
+ *
+ * @author Scott.Stark at jboss.org
+ * @author Thomas.Diesler at jboss.org
+ * @version 1.1
+ */
+public abstract class ServiceFactory
+{
+   // provide logging
+   private static Logger log = Logger.getLogger(ServiceFactory.class);
+
+   // The singlton
+   private static ServiceFactory factory;
+
+   /** A constant representing the property used to lookup the name of a ServiceFactory implementation class. */
+   public static final String SERVICEFACTORY_PROPERTY = "javax.xml.rpc.ServiceFactory";
+
+   private static final String DEFAULT_SERVICE_FACTORY = "org.jboss.ws.jaxrpc.ServiceFactoryImpl";
+   private static final String[] alternativeFactories = new String[] { "org.jboss.webservice.client.ServiceFactoryImpl", "org.jboss.axis.client.ServiceFactory" };
+
+   protected ServiceFactory()
+   {
+   }
+
+   /** Gets an instance of the ServiceFactory
+    * Only one copy of a factory exists and is returned to the application each time this method is called.
+    *
+    * The implementation class to be used can be overridden by setting the javax.xml.rpc.ServiceFactory system property.
+    *
+    * @return The ServiceFactory singleton
+    * @throws ServiceException on failure to instantiate the ServiceFactory impl
+    */
+   public static ServiceFactory newInstance() throws ServiceException
+   {
+      // Create the factory singleton if needed
+      if (factory == null)
+      {
+         PrivilegedAction action = new PropertyAccessAction(SERVICEFACTORY_PROPERTY, DEFAULT_SERVICE_FACTORY);
+         String factoryName = (String)AccessController.doPrivileged(action);
+
+         ClassLoader loader = Thread.currentThread().getContextClassLoader();
+         try
+         {
+            try
+            {
+               Class factoryClass = loader.loadClass(factoryName);
+               factory = (ServiceFactory)factoryClass.newInstance();
+            }
+            catch (ClassNotFoundException e)
+            {
+               // Throw the exception if the user asked for a specific factory
+               if (factoryName.equals(DEFAULT_SERVICE_FACTORY) == false)
+                  throw e;
+
+               for (int i = 0; i < alternativeFactories.length; i++)
+               {
+                  factoryName = alternativeFactories[i];
+                  try
+                  {
+                     Class factoryClass = loader.loadClass(factoryName);
+                     return (ServiceFactory)factoryClass.newInstance();
+                  }
+                  catch (ClassNotFoundException e1)
+                  {
+                     log.debug("Cannot load factory: " + factoryName);
+                  }
+               }
+            }
+         }
+         catch (Throwable e)
+         {
+            throw new ServiceException("Failed to create factory: " + factoryName, e);
+         }
+      }
+
+      if (factory == null)
+         throw new ServiceException("Cannot find ServiceFactory implementation");
+
+      return factory;
+   }
+
+   /**
+    * Create a <code>Service</code> instance.
+    *
+    * @param   wsdlDocumentLocation URL for the WSDL document location
+    * @param   serviceName  QName for the service.
+    * @return  Service.
+    * @throws  ServiceException If any error in creation of the
+    *                specified service
+    */
+   public abstract Service createService(URL wsdlDocumentLocation, QName serviceName) throws ServiceException;
+
+   /**
+    * Create a <code>Service</code> instance.
+    *
+    * @param   serviceName QName for the service
+    * @return  Service.
+    * @throws  ServiceException If any error in creation of the specified service
+    */
+   public abstract Service createService(QName serviceName) throws ServiceException;
+
+   /** Create an instance of the generated service implementation class for a given service interface, if available.
+    * @param serviceInterface Service interface
+    * @return A Service
+    * @throws ServiceException If there is any error while creating the specified service, including the case where a
+    * generated service implementation class cannot be located
+    */
+   public abstract Service loadService(Class serviceInterface) throws ServiceException;
+
+   /**
+    * Create an instance of the generated service implementation class for a given service interface, if available.
+    * An implementation may use the provided wsdlDocumentLocation and properties to help locate the generated implementation class.
+    * If no such class is present, a ServiceException will be thrown.
+    *
+    * @param wsdlDocumentLocation URL for the WSDL document location for the service or null
+    * @param serviceInterface Service interface
+    * @param props A set of implementation-specific properties to help locate the generated service implementation class
+    * @return A Service
+    * @throws ServiceException If there is any error while creating the specified service, including the case where a
+    * generated service implementation class cannot be located
+    */
+   public abstract Service loadService(URL wsdlDocumentLocation, Class serviceInterface, Properties props) throws ServiceException;
+
+   /**
+    * Create an instance of the generated service implementation class for a given service, if available.
+    * The service is uniquely identified by the wsdlDocumentLocation and serviceName arguments.
+    * An implementation may use the provided properties to help locate the generated implementation class.
+    * If no such class is present, a ServiceException will be thrown.
+    *
+    * @param wsdlDocumentLocation URL for the WSDL document location for the service or null
+    * @param serviceName Qualified name for the service
+    * @param props A set of implementation-specific properties to help locate the generated service implementation class
+    * @return A Service
+    * @throws ServiceException If there is any error while creating the specified service, including the case where a generated service implementation class cannot be located
+    */
+   public abstract Service loadService(URL wsdlDocumentLocation, QName serviceName, Properties props) throws ServiceException;
+
+   private static class PropertyAccessAction implements PrivilegedAction
+   {
+      private String name;
+      private String defaultValue;
+
+      PropertyAccessAction(String name, String defaultValue)
+      {
+         this.name = name;
+         this.defaultValue = defaultValue;
+      }
+
+      public Object run()
+      {
+         return System.getProperty(name, defaultValue);
+      }
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/ServiceFactory.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/Stub.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/Stub.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/Stub.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,75 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package javax.xml.rpc;
+
+import java.util.Iterator;
+
+/**
+ * The interface javax.xml.rpc.Stub is the common base interface for the stub classes.
+ * All generated stub classes are required to implement the javax.xml.rpc.Stub interface.
+ * An instance of a stub class represents a client side proxy or stub instance for the target service endpoint.
+ *
+ * The javax.xml.rpc.Stub interface provides an extensible property mechanism for the dynamic configuration of a stub instance.
+ *
+ * @author Scott.Stark at jboss.org
+ * @author Thomas.Diesler at jboss.org
+ * @version $Revision$
+ */
+public interface Stub
+{
+   /** Standard property: User name for authentication. */
+   public static final String USERNAME_PROPERTY = "javax.xml.rpc.security.auth.username";
+   /**  Standard property: Password for authentication. */
+   public static final String PASSWORD_PROPERTY = "javax.xml.rpc.security.auth.password";
+   /** Standard property: Target service endpoint address.  */
+   public static final String ENDPOINT_ADDRESS_PROPERTY = "javax.xml.rpc.service.endpoint.address";
+   /** Standard property: This boolean property is used by a service client to indicate whether or not it wants to participate in a session with a service endpoint. */
+   public static final String SESSION_MAINTAIN_PROPERTY = "javax.xml.rpc.session.maintain";
+
+   /** Sets the name and value of a configuration property for this Stub instance.
+    *
+    * If the Stub instances contains a value of the same property, the old value is replaced.
+    * Note that the _setProperty method may not perform validity check on a configured property value.
+    * An example is the standard property for the target service endpoint address that is not checked for validity in
+    * the _setProperty method. In this case, stub configuration errors are detected at the remote method invocation.
+    *
+    * @param name Name of the configuration property
+    * @param value Value of the property
+    * @throws  JAXRPCException
+    *    If an optional standard property name is specified, however this Stub implementation class does not support the configuration of this property.
+    *    If an invalid or unsupported property name is specified or if a value of mismatched property type is passed.
+    *    If there is any error in the configuration of a valid property.
+    */
+   public void _setProperty(String name, Object value);
+
+   /** Gets the value of a specific configuration property.
+    * @param name Name of the property whose value is to be retrieved
+    * @return Value of the configuration property
+    * @throws  JAXRPCException if an invalid or unsupported property name is passed.
+    */
+   public Object _getProperty(String name);
+
+   /** Returns an Iterato view of the names of the properties that can be configured on this stub instance.
+    * @return Iterator for the property names of the type java.lang.String
+    */
+   public Iterator _getPropertyNames();
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/Stub.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/DeserializationContext.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/DeserializationContext.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/DeserializationContext.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,32 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.encoding;
+
+/** A deserializer uses this interface to access and maintain context
+ * information during the deserialization.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public interface DeserializationContext
+{
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/DeserializationContext.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/Deserializer.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/Deserializer.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/Deserializer.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,37 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.encoding;
+
+import java.io.Serializable;
+
+/** A base interface for deserializers. A Deserializer converts an XML
+ * representation to a Java object using a specific XML processing mechanism
+ * and based on the specified type mapping and encoding style.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public interface Deserializer
+   extends Serializable
+{
+   public String getMechanismType();
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/Deserializer.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/DeserializerFactory.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/DeserializerFactory.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/DeserializerFactory.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,52 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.encoding;
+
+import java.io.Serializable;
+import java.util.Iterator;
+
+/** A factory of deserializers. A DeserializerFactory is registered with a
+ * TypeMapping instance as part of the TypeMappingRegistry.
+ *
+ * @see Deserializer
+ * @see TypeMapping 
+ * @see TypeMappingRegistry
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public interface DeserializerFactory extends Serializable
+{
+   /**
+    * Returns a Deserializer for the specified XML processing mechanism type.
+    * @param mechanismType XML processing mechanism type [TBD: definition of valid constants]
+    * @return a Deserializer
+    * @throws javax.xml.rpc.JAXRPCException If DeserializerFactory does not support the specified XML processing mechanism
+    */
+   public Deserializer getDeserializerAs(String mechanismType);
+
+   /** Returns a list of all XML processing mechanism types supported by this DeserializerFactory.
+    *
+    * @return List of unique identifiers for the supported XML processing mechanism types
+    */
+   public Iterator getSupportedMechanismTypes();
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/DeserializerFactory.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/SerializationContext.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/SerializationContext.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/SerializationContext.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,37 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.encoding;
+
+/** This interface is implemented by the JAX-RPC runtime system in an XML
+ * processing mechanism specific manner. A serializer uses the
+ * SerializationContext interface during the serialization to get the context
+ * information related to the XML processing mechanism and to manage
+ * information specific to serialization.
+ * 
+ * @see Serializer
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public interface SerializationContext
+{
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/SerializationContext.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/Serializer.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/Serializer.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/Serializer.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,38 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.encoding;
+
+import java.io.Serializable;
+
+/** This interface defines the base interface for serializers. A Serializer
+ * converts a Java object to an XML representation using a specific XML
+ * processing mechanism and based on the specified type mapping and encoding
+ * style.
+ *  
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public interface Serializer
+   extends Serializable
+{
+   public String getMechanismType();
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/Serializer.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/SerializerFactory.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/SerializerFactory.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/SerializerFactory.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,53 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.encoding;
+
+import java.io.Serializable;
+import java.util.Iterator;
+
+/**
+ * This is a factory of the serializers. A SerializerFactory is registered
+ * with a TypeMapping object as part of the TypeMappingRegistry.
+ * 
+ * @see Serializer
+ * @see TypeMapping 
+ * @see TypeMappingRegistry
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public interface SerializerFactory extends Serializable
+{
+   /** Returns a Serializer for the specified XML processing mechanism type.
+    *
+    * @param mechanismType XML processing mechanism type [TBD: definition of valid constants]
+    * @return A Serializer
+    * @throws javax.xml.rpc.JAXRPCException If SerializerFactory does not support the specified XML processing mechanism
+    * @throws IllegalArgumentException If an invalid mechanism type is specified.
+    */
+   public Serializer getSerializerAs(String mechanismType);
+
+   /** Returns a list of all XML processing mechanism types supported by this SerializerFactory.
+    * @return List of unique identifiers for the supported XML processing mechanism types
+    */
+   public Iterator getSupportedMechanismTypes();
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/SerializerFactory.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/TypeMapping.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/TypeMapping.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/TypeMapping.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,106 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.encoding;
+
+import javax.xml.namespace.QName;
+
+/**
+ * This is the base interface for the representation of a type mapping. A
+ * TypeMapping implementation class may support one or more encoding styles.
+ * 
+ * For its supported encoding styles, a TypeMapping instance maintains a set of
+ * tuples of the type {Java Class, SerializerFactory, DeserializerFactory, XML type-QName}.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public interface TypeMapping
+{
+
+   /**
+    * Gets the DeserializerFactory registered for the specified pair of Java type and XML data type.
+    * @param javaType Class of the Java type
+    * @param xmlType QName of the XML type
+    * @return Registered DeserializerFactory or null if there is no registered factory
+    */
+   public DeserializerFactory getDeserializer(Class javaType, QName xmlType);
+
+   /**
+    * Gets the SerializerFactory registered for the specified pair of Java type and XML data type.
+    * @param javaType Class of the Java type
+    * @param xmlType QName of the XML type
+    * @return Registered SerializerFactory or null if there is no registered factory
+    */
+   public SerializerFactory getSerializer(Class javaType, QName xmlType);
+
+   /**
+    * Returns the encodingStyle URIs (as String[]) supported by this TypeMapping instance.
+    * A TypeMapping that contains only encoding style independent serializers and deserializers
+    * returns null from this method.
+    *
+    * @return Array of encodingStyle URIs for the supported encoding styles
+    */
+   public String[] getSupportedEncodings();
+
+   /**
+    * Sets the encodingStyle URIs supported by this TypeMapping instance. A TypeMapping that contains only encoding
+    * independent serializers and deserializers requires null as the parameter for this method.
+    *
+    * @param encodingStyleURIs Array of encodingStyle URIs for the supported encoding styles
+    */
+   public void setSupportedEncodings(String[] encodingStyleURIs);
+
+   /**
+    * Checks whether or not type mapping between specified XML type and Java type is registered.
+    * @param javaType Class of the Java type
+    * @param xmlType QName of the XML type
+    * @return boolean; true if type mapping between the specified XML type and Java type is registered; otherwise false
+    */
+   public boolean isRegistered(Class javaType, QName xmlType);
+
+   /**
+    * Registers SerializerFactory and DeserializerFactory for a specific type mapping between an XML type and Java type.
+    * This method replaces any existing registered SerializerFactory DeserializerFactory instances.
+    * @param javaType Class of the Java type
+    * @param xmlType QName of the XML type
+    * @param sf SerializerFactory
+    * @param dsf DeserializerFactory
+    * @throws javax.xml.rpc.JAXRPCException If any error during the registration
+    */
+   public void register(Class javaType, QName xmlType, SerializerFactory sf, DeserializerFactory dsf);
+
+   /**
+    * Removes the DeserializerFactory registered for the specified pair of Java type and XML data type.
+    * @param javaType Class of the Java type
+    * @param xmlType QName of the XML type
+    * @throws javax.xml.rpc.JAXRPCException If there is error in removing the registered DeserializerFactory
+    */
+   public void removeDeserializer(Class javaType, QName xmlType);
+
+   /**
+    * Removes the SerializerFactory registered for the specified pair of Java type and XML data type.
+    * @param javaType Class of the Java type
+    * @param xmlType QName of the XML type
+    * @throws javax.xml.rpc.JAXRPCException If there is error in removing the registered SerializerFactory
+    */
+   public void removeSerializer(Class javaType, QName xmlType);
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/TypeMapping.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/TypeMappingRegistry.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/TypeMappingRegistry.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/TypeMappingRegistry.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,111 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.encoding;
+
+import java.io.Serializable;
+
+/**
+ * This defines a registry of TypeMapping instances for encoding styles.
+ *  
+ * @author Scott.Stark at jboss.org
+ * @author Thomas.Diesler at jboss.org
+ * @version $Revision$
+ */
+public interface TypeMappingRegistry extends Serializable
+{
+   /**
+    * Removes all registered TypeMappings and encodingStyleURIs from this TypeMappingRegistry.
+    */
+   public void clear();
+
+   /**
+    * Gets the registered default TypeMapping instance.
+    * This method returns null if there is no registered default TypeMapping in the registry.
+    * @return The registered default TypeMapping instance or null
+    */
+   public TypeMapping getDefaultTypeMapping();
+
+   /**
+    * Registers the TypeMapping instance that is default for all encoding styles supported by the TypeMappingRegistry.
+    * A default TypeMapping should include serializers and deserializers that are independent of and usable with any
+    * encoding style. Successive invocations of the registerDefault method replace any existing default TypeMapping instance.
+    *
+    * If the default TypeMapping is registered, any other TypeMapping instances registered through the
+    * TypeMappingRegistry.register method (for a set of encodingStyle URIs) override the default TypeMapping.
+    *
+    * @param mapping TypeMapping instance
+    * @throws javax.xml.rpc.JAXRPCException If there is an error in the registration of the default TypeMapping
+    */
+   public void registerDefault(TypeMapping mapping);
+
+   /**
+    * Creates a new empty TypeMapping object.
+    * @return TypeMapping instance
+    */
+   public TypeMapping createTypeMapping();
+
+   /**
+    * Returns the registered TypeMapping for the specified encodingStyle URI. If there is no registered TypeMapping for
+    * the specified encodingStyleURI, this method returns null.
+    * @param encodingStyleURI Encoding style specified as an URI
+    * @return TypeMapping for the specified encodingStyleURI or null
+    */
+   public TypeMapping getTypeMapping(String encodingStyleURI);
+
+   /**
+    * Returns a list of registered encodingStyle URIs in this TypeMappingRegistry instance.
+    * @return Array of the registered encodingStyle URIs
+    */
+   public String[] getRegisteredEncodingStyleURIs();
+
+   /**
+    * Registers a TypeMapping instance with the TypeMappingRegistry.
+    * This method replaces any existing registered TypeMapping instance for the specified encodingStyleURI.
+    *
+    * @param encodingStyleURI An encoding style specified as an URI.
+    * @param mapping TypeMapping instance
+    * @return Previous TypeMapping associated with the specified encodingStyleURI, or null if there was no
+    * TypeMapping associated with the specified encodingStyleURI
+    * @throws javax.xml.rpc.JAXRPCException If there is an error in the registration of the TypeMapping for the specified encodingStyleURI.
+    */
+   public TypeMapping register(String encodingStyleURI, TypeMapping mapping);
+
+   /**
+    * Unregisters a TypeMapping instance, if present, from the specified encodingStyleURI.
+    * @param encodingStyleURI Encoding style specified as an URI
+    * @return TypeMapping instance that has been unregistered or null if there was no
+    * TypeMapping registered for the specified encodingStyleURI
+    */
+   public TypeMapping unregisterTypeMapping(String encodingStyleURI);
+
+   /**
+    * Removes a TypeMapping from the TypeMappingRegistry.
+    * A TypeMapping is associated with 1 or more encodingStyleURIs. This method unregisters the specified
+    * TypeMapping instance from all associated encodingStyleURIs and then removes this TypeMapping
+    * instance from the registry.
+    *
+    * @param mapping TypeMapping to be removed
+    * @return true if specified TypeMapping is removed from the TypeMappingRegistry;
+    * false if the specified TypeMapping was not in the TypeMappingRegistry
+    */
+   public boolean removeTypeMapping(TypeMapping mapping);
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/TypeMappingRegistry.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/XMLType.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/XMLType.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/XMLType.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,57 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.encoding;
+
+import javax.xml.namespace.QName;
+
+/** Constants for common XML Schema and SOAP 1.1 types.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public class XMLType
+{
+   public static final QName SOAP_ARRAY = QName.valueOf("{SOAP-ENC}Array"); 
+   public static final QName SOAP_BASE64 = QName.valueOf("{SOAP-ENC}base64");
+   public static final QName SOAP_BOOLEAN = QName.valueOf("{SOAP-ENC}boolean");
+   public static final QName SOAP_BYTE = QName.valueOf("{SOAP-ENC}byte");
+   public static final QName SOAP_DOUBLE = QName.valueOf("{SOAP-ENC}double");
+   public static final QName SOAP_FLOAT = QName.valueOf("{SOAP-ENC}float");
+   public static final QName SOAP_INT = QName.valueOf("{SOAP-ENC}int");
+   public static final QName SOAP_LONG = QName.valueOf("{SOAP-ENC}long");
+   public static final QName SOAP_SHORT = QName.valueOf("{SOAP-ENC}short");
+   public static final QName SOAP_STRING = QName.valueOf("{SOAP-ENC}string");
+   public static final QName XSD_BASE64 = QName.valueOf("{SOAP-ENC}base64Binary");
+   public static final QName XSD_BOOLEAN = QName.valueOf("{SOAP-ENC}boolean");
+   public static final QName XSD_BYTE = QName.valueOf("{xsd}byte");
+   public static final QName XSD_DATETIME = QName.valueOf("{xsd}dateTime");
+   public static final QName XSD_DECIMAL = QName.valueOf("{xsd}decimal");
+   public static final QName XSD_DOUBLE = QName.valueOf("{xsd}double");
+   public static final QName XSD_FLOAT = QName.valueOf("{xsd}float");
+   public static final QName XSD_HEXBINARY = QName.valueOf("{xsd}hexBinary");
+   public static final QName XSD_INT = QName.valueOf("{xsd}int");
+   public static final QName XSD_INTEGER = QName.valueOf("{xsd}integer");
+   public static final QName XSD_LONG = QName.valueOf("{xsd}long");
+   public static final QName XSD_QNAME = QName.valueOf("{xsd}QName");
+   public static final QName XSD_SHORT = QName.valueOf("{xsd}short");
+   public static final QName XSD_STRING = QName.valueOf("{xsd}string");
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/encoding/XMLType.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/GenericHandler.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/GenericHandler.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/GenericHandler.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,109 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.handler;
+
+import javax.xml.namespace.QName;
+
+/** The GenericHandler class implements the Handler interface. SOAP Message
+ * Handler developers should typically subclass GenericHandler class unless
+ * the Handler class needs another class as a superclass.
+ * 
+ * The GenericHandler class is a convenience abstract class that makes writing
+ * Handlers easy. This class provides default implementations of the lifecycle
+ * methods init and destroy and also different handle methods. A Handler
+ * developer should only override methods that it needs to specialize as part
+ * of the derived Handler implementation class.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @author Rahul Sharma (javadoc)
+ * @version $Revision$
+ */
+public abstract class GenericHandler
+   implements Handler
+{
+   /** Default constructor. */
+   protected GenericHandler()
+   {
+   }
+
+   /**
+    * Gets the header blocks processed by this Handler instance.
+    *
+    * @return Array of QNames of header blocks processed by this handler instance.
+    * QName is the qualified name of the outermost element of the Header block.
+    */
+   public abstract QName[] getHeaders();
+
+   /**
+    * The init method to enable the Handler instance to initialize itself. This method should be overridden if the
+    * derived Handler class needs to specialize implementation of this method.
+    * @param config handler configuration
+    */
+   public void init(HandlerInfo config)
+   {
+   }
+
+   /**
+    * The destroy method indicates the end of lifecycle for a Handler instance. This method should be overridden if
+    * the derived Handler class needs to specialize implementation of this method.
+    */
+   public void destroy()
+   {
+   }
+
+   /**
+    * The handleRequest method processes the request SOAP message. The default implementation of this method returns true.
+    * This indicates that the handler chain should continue processing of the request SOAP message.
+    * This method should be overridden if the derived Handler class needs to specialize implementation of this method.
+    * @param msgContext the message msgContext
+    * @return true/false
+    */
+   public boolean handleRequest(MessageContext msgContext)
+   {
+      return true;
+   }
+
+   /**
+    * The handleResponse method processes the response message. The default implementation of this method returns true.
+    * This indicates that the handler chain should continue processing of the response SOAP message.
+    * This method should be overridden if the derived Handler class needs to specialize implementation of this method.
+    * @param msgContext the message msgContext
+    * @return true/false
+    */
+   public boolean handleResponse(MessageContext msgContext)
+   {
+      return true;
+   }
+
+   /**
+    * The handleFault method processes the SOAP faults based on the SOAP message processing model.
+    * The default implementation of this method returns true. This indicates that the handler chain should continue
+    * processing of the SOAP fault. This method should be overridden if the derived Handler class needs to specialize
+    * implementation of this method.
+    * @param msgContext the message msgContext
+    * @return the message msgContext
+    */
+   public boolean handleFault(MessageContext msgContext)
+   {
+      return true;
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/GenericHandler.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/Handler.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/Handler.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/Handler.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,136 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.handler;
+
+import javax.xml.namespace.QName;
+import javax.xml.rpc.JAXRPCException;
+import javax.xml.rpc.soap.SOAPFaultException;
+
+/** This interface is required to be implemented by a SOAP message handler.
+ * The handleRequest, handleResponse and handleFault methods for a SOAP message
+ * handler get access to the SOAPMessage from the SOAPMessageContext. The
+ * implementation of these methods can modify the SOAPMessage including the
+ * headers and body elements.
+ *  
+ * @author Scott.Stark at jboss.org
+ * @author Rahul Sharma (javadoc)
+ * @version $Revision$
+ */
+public interface Handler
+{
+   /** Gets the header blocks processed by this Handler instance.
+    *
+    * @return Array of QNames of header blocks processed by this handler instance.
+    * QName is the qualified name of the outermost element of the Header block.
+    */
+   public QName[] getHeaders();
+
+   /** The init method enables the Handler instance to initialize itself. The init method passes the handler
+    * configuration as a HandlerInfo instance. The HandlerInfo is used to configure the Handler (for example: setup
+    * access to an external resource or service) during the initialization.
+    * In the init method, the Handler class may get access to any resources
+    * (for example; access to a logging service or database) and maintain these as part of its instance variables.
+    * Note that these instance variables must not have any state specific to the SOAP message processing performed in
+    * the various handle method.
+    *
+    * @param config HandlerInfo configuration for the initialization of this handler
+    * @throws JAXRPCException - if initialization of the handler fails
+    */
+   public void init(HandlerInfo config) throws JAXRPCException;
+
+   /** The destroy method indicates the end of lifecycle for a Handler instance. The Handler implementation class should
+    * release its resources and perform cleanup in the implementation of the destroy method.
+    *
+    * @throws JAXRPCException - if there was any error during destroy
+    */
+   public void destroy() throws JAXRPCException;
+
+   /** The handleRequest method processes the request message.
+    *
+    * @param msgContext MessageContext parameter provides access to the request message.
+    * @return boolean boolean Indicates the processing mode
+    * <ul>
+    * <li> Return true to indicate continued processing of the request handler chain.
+    * The HandlerChain takes the responsibility of invoking the next entity.
+    * The next entity may be the next handler in the HandlerChain or if this handler is the last handler in the chain,
+    * the next entity is the service endpoint object. </li>
+    *
+    * <li> Return false to indicate blocking of the request handler chain. In this case, further processing of the request
+    * handler chain is blocked and the target service endpoint is not dispatched. The JAX-RPC runtime system takes the
+    * responsibility of invoking the response handler chain next with the SOAPMessageContext. The Handler implementation
+    * class has the the responsibility of setting the appropriate response SOAP message in either handleRequest and/or
+    * handleResponse method. In the default processing model, the response handler chain starts processing from the same
+    * Handler instance (that returned false) and goes backward in the execution sequence. </li>
+    * </ul>
+    *
+    * @throws JAXRPCException - indicates a handler-specific runtime error.
+    * If JAXRPCException is thrown by a handleRequest method, the HandlerChain terminates the further processing of this handler chain.
+    * On the server side, the HandlerChain generates a SOAP fault that indicates that the message could not be processed
+    * for reasons not directly attributable to the contents of the message itself but rather to a runtime error during
+    * the processing of the message. On the client side, the exception is propagated to the client code
+    *
+    * @throws SOAPFaultException - indicates a SOAP fault. The Handler implementation class has the the responsibility
+    * of setting the SOAP fault in the SOAP message in either handleRequest and/or handleFault method.
+    * If SOAPFaultException is thrown by a server-side request handler's handleRequest method, the HandlerChain
+    * terminates the further processing of the request handlers in this handler chain and invokes the handleFault
+    * method on the HandlerChain with the SOAP message msgContext. Next, the HandlerChain invokes the handleFault method
+    * on handlers registered in the handler chain, beginning with the Handler instance that threw the exception and
+    * going backward in execution. The client-side request handler's handleRequest method should not throw the SOAPFaultException.
+    */
+   public boolean handleRequest(MessageContext msgContext) throws JAXRPCException, SOAPFaultException;
+
+   /** The handleResponse method processes the response SOAP message.
+    *
+    * @param msgContext MessageContext parameter provides access to the response SOAP message
+    * @return boolean Indicates the processing mode
+    * <ul>
+    * <li> Return true to indicate continued processing ofthe response handler chain. The HandlerChain invokes the handleResponse method on the next Handler in the handler chain.</li>
+    * <li>Return false to indicate blocking of the response handler chain. In this case, no other response handlers in the handler chain are invoked.</li>
+    * </ul>
+    * @throws JAXRPCException - indicates a handler specific runtime error. If JAXRPCException is thrown by a
+    * handleResponse method, the HandlerChain terminates the further processing of this handler chain. On the server
+    * side, the HandlerChain generates a SOAP fault that indicates that the message could not be processed for reasons
+    * not directly attributable to the contents of the message itself but rather to a runtime error during the processing
+    * of the message. On the client side, the runtime exception is propagated to the client code.
+    */
+   public boolean handleResponse(MessageContext msgContext);
+
+   /** The handleFault method processes the SOAP faults based on the SOAP message processing model.
+    *
+    * @param msgContext MessageContext parameter provides access to the SOAP message
+    * @return boolean Indicates the processing mode
+    * <ul>
+    * <li> Return true to indicate continued processing of SOAP Fault. The HandlerChain invokes the handleFault method
+    * on the next Handler in the handler chain. </li>
+    * <li> Return false to indicate end of the SOAP fault processing. In this case, no other handlers in the handler
+    * chain are invoked. </li>
+    * </ul>
+    *
+    * @throws JAXRPCException - indicates handler specific runtime error.
+    * If JAXRPCException is thrown by a handleFault method, the HandlerChain terminates the further processing of this
+    * handler chain. On the server side, the HandlerChain generates a SOAP fault that indicates that the message could
+    * not be processed for reasons not directly attributable to the contents of the message itself but rather to a runtime
+    * error during the processing of the message. On the client side, the JAXRPCException is propagated to the client code.
+    */
+   public boolean handleFault(MessageContext msgContext);
+
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/Handler.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/HandlerChain.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/HandlerChain.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/HandlerChain.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,93 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.handler;
+
+import javax.xml.rpc.JAXRPCException;
+import java.util.List;
+import java.util.Map;
+
+/** This interface represents a list of handlers. All elements in the
+ * HandlerChain are of the type javax.xml.rpc.handler.Handler.
+ * 
+ * An implementation class for the HandlerChain interface abstracts the policy
+ * and mechanism for the invocation of the registered handlers. 
+ * 
+ * @author Scott.Stark at jboss.org
+ * @author Rahul Sharma (javadoc)
+ * @version $Revision$
+ */
+public interface HandlerChain
+   extends List
+{
+   /**
+    * Initializes the configuration for a HandlerChain.
+    * @param config Configuration for the initialization of this handler chain
+    * @throws JAXRPCException If any error during initialization
+    */
+   public void init(Map config);
+
+   /**
+    * Indicates the end of lifecycle for a HandlerChain.
+    * @throws JAXRPCException If any error during destroy
+    */
+   public void destroy();
+
+   /**
+    * Gets SOAP actor roles registered for this HandlerChain at this SOAP node. The returned array includes the
+    * special SOAP actor next.
+    * @return SOAP Actor roles as URIs
+    */
+   public String[] getRoles();
+
+   /**
+    * Sets SOAP Actor roles for this HandlerChain. This specifies the set of roles in which this HandlerChain is to act
+    * for the SOAP message processing at this SOAP node. These roles assumed by a HandlerChain must be invariant during
+    * the processing of an individual SOAP message through the HandlerChain.
+    * <p/>
+    * A HandlerChain always acts in the role of the special SOAP actor next. Refer to the SOAP specification for the
+    * URI name for this special SOAP actor. There is no need to set this special role using this method.
+    * @param soapActorNames URIs for SOAP actor name
+    */
+   public void setRoles(String[] soapActorNames);
+
+   /**
+    * The handleRequest method initiates the request processing for this handler chain.
+    * @param msgContext MessageContext parameter provides access to the request SOAP message.
+    * @return Returns true if all handlers in chain have been processed. Returns false if a handler in the chain returned false from its handleRequest method.
+    * @throws JAXRPCException if any processing error happens
+    */
+   public boolean handleRequest(MessageContext msgContext);
+
+   /**
+    * The handleResponse method initiates the response processing for this handler chain.
+    * @return Returns true if all handlers in chain have been processed. Returns false if a handler in the chain returned false from its handleRequest method.
+    * @throws JAXRPCException if any processing error happens
+    */
+   public boolean handleResponse(MessageContext msgContext);
+
+   /**
+    * The handleFault method initiates the SOAP fault processing for this handler chain.
+    * @return Returns true if all handlers in chain have been processed. Returns false if a handler in the chain returned false from its handleRequest method.
+    * @throws JAXRPCException if any processing error happens
+    */
+   public boolean handleFault(MessageContext msgContext);
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/HandlerChain.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/HandlerInfo.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/HandlerInfo.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/HandlerInfo.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,129 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.handler;
+
+import java.io.Serializable;
+import java.util.Map;
+import java.util.HashMap;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import javax.xml.namespace.QName;
+
+/** This represents information about a handler in the HandlerChain. A
+ * HandlerInfo instance is passed in the Handler.init method to initialize a
+ * Handler instance.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public class HandlerInfo
+   implements Serializable
+{
+   private static final long serialVersionUID = -6735139577513563610L;
+
+   private Class handlerClass;
+   private Map configMap = new HashMap();
+   private QName[] headers;
+
+   /** Default constructor */
+   public HandlerInfo()
+   {
+   }
+
+   /** Constructor for HandlerInfo
+    *
+    * @param handlerClass Java Class for the Handler
+    * @param config Handler Configuration as a java.util.Map
+    * @param headers QNames for the header blocks processed by this Handler.
+    * QName is the qualified name of the outermost element of a header block
+    */
+   public HandlerInfo(Class handlerClass, Map config, QName[] headers)
+   {
+      this.handlerClass = handlerClass;
+      this.configMap = config;
+      this.headers = headers;
+   }
+
+   /** Gets the Handler class
+    *
+    * @return Returns null if no Handler class has been set; otherwise the set handler class
+    */
+   public Class getHandlerClass()
+   {
+      return handlerClass;
+   }
+
+   /** Sets the Handler class
+    *
+    * @param handlerClass Class for the Handler
+    */
+   public void setHandlerClass(Class handlerClass)
+   {
+      this.handlerClass = handlerClass;
+   }
+
+   /** Gets the Handler configuration
+    *
+    * @return Returns empty Map if no configuration map has been set; otherwise returns the set configuration map
+    */
+   public Map getHandlerConfig()
+   {
+      return new HashMap(configMap);
+   }
+
+   /** Sets the Handler configuration as java.util.Map
+    *
+    * @param config Configuration map
+    */
+   public void setHandlerConfig(Map config)
+   {
+      configMap.clear();
+      configMap.putAll(config);
+   }
+
+   /** Gets the header blocks processed by this Handler.
+    *
+    * @return Array of QNames for the header blocks. Returns null if no header blocks have been set using the setHeaders method.
+    */
+   public QName[] getHeaders()
+   {
+      return headers;
+   }
+
+   /** Sets the header blocks processed by this Handler.
+    *
+    * @param qnames QNames of the header blocks. QName is the qualified name of the outermost element of the SOAP header block
+    */
+   public void setHeaders(QName[] qnames)
+   {
+      headers = qnames;
+   }
+
+   /** Returns a string representation of the object.
+    */
+   public String toString()
+   {
+      List hlist = (headers != null ? Arrays.asList(headers) : null);
+      return "[class=" + handlerClass.getName() + ",headers=" + hlist + ",config=" + configMap + "]";
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/HandlerInfo.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/HandlerRegistry.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/HandlerRegistry.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/HandlerRegistry.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,47 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.handler;
+
+import java.io.Serializable;
+import java.util.List;
+import javax.xml.namespace.QName;
+
+/** This interface provides support for the programmatic configuration of
+ * handlers in a HandlerRegistry.
+ * 
+ * A handler chain is registered per service endpoint, as indicated by the
+ * qualified name of a port. The getHandlerChain returns the handler chain
+ * (as a java.util.List) for the specified service endpoint. The returned
+ * handler chain is configured using the java.util.List interface. Each element
+ * in this list is required to be of the Java type
+ * javax.xml.rpc.handler.HandlerInfo. 
+ * 
+ * @author Scott.Stark at jboss.org
+ * @author Rahul Sharma (javadoc)
+ * @version $Revision$
+ */
+public interface HandlerRegistry
+   extends Serializable
+{
+   public List getHandlerChain(QName portName);
+   public void setHandlerChain(QName portName, List chain);
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/HandlerRegistry.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/MessageContext.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/MessageContext.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/MessageContext.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,76 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.handler;
+
+import java.util.Iterator;
+
+/** This interface abstracts the message context that is processed by a handler
+ * in the handle method.
+ * 
+ * The MessageContext interface provides methods to manage a property set.
+ * MessageContext properties enable handlers in a handler chain to share
+ * processing related state. 
+ * 
+ * @author Scott.Stark at jboss.org
+ * @author Rahul Sharma, Roberto Chinnici (javadoc)
+ * @version $Revision$
+ */
+public interface MessageContext
+{
+   /**
+    * Returns true if the MessageContext contains a property with the specified name.
+    * @param name Name of the property whose presense is to be tested
+    * @return Returns true if the MessageContext contains the property; otherwise false
+    */
+   public boolean containsProperty(String name);
+
+   /**
+    * Gets the value of a specific property from the MessageContext
+    * @param name Name of the property whose value is to be retrieved
+    * @return Value of the property
+    * @throws IllegalArgumentException if an illegal property name is specified
+    */
+   public Object getProperty(String name);
+
+   /**
+    * Returns an Iterator view of the names of the properties in this MessageContext
+    * @return Iterator for the property names
+    */
+   public Iterator getPropertyNames();
+
+   /**
+    * Removes a property (name-value pair) from the MessageContext
+    * @param name Name of the property to be removed
+    * @throws IllegalArgumentException if an illegal property name is specified
+    */
+   public void removeProperty(String name);
+
+   /**
+    * Sets the name and value of a property associated with the MessageContext.
+    * If the MessageContext contains a value of the same property, the old value is replaced.
+    * @param name Name of the property associated with the MessageContext
+    * @param value Value of the property
+    * @throws IllegalArgumentException If some aspect of the property is prevents it from being stored in the context
+    * @throws UnsupportedOperationException If this method is not supported.
+    */
+   public void setProperty(String name, Object value);
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/MessageContext.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/soap/SOAPMessageContext.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/soap/SOAPMessageContext.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/soap/SOAPMessageContext.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,42 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.handler.soap;
+
+import javax.xml.soap.SOAPMessage;
+import javax.xml.rpc.handler.MessageContext;
+
+/** This interface provides access to the SOAP message for either RPC request
+ * or response. The javax.xml.soap.SOAPMessage specifies the standard Java API
+ * for the representation of a SOAP 1.1 message with attachments.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @author Rahul Sharma (javadoc)
+ * @version $Revision$
+ */
+public interface SOAPMessageContext
+   extends MessageContext
+{
+   public SOAPMessage getMessage();
+   public void setMessage(SOAPMessage message);
+
+   public String[] getRoles();
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/handler/soap/SOAPMessageContext.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/BigDecimalHolder.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/BigDecimalHolder.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/BigDecimalHolder.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,44 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.holders;
+
+import java.math.BigDecimal;
+
+/** A holder for BigDecimals.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public final class BigDecimalHolder
+   implements Holder
+{
+   public BigDecimal value;
+
+   public BigDecimalHolder()
+   {
+      
+   }      
+   public BigDecimalHolder(BigDecimal value)
+   {
+      this.value = value;
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/BigDecimalHolder.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/BigIntegerHolder.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/BigIntegerHolder.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/BigIntegerHolder.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,44 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.holders;
+
+import java.math.BigInteger;
+
+/** A holder for BigIntegers.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public final class BigIntegerHolder
+   implements Holder
+{
+   public BigInteger value;
+
+   public BigIntegerHolder()
+   {
+      
+   }      
+   public BigIntegerHolder(BigInteger value)
+   {
+      this.value = value;
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/BigIntegerHolder.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/BooleanHolder.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/BooleanHolder.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/BooleanHolder.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,42 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.holders;
+
+/** A holder for booleans.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public final class BooleanHolder
+   implements Holder
+{
+   public boolean value;
+
+   public BooleanHolder()
+   {
+      
+   }      
+   public BooleanHolder(boolean value)
+   {
+      this.value = value;
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/BooleanHolder.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/BooleanWrapperHolder.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/BooleanWrapperHolder.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/BooleanWrapperHolder.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,42 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.holders;
+
+/** A holder for Booleans.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public final class BooleanWrapperHolder
+   implements Holder
+{
+   public Boolean value;
+
+   public BooleanWrapperHolder()
+   {
+      
+   }      
+   public BooleanWrapperHolder(Boolean value)
+   {
+      this.value = value;
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/BooleanWrapperHolder.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ByteArrayHolder.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ByteArrayHolder.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ByteArrayHolder.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,42 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.holders;
+
+/** A holder for byte[]s.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public final class ByteArrayHolder
+   implements Holder
+{
+   public byte[] value;
+
+   public ByteArrayHolder()
+   {
+      
+   }      
+   public ByteArrayHolder(byte[] value)
+   {
+      this.value = value;
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ByteArrayHolder.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ByteHolder.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ByteHolder.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ByteHolder.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,42 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.holders;
+
+/** A holder for bytes.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public final class ByteHolder
+   implements Holder
+{
+   public byte value;
+
+   public ByteHolder()
+   {
+      
+   }      
+   public ByteHolder(byte value)
+   {
+      this.value = value;
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ByteHolder.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ByteWrapperHolder.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ByteWrapperHolder.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ByteWrapperHolder.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,42 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.holders;
+
+/** A holder for Bytes.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public final class ByteWrapperHolder
+   implements Holder
+{
+   public Byte value;
+
+   public ByteWrapperHolder()
+   {
+      
+   }      
+   public ByteWrapperHolder(Byte value)
+   {
+      this.value = value;
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ByteWrapperHolder.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/CalendarHolder.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/CalendarHolder.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/CalendarHolder.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,44 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.holders;
+
+import java.util.Calendar;
+
+/** A holder for Calendars.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public final class CalendarHolder
+   implements Holder
+{
+   public Calendar value;
+
+   public CalendarHolder()
+   {
+      
+   }      
+   public CalendarHolder(Calendar value)
+   {
+      this.value = value;
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/CalendarHolder.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/DoubleHolder.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/DoubleHolder.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/DoubleHolder.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,42 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.holders;
+
+/** A holder for doubles.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public final class DoubleHolder
+   implements Holder
+{
+   public double value;
+
+   public DoubleHolder()
+   {
+      
+   }      
+   public DoubleHolder(double value)
+   {
+      this.value = value;
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/DoubleHolder.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/DoubleWrapperHolder.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/DoubleWrapperHolder.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/DoubleWrapperHolder.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,42 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.holders;
+
+/** A holder for Doubles.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public final class DoubleWrapperHolder
+   implements Holder
+{
+   public Double value;
+
+   public DoubleWrapperHolder()
+   {
+      
+   }      
+   public DoubleWrapperHolder(Double value)
+   {
+      this.value = value;
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/DoubleWrapperHolder.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/FloatHolder.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/FloatHolder.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/FloatHolder.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,42 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.holders;
+
+/** A holder for floats.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public final class FloatHolder
+   implements Holder
+{
+   public float value;
+
+   public FloatHolder()
+   {
+      
+   }      
+   public FloatHolder(float value)
+   {
+      this.value = value;
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/FloatHolder.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/FloatWrapperHolder.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/FloatWrapperHolder.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/FloatWrapperHolder.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,42 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.holders;
+
+/** A holder for Floats.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public final class FloatWrapperHolder
+   implements Holder
+{
+   public Float value;
+
+   public FloatWrapperHolder()
+   {
+      
+   }      
+   public FloatWrapperHolder(Float value)
+   {
+      this.value = value;
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/FloatWrapperHolder.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/Holder.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/Holder.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/Holder.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,34 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.holders;
+
+/** This interface represents the base interface for both standard and generated
+ * Holder classes. A generated Holder class is required to implement this Holder
+ * interface.
+ *  
+ * @author Scott.Stark at jboss.org
+ * @author Rahul Sharma (javadoc)
+ * @version $Revision$
+ */
+public interface Holder
+{
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/Holder.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/IntHolder.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/IntHolder.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/IntHolder.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,42 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.holders;
+
+/** A holder for ints.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public final class IntHolder
+   implements Holder
+{
+   public int value;
+
+   public IntHolder()
+   {
+      
+   }      
+   public IntHolder(int value)
+   {
+      this.value = value;
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/IntHolder.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/IntegerWrapperHolder.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/IntegerWrapperHolder.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/IntegerWrapperHolder.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,42 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.holders;
+
+/** A holder for Integers.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public final class IntegerWrapperHolder
+   implements Holder
+{
+   public Integer value;
+
+   public IntegerWrapperHolder()
+   {
+      
+   }      
+   public IntegerWrapperHolder(Integer value)
+   {
+      this.value = value;
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/IntegerWrapperHolder.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/LongHolder.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/LongHolder.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/LongHolder.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,42 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.holders;
+
+/** A holder for longs.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public final class LongHolder
+   implements Holder
+{
+   public long value;
+
+   public LongHolder()
+   {
+      
+   }      
+   public LongHolder(long value)
+   {
+      this.value = value;
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/LongHolder.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/LongWrapperHolder.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/LongWrapperHolder.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/LongWrapperHolder.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,42 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.holders;
+
+/** A holder for Longs.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public final class LongWrapperHolder
+   implements Holder
+{
+   public Long value;
+
+   public LongWrapperHolder()
+   {
+      
+   }      
+   public LongWrapperHolder(Long value)
+   {
+      this.value = value;
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/LongWrapperHolder.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ObjectHolder.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ObjectHolder.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ObjectHolder.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,42 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.holders;
+
+/** A holder for Objects.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public final class ObjectHolder
+   implements Holder
+{
+   public Object value;
+
+   public ObjectHolder()
+   {
+      
+   }      
+   public ObjectHolder(Object value)
+   {
+      this.value = value;
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ObjectHolder.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/QNameHolder.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/QNameHolder.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/QNameHolder.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,44 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.holders;
+
+import javax.xml.namespace.QName;
+
+/** A holder for QNames.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public final class QNameHolder
+   implements Holder
+{
+   public QName value;
+
+   public QNameHolder()
+   {
+      
+   }      
+   public QNameHolder(QName value)
+   {
+      this.value = value;
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/QNameHolder.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ShortHolder.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ShortHolder.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ShortHolder.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,42 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.holders;
+
+/** A holder for shorts.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public final class ShortHolder
+   implements Holder
+{
+   public short value;
+
+   public ShortHolder()
+   {
+      
+   }      
+   public ShortHolder(short value)
+   {
+      this.value = value;
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ShortHolder.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ShortWrapperHolder.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ShortWrapperHolder.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ShortWrapperHolder.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,42 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.holders;
+
+/** A holder for Shorts.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public final class ShortWrapperHolder
+   implements Holder
+{
+   public Short value;
+
+   public ShortWrapperHolder()
+   {
+      
+   }      
+   public ShortWrapperHolder(Short value)
+   {
+      this.value = value;
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/ShortWrapperHolder.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/StringHolder.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/StringHolder.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/StringHolder.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,42 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.holders;
+
+/** A holder for Strings.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public final class StringHolder
+   implements Holder
+{
+   public String value;
+
+   public StringHolder()
+   {
+      
+   }      
+   public StringHolder(String value)
+   {
+      this.value = value;
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/holders/StringHolder.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/server/ServiceLifecycle.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/server/ServiceLifecycle.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/server/ServiceLifecycle.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,59 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.server;
+
+import javax.xml.rpc.ServiceException;
+
+/** This interface defines a lifecycle interface for a JAX-RPC service endpoint.
+ * If the service endpoint class implements the ServiceLifeycle interface, the
+ * servlet container based JAX-RPC runtime system is required to manage the
+ * lifecycle of the corresponding service endpoint objects.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @author Rahul Sharma (javadoc)
+ * @version $Revision$
+ */
+public interface ServiceLifecycle
+{
+   /**
+    * Used for initialization of a service endpoint. After a service endpoint instance (an instance of a service endpoint class)
+    * is instantiated, the JAX-RPC runtime system invokes the init method.
+    * The service endpoint class uses the init method to initialize its configuration and setup access to any external resources.
+    * The context parameter in the init method enables the endpoint instance to access the endpoint context provided by
+    * the underlying JAX-RPC runtime system.
+    *
+    * The init method implementation should typecast the context parameter to an appropriate Java type.
+    * For service endpoints deployed on a servlet container based JAX-RPC runtime system, the context parameter is
+    * of the Java type javax.xml.rpc.server.ServletEndpointContext. The ServletEndpointContext provides an endpoint
+    * context maintained by the underlying servlet container based JAX-RPC runtime system
+    *
+    * @param context Endpoint context for a JAX-RPC service endpoint
+    * @throws ServiceException If any error in initialization of the service endpoint; or if any illegal context has been provided in the init method
+    */
+   public void init(Object context) throws ServiceException;
+
+   /**
+    *  JAX-RPC runtime system ends the lifecycle of a service endpoint instance by invoking the destroy method.
+    * The service endpoint releases its resourcesin the implementation of the destroy method. 
+    */
+   public void destroy();
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/server/ServiceLifecycle.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/server/ServletEndpointContext.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/server/ServletEndpointContext.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/server/ServletEndpointContext.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,100 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package javax.xml.rpc.server;
+
+import javax.servlet.ServletContext;
+import javax.servlet.http.HttpSession;
+import javax.xml.rpc.handler.MessageContext;
+import java.security.Principal;
+
+/**
+ * This interface provides an endpoint context maintained by the underlying
+ * servlet container based JAX-RPC runtime system. For service endpoints
+ * deployed on a servlet container based JAX-RPC runtime system, the context
+ * parameter in the ServiceLifecycle.init method is required to be of the Java
+ * type javax.xml.rpc.server.ServletEndpointContext.
+ * 
+ * A servlet container based JAX-RPC runtime system implements the
+ * ServletEndpointContext interface. The JAX-RPC runtime system is required to
+ * provide appropriate session, message context, servlet context and user
+ * principal information per method invocation on the endpoint class.
+ * 
+ * @author Scott.Stark at jboss.org
+ * @author Rahul Sharma, Roberto Chinnici (javadoc)
+ * @version $Revision$
+ */
+public interface ServletEndpointContext
+{
+   /**
+    * The getHttpSession method returns the current HTTP session (as a javax.servlet.http.HTTPSession).
+    * When invoked by the service endpoint within a remote method implementation, the getHttpSession returns the HTTP
+    * session associated currently with this method invocation. This method returns null if there is no HTTP session
+    * currently active and associated with this service endpoint. An endpoint class should not rely on an active HTTP
+    * session being always there; the underlying JAX-RPC runtime system is responsible for managing whether or not there
+    * is an active HTTP session.
+    *
+    * The getHttpSession method throws JAXRPCException if invoked by an non HTTP bound endpoint.
+    *
+    * @return The HTTP session associated with the current invocation or null if there is no active session.
+    */
+   public HttpSession getHttpSession();
+
+   /**
+    * The method getMessageContext returns the MessageContext targeted for this endpoint instance.
+    * This enables the service endpoint instance to acccess the MessageContext propagated by request HandlerChain
+    * (and its contained Handler instances) to the target endpoint instance and to share any SOAP message processing related context.
+    * The endpoint instance can access and manipulate the MessageContext and share the SOAP message processing related context with the response HandlerChain.
+    *
+    * @return MessageContext; If there is no associated MessageContext, this method returns null.
+    */
+   public MessageContext getMessageContext();
+
+   /**
+    * The method getServletContext returns the ServletContext associated with the web application that contain this endpoint.
+    * According to the Servlet specification, There is one context per web application (installed as a WAR) per JVM .
+    * A servlet based service endpoint is deployed as part of a web application.
+    * @return ServletContext
+    */
+   public ServletContext getServletContext();
+
+   /**
+    * Returns a java.security.Principal instance that contains the name of the authenticated user for the current method
+    * invocation on the endpoint instance. This method returns null if there is no associated principal yet.
+    * The underlying JAX-RPC runtime system takes the responsibility of providing the appropriate authenticated principal
+    * for a remote method invocation on the service endpoint instance.
+    *
+    * @return A java.security.Principal for the authenticated principal associated with the current invocation on the
+    * servlet endpoint instance; Returns null if there no authenticated user associated with a method invocation.
+
+    */
+   public Principal getUserPrincipal();
+
+   /**
+    * Returns a boolean indicating whether the authenticated user for the current method invocation on the endpoint
+    * instance is included in the specified logical "role".
+    *
+    * @param role a String specifying the name of the role
+    * @return a boolean indicating whether the authenticated user associated with the current method invocation belongs
+    * to a given role; false if the user has not been authenticated
+    */
+   public boolean isUserInRole(String role);
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/server/ServletEndpointContext.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: branches/jbossws-1.0/src/main/java/javax/xml/rpc/soap/SOAPFaultException.java
===================================================================
--- branches/jbossws-1.0/src/main/java/javax/xml/rpc/soap/SOAPFaultException.java	2006-08-18 08:14:22 UTC (rev 766)
+++ branches/jbossws-1.0/src/main/java/javax/xml/rpc/soap/SOAPFaultException.java	2006-08-18 08:19:55 UTC (rev 767)
@@ -0,0 +1,147 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package javax.xml.rpc.soap;
+
+import java.io.ObjectStreamField;
+import java.io.ObjectInputStream;
+import java.io.IOException;
+import java.io.ObjectOutputStream;
+import javax.xml.soap.Detail;
+import javax.xml.soap.Name;
+import javax.xml.namespace.QName;
+
+import org.jboss.logging.Logger;
+import org.jboss.util.id.SerialVersion;
+
+/** The SOAPFaultException exception represents a SOAP fault.
+ * 
+ * The message part in the SOAP fault maps to the contents of faultdetail
+ * element accessible through the getDetail method on the SOAPFaultException.
+ * The method createDetail on the javax.xml.soap.SOAPFactory creates an instance
+ * of the javax.xml.soap.Detail.
+ * 
+ * The faultstring provides a human-readable description of the SOAP fault. The
+ * faultcode element provides an algorithmic mapping of the SOAP fault.
+ *  
+ * Refer to SOAP 1.1 and WSDL 1.1 specifications for more details of the SOAP
+ * faults. 
+ * 
+ * @author Scott.Stark at jboss.org
+ * @author Thomas.Diesler at jboss.org
+ * @author Rahul Sharma (javadoc)
+ * @version $Revision$
+ */
+public class SOAPFaultException extends RuntimeException
+{
+   // provide logging
+   private static Logger log = Logger.getLogger(SOAPFaultException.class);
+
+   /** @since 4.0.2 */
+   static final long serialVersionUID;
+   private static final int CODE_IDX = 0;
+   private static final int STRING_IDX = 1;
+   private static final int ACTOR_IDX = 2;
+   private static final int DETAIL_IDX = 3;
+   private static final ObjectStreamField[] serialPersistentFields;
+   static
+   {
+      if (SerialVersion.version == SerialVersion.LEGACY)
+      {
+         serialVersionUID = -290987278985292477L;
+         serialPersistentFields = new ObjectStreamField[] { new ObjectStreamField("faultCode", QName.class), new ObjectStreamField("faultString", String.class),
+               new ObjectStreamField("faultActor", String.class), new ObjectStreamField("faultDetail", Detail.class), };
+      }
+      else
+      {
+         serialVersionUID = -7224636940495025621L;
+         serialPersistentFields = new ObjectStreamField[] { new ObjectStreamField("faultcode", QName.class), new ObjectStreamField("faultstring", String.class),
+               new ObjectStreamField("faultactor", String.class), new ObjectStreamField("faultdetail", Detail.class), };
+      }
+   }
+
+   private QName faultCode;
+   private String faultString;
+   private String faultActor;
+   private Detail faultDetail;
+
+   public SOAPFaultException(QName faultCode, String faultString, String faultActor, Detail faultDetail)
+   {
+      super(faultString);
+
+      Name detailName = faultDetail != null ? faultDetail.getElementName() : null;
+      log.debug("new SOAPFaultException [code=" + faultCode + ",string=" + faultString + ",actor=" + faultActor + ",detail=" + detailName + "]");
+
+      this.faultCode = faultCode;
+      this.faultString = faultString;
+      this.faultActor = faultActor;
+      this.faultDetail = faultDetail;
+   }
+
+   public QName getFaultCode()
+   {
+      return faultCode;
+   }
+
+   public String getFaultString()
+   {
+      return faultString;
+   }
+
+   public String getFaultActor()
+   {
+      return faultActor;
+   }
+
+   public Detail getDetail()
+   {
+      return faultDetail;
+   }
+
+   // Private -------------------------------------------------------
+   private void readObject(ObjectInputStream ois) throws ClassNotFoundException, IOException
+   {
+      ObjectInputStream.GetField fields = ois.readFields();
+      String name = serialPersistentFields[CODE_IDX].getName();
+      this.faultCode = (QName)fields.get(name, null);
+      name = serialPersistentFields[STRING_IDX].getName();
+      this.faultString = (String)fields.get(name, null);
+      name = serialPersistentFields[ACTOR_IDX].getName();
+      this.faultActor = (String)fields.get(name, null);
+      name = serialPersistentFields[DETAIL_IDX].getName();
+      this.faultDetail = (Detail)fields.get(name, null);
+   }
+
+   private void writeObject(ObjectOutputStream oos) throws IOException
+   {
+      // Write j2ee 1.4.1 RI field names
+      ObjectOutputStream.PutField fields = oos.putFields();
+      String name = serialPersistentFields[CODE_IDX].getName();
+      fields.put(name, faultCode);
+      name = serialPersistentFields[STRING_IDX].getName();
+      fields.put(name, faultString);
+      name = serialPersistentFields[ACTOR_IDX].getName();
+      fields.put(name, faultActor);
+      name = serialPersistentFields[DETAIL_IDX].getName();
+      fields.put(name, faultDetail);
+      oos.writeFields();
+   }
+}


Property changes on: branches/jbossws-1.0/src/main/java/javax/xml/rpc/soap/SOAPFaultException.java
___________________________________________________________________
Name: svn:executable
   + 
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF




More information about the jboss-svn-commits mailing list