public class Trigger
extends java.lang.Object
implements java.lang.Runnable
TriggerClient
).
Before it actually calls the client's triggerdBy() method it
checks the client's canBeTriggered() method that allows it
or not.
After the client's triggerdBy() method was called the trigger
waits again until the end of its waiting period.Modifier | Constructor and Description |
---|---|
protected |
Trigger(java.lang.String name,
TriggerClient client,
long intervalInMs)
Initialize the new instance with default values.
|
Modifier and Type | Method and Description |
---|---|
protected boolean |
canBeTriggered() |
protected TriggerClient |
getClient() |
protected long |
getInterval() |
java.lang.String |
getName()
Returns the name of the trigger
|
protected boolean |
getSuspended() |
protected boolean |
getTerminated() |
protected boolean |
isSuspended() |
protected boolean |
isTerminated() |
static Trigger |
launch(java.lang.String name,
TriggerClient client,
long intervalInMs)
Launch a new trigger with the given name for the given client, that
calls the triggeredBy method of the client every intervalInMs
milliseconds.
The ne trigger will be created and immediately started in a separate thread. |
void |
run()
Implementation of Runnable.
|
protected void |
setClient(TriggerClient newValue) |
protected void |
setInterval(long newValue) |
protected void |
setName(java.lang.String newValue) |
protected void |
setSuspended(boolean newValue) |
protected void |
setTerminated(boolean newValue) |
void |
terminate()
Terminates the trigger.
|
protected void |
trigger() |
protected Trigger(java.lang.String name, TriggerClient client, long intervalInMs)
public static Trigger launch(java.lang.String name, TriggerClient client, long intervalInMs)
name
- The name of the trigger (must not be null)client
- The client that gets triggered (must not be null)intervalInMs
- The interval after that the client regularily gets triggered (must be greater than 0)java.lang.IllegalArgumentException
- if any of the given arguments is nullTriggerClient
public java.lang.String getName()
public void terminate()
public void run()
Must not be called directly!
run
in interface java.lang.Runnable
protected boolean canBeTriggered()
protected void trigger()
protected boolean isTerminated()
protected boolean isSuspended()
protected void setName(java.lang.String newValue)
protected TriggerClient getClient()
protected void setClient(TriggerClient newValue)
protected long getInterval()
protected void setInterval(long newValue)
protected boolean getSuspended()
protected void setSuspended(boolean newValue)
protected boolean getTerminated()
protected void setTerminated(boolean newValue)