You are viewing a plain text version of this content. The canonical link for it is here.
Posted to pubscribe-commits@ws.apache.org by ip...@apache.org on 2005/07/19 03:26:38 UTC

svn commit: r219592 - in /webservices/pubscribe/trunk: ./ src/java/org/apache/ws/notification/base/v2004_06/impl/ src/wsdl/

Author: ips
Date: Mon Jul 18 18:24:56 2005
New Revision: 219592

URL: http://svn.apache.org/viewcvs?rev=219592&view=rev
Log:
added support for GetMultiRPs and SetRPs operations to SubscriptionManager

Removed:
    webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/impl/AbstractSubscriptionHome.java
Modified:
    webservices/pubscribe/trunk/maven.xml
    webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/impl/SubscriptionHome.java
    webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/impl/SubscriptionResource.java
    webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/impl/SubscriptionService.java
    webservices/pubscribe/trunk/src/wsdl/SubscriptionManager.wsdl

Modified: webservices/pubscribe/trunk/maven.xml
URL: http://svn.apache.org/viewcvs/webservices/pubscribe/trunk/maven.xml?rev=219592&r1=219591&r2=219592&view=diff
==============================================================================
--- webservices/pubscribe/trunk/maven.xml (original)
+++ webservices/pubscribe/trunk/maven.xml Mon Jul 18 18:24:56 2005
@@ -224,107 +224,7 @@
        <fileset dir="${maven.dist.dir}"><include name="*.tar.gz" /></fileset>    
     </delete>
   </postGoal>
-    
-  <!-- ================================================================== -->
-  <!-- D I S K - T Y P E S . J A R   G O A L                              -->
-  <!-- ================================================================== -->
-  <!-- Builds a JAR containing generated Axis classes and XML beans for   -->
-  <!-- the disk example WSDL.                                             -->
-  <!-- ================================================================== -->  
-  <goal name="disk-types.jar" prereqs="java:compile,java:jar-resources"
-        description="generates skeletons, stubs and impls for disk web service example">
-
-    <mkdir  dir="${wsrf.disk.types.src.dir}"/>
-    <mkdir  dir="${wsrf.disk.types.classes.dir}"/>          
-    <path id="disk-types.classpath.id">
-       <pathelement location="${wsrf.disk.types.classes.dir}" />
-       <pathelement location="${maven.build.dest}" />
-       <path refid="maven.dependency.classpath" />
-    </path>   
-            
-    <mkdir dir="${maven.src.dir}/wsdl/tmp" />
-    <copy file="${jmuws.disk.wsdl}" todir="${maven.src.dir}/wsdl/tmp" />    
-    <taskdef name="wsdmwsdl2java" classname="org.apache.ws.tool.taskdef.WsdmWsdl2JavaTask" classpathref="disk-types.classpath.id" />
-    <wsdmwsdl2java wsdl="${maven.src.dir}/wsdl/tmp/disk.wsdl" 
-                   srcDestDir="${wsrf.disk.types.src.dir}"
-                   classesDestDir="${wsrf.disk.types.classes.dir}"
-                   classpathref="disk-types.classpath.id"                                 
-                   debug="off"
-                   wsdmWsdlLocation="/wsdl" />
-    <delete dir="${maven.src.dir}/wsdl/tmp" />
-    
-    <copy todir="${wsrf.disk.types.src.dir}/com/xyz">
-       <fileset dir="${maven.src.dir}/test/com/xyz" includes="**" />      
-    </copy>
-    
-    <jar jarfile="${wsrf.disk.types.src.jar}" basedir="${wsrf.disk.types.src.dir}" />
-    
-    <javac srcdir="${wsrf.disk.types.src.dir}"
-           destdir="${wsrf.disk.types.classes.dir}"
-           classpathref="disk-types.classpath.id" 
-           debug="on" />    
-    <mkdir dir="${maven.test.dest}/com/xyz"/>
-    
-    <copy todir="${wsrf.disk.types.classes.dir}">
-      <fileset dir="${wsrf.disk.types.src.dir}" excludes="**/*.java,**/package.html" />
-    </copy>                
-
-    <jar jarfile="${wsrf.disk.types.jar}" basedir="${wsrf.disk.types.classes.dir}" />
-    
-    <!-- deploy the disk deploy.wsdd to src/test/server-config.wsdd -->
-    <taskdef name="wsddUpdater" classname="org.apache.ws.platform.axis.deployment.wsdd.WsddUpdater" classpathref="disk-types.classpath.id" />
-    <wsddUpdater deployWsdd="${wsrf.disk.types.src.dir}/axis/com/xyz/deploy.wsdd" configWsdd="${maven.src.dir}/test/server-config.wsdd" />   
-    
-  </goal>
-
-  <!-- ================================================================== -->
-  <!-- C M 2 : D I S T   G O A L                                          -->
-  <!-- ================================================================== -->
-  <!-- Build distribution on CM2 build server.                            -->
-  <!-- For use with the CM2 build system.                                 -->
-  <!-- ================================================================== -->
-  <goal name="cm2:dist" prereqs="clean, cm2:checkout">
-    <maven:snapshot project="${pom}" />    
-    <j:set var="maven.final.name" value="${snapshotSignature}-${pom.currentVersion}" />
-    <attainGoal name="dist:build" />
-  </goal>
-
-  <!-- ================================================================== -->
-  <!-- C M 2 : C H E C K O U T   G O A L                                  -->
-  <!-- ================================================================== -->
-  <!-- Checkout project from CVS with Date label on CM2 build server.     -->
-  <!-- For use with the CM2 build system.                                 -->
-  <!-- ================================================================== -->
-  <goal name="cm2:checkout">     
-    <property environment="env" />
-    <property file="${basedir}/internal-build.properties" />
-    <!-- this sets the Label prop -->
-    <property file="${cm2.config.file}" /> 
-    <cvs command="checkout -P -A -D ${Label}"
-         cvsRoot=":pserver:${env.CVS_USR}:${env.CVS_PWD}@${env.CVS_TUNNEL}:/cvs"
-         package="${cm2.project.name}"         
-         dest="${basedir}/.."           
-         quiet="${cvs.quiet}" />
-  </goal>
-  
-  <!-- ================================================================== -->
-  <!-- CC : C H E C K O U T   G O A L                                     -->
-  <!-- ================================================================== -->
-  <!-- Checkout project from CVS.                                         -->
-  <!-- Used by cruisecontrol.                                             -->
-  <!-- ================================================================== -->
-  <goal name="cc:checkout">     
-     <mkdir  dir="${maven.build.dir}/test-reports"/>
-     <property environment="env" />
-     <!-- property file="${basedir}/internal-build.properties" / -->
-     <cvs command="update -d -P -C"
-          cvsRoot=":pserver:${env.CVS_USR}:${env.CVS_PWD}@${env.CVS_TUNNEL}:/cvs"
-          package="ws-rp"         
-          dest=".."           
-          quiet="no"
-     />
-  </goal>
-  
+        
   <goal name="test:html-report" 
         prereqs="maven-junit-report-plugin:report, xdoc:transform" 
         description="Runs test plugin and creates an HTML report in target/docs/" />

