1   package net.sf.flock;
2   
3   import java.net.URL;
4   import java.util.Collection;
5   
6   /***
7    * Service interface for managing subscriptions.
8    * 
9    * @version $Revision$
10   * @author $Author$
11   */
12  public interface SubscriptionManagerI {
13  
14  	/***
15  	 * Create a new subscription. 
16  	 * 
17  	 * @param subscriptionInfo
18  	 * @return SubscriptionI[]
19  	 * @throws FlockResourceException
20  	 */
21  	public SubscriptionI[] subscribe(SubscriptionInfoI subscriptionInfo) throws FlockResourceException;
22  
23  	/***
24  	 * Short version of subscribe.
25  	 * 
26  	 * @param url
27  	 * @param path
28  	 * @return SubscriptionI[]
29  	 * @throws FlockResourceException
30  	 */
31  	public SubscriptionI[] subscribe(URL url, String path) throws FlockResourceException;
32  
33  	/***
34  	 * Remove a subscription.
35  	 * 
36  	 * @param url subscription location
37  	 * @throws FlockResourceException
38  	 */	
39  	public void unsubscribe(URL url) throws FlockResourceException;
40  	
41  	/***
42  	 * Get a given a subscription.
43  	 *  
44  	 * @param url subscription location
45  	 * @return SubscriptionI
46  	 * @throws FlockResourceException
47  	 */
48  	public SubscriptionI getSubscription(URL url) throws FlockResourceException;
49  
50  	/***
51  	 * Get lightweight information about all subscriptions.
52  	 * 
53  	 * @return Collection of SubscriptionInfoI objects
54  	 * @throws FlockResourceException
55  	 */	
56  	public Collection getSubscriptionInfos() throws FlockResourceException;
57  
58  	/***
59  	 * Refresh a subscription (synchronously).
60  	 * 
61  	 * @param url subscription location
62  	 * @throws FlockResourceException
63  	 */
64  	public void refresh(URL url) throws FlockResourceException;
65  
66  	/***
67  	 * Initiate asynchronous refresh cycle.
68  	 * 
69  	 * @return boolean false if refresh cycle is already in progress
70  	 */	
71  	public boolean refreshAll();
72  
73  	/***
74  	 * 
75  	 * @return ITreeNode
76  	 * @throws FlockResourceException
77  	 */
78  	public ITreeNode getHierarchy() throws FlockResourceException;
79  
80  	/***
81  	 * 
82  	 * @param path
83  	 * @param maxItems
84  	 * @return Collection
85  	 * @throws FlockResourceException
86  	 */
87  	public Collection getAggregateFeed(String path, int maxItems) throws FlockResourceException;
88  
89  }
This page was automatically generated by Maven