Class CronTask<T>
- java.lang.Object
-
- com.oracle.coherence.concurrent.executor.tasks.CronTask<T>
-
- Type Parameters:
T- the type of theTask
- All Implemented Interfaces:
Task<T>,com.oracle.coherence.concurrent.executor.TaskExecutorService.Registration.Option,ExternalizableLite,PortableObject,Serializable
public class CronTask<T> extends Object implements Task<T>, PortableObject, com.oracle.coherence.concurrent.executor.TaskExecutorService.Registration.Option
ATaskthat can run repeatedly at scheduled time, like a crontab job.- Since:
- 21.12
- Author:
- lh, bo
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface com.oracle.coherence.concurrent.executor.Task
Task.Collectable<T,R>, Task.Collector<T,A,R>, Task.Completable<T,R>, Task.CompletionRunnable<T>, Task.Context<T>, Task.Coordinator<T>, Task.Option, Task.Orchestration<T>, Task.Properties, Task.SubscribedOrchestration<T>, Task.Subscriber<T>, Task.Subscription<T>, Task.Yield
-
-
Field Summary
Fields Modifier and Type Field Description protected booleanm_fCloneFlag indicating whether the task should be cloned after each execution;protected longm_ldtNextExecutionMillisThe next execution time.protected Task<T>m_origTaskThe originalTask.protected Stringm_sCronPatternThe crontab scheduling pattern for theTask.protected Task<T>m_taskThe actualTask.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static Objectclone(Object object)Creates a clone of the given object.booleanequals(Object o)Texecute(Task.Context<T> context)Executes theTask.StringgetCronPattern()Returns the crontab schedule pattern.longgetNextExecutionMillis(long cMillis)Returns the next execution time in milliseconds.Task<T>getTask()Obtains theCronTask.inthashCode()static <T> CronTask<T>of(Task<T> task, String sCronPattern)Obtains aCronTask.static <T> CronTask<T>of(Task<T> task, String sCronPattern, boolean fClone)Obtains aCronTask.voidreadExternal(PofReader in)Restore the contents of a user type instance by reading its state using the specified PofReader object.voidreadExternal(DataInput in)Restore the contents of this object by loading the object's state from the passed DataInput object.StringtoString()voidwriteExternal(PofWriter out)Save the contents of a POF user type instance by writing its state using the specified PofWriter object.voidwriteExternal(DataOutput out)Save the contents of this object by storing the object's state into the passed DataOutput object.
-
-
-
Method Detail
-
getCronPattern
public String getCronPattern()
Returns the crontab schedule pattern.- Returns:
- the crontab schedule pattern
-
getNextExecutionMillis
public long getNextExecutionMillis(long cMillis)
Returns the next execution time in milliseconds.- Parameters:
cMillis- The timestamp, as a UNIX-era millis value.- Returns:
- the next execution time in milliseconds
-
execute
public T execute(Task.Context<T> context) throws Exception
Description copied from interface:TaskExecutes theTask.- Specified by:
executein interfaceTask<T>- Parameters:
context- theTask.Context- Returns:
- the result of executing the
Task - Throws:
Task.Yield- which indicates theTaskexecution should yield execution until some later point in timeException
-
readExternal
public void readExternal(DataInput in) throws IOException
Description copied from interface:ExternalizableLiteRestore the contents of this object by loading the object's state from the passed DataInput object.- Specified by:
readExternalin interfaceExternalizableLite- Parameters:
in- the DataInput stream to read data from in order to restore the state of this object- Throws:
IOException- if an I/O exception occursNotActiveException- if the object is not in its initial state, and therefore cannot be deserialized into
-
writeExternal
public void writeExternal(DataOutput out) throws IOException
Description copied from interface:ExternalizableLiteSave the contents of this object by storing the object's state into the passed DataOutput object.- Specified by:
writeExternalin interfaceExternalizableLite- Parameters:
out- the DataOutput stream to write the state of this object to- Throws:
IOException- if an I/O exception occurs
-
readExternal
public void readExternal(PofReader in) throws IOException
Description copied from interface:PortableObjectRestore the contents of a user type instance by reading its state using the specified PofReader object.- Specified by:
readExternalin interfacePortableObject- Parameters:
in- the PofReader from which to read the object's state- Throws:
IOException- if an I/O error occurs
-
writeExternal
public void writeExternal(PofWriter out) throws IOException
Description copied from interface:PortableObjectSave the contents of a POF user type instance by writing its state using the specified PofWriter object.- Specified by:
writeExternalin interfacePortableObject- Parameters:
out- the PofWriter to which to write the object's state- Throws:
IOException- if an I/O error occurs
-
clone
public static Object clone(Object object)
Creates a clone of the given object.- Parameters:
object- the object to clone- Returns:
- the cloned object
-
-