| 
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectcom.j_spaces.core.client.NotifyDelegator
EventSessionFactory instead.
@Deprecated public class NotifyDelegator
Just like the call to JavaSpace.notify(), it serves to register interest
 in matching entries for a specific period of time. If a matching entry is written to the
 space before the notification request expires, then the notify() method on the given
 event listener will be called. In comparison to JavaSpace.notify() there is no
 need to set the client codebase. Both clients and server agree on this proxy object to be
 used for notifications.
 
We use com.j_spaces.core.client.NotifyModifiers as the notification interest. You could either register for all notifications with NotifyModifiers.NOTIFY_ALL or you could use bitwise or operator "|" and have several notifications: e.g. NotifyModifiers.NOTIFY_WRITE | NotifyModifiers.NOTIFY_READ
 NotifyDelegator ntfyDelegator =
        new NotifyDelegator((IJSpace) spaceProxy,
                                new MyEntry(),
                                theTransaction,
                                theListener,
                                Lease.FOREVER,
                                null,
                                fifoEnabled,
                                NotifyModifiers.NOTIFY_ALL);
 
 
 theListener has to implement RemoteEventListener and its inherited method notify().
 theTransaction could be either a null transaction or an obtained one from a TransactionManager.
 
 
 When new entries that match the template arrive at the space, the supplied listener's
 notify() method will be called by the delegator. From the notification event
 you can access the entry that triggered the event in the space, and act upon each interested
 notification.
 
 public void notify(RemoteEvent event)
 {
        EntryArrivedRemoteEvent arrivedRemoteEvent = (EntryArrivedRemoteEvent)event;
        int notifyType = arrivedRemoteEvent.getNotifyType();
        // section for write notifications
        if (notifyType == NotifyModifiers.NOTIFY_WRITE)
        {
                MyEntry myEntry = (MyEntry)((EntryArrivedRemoteEvent)event).getEntry();
                ...
        }
 }
 
 
In order to cancel the notify registration, you can use the Event Registration object of this delegator:
 ntfyDelegator.getEventRegistration().getLease().cancel();
 
 
Leasing does not close the NotifyDelegator once the lease expires. Although no notifications will be delegated, it is good practice to close any excess resources.
 ntfyDelegator.close()
 
 
EntryArrivedRemoteEvent| Constructor Summary | |
|---|---|
NotifyDelegator(IJSpace space,
                Entry template,
                Transaction txn,
                long lease,
                com.gigaspaces.events.NotifyInfo info)
Deprecated. Creates a new delegator that can receive ordered notifications.  | 
|
NotifyDelegator(IJSpace space,
                Entry template,
                Transaction txn,
                RemoteEventListener listener,
                long lease,
                MarshalledObject handback)
Deprecated.  | 
|
NotifyDelegator(IJSpace space,
                Entry template,
                Transaction txn,
                RemoteEventListener listener,
                long lease,
                MarshalledObject handback,
                boolean fifoEnabled)
Deprecated.  | 
|
NotifyDelegator(IJSpace space,
                Object template,
                Transaction txn,
                long lease,
                com.gigaspaces.events.NotifyInfo info)
Deprecated.  | 
|
NotifyDelegator(IJSpace space,
                Object template,
                Transaction txn,
                RemoteEventListener listener,
                long lease,
                MarshalledObject handback,
                boolean fifoEnabled,
                int notifyMask)
Deprecated. Creates a new delegator that can receive ordered notifications.  | 
|
| Method Summary | |
|---|---|
 void | 
close()
Deprecated. Cancels all the registered notify template and un-exports this instance of NotifyDelegator.  | 
 com.gigaspaces.events.GSEventRegistration | 
getEventRegistration()
Deprecated. Returns an EventRegistration object that can be used to
 cancel or renew the notification lease, to get the unique id of the
 registration, to get the sequence number at the time of registration and
 the space that is the source of the registration. | 
 IJSpace | 
getSpace()
Deprecated. Returns space proxy or null if NotifyDelegator was
 constructed as listener, not via constructor with spaceProxy as parameter. | 
 void | 
notify(RemoteEvent theEvent)
Deprecated.  | 
 void | 
notifyBatch(com.gigaspaces.events.batching.BatchRemoteEvent theEvents)
Deprecated.  | 
 void | 
