com.ibm.agletx.patterns
Class Notifier
java.lang.Object
|
+--com.ibm.aglet.Aglet
|
+--com.ibm.agletx.patterns.Notifier
- All Implemented Interfaces:
- java.io.Serializable
- public abstract class Notifier
- extends Aglet
Create a notifier by calling the static method create.
The notifier will get dispatched automatically. The notifier
performs successive checks (at its destination) within a specified
time duration.
Upon every successfull check (one the encounters a change in a
local state), it notifies its master.
The notifier can be defined (see
create
) to complete
its job after the first successive check (although its time duration
has not been reached yet).
If a notifier cannot be dispatched or it encounters an error
during a check, it notifies its master and disposed itself.
- Version:
- 1.01 97/10/1
- Author:
- Danny B. Lange, Yariv Aridor
- See Also:
- Serialized Form
Field Summary |
protected java.lang.Object |
ARGUMENT
The protected variable that carries any arguments for the
checks that this notifier performs. |
static int |
EXCEPTION
|
static int |
EXPIRY
|
protected java.lang.Object |
MESSAGE
The protected variable that carries any messages that should go
along with the notification back to the subscriber. |
static int |
NOTIFICATION
|
Method Summary |
static AgletProxy |
create(java.net.URL url,
java.lang.String source,
AgletContext context,
Aglet master,
java.net.URL destination,
double interval,
double duration,
boolean stay,
java.lang.Object argument)
Creates a notifier. |
protected abstract boolean |
doCheck()
This method should be overridden to specify the check method for
this notifier. |
boolean |
handleMessage(Message msg)
Handles the message form outside. |
protected abstract void |
initializeCheck()
This method should be overridden to specify any intialization before
the checks performed by this notifier. |
void |
onCreation(java.lang.Object object)
Initializes the notifier. |
Methods inherited from class com.ibm.aglet.Aglet |
addCloneListener, addMobilityListener, addPersistencyListener, clone, deactivate, dispatch, dispatch, dispatchEvent, dispose, exitMonitor, getAgletContext, getAgletID, getAgletInfo, getAudioData, getCodeBase, getImage, getImage, getMessageManager, getProtections, getProxy, getText, notifyAllMessages, notifyMessage, onDisposing, processCloneEvent, processMobilityEvent, processPersistencyEvent, removeCloneListener, removeMobilityListener, removePersistencyListener, run, setProtections, setStub, setText, snapshot, subscribeMessage, suspend, unsubscribeAllMessages, unsubscribeMessage, waitMessage, waitMessage |
Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
NOTIFICATION
public static final int NOTIFICATION
EXPIRY
public static final int EXPIRY
EXCEPTION
public static final int EXCEPTION
MESSAGE
protected java.lang.Object MESSAGE
- The protected variable that carries any messages that should go
along with the notification back to the subscriber.
ARGUMENT
protected java.lang.Object ARGUMENT
- The protected variable that carries any arguments for the
checks that this notifier performs.
Notifier
public Notifier()
create
public static AgletProxy create(java.net.URL url,
java.lang.String source,
AgletContext context,
Aglet master,
java.net.URL destination,
double interval,
double duration,
boolean stay,
java.lang.Object argument)
throws java.io.IOException,
AgletException
- Creates a notifier.
- Parameters:
url
- the URL of the aglet class.source
- the name of the aglet class.context
- the aglet context in which the notifier should be created.master
- the master aglet.destination
- the URL of the destination.interval
- the time in hours between to checks.duration
- the life time of the notifier.stay
- whether the notifier should remain after a notification.argument
- the argument
object.- Returns:
- an aglet proxy for the notifier.
- Throws:
AgletException
- if the creation fails.
doCheck
protected abstract boolean doCheck()
throws java.lang.Exception
- This method should be overridden to specify the check method for
this notifier.
- Returns:
- boolean result of the check.
- Throws:
AgletException
- if fails to complete.
handleMessage
public boolean handleMessage(Message msg)
- Description copied from class:
Aglet
- Handles the message form outside.
- Overrides:
handleMessage
in class Aglet
- Following copied from class:
com.ibm.aglet.Aglet
- Parameters:
msg
- the message sent to the aglet- Returns:
- true if the message was handled. Returns false if the message
was not handled. If false is returned, the MessageNotHandled exception
is thrown in the FutureReply.getReply and AgletProxy.sendMessage
methods.
- See Also:
FutureReply.getReply()
,
Message.sendReply()
,
AgletProxy.sendMessage(com.ibm.aglet.Message)
initializeCheck
protected abstract void initializeCheck()
throws java.lang.Exception
- This method should be overridden to specify any intialization before
the checks performed by this notifier.
- Throws:
AgletException
- if fails to complete.
onCreation
public void onCreation(java.lang.Object object)
- Initializes the notifier. Called only the first time this
notifier is created. The initialization argument includes
the needed parameters for the checks as defined
in
create
.
- Overrides:
onCreation
in class Aglet
- Parameters:
obj
- the initialization argument.- Throws:
AgletException
- if the initialization fails.