Package com.tangosol.coherence.commonj
Class WorkManager.ScheduleWork
- java.lang.Object
-
- com.tangosol.util.Base
-
- com.tangosol.net.AbstractInvocable
-
- com.tangosol.coherence.commonj.WorkManager.AbstractWork
-
- com.tangosol.coherence.commonj.WorkManager.ScheduleWork
-
- All Implemented Interfaces:
ExternalizableLite
,PortableObject
,Invocable
,InvocableInOrder
,PriorityTask
,Serializable
,Runnable
- Enclosing class:
- WorkManager
protected static class WorkManager.ScheduleWork extends WorkManager.AbstractWork
Invocable task that posts a wrapped Work object to a WorkManager queue.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.tangosol.util.Base
Base.LoggingWriter
-
-
Field Summary
-
Fields inherited from class com.tangosol.coherence.commonj.WorkManager.AbstractWork
m_lWorkId, m_nMemberId
-
Fields inherited from class com.tangosol.util.Base
LOG_ALWAYS, LOG_CONFIG, LOG_DEBUG, LOG_ERR, LOG_INFO, LOG_MAX, LOG_MIN, LOG_QUIET, LOG_WARN, POWER_0, POWER_G, POWER_K, POWER_M, POWER_T, UNIT_D, UNIT_H, UNIT_M, UNIT_MS, UNIT_NS, UNIT_S, UNIT_US
-
Fields inherited from interface com.tangosol.net.PriorityTask
SCHEDULE_FIRST, SCHEDULE_IMMEDIATE, SCHEDULE_STANDARD, TIMEOUT_DEFAULT, TIMEOUT_NONE
-
-
Constructor Summary
Constructors Constructor Description ScheduleWork()
Default constructor (necessary for a lite serialization).ScheduleWork(commonj.work.Work work, long lWorkId, int nMemberId, boolean fFeedback)
Construct the ScheduleWork for a given Work.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Throwable
getException()
Return a deserialization exception (if any).long
getExecutionTimeoutMillis()
Obtain the maximum amount of time this task is allowed to run before the corresponding service will attempt to stop it.int
getSchedulingPriority()
Obtain this task's scheduling priority.int
getStatus()
Return a status of the underlying Work.commonj.work.Work
getWork()
Return a Work object.void
init(InvocationService service)
Called by the InvocationService exactly once on this Invocable object as part of its initialization.boolean
isFeedbackRequested()
Return a feedback flag.void
readExternal(PofReader in)
Restore the contents of a user type instance by reading its state using the specified PofReader object.void
readExternal(DataInput in)
Restore the contents of this object by loading the object's state from the passed DataInput object.void
run()
Called exactly once by the InvocationService to invoke this Invocable object.void
setStatus(int nStatus)
Change a status of the underlying Work.String
toString()
Return a human-readable task description.void
writeExternal(PofWriter out)
Save the contents of a POF user type instance by writing its state using the specified PofWriter object.void
writeExternal(DataOutput out)
Save the contents of this object by storing the object's state into the passed DataOutput object.-
Methods inherited from class com.tangosol.coherence.commonj.WorkManager.AbstractWork
getMember, getMemberId, getWorkId
-
Methods inherited from class com.tangosol.net.AbstractInvocable
getRequestTimeoutMillis, getResult, getService, isRespondInOrder, runCanceled, setResult
-
Methods inherited from class com.tangosol.util.Base
azzert, azzert, azzert, azzertFailed, breakLines, breakLines, capitalize, checkNotEmpty, checkNotNull, checkRange, computeSafeWaitTime, decimalValue, dup, dup, ensureBigDecimal, ensureClassLoader, ensureRuntimeException, ensureRuntimeException, equals, equalsDeep, err, err, err, err, err, escape, formatDateTime, getCallerStackFrame, getCommonMonitor, getCommonMonitor, getCommonMonitor, getContextClassLoader, getContextClassLoader, getDeepMessage, getErr, getLastSafeTimeMillis, getLog, getMaxDecDigits, getMaxHexDigits, getOriginalException, getOut, getProcessRandom, getRandom, getRandomBinary, getRandomBinary, getRandomString, getSafeTimeMillis, getStackFrame, getStackFrames, getStackTrace, getStackTrace, getStackTrace, getThreadFactory, getTimeZone, getUpTimeMillis, hashCode, hexValue, indentString, indentString, isDecimal, isHex, isLogEcho, isOctal, log, log, log, log, log, makeInteger, makeLong, makeThread, mergeArray, mergeBooleanArray, mergeByteArray, mergeCharArray, mergeDoubleArray, mergeFloatArray, mergeIntArray, mergeLongArray, mod, mod, octalValue, out, out, out, out, out, pad, parseBandwidth, parseBandwidth, parseDelimitedString, parseHex, parseHex, parseMemorySize, parseMemorySize, parsePercentage, parseTime, parseTime, parseTimeNanos, parseTimeNanos, printStackTrace, randomize, randomize, randomize, randomize, read, read, read, read, read, read, read, replace, setErr, setLog, setLogEcho, setOut, sleep, toBandwidthString, toBandwidthString, toCharEscape, toCrc, toCrc, toCrc, toCrc, toCrc, toDecString, toDelimitedString, toDelimitedString, toDelimitedString, toDelimitedString, toHex, toHex, toHexDump, toHexEscape, toHexEscape, toHexEscape, toHexEscape, toHexString, toMemorySizeString, toMemorySizeString, toQuotedCharEscape, toQuotedStringEscape, toSqlString, toString, toString, toStringEscape, toUnicodeEscape, trace, trace, trace, trace, trace, trace, trace, trace, trace, truncateString, truncateString, wait
-
-
-
-
Constructor Detail
-
ScheduleWork
public ScheduleWork()
Default constructor (necessary for a lite serialization).
-
ScheduleWork
public ScheduleWork(commonj.work.Work work, long lWorkId, int nMemberId, boolean fFeedback) throws commonj.work.WorkException
Construct the ScheduleWork for a given Work.- Parameters:
work
- the Work to executelWorkId
- the Work idnMemberId
- the Member idfFeedback
- true if a feedback is requested (listener)- Throws:
commonj.work.WorkException
- thrown if serialization results in an exception
-
-
Method Detail
-
init
public void init(InvocationService service)
Called by the InvocationService exactly once on this Invocable object as part of its initialization.- Specified by:
init
in interfaceInvocable
- Overrides:
init
in classAbstractInvocable
- Parameters:
service
- the containing InvocationService
-
run
public void run()
Called exactly once by the InvocationService to invoke this Invocable object.
-
getSchedulingPriority
public int getSchedulingPriority()
Obtain this task's scheduling priority. Valid values are one of the SCHEDULE_* constants.This implementation returns
SCHEDULE_STANDARD
.- Specified by:
getSchedulingPriority
in interfacePriorityTask
- Overrides:
getSchedulingPriority
in classWorkManager.AbstractWork
- Returns:
- this task's scheduling priority
-
getExecutionTimeoutMillis
public long getExecutionTimeoutMillis()
Obtain the maximum amount of time this task is allowed to run before the corresponding service will attempt to stop it.The value of
TIMEOUT_DEFAULT
indicates a default timeout value configured for the corresponding service; the value ofTIMEOUT_NONE
indicates that this task can execute indefinitely.If, by the time the specified amount of time passed, the task has not finished, the service will attempt to stop the execution by using the
Thread.interrupt()
method. In the case that interrupting the thread does not result in the task's termination, thePriorityTask.runCanceled(boolean)
method will be called.This implementation returns
TIMEOUT_DEFAULT
.- Specified by:
getExecutionTimeoutMillis
in interfacePriorityTask
- Overrides:
getExecutionTimeoutMillis
in classAbstractInvocable
- Returns:
- the execution timeout value in milliseconds or one of the special TIMEOUT_* values
-
getWork
public commonj.work.Work getWork()
Return a Work object.- Returns:
- a Work object
-
getException
public Throwable getException()
Return a deserialization exception (if any).- Returns:
- an exception thrown during the Work deserialization
-
isFeedbackRequested
public boolean isFeedbackRequested()
Return a feedback flag.- Returns:
- a feedback flag
-
getStatus
public int getStatus()
Return a status of the underlying Work.- Returns:
- a status of the underlying Work
-
setStatus
public void setStatus(int nStatus)
Change a status of the underlying Work.- Parameters:
nStatus
- a new status of the underlying Work
-
readExternal
public void readExternal(DataInput in) throws IOException
Restore the contents of this object by loading the object's state from the passed DataInput object.- Specified by:
readExternal
in interfaceExternalizableLite
- Overrides:
readExternal
in classWorkManager.AbstractWork
- 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
Save the contents of this object by storing the object's state into the passed DataOutput object.- Specified by:
writeExternal
in interfaceExternalizableLite
- Overrides:
writeExternal
in classWorkManager.AbstractWork
- 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
Restore the contents of a user type instance by reading its state using the specified PofReader object.- Specified by:
readExternal
in interfacePortableObject
- Overrides:
readExternal
in classWorkManager.AbstractWork
- 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
Save the contents of a POF user type instance by writing its state using the specified PofWriter object.- Specified by:
writeExternal
in interfacePortableObject
- Overrides:
writeExternal
in classWorkManager.AbstractWork
- Parameters:
out
- the PofWriter to which to write the object's state- Throws:
IOException
- if an I/O error occurs
-
-