ws-pubscribe-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From i..@apache.org
Subject svn commit: r293423 - in /webservices/pubscribe/trunk/src/java/org/apache/ws: notification/base/ notification/base/impl/ notification/base/v2004_06/callback/ notification/base/v2004_06/impl/ notification/base/v2004_06/porttype/impl/ notification/pubsub...
Date Mon, 03 Oct 2005 18:35:16 GMT
Author: ips
Date: Mon Oct  3 11:35:08 2005
New Revision: 293423

URL: http://svn.apache.org/viewcvs?rev=293423&view=rev
Log:
implemented and configured callbacks for the six non-read-only SubscriptionManager resource props

Added:
    webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/PauseFailedException.java
    webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/ResumeFailedException.java
    webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/
    webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/ConsumerReferenceResourcePropertyCallback.java
    webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/PreconditionResourcePropertyCallback.java
    webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/SelectorResourcePropertyCallback.java
    webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/SubscriptionPolicyResourcePropertyCallback.java
    webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/TopicExpressionResourcePropertyCallback.java
    webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/UseNotifyResourcePropertyCallback.java
Modified:
    webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/Subscription.java
    webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/TopicExpressionDialectsResourcePropertyCallback.java
    webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/impl/AbstractSubscription.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/porttype/impl/NotificationProducerPortTypeImpl.java
    webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/porttype/impl/SubscriptionManagerPortTypeImpl.java
    webservices/pubscribe/trunk/src/java/org/apache/ws/notification/pubsub/Subscription.java
    webservices/pubscribe/trunk/src/java/org/apache/ws/pubsub/Subscription.java

Added: webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/PauseFailedException.java
URL: http://svn.apache.org/viewcvs/webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/PauseFailedException.java?rev=293423&view=auto
==============================================================================
--- webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/PauseFailedException.java (added)
+++ webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/PauseFailedException.java Mon Oct  3 11:35:08 2005
@@ -0,0 +1,33 @@
+/*=============================================================================*
+ *  Copyright 2005 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *=============================================================================*/
+package org.apache.ws.notification.base;
+
+/**
+ * TODO
+ */
+public class PauseFailedException extends Exception
+{
+
+    public PauseFailedException( Throwable cause )
+    {
+        super( cause );
+    }
+
+    public PauseFailedException()
+    {
+    }
+
+}

Added: webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/ResumeFailedException.java
URL: http://svn.apache.org/viewcvs/webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/ResumeFailedException.java?rev=293423&view=auto
==============================================================================
--- webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/ResumeFailedException.java (added)
+++ webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/ResumeFailedException.java Mon Oct  3 11:35:08 2005
@@ -0,0 +1,33 @@
+/*=============================================================================*
+ *  Copyright 2005 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *=============================================================================*/
+package org.apache.ws.notification.base;
+
+/**
+ * TODO
+ */
+public class ResumeFailedException extends Exception
+{
+
+    public ResumeFailedException( Throwable cause )
+    {
+        super( cause );
+    }
+
+    public ResumeFailedException()
+    {
+    }
+    
+}

Modified: webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/Subscription.java
URL: http://svn.apache.org/viewcvs/webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/Subscription.java?rev=293423&r1=293422&r2=293423&view=diff
==============================================================================
--- webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/Subscription.java (original)
+++ webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/Subscription.java Mon Oct  3 11:35:08 2005
@@ -24,127 +24,146 @@
 import org.apache.ws.resource.properties.query.QueryExpression;
 
 /**
- * Interface to be implemented by subscription resources. Exposes the information
- * associated with a subscription request, as well as resource lifetime-related
- * state.
+ * Interface to be implemented by WSN subscription resources. Exposes the information associated with a subscription
+ * request, as well as resource lifetime-related state.
  */
 public interface Subscription
-   extends PropertiesResource,
-           org.apache.ws.pubsub.Subscription,
-           ScheduledResourceTerminationResource
+        extends PropertiesResource,
+        org.apache.ws.pubsub.Subscription,
+        ScheduledResourceTerminationResource
 {
-   /**
-    * Gets the consumer EPR associated with this subscription.
-    *
-    * @return the consumer EPR associated with this subscription
-    */
-   EndpointReference getConsumerReference(  );
 
     /**
-     * Gets the producer EPR associated with this subscription.
+     * Gets the consumer EPR associated with this subscription.
+     *
+     * @return the consumer EPR associated with this subscription
+     */
+    EndpointReference getConsumerReference();
+
+    /**
+     * Sets the consumer EPR associated with this subscription.
+     *
+     * @param consumerRef the consumer EPR to be associated with this subscription
+     */
+    void setConsumerReference( EndpointReference consumerRef );
+
+    /**
+     * Gets the producer EPR associated with this subscription. Note, the producer EPR field cannot be changed.
      *
      * @return the producer EPR associated with this subscription
      */
-    EndpointReference getProducerReference(  );
+    EndpointReference getProducerReference();
+
+    /**
+     * This method exists for abstraction layer
+     *
+     * @param notificationConsumer
+     */
+    void setNotificationConsumer( NotificationConsumer notificationConsumer );
+
+    /**
+     * This method exists for abstraction layer
+     *
+     * @param notificationProducer
+     */
+    void setNotificationProducer( NotificationProducer notificationProducer );
+
+    /**
+     * Returns true if this subscription is currently paused, or false otherwise.
+     *
+     * @return true if this subscription is currently paused, or false otherwise
+     */
+    boolean isPaused();
+
+    /**
+     * Sets the policy for the subscription
+     *
+     * @param policy
+     */
+    void setPolicy( Object policy );
+
+    /**
+     * 
+     * @return
+     */
+    Object getPolicy();
+
+    /**
+     * Sets the precondition for the subscription.
+     *
+     * @param precondition
+     */
+    void setPrecondition( QueryExpression precondition );
+
+    /**
+     * Gets the precondition associated with this subscription.
+     *
+     * @return the precondition, or null if no precondition was specified in the subscribe request
+     */
+    QueryExpression getPrecondition();
+
+    /**
+     * Gets the producer resource associated with this subscription.
+     *
+     * @return the producer resource
+     */
+    NotificationProducerResource getProducerResource();
+
+    /**
+     * Sets the selector for the subscription
+     *
+     * @param selector
+     */
+    void setSelector( QueryExpression selector );
+
+    /**
+     * Gets the selector associated with this subscription.
+     *
+     * @return the selector, or null if no selector was specified in the subscribe request
+     */
+    QueryExpression getSelector();
+
+    /**
+     * Gets the topic expression associated with this subscription.
+     *
+     * @return the topic expression associated with this subscription
+     */
+    TopicExpression getTopicExpression();
+
+    /**
+     * Sets the topic expression associated with this subscription.
+     *
+     * @param topicExpr the topic expression to be associated with this subscription
+     */
+    void setTopicExpression( TopicExpression topicExpr );
+
+    /**
+     * Sets the boolean useNotify flag on the subscription to determine if the notification is wrapped in a Notify
+     * element.
+     *
+     * @param useNotify
+     */
+    void setUseNotify( boolean useNotify );
+
+    /**
+     * Wrap notification messages in the notify element?
+     *
+     * @return true (default) if notify should be used, or false if not
+     */
+    boolean getUseNotify();
+
+    /**
+     * Temporarily suspends the delivery of notification messages for this subscription.
+     *
+     * @throws PauseFailedException if unable to suspend message delivery
+     */
+    void pause() throws PauseFailedException;
+
+    /**
+     * Resumes the delivery of notification messages for this subscription.
+     *
+     * @throws ResumeFailedException if unable to resume message delivery
+     */
+    void resume() throws ResumeFailedException;
 
-   /**
-    * This method exists for abstraction layer
-    *
-    * @param notificationConsumer
-    */
-   void setNotificationConsumer( NotificationConsumer notificationConsumer );
-
-   /**
-    * This method exists for abstraction layer
-    *
-    * @param notificationProducer
-    */
-   void setNotificationProducer( NotificationProducer notificationProducer );
-
-   /**
-    * Returns true if this subscription is currently paused, or false otherwise.
-    *
-    * @return true if this subscription is currently paused, or false otherwise
-    */
-   boolean isPaused(  );
-
-   /**
-    * Sets the policy for the subscription
-    *
-    * @param policy
-    */
-   void setPolicy( Object policy );
-
-   /**
-    * Sets the precondition for the subscription.
-    *
-    * @param precondition
-    */
-   void setPrecondition( QueryExpression precondition );
-
-   /**
-    * Gets the precondition associated with this subscription.
-    *
-    * @return the precondition, or null if no precondition was specified in the subscribe request
-    */
-   QueryExpression getPrecondition(  );
-
-   /**
-    * Gets the producer resource associated with this subscription.
-    *
-    * @return the producer resource
-    */
-   NotificationProducerResource getProducerResource(  );
-
-   /**
-    * Sets the selector for the subscription
-    *
-    * @param selector
-    */
-   void setSelector( QueryExpression selector );
-
-   /**
-    * Gets the selector associated with this subscription.
-    *
-    * @return the selector, or null if no selector was specified in the subscribe request
-    */
-   QueryExpression getSelector(  );
-
-   /**
-    * Gets the topic expression associated with this subscription.
-    *
-    * @return the topic expression
-    */
-   TopicExpression getTopicExpression(  );
-
-   /**
-    * Sets the boolean useNotify flag on the subscription to determine if the notification is wrapped
-    * in a Notify element.
-    *
-    * @param useNotify
-    */
-   void setUseNotify( boolean useNotify );
-
-   /**
-    * Wrap notification messages in the notify element?
-    *
-    * @return true (default) if notify should be used, or false if not
-    */
-   boolean getUseNotify(  );
-
-   /**
-    * Temporarily suspends the delivery of notification messages for this subscription.
-    *
-    * @throws Exception if unable to suspend message delivery
-    */
-   void pause(  )
-   throws Exception;
-
-   /**
-    * Resumes the delivery of notification messages for this subscription.
-    *
-    * @throws Exception if unable to resume message delivery
-    */
-   void resume(  )
-   throws Exception;
 }

Modified: webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/TopicExpressionDialectsResourcePropertyCallback.java
URL: http://svn.apache.org/viewcvs/webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/TopicExpressionDialectsResourcePropertyCallback.java?rev=293423&r1=293422&r2=293423&view=diff
==============================================================================
--- webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/TopicExpressionDialectsResourcePropertyCallback.java (original)
+++ webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/TopicExpressionDialectsResourcePropertyCallback.java Mon Oct  3 11:35:08 2005
@@ -21,8 +21,8 @@
 import org.apache.ws.resource.properties.ResourcePropertyCallback;
 import org.apache.ws.resource.properties.impl.CallbackFailedException;
 import org.oasisOpen.docs.wsn.x2004.x06.wsnWSBaseNotification12Draft01.TopicExpressionDialectsDocument;
+
 import javax.xml.namespace.QName;
-import java.net.URI;
 
 /**
  * A callback for the TopicExpressionDialects resource property from the WS-BaseNotification NotificationProducer

Modified: webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/impl/AbstractSubscription.java
URL: http://svn.apache.org/viewcvs/webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/impl/AbstractSubscription.java?rev=293423&r1=293422&r2=293423&view=diff
==============================================================================
--- webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/impl/AbstractSubscription.java (original)
+++ webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/impl/AbstractSubscription.java Mon Oct  3 11:35:08 2005
@@ -21,6 +21,8 @@
 import org.apache.ws.Soap1_1Constants;
 import org.apache.ws.addressing.EndpointReference;
 import org.apache.ws.notification.base.NotificationProducerResource;
+import org.apache.ws.notification.base.PauseFailedException;
+import org.apache.ws.notification.base.ResumeFailedException;
 import org.apache.ws.notification.base.Subscription;
 import org.apache.ws.notification.base.SubscriptionManager;
 import org.apache.ws.notification.topics.Topic;
@@ -29,7 +31,6 @@
 import org.apache.ws.pubsub.Filter;
 import org.apache.ws.pubsub.NotificationConsumer;
 import org.apache.ws.pubsub.NotificationProducer;
-import org.apache.ws.resource.PropertiesResource;
 import org.apache.ws.resource.ResourceHome;
 import org.apache.ws.resource.WsrfRuntime;
 import org.apache.ws.resource.faults.FaultException;
@@ -46,78 +47,26 @@
 import java.util.List;
 
 /**
- * An Abstract Base class for Subscription Implementations.
+ * An abstract base class for WSN Subscription implementations.
  */
-public abstract class AbstractSubscription
-        implements Subscription,
-        PropertiesResource
+public abstract class AbstractSubscription implements Subscription
 {
-    private static final Log LOG = LogFactory.getLog( AbstractSubscription.class );
-
-    /**
-     * DOCUMENT_ME
-     */
-    protected EndpointReference m_consumerReference;
-
-    /**
-     * DOCUMENT_ME
-     */
-    protected EndpointReference m_producerReference;
-
-    /**
-     * DOCUMENT_ME
-     */
-    protected Object m_policy;
-
-    /**
-     * DOCUMENT_ME
-     */
-    protected QueryExpression m_precondition;
 
-    /**
-     * DOCUMENT_ME
-     */
-    protected QueryExpression m_selector;
-
-    /**
-     * DOCUMENT_ME
-     */
-    protected TopicExpression m_topicExpression;
-
-    /**
-     * DOCUMENT_ME
-     */
-    protected boolean m_isPaused;
-
-    /**
-     * DOCUMENT_ME
-     */
-    protected boolean m_useNotify = true;
-
-    /**
-     * DOCUMENT_ME
-     */
-    protected Calendar m_terminationTime;
-
-    /**
-     * DOCUMENT_ME
-     */
-    protected Calendar m_creationTime;
-
-    /**
-     * DOCUMENT_ME
-     */
-    protected String m_id;
-
-    /**
-     * DOCUMENT_ME
-     */
-    protected EndpointReference m_epr;
+    private static final Log LOG = LogFactory.getLog( AbstractSubscription.class );
 
-    /**
-     * DOCUMENT_ME
-     */
-    protected transient ResourcePropertySet m_propSet;
+    private EndpointReference m_consumerRef;
+    private EndpointReference m_producerRef;
+    private Object m_policy;
+    private QueryExpression m_precondition;
+    private QueryExpression m_selector;
+    private TopicExpression m_topicExpr;
+    private boolean m_isPaused;
+    private boolean m_useNotify = true;
+    private Calendar m_terminationTime;
+    private Calendar m_creationTime;
+    private String m_id;
+    private EndpointReference m_epr;
+    private transient ResourcePropertySet m_propSet;
     private NotificationConsumer m_notificationConsumer;
     private NotificationProducer m_notificationProducer;
 
@@ -137,11 +86,10 @@
                                  EndpointReference producerReference,
                                  TopicExpression topicExpression )
     {
-        m_id = IdentifierUtils.UUID_VERSION_FOUR_GENERATOR.nextIdentifier().toString();
-        m_consumerReference = consumerReference;
-        m_producerReference = producerReference;
-        m_topicExpression = topicExpression;
-        m_creationTime = Calendar.getInstance();
+        this();
+        m_consumerRef = consumerReference;
+        m_producerRef = producerReference;
+        m_topicExpr = topicExpression;
     }
 
     /**
@@ -149,6 +97,8 @@
      */
     public AbstractSubscription()
     {
+        m_creationTime = Calendar.getInstance();
+        m_id = IdentifierUtils.UUID_VERSION_FOUR_GENERATOR.nextIdentifier().toString();
     }
 
     /**
@@ -158,7 +108,7 @@
      */
     public EndpointReference getConsumerReference()
     {
-        return m_consumerReference;
+        return m_consumerRef;
     }
 
     /**
@@ -340,7 +290,7 @@
      */
     public EndpointReference getProducerReference()
     {
-        return m_producerReference;
+        return m_producerRef;
     }
 
     /**
@@ -350,13 +300,13 @@
      */
     public NotificationProducerResource getProducerResource()
     {
-        String producerAddress = m_producerReference.getAddress();
+        String producerAddress = m_producerRef.getAddress();
         String producerServiceName = producerAddress.substring( producerAddress.lastIndexOf( '/' ) + 1 );
         String producerHomeJndiName = WsrfRuntime.getRuntime().getHomeJndiName( producerServiceName );
         try
         {
             ResourceHome producerHome = (ResourceHome) new InitialContext().lookup( producerHomeJndiName );
-            Object producerId = producerHome.extractResourceIdentifier( m_producerReference );
+            Object producerId = producerHome.extractResourceIdentifier( m_producerRef );
             return (NotificationProducerResource) producerHome.find( producerId );
         }
         catch ( Exception e )
@@ -433,7 +383,7 @@
      */
     public TopicExpression getTopicExpression()
     {
-        return m_topicExpression;
+        return m_topicExpr;
     }
 
     /**
@@ -477,8 +427,7 @@
 
     private void notifyResourceTerminationListeners()
     {
-        ResourceTerminationEvent rte = new ResourceTerminationEventImpl( getID(),
-                "Subscription Destroyed" );
+        ResourceTerminationEvent rte = new ResourceTerminationEventImpl( getID(), "Subscription with id " + getID() + " destroyed." );
         for ( int i = 0; i < m_terminationListeners.size(); i++ )
         {
             ResourceTerminationListener resourceTerminationListener =
@@ -488,41 +437,44 @@
     }
 
     /**
-     * DOCUMENT_ME
-     *
-     * @throws Exception DOCUMENT_ME
+     * @see org.apache.ws.notification.base.Subscription#pause()
      */
-    public void pause()
-            throws Exception
+    public void pause() throws PauseFailedException
     {
         m_isPaused = true;
     }
 
     /**
-     * DOCUMENT_ME
-     *
-     * @throws Exception DOCUMENT_ME
+     * @see org.apache.ws.notification.base.Subscription#resume()
      */
-    public void resume()
-            throws Exception
+    public void resume() throws ResumeFailedException
     {
         m_isPaused = false;
     }
 
     /**
-     * DOCUMENT_ME
+     * @see org.apache.ws.notification.base.Subscription#unsubscribe()
      */
     public void unsubscribe()
     {
         destroy();
     }
 
+    public void setConsumerReference( EndpointReference consumerRef )
+    {
+        m_consumerRef = consumerRef;
+    }
+
+    public void setTopicExpression( TopicExpression topicExpr )
+    {
+        m_topicExpr = topicExpr;
+    }
+
     private Topic[] evaluateTopicExpression()
     {
-        NotificationProducerResource producerResource = (NotificationProducerResource) getProducerResource();
         try
         {
-            return producerResource.getTopicSet().evaluateTopicExpression( m_topicExpression );
+            return getProducerResource().getTopicSet().evaluateTopicExpression( m_topicExpr );
         }
         catch ( TopicExpressionException tee )
         {

Added: webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/ConsumerReferenceResourcePropertyCallback.java
URL: http://svn.apache.org/viewcvs/webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/ConsumerReferenceResourcePropertyCallback.java?rev=293423&view=auto
==============================================================================
--- webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/ConsumerReferenceResourcePropertyCallback.java (added)
+++ webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/ConsumerReferenceResourcePropertyCallback.java Mon Oct  3 11:35:08 2005
@@ -0,0 +1,82 @@
+/*=============================================================================*
+ *  Copyright 2005 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *=============================================================================*/
+package org.apache.ws.notification.base.v2004_06.callback;
+
+import org.apache.ws.addressing.XmlBeansEndpointReference;
+import org.apache.ws.addressing.v2003_03.AddressingConstants;
+import org.apache.ws.notification.base.Subscription;
+import org.apache.ws.notification.base.v2004_06.porttype.SubscriptionManagerPortType;
+import org.apache.ws.resource.properties.ResourceProperty;
+import org.apache.ws.resource.properties.SetResourcePropertyCallback;
+import org.apache.ws.resource.properties.impl.CallbackFailedException;
+import org.oasisOpen.docs.wsn.x2004.x06.wsnWSBaseNotification12Draft01.ConsumerReferenceDocument;
+import org.xmlsoap.schemas.ws.x2003.x03.addressing.EndpointReferenceType;
+
+import javax.xml.namespace.QName;
+
+/**
+ * A callback for the ConsumerReference resource property from the WS-BaseNotification
+ * SubscriptionManager portType.
+ *
+ * @author Ian Springer
+ */
+public class ConsumerReferenceResourcePropertyCallback implements SetResourcePropertyCallback
+{
+
+    private Subscription m_subscription;
+
+    public ConsumerReferenceResourcePropertyCallback( Subscription subscription )
+    {
+        m_subscription = subscription;
+    }
+
+    public ResourceProperty refreshProperty( ResourceProperty prop ) throws CallbackFailedException
+    {
+        QName propName = prop.getMetaData().getName();
+        if ( !propName.equals( SubscriptionManagerPortType.PROP_QNAME_CONSUMER_REFERENCE ) )
+        {
+            throw new IllegalArgumentException( "Unsupported property: " + propName );
+        }
+        if ( prop.isEmpty() )
+        {
+            ConsumerReferenceDocument consumerRefDoc = ConsumerReferenceDocument.Factory.newInstance();
+            consumerRefDoc.addNewConsumerReference();
+            prop.add( consumerRefDoc );
+        }
+        EndpointReferenceType consumerRef = (EndpointReferenceType) prop.get( 0 );
+        EndpointReferenceType newConsumerRef = (EndpointReferenceType) ( (XmlBeansEndpointReference) m_subscription.getConsumerReference() )
+                .getXmlObject( AddressingConstants.NSURI_ADDRESSING_SCHEMA );
+        consumerRef.set( newConsumerRef );
+        return prop;
+    }
+
+    public void deleteProperty( QName propQName ) throws CallbackFailedException
+    {
+        throw new IllegalStateException( "This property cannot be deleted due to schema constraints." );
+    }
+
+    public void insertProperty( Object[] propElems ) throws CallbackFailedException
+    {
+        throw new IllegalStateException( "This property cannot be inserted into due to schema constraints." );
+    }
+
+    public void updateProperty( Object[] propElems ) throws CallbackFailedException
+    {
+        EndpointReferenceType consumerRef = (EndpointReferenceType) propElems[0];
+        m_subscription.setConsumerReference( new XmlBeansEndpointReference( consumerRef ) );
+    }
+
+}

Added: webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/PreconditionResourcePropertyCallback.java
URL: http://svn.apache.org/viewcvs/webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/PreconditionResourcePropertyCallback.java?rev=293423&view=auto
==============================================================================
--- webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/PreconditionResourcePropertyCallback.java (added)
+++ webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/PreconditionResourcePropertyCallback.java Mon Oct  3 11:35:08 2005
@@ -0,0 +1,91 @@
+/*=============================================================================*
+ *  Copyright 2005 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *=============================================================================*/
+package org.apache.ws.notification.base.v2004_06.callback;
+
+import org.apache.ws.notification.base.Subscription;
+import org.apache.ws.notification.base.v2004_06.porttype.SubscriptionManagerPortType;
+import org.apache.ws.resource.properties.ResourceProperty;
+import org.apache.ws.resource.properties.SetResourcePropertyCallback;
+import org.apache.ws.resource.properties.impl.CallbackFailedException;
+import org.apache.ws.resource.properties.query.impl.XmlBeansQueryExpression;
+import org.apache.ws.resource.properties.query.QueryExpression;
+import org.oasisOpen.docs.wsn.x2004.x06.wsnWSBaseNotification12Draft01.PreconditionDocument;
+import org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.QueryExpressionType;
+
+import javax.xml.namespace.QName;
+
+/**
+ * A callback for the Precondition resource property from the WS-BaseNotification SubscriptionManager portType.
+ *
+ * @author Ian Springer
+ */
+public class PreconditionResourcePropertyCallback implements SetResourcePropertyCallback
+{
+
+    private Subscription m_subscription;
+
+    public PreconditionResourcePropertyCallback( Subscription subscription )
+    {
+        m_subscription = subscription;
+    }
+
+    public ResourceProperty refreshProperty( ResourceProperty prop ) throws CallbackFailedException
+    {
+        QName propName = prop.getMetaData().getName();
+        if ( !propName.equals( SubscriptionManagerPortType.PROP_QNAME_PRECONDITION ) )
+        {
+            throw new IllegalArgumentException( "Unsupported property: " + propName );
+        }
+        if ( m_subscription.getPrecondition() != null )
+        {
+            if ( prop.isEmpty() )
+            {
+                PreconditionDocument preconditionDoc = PreconditionDocument.Factory.newInstance();
+                preconditionDoc.addNewPrecondition();
+                prop.add( preconditionDoc );
+            }
+            QueryExpressionType precondition = (QueryExpressionType) prop.get( 0 );
+            QueryExpressionType newPrecondition = (QueryExpressionType) ( (XmlBeansQueryExpression) m_subscription.getPrecondition() ).getXmlObject();
+            precondition.set( newPrecondition );
+        }
+        return prop;
+    }
+
+    public void deleteProperty( QName propQName ) throws CallbackFailedException
+    {
+        throw new IllegalStateException( "This property cannot be deleted due to schema constraints." );
+    }
+
+    public void insertProperty( Object[] propElems ) throws CallbackFailedException
+    {
+        throw new IllegalStateException( "This property cannot be inserted into due to schema constraints." );
+    }
+
+    public void updateProperty( Object[] propElems ) throws CallbackFailedException
+    {
+        QueryExpression precondition;
+        if ( propElems.length == 1 )
+        {
+            precondition = new XmlBeansQueryExpression( (QueryExpressionType) propElems[0] );
+        }
+        else
+        {
+            precondition = null;
+        }
+        m_subscription.setPrecondition( precondition );
+    }
+
+}

Added: webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/SelectorResourcePropertyCallback.java
URL: http://svn.apache.org/viewcvs/webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/SelectorResourcePropertyCallback.java?rev=293423&view=auto
==============================================================================
--- webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/SelectorResourcePropertyCallback.java (added)
+++ webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/SelectorResourcePropertyCallback.java Mon Oct  3 11:35:08 2005
@@ -0,0 +1,92 @@
+/*=============================================================================*
+ *  Copyright 2005 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *=============================================================================*/
+package org.apache.ws.notification.base.v2004_06.callback;
+
+import org.apache.ws.notification.base.Subscription;
+import org.apache.ws.notification.base.v2004_06.porttype.SubscriptionManagerPortType;
+import org.apache.ws.resource.properties.ResourceProperty;
+import org.apache.ws.resource.properties.SetResourcePropertyCallback;
+import org.apache.ws.resource.properties.impl.CallbackFailedException;
+import org.apache.ws.resource.properties.query.impl.XmlBeansQueryExpression;
+import org.apache.ws.resource.properties.query.QueryExpression;
+import org.oasisOpen.docs.wsn.x2004.x06.wsnWSBaseNotification12Draft01.SelectorDocument;
+import org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.QueryExpressionType;
+
+import javax.xml.namespace.QName;
+
+/**
+ * A callback for the Selector resource property from the WS-BaseNotification
+ * SubscriptionManager portType.
+ *
+ * @author Ian Springer
+ */
+public class SelectorResourcePropertyCallback implements SetResourcePropertyCallback
+{
+
+    private Subscription m_subscription;
+
+    public SelectorResourcePropertyCallback( Subscription subscription )
+    {
+        m_subscription = subscription;
+    }
+
+    public ResourceProperty refreshProperty( ResourceProperty prop ) throws CallbackFailedException
+    {
+        QName propName = prop.getMetaData().getName();
+        if ( !propName.equals( SubscriptionManagerPortType.PROP_QNAME_SELECTOR ) )
+        {
+            throw new IllegalArgumentException( "Unsupported property: " + propName );
+        }
+        if ( m_subscription.getSelector() != null )
+        {
+        if ( prop.isEmpty() )
+        {
+            SelectorDocument selectorDoc = SelectorDocument.Factory.newInstance();
+            selectorDoc.addNewSelector();
+            prop.add( selectorDoc );
+        }
+        QueryExpressionType selector = (QueryExpressionType) prop.get( 0 );
+        QueryExpressionType newSelector = (QueryExpressionType) ((XmlBeansQueryExpression)m_subscription.getSelector()).getXmlObject();
+        selector.set( newSelector );
+        }
+        return prop;
+    }
+
+    public void deleteProperty( QName propQName ) throws CallbackFailedException
+    {
+        throw new IllegalStateException( "This property cannot be deleted due to schema constraints." );
+    }
+
+    public void insertProperty( Object[] propElems ) throws CallbackFailedException
+    {
+        throw new IllegalStateException( "This property cannot be inserted into due to schema constraints." );
+    }
+
+    public void updateProperty( Object[] propElems ) throws CallbackFailedException
+    {
+        QueryExpression selector;
+        if ( propElems.length == 1 )
+        {
+            selector = new XmlBeansQueryExpression( (QueryExpressionType) propElems[0] );
+        }
+        else
+        {
+            selector = null;
+        }
+        m_subscription.setSelector( selector );
+    }
+
+}

Added: webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/SubscriptionPolicyResourcePropertyCallback.java
URL: http://svn.apache.org/viewcvs/webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/SubscriptionPolicyResourcePropertyCallback.java?rev=293423&view=auto
==============================================================================
--- webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/SubscriptionPolicyResourcePropertyCallback.java (added)
+++ webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/SubscriptionPolicyResourcePropertyCallback.java Mon Oct  3 11:35:08 2005
@@ -0,0 +1,100 @@
+/*=============================================================================*
+ *  Copyright 2005 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *=============================================================================*/
+package org.apache.ws.notification.base.v2004_06.callback;
+
+import org.apache.ws.notification.base.Subscription;
+import org.apache.ws.notification.base.v2004_06.porttype.SubscriptionManagerPortType;
+import org.apache.ws.resource.properties.ResourceProperty;
+import org.apache.ws.resource.properties.SetResourcePropertyCallback;
+import org.apache.ws.resource.properties.impl.CallbackFailedException;
+import org.apache.ws.resource.properties.query.impl.XmlBeansQueryExpression;
+import org.apache.ws.util.XmlBeanUtils;
+import org.apache.xmlbeans.XmlObject;
+import org.oasisOpen.docs.wsn.x2004.x06.wsnWSBaseNotification12Draft01.SubscriptionPolicyDocument;
+
+import javax.xml.namespace.QName;
+
+/**
+ * A callback for the SubscriptionPolicy resource property from the WS-BaseNotification SubscriptionManager portType.
+ *
+ * @author Ian Springer
+ */
+public class SubscriptionPolicyResourcePropertyCallback implements SetResourcePropertyCallback
+{
+
+    private Subscription m_subscription;
+
+    public SubscriptionPolicyResourcePropertyCallback( Subscription subscription )
+    {
+        m_subscription = subscription;
+    }
+
+    public ResourceProperty refreshProperty( ResourceProperty prop ) throws CallbackFailedException
+    {
+        QName propName = prop.getMetaData().getName();
+        if ( !propName.equals( SubscriptionManagerPortType.PROP_QNAME_SUBSCRIPTION_POLICY ) )
+        {
+            throw new IllegalArgumentException( "Unsupported property: " + propName );
+        }
+        if ( m_subscription.getPolicy() != null )
+        {
+            if ( prop.isEmpty() )
+            {
+                SubscriptionPolicyDocument subPolicyDoc = SubscriptionPolicyDocument.Factory.newInstance();
+                subPolicyDoc.addNewSubscriptionPolicy();
+                prop.add( subPolicyDoc );
+            }
+            XmlObject subPolicy = (XmlObject) prop.get( 0 );
+            XmlObject newSubPolicy;
+            try
+            {
+                newSubPolicy = XmlBeanUtils.toXmlObject( m_subscription.getPolicy() );
+            }
+            catch ( Exception e )
+            {
+                throw new CallbackFailedException( e );
+            }
+            subPolicy.set( newSubPolicy );  // call addChildElement() instead?
+        }
+        return prop;
+    }
+
+    public void deleteProperty( QName propQName ) throws CallbackFailedException
+    {
+        throw new IllegalStateException( "This property cannot be deleted due to schema constraints." );
+    }
+
+    public void insertProperty( Object[] propElems ) throws CallbackFailedException
+    {
+        throw new IllegalStateException( "This property cannot be inserted into due to schema constraints." );
+    }
+
+    public void updateProperty( Object[] propElems ) throws CallbackFailedException
+    {
+        XmlObject subPolicy;
+        if ( propElems.length == 1 )
+        {
+            subPolicy = (XmlObject) propElems[0];            
+        }
+        else
+        {
+            subPolicy = null;
+        }
+        m_subscription.setPolicy( subPolicy );
+
+    }
+
+}

Added: webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/TopicExpressionResourcePropertyCallback.java
URL: http://svn.apache.org/viewcvs/webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/TopicExpressionResourcePropertyCallback.java?rev=293423&view=auto
==============================================================================
--- webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/TopicExpressionResourcePropertyCallback.java (added)
+++ webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/TopicExpressionResourcePropertyCallback.java Mon Oct  3 11:35:08 2005
@@ -0,0 +1,92 @@
+/*=============================================================================*
+ *  Copyright 2005 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *=============================================================================*/
+package org.apache.ws.notification.base.v2004_06.callback;
+
+import org.apache.ws.notification.base.Subscription;
+import org.apache.ws.notification.base.v2004_06.porttype.SubscriptionManagerPortType;
+import org.apache.ws.notification.topics.TopicsTypeReader;
+import org.apache.ws.notification.topics.TopicsTypeWriter;
+import org.apache.ws.notification.topics.expression.InvalidTopicExpressionException;
+import org.apache.ws.notification.topics.v2004_06.TopicsConstants;
+import org.apache.ws.resource.properties.ResourceProperty;
+import org.apache.ws.resource.properties.SetResourcePropertyCallback;
+import org.apache.ws.resource.properties.impl.CallbackFailedException;
+import org.oasisOpen.docs.wsn.x2004.x06.wsnWSBaseNotification12Draft01.TopicExpressionDocument;
+import org.oasisOpen.docs.wsn.x2004.x06.wsnWSBaseNotification12Draft01.TopicExpressionType;
+
+import javax.xml.namespace.QName;
+
+/**
+ * A callback for the TopicExpression resource property from the WS-BaseNotification
+ * SubscriptionManager portType.
+ *
+ * @author Ian Springer
+ */
+public class TopicExpressionResourcePropertyCallback implements SetResourcePropertyCallback
+{
+
+    private Subscription m_subscription;
+
+    public TopicExpressionResourcePropertyCallback( Subscription subscription )
+    {
+        m_subscription = subscription;
+    }
+
+    public ResourceProperty refreshProperty( ResourceProperty prop ) throws CallbackFailedException
+    {
+        QName propName = prop.getMetaData().getName();
+        if ( !propName.equals( SubscriptionManagerPortType.PROP_QNAME_TOPIC_EXPRESSION ) )
+        {
+            throw new IllegalArgumentException( "Unsupported property: " + propName );
+        }
+        if ( prop.isEmpty() )
+        {
+            TopicExpressionDocument topicExprDoc = TopicExpressionDocument.Factory.newInstance();
+            topicExprDoc.addNewTopicExpression();
+            prop.add( topicExprDoc );
+        }
+        TopicExpressionType topicExpr = (TopicExpressionType) prop.get( 0 );
+        TopicsTypeWriter topicsTypeWriter = TopicsTypeWriter.newInstance( TopicsConstants.NSURI_WSTOP_SCHEMA );
+        TopicExpressionType newTopicExpr = (TopicExpressionType) topicsTypeWriter.toXmlObject( m_subscription.getTopicExpression(), SubscriptionManagerPortType.PROP_QNAME_TOPIC_EXPRESSION );
+        topicExpr.set( newTopicExpr );
+        return prop;
+    }
+
+    public void deleteProperty( QName propQName ) throws CallbackFailedException
+    {
+        throw new IllegalStateException( "This property cannot be deleted due to schema constraints." );
+    }
+
+    public void insertProperty( Object[] propElems ) throws CallbackFailedException
+    {
+        throw new IllegalStateException( "This property cannot be inserted into due to schema constraints." );
+    }
+
+    public void updateProperty( Object[] propElems ) throws CallbackFailedException
+    {
+        TopicExpressionType topicExpr = (TopicExpressionType) propElems[0];
+        TopicsTypeReader topicsTypeReader = TopicsTypeReader.newInstance( TopicsConstants.NSURI_WSTOP_SCHEMA );
+        try
+        {
+            m_subscription.setTopicExpression( topicsTypeReader.toTopicExpression( topicExpr ) );
+        }
+        catch ( InvalidTopicExpressionException itee )
+        {
+            throw new CallbackFailedException( itee );
+        }
+    }
+
+}

Added: webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/UseNotifyResourcePropertyCallback.java
URL: http://svn.apache.org/viewcvs/webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/UseNotifyResourcePropertyCallback.java?rev=293423&view=auto
==============================================================================
--- webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/UseNotifyResourcePropertyCallback.java (added)
+++ webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/callback/UseNotifyResourcePropertyCallback.java Mon Oct  3 11:35:08 2005
@@ -0,0 +1,77 @@
+/*=============================================================================*
+ *  Copyright 2005 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *=============================================================================*/
+package org.apache.ws.notification.base.v2004_06.callback;
+
+import org.apache.ws.notification.base.Subscription;
+import org.apache.ws.notification.base.v2004_06.porttype.SubscriptionManagerPortType;
+import org.apache.ws.resource.properties.ResourceProperty;
+import org.apache.ws.resource.properties.SetResourcePropertyCallback;
+import org.apache.ws.resource.properties.impl.CallbackFailedException;
+import org.apache.xmlbeans.XmlBoolean;
+import org.oasisOpen.docs.wsn.x2004.x06.wsnWSBaseNotification12Draft01.UseNotifyDocument;
+
+import javax.xml.namespace.QName;
+
+/**
+ * A callback for the UseNotify resource property from the WS-BaseNotification
+ * SubscriptionManager portType.
+ *
+ * @author Ian Springer
+ */
+public class UseNotifyResourcePropertyCallback implements SetResourcePropertyCallback
+{
+
+    private Subscription m_subscription;
+
+    public UseNotifyResourcePropertyCallback( Subscription subscription )
+    {
+        m_subscription = subscription;
+    }
+
+    public ResourceProperty refreshProperty( ResourceProperty prop ) throws CallbackFailedException
+    {
+        QName propName = prop.getMetaData().getName();
+        if ( !propName.equals( SubscriptionManagerPortType.PROP_QNAME_USE_NOTIFY ) )
+        {
+            throw new IllegalArgumentException( "Unsupported property: " + propName );
+        }
+        if ( prop.isEmpty() )
+        {
+            UseNotifyDocument useNotifyDoc = UseNotifyDocument.Factory.newInstance();
+            prop.add( useNotifyDoc );
+        }
+        XmlBoolean useNotify = (XmlBoolean) prop.get( 0 );
+        useNotify.setBooleanValue( m_subscription.getUseNotify() );
+        return prop;
+    }
+
+    public void deleteProperty( QName propQName ) throws CallbackFailedException
+    {
+        throw new IllegalStateException( "This property cannot be deleted due to schema constraints." );
+    }
+
+    public void insertProperty( Object[] propElems ) throws CallbackFailedException
+    {
+        throw new IllegalStateException( "This property cannot be inserted into due to schema constraints." );
+    }
+
+    public void updateProperty( Object[] propElems ) throws CallbackFailedException
+    {
+        XmlBoolean useNotify = (XmlBoolean) propElems[0];
+        m_subscription.setUseNotify( useNotify.getBooleanValue() );
+    }
+
+}

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=293423&r1=293422&r2=293423&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 Oct  3 11:35:08 2005
@@ -15,44 +15,42 @@
  *=============================================================================*/
 package org.apache.ws.notification.base.v2004_06.impl;
 
-import org.apache.ws.UnsupportedNamespaceException;
 import org.apache.ws.addressing.EndpointReference;
 import org.apache.ws.addressing.XmlBeansEndpointReference;
 import org.apache.ws.addressing.v2003_03.AddressingConstants;
+import org.apache.ws.notification.base.WsnNamespaceVersionHolder;
 import org.apache.ws.notification.base.impl.AbstractSubscription;
-import org.apache.ws.notification.base.v2004_06.porttype.SubscriptionManagerPortType;
-import org.apache.ws.notification.base.service.subscriptionManager.SubscriptionManagerRPDocument;
 import org.apache.ws.notification.base.service.subscriptionManager.ProducerReferenceDocument;
-import org.apache.ws.notification.base.WsnNamespaceVersionHolder;
-import org.apache.ws.notification.topics.TopicsTypeWriter;
+import org.apache.ws.notification.base.service.subscriptionManager.SubscriptionManagerRPDocument;
+import org.apache.ws.notification.base.v2004_06.callback.ConsumerReferenceResourcePropertyCallback;
+import org.apache.ws.notification.base.v2004_06.callback.PreconditionResourcePropertyCallback;
+import org.apache.ws.notification.base.v2004_06.callback.SelectorResourcePropertyCallback;
+import org.apache.ws.notification.base.v2004_06.callback.SubscriptionPolicyResourcePropertyCallback;
+import org.apache.ws.notification.base.v2004_06.callback.TopicExpressionResourcePropertyCallback;
+import org.apache.ws.notification.base.v2004_06.callback.UseNotifyResourcePropertyCallback;
+import org.apache.ws.notification.base.v2004_06.porttype.SubscriptionManagerPortType;
 import org.apache.ws.notification.topics.expression.TopicExpression;
-import org.apache.ws.notification.topics.v2004_06.TopicsConstants;
 import org.apache.ws.pubsub.SubscriptionEndConsumer;
 import org.apache.ws.resource.lifetime.callback.CurrentTimeCallback;
 import org.apache.ws.resource.lifetime.v2004_06.porttype.ScheduledResourceTerminationPortType;
+import org.apache.ws.resource.properties.NamespaceVersionHolder;
 import org.apache.ws.resource.properties.ResourceProperty;
+import org.apache.ws.resource.properties.ResourcePropertySet;
 import org.apache.ws.resource.properties.ResourcePropertySetMetaData;
-import org.apache.ws.resource.properties.NamespaceVersionHolder;
 import org.apache.ws.resource.properties.impl.XmlBeansResourcePropertySet;
 import org.apache.ws.resource.properties.impl.XmlBeansResourcePropertySetMetaData;
-import org.apache.ws.resource.properties.query.impl.XmlBeansQueryExpression;
-import org.oasisOpen.docs.wsn.x2004.x06.wsnWSBaseNotification12Draft01.ConsumerReferenceDocument;
 import org.oasisOpen.docs.wsn.x2004.x06.wsnWSBaseNotification12Draft01.CreationTimeDocument;
-import org.oasisOpen.docs.wsn.x2004.x06.wsnWSBaseNotification12Draft01.PreconditionDocument;
-import org.oasisOpen.docs.wsn.x2004.x06.wsnWSBaseNotification12Draft01.SelectorDocument;
-import org.oasisOpen.docs.wsn.x2004.x06.wsnWSBaseNotification12Draft01.SubscriptionPolicyDocument;
-import org.oasisOpen.docs.wsn.x2004.x06.wsnWSBaseNotification12Draft01.TopicExpressionDocument;
-import org.oasisOpen.docs.wsn.x2004.x06.wsnWSBaseNotification12Draft01.TopicExpressionType;
-import org.oasisOpen.docs.wsn.x2004.x06.wsnWSBaseNotification12Draft01.UseNotifyDocument;
 import org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceLifetime12Draft01.CurrentTimeDocument;
 import org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceLifetime12Draft01.TerminationTimeDocument;
-import org.oasisOpen.docs.wsrf.x2004.x06.wsrfWSResourceProperties12Draft01.QueryExpressionType;
 import org.xmlsoap.schemas.ws.x2003.x03.addressing.EndpointReferenceType;
 
 import javax.xml.namespace.QName;
 
 /**
- * The resource for the builtin 2004/06 SubscriptionManager service.
+ * The subscription resource that is exposed via the builtin 2004/06
+ * SubscriptionManager service.
+ *
+ * @author Ian Springer
  */
 public class SubscriptionResource
         extends AbstractSubscription
@@ -64,7 +62,8 @@
             {
                 ScheduledResourceTerminationPortType.PROP_QNAME_CURRENT_TIME,
                 ScheduledResourceTerminationPortType.PROP_QNAME_TERMINATION_TIME,
-                SubscriptionManagerPortType.PROP_QNAME_CREATION_TIME
+                SubscriptionManagerPortType.PROP_QNAME_CREATION_TIME,
+                SubscriptionManagerPortType.PROP_QNAME_PRODUCER_REFERENCE
             };
 
     /**
@@ -82,97 +81,57 @@
     }
 
     /**
-     * Get the subscriptionEnd consumer associated with this subscription.
-     *
-     * @return the subscriptionEnd consumer
-     */
-    public SubscriptionEndConsumer getSubscriptionEndConsumer()
-    {
-        return null; //todo *SJC* pubsub stuff
-    }
-
-    /**
-     * DOCUMENT_ME
+     * @see org.apache.ws.resource.Resource#init()
      */
     public void init()
     {
-
         SubscriptionManagerRPDocument propsDoc = SubscriptionManagerRPDocument.Factory.newInstance();
         ResourcePropertySetMetaData propSetMetaData =
                 new XmlBeansResourcePropertySetMetaData( propsDoc.schemaType(), READ_ONLY_PROP_NAMES );
-        m_propSet = new XmlBeansResourcePropertySet( propsDoc, propSetMetaData );
-
-        // TODO: need to configure callbacks for all these properties in case they change at runtime
+        ResourcePropertySet propSet = new XmlBeansResourcePropertySet( propsDoc, propSetMetaData );
+        setResourcePropertySet( propSet );
 
         // wsrlw:ScheduledResourceTermination props
         ResourceProperty prop =
-                m_propSet.get( ScheduledResourceTerminationPortType.PROP_QNAME_CURRENT_TIME );
+                propSet.get( ScheduledResourceTerminationPortType.PROP_QNAME_CURRENT_TIME );
         CurrentTimeDocument currTimeDoc = CurrentTimeDocument.Factory.newInstance();
         currTimeDoc.setCurrentTime( getCurrentTime() );
         prop.setCallback( new CurrentTimeCallback() );
         prop.add( currTimeDoc );
-        prop = m_propSet.get( ScheduledResourceTerminationPortType.PROP_QNAME_TERMINATION_TIME );
+        prop = propSet.get( ScheduledResourceTerminationPortType.PROP_QNAME_TERMINATION_TIME );
         TerminationTimeDocument termTimeDoc = TerminationTimeDocument.Factory.newInstance();
         termTimeDoc.setTerminationTime( getTerminationTime() );
         prop.add( termTimeDoc );
 
-        //Custom Prop
-        prop = m_propSet.get(SubscriptionManagerPortType.PROP_QNAME_PRODUCER_REFERENCE);
-        ProducerReferenceDocument producerRefDoc = ProducerReferenceDocument.Factory.newInstance();
-        producerRefDoc.setProducerReference((EndpointReferenceType) ( (XmlBeansEndpointReference) m_producerReference )
-                .getXmlObject( AddressingConstants.NSURI_ADDRESSING_SCHEMA ) );
-
         // wsntw:SubscriptionManager props
-        prop = m_propSet.get( SubscriptionManagerPortType.PROP_QNAME_CONSUMER_REFERENCE );
-        ConsumerReferenceDocument consumerRefDoc = ConsumerReferenceDocument.Factory.newInstance();
-        consumerRefDoc.setConsumerReference( (EndpointReferenceType) ( (XmlBeansEndpointReference) m_consumerReference )
-                .getXmlObject( AddressingConstants.NSURI_ADDRESSING_SCHEMA ) );
-        prop.add( consumerRefDoc );
-        prop = m_propSet.get( SubscriptionManagerPortType.PROP_QNAME_CREATION_TIME );
+        prop = propSet.get( SubscriptionManagerPortType.PROP_QNAME_CONSUMER_REFERENCE );
+        prop.setCallback( new ConsumerReferenceResourcePropertyCallback( this ) );
+
+        prop = propSet.get( SubscriptionManagerPortType.PROP_QNAME_TOPIC_EXPRESSION );
+        prop.setCallback( new TopicExpressionResourcePropertyCallback( this ) );
+
+        prop = propSet.get( SubscriptionManagerPortType.PROP_QNAME_USE_NOTIFY );
+        prop.setCallback( new UseNotifyResourcePropertyCallback( this ) );
+
+        prop = propSet.get( SubscriptionManagerPortType.PROP_QNAME_PRECONDITION );
+        prop.setCallback( new PreconditionResourcePropertyCallback( this ) );
+
+        prop = propSet.get( SubscriptionManagerPortType.PROP_QNAME_SELECTOR );
+        prop.setCallback( new SelectorResourcePropertyCallback( this ) );
+
+        prop = propSet.get( SubscriptionManagerPortType.PROP_QNAME_SUBSCRIPTION_POLICY );
+        prop.setCallback( new SubscriptionPolicyResourcePropertyCallback( this ) );
+
+        prop = propSet.get( SubscriptionManagerPortType.PROP_QNAME_CREATION_TIME );
         CreationTimeDocument creationTimeDoc = CreationTimeDocument.Factory.newInstance();
-        creationTimeDoc.setCreationTime( m_creationTime );
+        creationTimeDoc.setCreationTime( getCreationTime() );
         prop.add( creationTimeDoc );
-        prop = m_propSet.get( SubscriptionManagerPortType.PROP_QNAME_TOPIC_EXPRESSION );
-        TopicExpressionDocument topicExprDoc = TopicExpressionDocument.Factory.newInstance();
-        try
-        {
-            topicExprDoc.setTopicExpression(
-                    (TopicExpressionType) TopicsTypeWriter.newInstance( TopicsConstants.NSURI_WSTOP_SCHEMA )
-                    .toXmlObject( m_topicExpression, SubscriptionManagerPortType.PROP_QNAME_TOPIC_EXPRESSION ) );
-        }
-        catch ( UnsupportedNamespaceException une )
-        {
-            throw new RuntimeException( une );
-        }
-        prop.add( topicExprDoc );
-        prop = m_propSet.get( SubscriptionManagerPortType.PROP_QNAME_USE_NOTIFY );
-        UseNotifyDocument useNotifyDoc = UseNotifyDocument.Factory.newInstance();
-        useNotifyDoc.setUseNotify( m_useNotify );
-        prop.add( useNotifyDoc );
-        if ( m_precondition != null )
-        {
-            prop = m_propSet.get( SubscriptionManagerPortType.PROP_QNAME_PRECONDITION );
-            PreconditionDocument preconditionDoc = PreconditionDocument.Factory.newInstance();
-            preconditionDoc.setPrecondition( (QueryExpressionType) ( (XmlBeansQueryExpression) m_precondition )
-                    .getXmlObject() );
-            prop.add( preconditionDoc );
-        }
-
-        if ( m_selector != null )
-        {
-            prop = m_propSet.get( SubscriptionManagerPortType.PROP_QNAME_SELECTOR );
-            SelectorDocument selectorDoc = SelectorDocument.Factory.newInstance();
-            selectorDoc.setSelector( (QueryExpressionType) ( (XmlBeansQueryExpression) m_selector ).getXmlObject() );
-            prop.add( selectorDoc );
-        }
-
-        if ( m_policy != null )
-        {
-            prop = m_propSet.get( SubscriptionManagerPortType.PROP_QNAME_SUBSCRIPTION_POLICY );
-            SubscriptionPolicyDocument subPolicyDoc = SubscriptionPolicyDocument.Factory.newInstance();
-            subPolicyDoc.setSubscriptionPolicy( null );
-            prop.add( subPolicyDoc );
-        }
+
+        // custom SubscriptionManager prop
+        prop = propSet.get(SubscriptionManagerPortType.PROP_QNAME_PRODUCER_REFERENCE);
+        ProducerReferenceDocument producerRefDoc = ProducerReferenceDocument.Factory.newInstance();
+        producerRefDoc.setProducerReference((EndpointReferenceType) ( (XmlBeansEndpointReference) getProducerReference() )
+                .getXmlObject( AddressingConstants.NSURI_ADDRESSING_SCHEMA ) );
     }
 
     /**
@@ -181,6 +140,16 @@
     public NamespaceVersionHolder getNamespaceSet()
     {
         return WSN_2004_06_NAMESPACE_SET;
+    }
+
+    /**
+     * Get the subscriptionEnd consumer associated with this subscription.
+     *
+     * @return the subscriptionEnd consumer
+     */
+    public SubscriptionEndConsumer getSubscriptionEndConsumer()
+    {
+        return null;  // there's no such thing as a subscription end consumer in WSN, so just return null
     }
 
 }

Modified: webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/porttype/impl/NotificationProducerPortTypeImpl.java
URL: http://svn.apache.org/viewcvs/webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/porttype/impl/NotificationProducerPortTypeImpl.java?rev=293423&r1=293422&r2=293423&view=diff
==============================================================================
--- webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/porttype/impl/NotificationProducerPortTypeImpl.java (original)
+++ webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/porttype/impl/NotificationProducerPortTypeImpl.java Mon Oct  3 11:35:08 2005
@@ -26,7 +26,6 @@
 import org.apache.ws.notification.base.faults.SubscribeCreationFailedFaultException;
 import org.apache.ws.notification.base.faults.TopicPathDialectUnknownFaultException;
 import org.apache.ws.notification.base.impl.SubscribeCreationFailedException;
-import org.apache.ws.notification.base.v2004_06.impl.WsnNamespaceVersionHolderImpl;
 import org.apache.ws.notification.base.v2004_06.porttype.NotificationProducerPortType;
 import org.apache.ws.notification.topics.TopicsTypeReader;
 import org.apache.ws.notification.topics.expression.InvalidTopicExpressionException;
@@ -35,7 +34,6 @@
 import org.apache.ws.notification.topics.expression.TopicPathDialectUnknownException;
 import org.apache.ws.resource.ResourceContext;
 import org.apache.ws.resource.faults.FaultException;
-import org.apache.ws.resource.properties.NamespaceVersionHolder;
 import org.apache.ws.resource.properties.impl.AbstractResourcePropertiesPortType;
 import org.apache.ws.resource.properties.query.QueryExpression;
 import org.apache.ws.resource.properties.query.impl.XmlBeansQueryExpression;
@@ -60,8 +58,6 @@
         implements NotificationProducerPortType
 {
 
-    private static final WsnNamespaceVersionHolder WSN_2004_06_NAMESPACE_SET = new WsnNamespaceVersionHolderImpl();
-
     private NotificationProducerResource m_producerResource;
 
     /**
@@ -113,15 +109,15 @@
         }
         catch ( SubscribeCreationFailedException scfe )
         {
-            throw new SubscribeCreationFailedFaultException( WSN_2004_06_NAMESPACE_SET );
+            throw new SubscribeCreationFailedFaultException( getNamespaceSet() );
         }
         catch ( InvalidTopicExpressionException itee )
         {
-            throw new InvalidTopicExpressionFaultException( WSN_2004_06_NAMESPACE_SET, itee.getLocalizedMessage() );
+            throw new InvalidTopicExpressionFaultException( getNamespaceSet(), itee.getLocalizedMessage() );
         }
         catch ( TopicPathDialectUnknownException tpdue )
         {
-            throw new TopicPathDialectUnknownFaultException( WSN_2004_06_NAMESPACE_SET, tpdue.getLocalizedMessage() );
+            throw new TopicPathDialectUnknownFaultException( getNamespaceSet(), tpdue.getLocalizedMessage() );
         }
         return buildSubscribeResponseDocument( subscriptionEPR );
     }
@@ -140,7 +136,7 @@
         }
         catch ( InvalidTopicExpressionException itee )
         {
-            throw new InvalidTopicExpressionFaultException( WSN_2004_06_NAMESPACE_SET, itee.getLocalizedMessage() );
+            throw new InvalidTopicExpressionFaultException( getNamespaceSet(), itee.getLocalizedMessage() );
         }
         catch ( TopicExpressionException tee )
         {
@@ -148,7 +144,7 @@
         }
         if ( currentMsg == null )
         {
-            throw new NoCurrentMessageOnTopicFaultException( WSN_2004_06_NAMESPACE_SET );
+            throw new NoCurrentMessageOnTopicFaultException( getNamespaceSet() );
         }
         return buildGetCurrentMessageResponseDocument( currentMsg );
     }
@@ -187,25 +183,20 @@
 
     private TopicExpression toTopicExpression( TopicExpressionType topicExprType )
     {
-        TopicsTypeReader topicsTypeReader = TopicsTypeReader.newInstance( WSN_2004_06_NAMESPACE_SET.getTopicsXsdNamespace() );
+        TopicsTypeReader topicsTypeReader = TopicsTypeReader.newInstance( getNamespaceSet().getTopicsXsdNamespace() );
         try
         {
             return topicsTypeReader.toTopicExpression( topicExprType );
         }
         catch ( InvalidTopicExpressionException itee )
         {
-            throw new InvalidTopicExpressionFaultException( WSN_2004_06_NAMESPACE_SET, itee.getLocalizedMessage() );
+            throw new InvalidTopicExpressionFaultException( getNamespaceSet(), itee.getLocalizedMessage() );
         }
     }
 
-    /**
-     * DOCUMENT_ME
-     *
-     * @return DOCUMENT_ME
-     */
-    protected NamespaceVersionHolder getNamespaceSet()
+    private WsnNamespaceVersionHolder getNamespaceSet()
     {
-        return WSN_2004_06_NAMESPACE_SET;
+        return (WsnNamespaceVersionHolder) getResource().getNamespaceSet();
     }
-
+    
 }

Modified: webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/porttype/impl/SubscriptionManagerPortTypeImpl.java
URL: http://svn.apache.org/viewcvs/webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/porttype/impl/SubscriptionManagerPortTypeImpl.java?rev=293423&r1=293422&r2=293423&view=diff
==============================================================================
--- webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/porttype/impl/SubscriptionManagerPortTypeImpl.java (original)
+++ webservices/pubscribe/trunk/src/java/org/apache/ws/notification/base/v2004_06/porttype/impl/SubscriptionManagerPortTypeImpl.java Mon Oct  3 11:35:08 2005
@@ -17,6 +17,8 @@
 
 import org.apache.ws.notification.base.Subscription;
 import org.apache.ws.notification.base.WsnNamespaceVersionHolder;
+import org.apache.ws.notification.base.PauseFailedException;
+import org.apache.ws.notification.base.ResumeFailedException;
 import org.apache.ws.notification.base.faults.PauseFailedFaultException;
 import org.apache.ws.notification.base.faults.ResumeFailedFaultException;
 import org.apache.ws.notification.base.v2004_06.impl.WsnNamespaceVersionHolderImpl;
@@ -30,15 +32,16 @@
 import org.oasisOpen.docs.wsn.x2004.x06.wsnWSBaseNotification12Draft01.ResumeSubscriptionResponseDocument;
 
 /**
- * An implementation of the WS-BaseNotification SubscriptionManager portType.
+ * An implementation of the WS-BaseNotification 2004/06 SubscriptionManager portType.
  *
- * @author Ian Springer (ian DOT springer AT hp DOT com)
+ * @author Ian Springer
  */
 public class SubscriptionManagerPortTypeImpl
    extends AbstractResourcePropertiesPortType
    implements SubscriptionManagerPortType
 {
-   private static final WsnNamespaceVersionHolder NAMESPACE_SET = new WsnNamespaceVersionHolderImpl(  );
+
+   private static final WsnNamespaceVersionHolder WSN_2004_06_NAMESPACE_SET = new WsnNamespaceVersionHolderImpl(  );
 
    /**
     * Creates a new {@link SubscriptionManagerPortTypeImpl} object.
@@ -59,21 +62,24 @@
     */
    public PauseSubscriptionResponseDocument pauseSubscription( PauseSubscriptionDocument requestDoc )
    {
-      Subscription subscription = (Subscription) getResource(  );
       try
       {
-         subscription.pause(  );
+         getSubscription().pause(  );
       }
-      catch ( Exception e )
+      catch ( PauseFailedException pfe )
       {
-         throw new PauseFailedFaultException( NAMESPACE_SET,
-                                              "Pause failed on subscription: " + subscription.getID(  ) );
+         throw new PauseFailedFaultException( (WsnNamespaceVersionHolder) getResource().getNamespaceSet(),
+                                              "Pause failed on subscription with id " + getSubscription().getID(  ) );
       }
-
       return createPauseSubscriptionResponseDocument(  );
    }
 
-   /**
+    private Subscription getSubscription()
+    {
+        return (Subscription) getResource(  );
+    }
+
+    /**
     * DOCUMENT_ME
     *
     * @param requestDoc DOCUMENT_ME
@@ -82,17 +88,15 @@
     */
    public ResumeSubscriptionResponseDocument resumeSubscription( ResumeSubscriptionDocument requestDoc )
    {
-      Subscription subscription = (Subscription) getResource(  );
       try
       {
-         subscription.resume(  );
+         getSubscription().resume();
       }
-      catch ( Exception e )
+      catch ( ResumeFailedException rfe )
       {
-         throw new ResumeFailedFaultException( NAMESPACE_SET,
-                                               "Resume failed on subscription: " + subscription.getID(  ) );
+         throw new ResumeFailedFaultException( (WsnNamespaceVersionHolder) getResource().getNamespaceSet(),
+                                               "Resume failed on subscription with id " + getSubscription().getID() );
       }
-
       return createResumeSubscriptionResponseDocument(  );
    }
 
@@ -103,7 +107,7 @@
     */
    protected NamespaceVersionHolder getNamespaceSet(  )
    {
-      return NAMESPACE_SET;
+      return WSN_2004_06_NAMESPACE_SET;
    }
 
    private PauseSubscriptionResponseDocument createPauseSubscriptionResponseDocument(  )
@@ -119,4 +123,5 @@
       responseDoc.addNewResumeSubscriptionResponse(  );
       return responseDoc;
    }
+
 }

Modified: webservices/pubscribe/trunk/src/java/org/apache/ws/notification/pubsub/Subscription.java
URL: http://svn.apache.org/viewcvs/webservices/pubscribe/trunk/src/java/org/apache/ws/notification/pubsub/Subscription.java?rev=293423&r1=293422&r2=293423&view=diff
==============================================================================
--- webservices/pubscribe/trunk/src/java/org/apache/ws/notification/pubsub/Subscription.java (original)
+++ webservices/pubscribe/trunk/src/java/org/apache/ws/notification/pubsub/Subscription.java Mon Oct  3 11:35:08 2005
@@ -15,14 +15,12 @@
  *=============================================================================*/
 package org.apache.ws.notification.pubsub;
 
-import org.apache.commons.id.IdentifierUtils;
 import org.apache.ws.addressing.XmlBeansEndpointReference;
 import org.apache.ws.notification.base.impl.AbstractSubscription;
 import org.apache.ws.pubsub.SubscriptionEndConsumer;
 import org.apache.ws.resource.properties.NamespaceVersionHolder;
 import org.oasisOpen.docs.wsn.x2004.x06.wsnWSBaseNotification12Draft01.SubscribeResponseDocument;
 import org.xmlsoap.schemas.ws.x2003.x03.addressing.EndpointReferenceType;
-import java.util.Calendar;
 
 /**
  *
@@ -31,16 +29,8 @@
 public class Subscription
    extends AbstractSubscription
 {
+    
    private EndpointReferenceType sMan;
-
-   //private static final Log LOG = LogFactory.getLog( Subscriber.class.getName() );   
-
-   /** Creates a new instance of Subscription */
-   public Subscription(  )
-   {
-      m_id              = IdentifierUtils.UUID_VERSION_FOUR_GENERATOR.nextIdentifier(  ).toString(  );
-      m_creationTime    = Calendar.getInstance(  );
-   }
 
    /**
     * DOCUMENT_ME

Modified: webservices/pubscribe/trunk/src/java/org/apache/ws/pubsub/Subscription.java
URL: http://svn.apache.org/viewcvs/webservices/pubscribe/trunk/src/java/org/apache/ws/pubsub/Subscription.java?rev=293423&r1=293422&r2=293423&view=diff
==============================================================================
--- webservices/pubscribe/trunk/src/java/org/apache/ws/pubsub/Subscription.java (original)
+++ webservices/pubscribe/trunk/src/java/org/apache/ws/pubsub/Subscription.java Mon Oct  3 11:35:08 2005
@@ -18,10 +18,7 @@
 import java.util.Calendar;
 
 /**
- * DOCUMENT_ME
- *
- * @version $Revision: 1.8 $
- * @author $author$
+ * A specification-generic interface respresenting a subscription.
  */
 public interface Subscription
 {



Mime
View raw message