butek 02/03/26 14:34:23
Modified: java TODO.txt
java/src/javax/xml/rpc Service.java
java/src/org/apache/axis/client Service.java
Log:
I brought the javax.xml.rpc.Service interface up to JAX-RPC 0.8 snuff. The
implementation still needs work. New methods:
getCalls
getHandlerRegistry
Revision Changes Path
1.27 +3 -0 xml-axis/java/TODO.txt
Index: TODO.txt
===================================================================
RCS file: /home/cvs/xml-axis/java/TODO.txt,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -r1.26 -r1.27
--- TODO.txt 26 Mar 2002 14:43:31 -0000 1.26
+++ TODO.txt 26 Mar 2002 22:34:23 -0000 1.27
@@ -17,6 +17,9 @@
JAX-RPC COMPATIBILITY
---------------------
+! <> Implement Service.getCalls() method. (maybe)
+! <> Implement generated Services' getCalls() method.
+! <> Implement Service.getHandlerRegistry() method.
SOAP 1.2 SUPPORT
----------------
1.8 +30 -12 xml-axis/java/src/javax/xml/rpc/Service.java
Index: Service.java
===================================================================
RCS file: /home/cvs/xml-axis/java/src/javax/xml/rpc/Service.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- Service.java 5 Feb 2002 16:22:39 -0000 1.7
+++ Service.java 26 Mar 2002 22:34:23 -0000 1.8
@@ -57,6 +57,7 @@
import javax.xml.rpc.encoding.TypeMappingRegistry;
+import javax.xml.rpc.handler.HandlerRegistry;
import javax.xml.rpc.namespace.QName;
@@ -75,8 +76,7 @@
*
* @version 0.1
*/
-public interface Service
- extends java.io.Serializable, javax.naming.Referenceable {
+public interface Service {
/**
* The getPort method returns a dynamic proxy for the specified service port. A
service client uses this dynamic
@@ -154,6 +154,34 @@
public Call createCall() 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.
+ *
+ * This method requires the Service implementation class to have access
+ * to the WSDL related metadata.
+ *
+ * @param portName - Qualified name for the target service endpoint
+ *
+ * @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() throws ServiceException;
+
+ /**
+ * 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();
+
+ /**
* Gets location of the WSDL document for this Service.
*
* @return Location of the WSDL document for this service
@@ -173,16 +201,6 @@
* @return iterator containing list of qualified names of the ports
*/
public java.util.Iterator getPorts();
-
- /**
- * Registers a type mapping registry with this Service object.
- *
- * @param registry - TypeMappingRegistry object
- *
- * @throws ServiceException - if there is an error in the configuration of the
TypeMappingRegistry
- */
- public void setTypeMappingRegistry(TypeMappingRegistry registry)
- throws ServiceException;
/**
* Gets the TypeMappingRegistry registered with this Service object
1.46 +44 -0 xml-axis/java/src/org/apache/axis/client/Service.java
Index: Service.java
===================================================================
RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/client/Service.java,v
retrieving revision 1.45
retrieving revision 1.46
diff -u -r1.45 -r1.46
--- Service.java 26 Mar 2002 12:44:46 -0000 1.45
+++ Service.java 26 Mar 2002 22:34:23 -0000 1.46
@@ -75,6 +75,7 @@
import javax.wsdl.xml.WSDLReader;
import javax.xml.rpc.ServiceException;
import javax.xml.rpc.encoding.TypeMappingRegistry;
+import javax.xml.rpc.handler.HandlerRegistry;
import javax.xml.rpc.namespace.QName;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
@@ -438,6 +439,49 @@
Call call = new org.apache.axis.client.Call(this);
previousCall.set(call);
return call;
+ }
+
+ /**
+ * 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.
+ *
+ * This method requires the Service implementation class to have access
+ * to the WSDL related metadata.
+ *
+ * Not implemented.
+ *
+ * @param portName - Qualified name for the target service endpoint
+ *
+ * @throws ServiceException - If this Service class does not have access
+ * to the required WSDL metadata or if an illegal portName is specified.
+ */
+ public javax.xml.rpc.Call[] getCalls() throws ServiceException {
+ if (wsdlLocation == null) {
+ throw new ServiceException();
+ }
+ else {
+ return new javax.xml.rpc.Call[0];
+ }
+ }
+
+ /**
+ * Returns the configured HandlerRegistry instance for this Service
+ * instance.
+ *
+ * NOTE: This Service currently does not support the configuration
+ * of a HandlerRegistry! It will throw a
+ * java.lang.UnsupportedOperationException.
+ *
+ * @return HandlerRegistry
+ * @throws java.lang.UnsupportedOperationException - if the Service
+ * class does not support the configuration of a
+ * HandlerRegistry.
+ */
+ public HandlerRegistry getHandlerRegistry() {
+ throw new UnsupportedOperationException();
}
/**