setSpace(IJSpace space)
Deprecated. Set space proxy.  | 
| Methods inherited from class java.lang.Object | 
|---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| Constructor Detail | 
|---|
public NotifyDelegator(IJSpace space,
                       Entry template,
                       Transaction txn,
                       long lease,
                       com.gigaspaces.events.NotifyInfo info)
                throws TransactionException,
                       RemoteException
space - the space to register for notification.template - the template to use for notification.txn - the transaction to use for notification.lease - the lease of the notification template.
 NotifyDelegator nd = new NotifyDelegator(space, template, transaction, listener, Lease.FOREVER, handback, true, NotifyModifiers.NOTIFY_WRITE | NotifyModifiers.NOTIFY_TAKE );
TransactionException - if the transaction is not valid
RemoteException - if a communication error occursNotifyModifiers
public NotifyDelegator(IJSpace space,
                       Object template,
                       Transaction txn,
                       RemoteEventListener listener,
                       long lease,
                       MarshalledObject handback,
                       boolean fifoEnabled,
                       int notifyMask)
                throws TransactionException,
                       RemoteException
space - the space to register for notification.template - the template to use for notification.txn - the transaction to use for notification.listener - user supplied listener (implementing RemoteEventListener).lease - the lease of the notification template.handback - the handback to use for notification.fifoEnabled - enables/disables ordered notifications.notifyMask - Available Notify Types:
 NotifyModifiers.NOTIFY_WRITE
 NotifyModifiers.NOTIFY_UPDATE
 NotifyModifiers.NOTIFY_TAKE
 NotifyModifiers.NOTIFY_LEASE_EXPIRATION
 NotifyModifiers.NOTIFY_ALL
 NotifyDelegator nd = new NotifyDelegator(space, template, transaction, listener, Lease.FOREVER, handback, true, NotifyModifiers.NOTIFY_WRITE | NotifyModifiers.NOTIFY_TAKE );
TransactionException - if the transaction is not valid
RemoteException - if a communication error occursNotifyModifiers
public NotifyDelegator(IJSpace space,
                       Object template,
                       Transaction txn,
                       long lease,
                       com.gigaspaces.events.NotifyInfo info)
                throws TransactionException,
                       RemoteException
TransactionException
RemoteException
@Deprecated
public NotifyDelegator(IJSpace space,
                                  Entry template,
                                  Transaction txn,
                                  RemoteEventListener listener,
                                  long lease,
                                  MarshalledObject handback)
                throws TransactionException,
                       RemoteException
space - the space to register for notification.template - the template to use for notification.txn - the transaction to use for notification.listener - user supplied listener.lease - the lease of the notification template.handback - the handback to use for notification.
TransactionException - if the transaction is not valid
RemoteException - if a communication error occurs
@Deprecated
public NotifyDelegator(IJSpace space,
                                  Entry template,
                                  Transaction txn,
                                  RemoteEventListener listener,
                                  long lease,
                                  MarshalledObject handback,
                                  boolean fifoEnabled)
                throws TransactionException,
                       RemoteException
space - the space to register for notification.template - the template to use for notification.txn - the transaction to use for notification.listener - user supplied listener.lease - the lease of the notification template.handback - the handback to use for notification.fifoEnabled - enables/disables ordered notifications.
TransactionException - if the transaction is not valid
RemoteException - if a communication error occurs| Method Detail | 
|---|
public void notify(RemoteEvent theEvent)
            throws UnknownEventException,
                   RemoteException
notify in interface RemoteEventListenerUnknownEventException
RemoteException
public void notifyBatch(com.gigaspaces.events.batching.BatchRemoteEvent theEvents)
                 throws UnknownEventException,
                        RemoteException
notifyBatch in interface com.gigaspaces.events.batching.BatchRemoteEventListenerUnknownEventException
RemoteExceptionpublic com.gigaspaces.events.GSEventRegistration getEventRegistration()
EventRegistration object that can be used to
 cancel or renew the notification lease, to get the unique id of the
 registration, to get the sequence number at the time of registration and
 the space that is the source of the registration.
EventRegistration object returned from
  calling notify() on the space.public IJSpace getSpace()
null if NotifyDelegator was
 constructed as listener, not via constructor with spaceProxy as parameter.
public void setSpace(IJSpace space)
space - space proxy to set.public void close()
  | 
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||