Modified: webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/impl/SubscriptionHome.java
URL: http://svn.apache.org/viewcvs/webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/impl/SubscriptionHome.java?rev=219592&r1=219591&r2=219592&view=diff
==============================================================================
--- webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/impl/SubscriptionHome.java (original)
+++ webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/impl/SubscriptionHome.java Mon Jul 18 18:24:56 2005
@@ -27,16 +27,24 @@
 import org.apache.ws.resource.ResourceKey;
 import org.apache.ws.resource.ResourceUnknownException;
 import org.apache.ws.resource.impl.SimpleTypeResourceKey;
+import org.apache.ws.resource.impl.AbstractResourceHome;
 import org.apache.ws.resource.properties.query.QueryExpression;
+import org.apache.commons.collections.map.ReferenceMap;
 
 import javax.xml.namespace.QName;
+import javax.naming.NamingException;
+import javax.naming.Context;
+import javax.naming.InitialContext;
 import java.lang.reflect.Constructor;
 import java.util.Calendar;
+import java.util.Map;
+import java.util.HashMap;
+import java.util.Collections;
 
 /**
- * TODO
+ * The home for the builtin SubscriptionManager service.
  */
-public class SubscriptionHome extends AbstractSubscriptionHome
+public class SubscriptionHome extends AbstractResourceHome
 {
 
     /**
@@ -65,6 +73,29 @@
     public static final String HOME_LOCATION = JndiConstants.CONTEXT_NAME_SERVICES + "/" + SERVICE_NAME.getLocalPart() +
             "/" +
             JndiConstants.ATOMIC_NAME_HOME;
+
+    private static Map s_resources;
+
+    /**
+     * Do not modify this method.
+     */
+    protected final Map initResourceMap()
+            throws NamingException
+    {
+        Context initialContext = new InitialContext();
+        if (m_resourceIsPersistent)
+        {
+            s_resources = new ReferenceMap(ReferenceMap.HARD, ReferenceMap.SOFT, true);
+            initCachePolicy(initialContext);
+        }
+        else
+        {
+            s_resources = new HashMap();
+        }
+
+        s_resources = Collections.synchronizedMap(s_resources);
+        return s_resources;
+    }
 
     /**
      * @param resourceContext

Modified: webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/impl/SubscriptionResource.java
URL: http://svn.apache.org/viewcvs/webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/impl/SubscriptionResource.java?rev=219592&r1=219591&r2=219592&view=diff
==============================================================================
--- webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/impl/SubscriptionResource.java (original)
+++ webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/impl/SubscriptionResource.java Mon Jul 18 18:24:56 2005
@@ -48,7 +48,7 @@
 import javax.xml.namespace.QName;
 
 /**
- * TODO
+ * The resource for the builtin SubscriptionManager service.
  */
 public class SubscriptionResource extends AbstractSubscription {
 

Modified: webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/impl/SubscriptionService.java
URL: http://svn.apache.org/viewcvs/webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/impl/SubscriptionService.java?rev=219592&r1=219591&r2=219592&view=diff
==============================================================================
--- webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/impl/SubscriptionService.java (original)
+++ webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/impl/SubscriptionService.java Mon Jul 18 18:24:56 2005
@@ -1,163 +1,191 @@
 package org.apache.ws.notification.base.v2004_06.impl;
 
-import org.apache.ws.resource.handler.SoapMethodNameMap;
-import org.apache.ws.resource.handler.ServiceSoapMethodNameMap;
-import org.apache.ws.resource.handler.WsrfService;
-import org.apache.ws.resource.ResourceContext;
 import org.apache.ws.notification.base.v2004_06.porttype.SubscriptionManagerPortType;
 import org.apache.ws.notification.base.v2004_06.porttype.impl.SubscriptionManagerPortTypeImpl;
-import org.oasisOpen.docs.wsn.x2004.x06.wsnWSBaseNotification12Draft01.PauseSubscriptionResponseDocument;
+import org.apache.ws.resource.ResourceContext;
+import org.apache.ws.resource.handler.ServiceSoapMethodNameMap;
+import org.apache.ws.resource.handler.SoapMethodNameMap;
+import org.apache.ws.resource.handler.WsrfService;
 import org.oasisOpen.docs.wsn.x2004.x06.wsnWSBaseNotification12Draft01.PauseSubscriptionDocument;
-import org.oasisOpen.docs.wsn.x2004.x06.wsnWSBaseNotification12Draft01.ResumeSubscriptionResponseDocument;
+import org.oasisOpen.docs.wsn.x2004.x06.wsnWSBaseNotification12Draft01.PauseSubscriptionResponseDocument;
 import org.oasisOpen.docs.wsn.x2004.x06.wsnWSBaseNotification12Draft01.ResumeSubscriptionDocument;
+import org.oasisOpen.docs.wsn.x2004.x06.wsnWSBaseNotification12Draft01.ResumeSubscriptionResponseDocument;
 
 import javax.xml.namespace.QName;
 
-
 /**
- * Implementation of the SubscriptionService
- * 
- * @author Sal Campana
+ * The builtin SubscriptionManager service.
  */
-public class SubscriptionService implements WsrfService  , SubscriptionManagerPortType,
-                                            org.apache.ws.resource.lifetime.v2004_06.porttype.ScheduledResourceTerminationPortType,
-                                            org.apache.ws.resource.properties.v2004_06.porttype.GetResourcePropertyPortType,
-                                            org.apache.ws.resource.lifetime.v2004_06.porttype.ImmediateResourceTerminationPortType
+public class SubscriptionService implements WsrfService, SubscriptionManagerPortType,
+        org.apache.ws.resource.lifetime.v2004_06.porttype.ScheduledResourceTerminationPortType,
+        org.apache.ws.resource.properties.v2004_06.porttype.GetResourcePropertyPortType,
+        org.apache.ws.resource.lifetime.v2004_06.porttype.ImmediateResourceTerminationPortType
 {
+
     public static final String TARGET_NSURI = "http://ws.apache.org/notification/base/service/SubscriptionManager";
     public static final String TARGET_NSPREFIX = "SubscriptionManager";
     private ResourceContext m_resourceContext;
+
+    /**
+     * DOCUMENT_ME
+     */
+    private ServiceSoapMethodNameMap m_methodNameMap;
+
+    /**
+     * DOCUMENT_ME
+     */
+    private boolean m_isInitialized;
+
+    /**
+     * Creates a new {@link SubscriptionService } object.
+     *
+     * @param resourceContext DOCUMENT_ME
+     */
+    public SubscriptionService( ResourceContext resourceContext )
+    {
+        m_resourceContext = resourceContext;
+        init();
+    }
+
     /**
-       * DOCUMENT_ME
-       */
-      private ServiceSoapMethodNameMap m_methodNameMap;
-
-      /**
-       * DOCUMENT_ME
-       */
-      private boolean m_isInitialized;
-
-   /**
-    * Creates a new {@link SubscriptionService } object.
-    *
-    * @param resourceContext DOCUMENT_ME
-    */
-   public SubscriptionService( ResourceContext resourceContext )
-   {
-      m_resourceContext = resourceContext;
-      init();
-   }
-
-   /**
-    * DOCUMENT_ME
-    *
-    * @param requestQname DOCUMENT_ME
-    *
-    * @return DOCUMENT_ME
-    */
-   public String getMethodName( QName requestQname )
-   {
-      if ( !m_isInitialized )
-      {
-         init(  );
-      }
-
-      return m_methodNameMap.getMethodName( requestQname );
-   }
-
-  /**
-    * DOCUMENT_ME
-    *
-    * @return DOCUMENT_ME
-    */
-   public ResourceContext getResourceContext(  )
-   {
-      return m_resourceContext;
-   }
-
-   /**
-    * DOCUMENT_ME
-    *
-    * @return DOCUMENT_ME
-    */
-   public final SoapMethodNameMap getMethodNameMap(  )
-   {
-      return m_methodNameMap;
-   }
-
-      /**
-       * DOCUMENT_ME
-       */
-   public void init(  )
-   {
-      m_methodNameMap    = new ServiceSoapMethodNameMap( getResourceContext(  ) );
-      m_isInitialized      = true;
-   }
-
-
-      /**
-       * DOCUMENT_ME
-       *
-       * @return DOCUMENT_ME
-       */
-   protected final boolean isInitialized(  )
-   {
-         return m_isInitialized;
-   }
-
-
-   /**
-    * DOCUMENT_ME
-    *
-    * @param requestDoc DOCUMENT_ME
-    *
-    * @return DOCUMENT_ME
-    */
-   public org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceLifetime12Draft01.SetTerminationTimeResponseDocument setTerminationTime( org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceLifetime12Draft01.SetTerminationTimeDocument requestDoc )
-   {
-      return new org.apache.ws.resource.lifetime.v2004_06.porttype.impl.ScheduledResourceTerminationPortTypeImpl( getResourceContext(  ) ).setTerminationTime( requestDoc );
-   }
-   /**
-    * DOCUMENT_ME
-    *
-    * @param requestDoc DOCUMENT_ME
-    *
-    * @return DOCUMENT_ME
-    */
-   public org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.GetResourcePropertyResponseDocument getResourceProperty( org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.GetResourcePropertyDocument requestDoc )
-   {
-      return new org.apache.ws.resource.properties.v2004_06.porttype.impl.GetResourcePropertyPortTypeImpl( getResourceContext(  ) ).getResourceProperty( requestDoc );
-   }
-
-
-   /**
-    * DOCUMENT_ME
-    *
-    * @param requestDoc DOCUMENT_ME
-    *
-    * @return DOCUMENT_ME
-    */
-   public org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceLifetime12Draft01.DestroyResponseDocument destroy( org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceLifetime12Draft01.DestroyDocument requestDoc )
-   {
-      return new org.apache.ws.resource.lifetime.v2004_06.porttype.impl.ImmediateResourceTerminationPortTypeImpl( getResourceContext(  ) ).destroy( requestDoc );
-   }
+     * DOCUMENT_ME
+     *
+     * @param requestQname DOCUMENT_ME
+     *
+     * @return DOCUMENT_ME
+     */
+    public String getMethodName( QName requestQname )
+    {
+        return m_methodNameMap.getMethodName( requestQname );
+    }
+
+    /**
+     * DOCUMENT_ME
+     *
+     * @return DOCUMENT_ME
+     */
+    public ResourceContext getResourceContext()
+    {
+        return m_resourceContext;
+    }
+
+    /**
+     * DOCUMENT_ME
+     *
+     * @return DOCUMENT_ME
+     */
+    public final SoapMethodNameMap getMethodNameMap()
+    {
+        return m_methodNameMap;
+    }
+
+    /**
+     * DOCUMENT_ME
+     */
+    public synchronized void init()
+    {
+        if ( ! m_isInitialized )
+        {
+           m_methodNameMap = new ServiceSoapMethodNameMap( getResourceContext() );
+           m_isInitialized = true;
+        }
+    }
+
+    /**
+     * DOCUMENT_ME
+     *
+     * @return DOCUMENT_ME
+     */
+    protected final boolean isInitialized()
+    {
+        return m_isInitialized;
+    }
+
+    /**
+     * DOCUMENT_ME
+     *
+     * @param requestDoc DOCUMENT_ME
+     *
+     * @return DOCUMENT_ME
+     */
+    public org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceLifetime12Draft01.SetTerminationTimeResponseDocument setTerminationTime(
+            org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceLifetime12Draft01.SetTerminationTimeDocument requestDoc )
+    {
+        return new org.apache.ws.resource.lifetime.v2004_06.porttype.impl.ScheduledResourceTerminationPortTypeImpl(
+                getResourceContext() ).setTerminationTime( requestDoc );
+    }
+
+    /**
+     * DOCUMENT_ME
+     *
+     * @param requestDoc DOCUMENT_ME
+     *
+     * @return DOCUMENT_ME
+     */
+    public org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.GetResourcePropertyResponseDocument getResourceProperty(
+            org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.GetResourcePropertyDocument requestDoc )
+    {
+        return new org.apache.ws.resource.properties.v2004_06.porttype.impl.GetResourcePropertyPortTypeImpl(
+                getResourceContext() ).getResourceProperty( requestDoc );
+    }
+
+    /**
+     * DOCUMENT_ME
+     *
+     * @param requestDoc DOCUMENT_ME
+     *
+     * @return DOCUMENT_ME
+     */
+    public org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.GetMultipleResourcePropertiesResponseDocument getMultipleResourceProperties( org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.GetMultipleResourcePropertiesDocument requestDoc )
+    {
+       return new org.apache.ws.resource.properties.v2004_06.porttype.impl.GetMultipleResourcePropertiesPortTypeImpl( getResourceContext(  ) ).getMultipleResourceProperties( requestDoc );
+    }
+
+    /**
+     * DOCUMENT_ME
+     *
+     * @param requestDoc DOCUMENT_ME
+     *
+     * @return DOCUMENT_ME
+     */
+    public org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.SetResourcePropertiesResponseDocument setResourceProperties( org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.SetResourcePropertiesDocument requestDoc )
+    {
+       return new org.apache.ws.resource.properties.v2004_06.porttype.impl.SetResourcePropertiesPortTypeImpl( getResourceContext(  ) ).setResourceProperties( requestDoc );
+    }
+
+    /**
+     * DOCUMENT_ME
+     *
+     * @param requestDoc DOCUMENT_ME
+     *
+     * @return DOCUMENT_ME
+     */
+    public org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceLifetime12Draft01.DestroyResponseDocument destroy(
+            org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceLifetime12Draft01.DestroyDocument requestDoc )
+    {
+        return new org.apache.ws.resource.lifetime.v2004_06.porttype.impl.ImmediateResourceTerminationPortTypeImpl(
+                getResourceContext() ).destroy( requestDoc );
+    }
 
     /**
      * @param requestDoc
+     *
      * @return
      */
-    public PauseSubscriptionResponseDocument pauseSubscription(PauseSubscriptionDocument requestDoc)
+    public PauseSubscriptionResponseDocument pauseSubscription( PauseSubscriptionDocument requestDoc )
     {
-        return new SubscriptionManagerPortTypeImpl(getResourceContext()).pauseSubscription(requestDoc);
+        return new SubscriptionManagerPortTypeImpl( getResourceContext() ).pauseSubscription( requestDoc );
     }
 
     /**
      * @param requestDoc
+     *
      * @return
      */
-    public ResumeSubscriptionResponseDocument resumeSubscription(ResumeSubscriptionDocument requestDoc)
+    public ResumeSubscriptionResponseDocument resumeSubscription( ResumeSubscriptionDocument requestDoc )
     {
-        return new SubscriptionManagerPortTypeImpl(getResourceContext()).resumeSubscription(requestDoc);
+        return new SubscriptionManagerPortTypeImpl( getResourceContext() ).resumeSubscription( requestDoc );
 
     }
+
 }

Modified: webservices/pubscribe/trunk/src/wsdl/SubscriptionManager.wsdl
URL: http://svn.apache.org/viewcvs/webservices/pubscribe/trunk/src/wsdl/SubscriptionManager.wsdl?rev=219592&r1=219591&r2=219592&view=diff
==============================================================================
--- webservices/pubscribe/trunk/src/wsdl/SubscriptionManager.wsdl (original)
+++ webservices/pubscribe/trunk/src/wsdl/SubscriptionManager.wsdl Mon Jul 18 18:24:56 2005
@@ -1,18 +1,17 @@
 <?xml version="1.0"?>
 
-<wsdl:definitions name="SubscriptionManagerDefinitions"
-                  targetNamespace="http://ws.apache.org/notification/base/service/SubscriptionManager"
-                  xmlns="http://schemas.xmlsoap.org/wsdl/" 
-                  xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" 
-                  xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
-                  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
-                  xmlns:wsrpw="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties-1.2-draft-01.wsdl"
-                  xmlns:wsrp="ttp://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties-1.2-draft-01.xsd"
-                  xmlns:wsrlw="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceLifetime-1.2-draft-01.wsdl" 
-                  xmlns:wsnt="http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification-1.2-draft-01.xsd"
-                  xmlns:wsntw="http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification-1.2-draft-01.wsdl" 
-                  xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" 
-                  xmlns:tns="http://ws.apache.org/notification/base/service/SubscriptionManager">
+<definitions name="SubscriptionManagerDefinitions"
+             targetNamespace="http://ws.apache.org/notification/base/service/SubscriptionManager"
+             xmlns="http://schemas.xmlsoap.org/wsdl/"
+             xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+             xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+             xmlns:wsrpw="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties-1.2-draft-01.wsdl"
+             xmlns:wsrp="ttp://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties-1.2-draft-01.xsd"
+             xmlns:wsrlw="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceLifetime-1.2-draft-01.wsdl"
+             xmlns:wsnt="http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification-1.2-draft-01.xsd"
+             xmlns:wsntw="http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification-1.2-draft-01.wsdl"         
+             xmlns:tns="http://ws.apache.org/notification/base/service/SubscriptionManager">
    
    <import namespace="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties-1.2-draft-01.wsdl" 
            location="../spec/wsrf/WS-ResourceProperties-1_2-Draft_01.wsdl"/>
@@ -23,145 +22,199 @@
    <import namespace="http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification-1.2-draft-01.wsdl" 
            location="../spec/wsn/WS-BaseNotification-1_2-Draft_01.wsdl"/>
    
-   <wsdl:portType name="SubscriptionManagerPortType" wsrp:ResourceProperties="wsnt:SubscriptionManagerRP">
+   <portType name="SubscriptionManagerPortType" wsrp:ResourceProperties="wsnt:SubscriptionManagerRP">
       
-      <!-- === operations from wsrpw:ResourceProperties portType === -->
-      <wsdl:operation name="GetResourceProperty">
-         <wsdl:input name="GetResourcePropertyRequest" message="wsrpw:GetResourcePropertyRequest"/>
-         <wsdl:output name="GetResourcePropertyResponse" message="wsrpw:GetResourcePropertyResponse"/>
-         <wsdl:fault name="ResourceUnknownFault" message="wsrpw:ResourceUnknownFault"/>
-         <wsdl:fault name="InvalidResourcePropertyQNameFault" message="wsrpw:InvalidResourcePropertyQNameFault"/>
-      </wsdl:operation>
-      
-      <!-- === operations from wsrlw:ImmediateResourceTermination portType === -->
-      <wsdl:operation name="Destroy">
-         <wsdl:input message="wsrlw:DestroyRequest"/>
-         <wsdl:output message="wsrlw:DestroyResponse"/>
-         <wsdl:fault name="ResourceUnknownFault" message="wsrlw:ResourceUnknownFault"/>
-         <wsdl:fault name="ResourceNotDestroyedFault" message="wsrlw:ResourceNotDestroyedFault"/>
-      </wsdl:operation>
-      
-      <!-- === operations from wsrlw:ScheduledResourceTermination portType === -->
-      <wsdl:operation name="SetTerminationTime">
-         <wsdl:input message="wsrlw:SetTerminationTimeRequest"/>
-         <wsdl:output message="wsrlw:SetTerminationTimeResponse"/>
-         <wsdl:fault name="ResourceUnknownFault" message="wsrlw:ResourceUnknownFault"/>
-         <wsdl:fault name="UnableToSetTerminationTimeFault" message="wsrlw:UnableToSetTerminationTimeFault"/>
-         <wsdl:fault name="TerminationTimeChangeRejectedFault" message="wsrlw:TerminationTimeChangeRejectedFault"/>
-      </wsdl:operation>
-      
-      <!-- === operations from wsntw:SubscriptionManager portType === -->
-      <wsdl:operation name="PauseSubcription">
-         <wsdl:input message="wsntw:PauseSubscriptionRequest"/>
-         <wsdl:output message="wsntw:PauseSubscriptionResponse"/>
-         <wsdl:fault name="ResourceUnknownFault" message="wsntw:ResourceUnknownFault"/>
-         <wsdl:fault name="PauseFailedFault" message="wsntw:PauseFailedFault"/>
-      </wsdl:operation>
-      
-      <wsdl:operation name="ResumeSubscription">
-         <wsdl:input message="wsntw:ResumeSubscriptionRequest"/>
-         <wsdl:output message="wsntw:ResumeSubscriptionResponse"/>
-         <wsdl:fault name="ResourceUnknownFault" message="wsntw:ResourceUnknownFault"/>
-         <wsdl:fault name="ResumeFailedFault" message="wsntw:ResumeFailedFault"/>
-      </wsdl:operation>
+      <operation name="GetResourceProperty">
+         <input name="GetResourcePropertyRequest" message="wsrpw:GetResourcePropertyRequest"/>
+         <output name="GetResourcePropertyResponse" message="wsrpw:GetResourcePropertyResponse"/>
+         <fault name="ResourceUnknownFault" message="wsrpw:ResourceUnknownFault"/>
+         <fault name="InvalidResourcePropertyQNameFault" message="wsrpw:InvalidResourcePropertyQNameFault"/>
+      </operation>
+
+      <operation name="GetMultipleResourceProperties">
+         <input name="GetMultipleResourcePropertiesRequest" message="wsrpw:GetMultipleResourcePropertiesRequest"/>
+         <output name="GetMultipleResourcePropertiesResponse" message="wsrpw:GetMultipleResourcePropertiesResponse"/>
+         <fault name="ResourceUnknownFault" message="wsrpw:ResourceUnknownFault"/>
+         <fault name="InvalidResourcePropertyQNameFault" message="wsrpw:InvalidResourcePropertyQNameFault"/>
+      </operation>
+
+      <operation name="SetResourceProperties">
+         <input name="SetResourcePropertiesRequest" message="wsrpw:SetResourcePropertiesRequest"/>
+         <output name="SetResourcePropertiesResponse" message="wsrpw:SetResourcePropertiesResponse"/>
+         <fault name="ResourceUnknownFault" message="wsrpw:ResourceUnknownFault"/>
+         <fault name="InvalidResourcePropertyQNameFault" message="wsrpw:InvalidResourcePropertyQNameFault"/>
+         <fault name="InvalidSetResourcePropertiesRequestContentFault" message="wsrpw:InvalidSetResourcePropertiesRequestContentFault"/>
+         <fault name="UnableToModifyResourcePropertyFault" message="wsrpw:UnableToModifyResourcePropertyFault"/>
+         <fault name="SetResourcePropertyRequestFailedFault" message="wsrpw:SetResourcePropertyRequestFailedFault"/>
+      </operation>
+      
+      <operation name="Destroy">
+         <input message="wsrlw:DestroyRequest"/>
+         <output message="wsrlw:DestroyResponse"/>
+         <fault name="ResourceUnknownFault" message="wsrlw:ResourceUnknownFault"/>
+         <fault name="ResourceNotDestroyedFault" message="wsrlw:ResourceNotDestroyedFault"/>
+      </operation>
+      
+      <operation name="SetTerminationTime">
+         <input message="wsrlw:SetTerminationTimeRequest"/>
+         <output message="wsrlw:SetTerminationTimeResponse"/>
+         <fault name="ResourceUnknownFault" message="wsrlw:ResourceUnknownFault"/>
+         <fault name="UnableToSetTerminationTimeFault" message="wsrlw:UnableToSetTerminationTimeFault"/>
+         <fault name="TerminationTimeChangeRejectedFault" message="wsrlw:TerminationTimeChangeRejectedFault"/>
+      </operation>
+      
+      <operation name="PauseSubcription">
+         <input message="wsntw:PauseSubscriptionRequest"/>
+         <output message="wsntw:PauseSubscriptionResponse"/>
+         <fault name="ResourceUnknownFault" message="wsntw:ResourceUnknownFault"/>
+         <fault name="PauseFailedFault" message="wsntw:PauseFailedFault"/>
+      </operation>
+      
+      <operation name="ResumeSubscription">
+         <input message="wsntw:ResumeSubscriptionRequest"/>
+         <output message="wsntw:ResumeSubscriptionResponse"/>
+         <fault name="ResourceUnknownFault" message="wsntw:ResourceUnknownFault"/>
+         <fault name="ResumeFailedFault" message="wsntw:ResumeFailedFault"/>
+      </operation>
       
-   </wsdl:portType>
+   </portType>
    
-   <wsdl:binding name="SubscriptionManagerHttpBinding" type="tns:SubscriptionManagerPortType">
+   <binding name="SubscriptionManagerHttpBinding" type="tns:SubscriptionManagerPortType">
       
       <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
       
-      <wsdl:operation name="GetResourceProperty">
+      <operation name="GetResourceProperty">
          <soap:operation style="document"/>
-         <wsdl:input>
+         <input>
             <soap:body use="literal"/>
-         </wsdl:input>
-         <wsdl:output>
+         </input>
+         <output>
             <soap:body use="literal"/>
-         </wsdl:output>
-         <wsdl:fault name="ResourceUnknownFault">
+         </output>
+         <fault name="ResourceUnknownFault">
             <soap:fault name="ResourceUnknownFault" use="literal"/>
-         </wsdl:fault>
-         <wsdl:fault name="InvalidResourcePropertyQNameFault">
+         </fault>
+         <fault name="InvalidResourcePropertyQNameFault">
             <soap:fault name="InvalidResourcePropertyQNameFault" use="literal"/>
-         </wsdl:fault>
-      </wsdl:operation>
+         </fault>
+      </operation>
+
+      <operation name="GetMultipleResourceProperties">
+         <soap:operation style="document"/>
+         <input>
+            <soap:body use="literal"/>
+         </input>
+         <output>
+            <soap:body use="literal"/>
+         </output>
+         <fault name="ResourceUnknownFault">
+            <soap:fault name="ResourceUnknownFault" use="literal"/>
+         </fault>
+         <fault name="InvalidResourcePropertyQNameFault">
+            <soap:fault name="InvalidResourcePropertyQNameFault" use="literal"/>
+         </fault>
+      </operation>
+
+      <operation name="SetResourceProperties">
+         <soap:operation style="document"/>
+         <input>
+            <soap:body use="literal"/>
+         </input>
+         <output>
+            <soap:body use="literal"/>
+         </output>
+         <fault name="ResourceUnknownFault">
+            <soap:fault name="ResourceUnknownFault" use="literal"/>
+         </fault>
+         <fault name="InvalidResourcePropertyQNameFault">
+            <soap:fault name="InvalidResourcePropertyQNameFault" use="literal"/>
+         </fault>
+         <fault name="UnableToModifyResourcePropertyFault">
+            <soap:fault name="UnableToModifyResourcePropertyFault" use="literal"/>
+         </fault>
+         <fault name="InvalidSetResourcePropertiesRequestContentFault">
+            <soap:fault name="InvalidSetResourcePropertiesRequestContentFault" use="literal"/>
+         </fault>
+         <fault name="SetResourcePropertyRequestFailedFault">
+            <soap:fault name="SetResourcePropertyRequestFailedFault" use="literal"/>
+         </fault>
+      </operation>
       
-      <wsdl:operation name="Destroy">
+      <operation name="Destroy">
          <soap:operation style="document"/>
-         <wsdl:input>
+         <input>
             <soap:body use="literal"/>
-         </wsdl:input>
-         <wsdl:output>
+         </input>
+         <output>
             <soap:body use="literal"/>
-         </wsdl:output>
-         <wsdl:fault name="ResourceUnknownFault">
+         </output>
+         <fault name="ResourceUnknownFault">
             <soap:fault name="ResourceUnknownFault" use="literal"/>
-         </wsdl:fault>
-         <wsdl:fault name="ResourceNotDestroyedFault">
+         </fault>
+         <fault name="ResourceNotDestroyedFault">
             <soap:fault name="ResourceNotDestroyedFault" use="literal"/>
-         </wsdl:fault>
-      </wsdl:operation>
+         </fault>
+      </operation>
       
-      <wsdl:operation name="SetTerminationTime">
+      <operation name="SetTerminationTime">
          <soap:operation style="document"/>
-         <wsdl:input>
+         <input>
             <soap:body use="literal"/>
-         </wsdl:input>
-         <wsdl:output>
+         </input>
+         <output>
             <soap:body use="literal"/>
-         </wsdl:output>
-         <wsdl:fault name="ResourceUnknownFault">
+         </output>
+         <fault name="ResourceUnknownFault">
             <soap:fault name="ResourceUnknownFault" use="literal"/>
-         </wsdl:fault>
-         <wsdl:fault name="UnableToSetTerminationTimeFault">
+         </fault>
+         <fault name="UnableToSetTerminationTimeFault">
             <soap:fault name="UnableToSetTerminationTimeFault" use="literal"/>
-         </wsdl:fault>
-         <wsdl:fault name="TerminationTimeChangeRejectedFault">
+         </fault>
+         <fault name="TerminationTimeChangeRejectedFault">
             <soap:fault name="TerminationTimeChangeRejectedFault" use="literal"/>
-         </wsdl:fault>
-      </wsdl:operation>
+         </fault>
+      </operation>
       
-      <wsdl:operation name="PauseSubcription">
+      <operation name="PauseSubcription">
          <soap:operation style="document"/>
-         <wsdl:input>
+         <input>
             <soap:body use="literal"/>
-         </wsdl:input>
-         <wsdl:output>
+         </input>
+         <output>
             <soap:body use="literal"/>
-         </wsdl:output>
-         <wsdl:fault name="ResourceUnknownFault">
+         </output>
+         <fault name="ResourceUnknownFault">
             <soap:fault name="ResourceUnknownFault" use="literal"/>
-         </wsdl:fault>
-         <wsdl:fault name="PauseFailedFault">
+         </fault>
+         <fault name="PauseFailedFault">
             <soap:fault name="PauseFailedFault" use="literal"/>
-         </wsdl:fault>
-      </wsdl:operation>
+         </fault>
+      </operation>
       
-      <wsdl:operation name="ResumeSubscription">
+      <operation name="ResumeSubscription">
          <soap:operation style="document"/>
-         <wsdl:input>
+         <input>
             <soap:body use="literal"/>
-         </wsdl:input>
-         <wsdl:output>
+         </input>
+         <output>
             <soap:body use="literal"/>
-         </wsdl:output>
-         <wsdl:fault name="ResourceUnknownFault">
+         </output>
+         <fault name="ResourceUnknownFault">
             <soap:fault name="ResourceUnknownFault" use="literal"/>
-         </wsdl:fault>
-         <wsdl:fault name="ResumeFailedFault">
+         </fault>
+         <fault name="ResumeFailedFault">
             <soap:fault name="ResumeFailedFault" use="literal"/>
-         </wsdl:fault>
-      </wsdl:operation>
+         </fault>
+      </operation>
       
-   </wsdl:binding>
+   </binding>
    
-   <wsdl:service name="SubscriptionManagerService">
+   <service name="SubscriptionManagerService">
       
-      <wsdl:port name="SubscriptionManager" binding="tns:SubscriptionManagerHttpBinding">
+      <port name="SubscriptionManager" binding="tns:SubscriptionManagerHttpBinding">
          <soap:address location="http://localhost:8080/wsrf/services/SubscriptionManager"/>
-      </wsdl:port>      
+      </port>      
       
-   </wsdl:service>
+   </service>
    
-</wsdl:definitions>
+</definitions>