|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface JobQueue
Interface that any JobQueue should implement These job queues can be given to JobManager.
Method Summary | |
---|---|
void |
clear()
clear all jobs in the queue. |
int |
count()
Returns the # of jobs that are waiting to be run |
int |
countReadyJobs(boolean hasNetwork,
java.util.Collection<java.lang.String> excludeGroups)
counts the # of jobs that can run now. |
JobHolder |
findJobById(long id)
returns the job with the given id if it exists in the queue |
java.lang.Long |
getNextJobDelayUntilNs(boolean hasNetwork)
returns when the next job should run (in nanoseconds), should return null if there are no jobs to run. |
long |
insert(JobHolder jobHolder)
Inserts the given JobHolder, assigns it a unique id and returns the id back Is called when a job is added |
long |
insertOrReplace(JobHolder jobHolder)
Does the same thing with insert but the only difference is that if job has an ID, it should replace the existing one should also reset running session id to JobManager.NOT_RUNNING_SESSION_ID
Is called when a job is re-added (due to exception during run) |
JobHolder |
nextJobAndIncRunCount(boolean hasNetwork,
java.util.Collection<java.lang.String> excludeGroups)
Returns the next available job in the data set It should also assign the sessionId as the RunningSessionId and persist that data if necessary. |
void |
remove(JobHolder jobHolder)
Removes the job from the data store. |
Method Detail |
---|
long insert(JobHolder jobHolder)
jobHolder
-
long insertOrReplace(JobHolder jobHolder)
JobManager.NOT_RUNNING_SESSION_ID
Is called when a job is re-added (due to exception during run)
jobHolder
-
void remove(JobHolder jobHolder)
jobHolder
- int count()
int countReadyJobs(boolean hasNetwork, java.util.Collection<java.lang.String> excludeGroups)
JobHolder nextJobAndIncRunCount(boolean hasNetwork, java.util.Collection<java.lang.String> excludeGroups)
hasNetwork
- if true, should return any job, if false, should return jobs that do NOT require networkexcludeGroups
- if provided, jobs from these groups will NOT be returned
java.lang.Long getNextJobDelayUntilNs(boolean hasNetwork)
hasNetwork
- if true, should return nanoseconds for any job, if false, should return nanoseconds for next
job's delay until.
void clear()
JobHolder findJobById(long id)
id
- id of the job, returned by insert method
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |