Author: lischke
Date: Mon Jan 17 17:03:36 2005
New Revision: 125454

URL: http://svn.apache.org/viewcvs?view=rev&rev=125454
Log:
added SubscriptionStore
Added:
   incubator/hermes/trunk/src/java/org/apache/ws/pubsub/SubscriptionStore.java

Added: 
incubator/hermes/trunk/src/java/org/apache/ws/pubsub/SubscriptionStore.java
Url: 
http://svn.apache.org/viewcvs/incubator/hermes/trunk/src/java/org/apache/ws/pubsub/SubscriptionStore.java?view=auto&rev=125454
==============================================================================
--- (empty file)
+++ incubator/hermes/trunk/src/java/org/apache/ws/pubsub/SubscriptionStore.java 
Mon Jan 17 17:03:36 2005
@@ -0,0 +1,46 @@
+package org.apache.ws.pubsub;
+
+
+/**
+ * A SubscriptionStore is an instance where Subscriptions
+ * are stored and filtering is taking place.
+ * That can be done by brute force filtering
+ * (applying one filter after another). Or for example with
+ * a shared Path machine like XPath.
+ *
+ * A SubscriptionStore is needed at the publisher side and (maybe)
+ * on the subscriber side.
+ */
+public interface SubscriptionStore {
+
+
+    /**
+     * Adds a Subscription to the SubscriptionStore
+     * @return the id of the Subscription in the SubStore
+     * @param s the subscription to be added
+     */
+    public String addSubscription(Subscription s);
+    /**
+     * removes a Subscription by id from he SubscriptionStore
+     * @param id the distinct id of a Subscription
+     * which is equivalent to the EndpointParameter
+     * of the SubscriptionManager
+     */
+    public void removeSubscription(String id);
+
+    /**
+     * Starts Filtering of the given message. On all matching Subscriptions,
+     * the NotificationConsumer is executed ->
+     * NotificationConsumer.notify(Subscription, message)
+     * @param message The notification
+     */    
+    public void notify(Object message);
+    
+    /**
+     * Returns a Subscription.
+     * @param id The id of the Subscription.  which is equivalent to the 
EndpointParameter
+     * of the SubscriptionManager
+     * @return The Subscription
+     */    
+    public Subscription getSubscription(String id);    
+}

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to