Package org.apache.webdav.lib
Class NotificationListener
- java.lang.Object
-
- org.apache.webdav.lib.NotificationListener
-
public class NotificationListener extends java.lang.ObjectThe NotificationListener class encapsulates all methods that are required for dealing with WebDAV notifications. It implements poll and push based notification handling.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description classNotificationListener.Event
-
Field Summary
Fields Modifier and Type Field Description protected static java.util.Timertimer
-
Constructor Summary
Constructors Constructor Description NotificationListener(java.lang.String host, int port, java.lang.String repositoryHost, int repositoryPort, org.apache.commons.httpclient.protocol.Protocol protocol, org.apache.commons.httpclient.Credentials credentials, java.lang.String repositoryDomain, int pollInterval, boolean udp)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidfireEvent(int id, java.util.Map information)voidfireEvent(java.util.Map information, org.apache.commons.httpclient.Credentials credentials)protected voidfireEvent(org.apache.webdav.lib.NotificationListener.EventMethod eventMethod, org.apache.commons.httpclient.Credentials credentials)voidfireVetoableEvent(java.util.Map information, org.apache.commons.httpclient.Credentials credentials)protected voidpoll(java.lang.String notifiedSubscribers)booleansubscribe(java.lang.String method, java.lang.String uri, int depth, int lifetime, int notificationDelay, Subscriber listener, org.apache.commons.httpclient.Credentials credentials)Registers a Subscriber with the remote server.booleanunsubscribe(java.lang.String uri, Subscriber listener, org.apache.commons.httpclient.Credentials credentials)
-
-
-
Constructor Detail
-
NotificationListener
public NotificationListener(java.lang.String host, int port, java.lang.String repositoryHost, int repositoryPort, org.apache.commons.httpclient.protocol.Protocol protocol, org.apache.commons.httpclient.Credentials credentials, java.lang.String repositoryDomain, int pollInterval, boolean udp)- Parameters:
host- The ip-address or hostname on which the udp or http-server is running (e.g. "myhost.mydomain.mytld")port- The port where the udp or http-server is listening on (e.g. 4444)repositoryHost- The ip-adress or hostname of the WebDAV-repositoryrepositoryPort- The port of the WebDAV-repository (e.g. 8080)protocol- The protocol that should be used to connect to the WebDAV-repository (http or https)credentials- The credentials which are used to connect to the WebDAV-repositoryrepositoryDomain- The repository domain (e.g. "/slide")pollInterval- The poll interval that will be used if no notifications are revieved via UDP/TCP (in milliseconds)udp- If set to true, UDP server will be started, otherwise TCP server (must match the repository notification mode)
-
-
Method Detail
-
subscribe
public boolean subscribe(java.lang.String method, java.lang.String uri, int depth, int lifetime, int notificationDelay, Subscriber listener, org.apache.commons.httpclient.Credentials credentials)Registers a Subscriber with the remote server.- Parameters:
method- the "notification type", determines for what events do you want do subscribe. one of "Update", "Update/newmember", "Delete", "Move".uri- the resource for that you subscribedepth- the depth of the collection tree that you want to observelifetime- the duration for that you want to observe (in seconds)notificationDelay- the time the server waits before it sends a notify message to the host provided in the constructor (in seconds)listener- the Subscriber that is called on incomming notificationscredentials- credentials for authentication on the server observed- Returns:
- boolean true if subscription succeeded, false if subscription failed
- See Also:
WebdavResource.subscribeMethod(java.lang.String, java.lang.String, java.lang.String, long, int, long)
-
unsubscribe
public boolean unsubscribe(java.lang.String uri, Subscriber listener, org.apache.commons.httpclient.Credentials credentials)
-
fireEvent
public void fireEvent(java.util.Map information, org.apache.commons.httpclient.Credentials credentials) throws java.io.IOException- Throws:
java.io.IOException
-
fireVetoableEvent
public void fireVetoableEvent(java.util.Map information, org.apache.commons.httpclient.Credentials credentials) throws java.io.IOException- Throws:
java.io.IOException
-
fireEvent
protected void fireEvent(org.apache.webdav.lib.NotificationListener.EventMethod eventMethod, org.apache.commons.httpclient.Credentials credentials) throws java.io.IOException- Throws:
java.io.IOException
-
fireEvent
protected void fireEvent(int id, java.util.Map information)
-
poll
protected void poll(java.lang.String notifiedSubscribers)
-
-