|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectcom.path.android.jobqueue.nonPersistentQueue.NonPersistentPriorityQueue
public class NonPersistentPriorityQueue
| Field Summary | |
|---|---|
java.util.Comparator<JobHolder> |
jobComparator
|
| Constructor Summary | |
|---|---|
NonPersistentPriorityQueue(long sessionId,
java.lang.String id)
|
|
| 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. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public final java.util.Comparator<JobHolder> jobComparator
| Constructor Detail |
|---|
public NonPersistentPriorityQueue(long sessionId,
java.lang.String id)
| Method Detail |
|---|
public long insert(JobHolder jobHolder)
insert in interface JobQueuepublic long insertOrReplace(JobHolder jobHolder)
JobManager.NOT_RUNNING_SESSION_ID
Is called when a job is re-added (due to exception during run)
insertOrReplace in interface JobQueuepublic void remove(JobHolder jobHolder)
remove in interface JobQueuepublic int count()
count in interface JobQueue
public int countReadyJobs(boolean hasNetwork,
java.util.Collection<java.lang.String> excludeGroups)
JobQueue
countReadyJobs in interface JobQueue
public JobHolder nextJobAndIncRunCount(boolean hasNetwork,
java.util.Collection<java.lang.String> excludeGroups)
nextJobAndIncRunCount in interface JobQueuehasNetwork - 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
public java.lang.Long getNextJobDelayUntilNs(boolean hasNetwork)
getNextJobDelayUntilNs in interface JobQueuehasNetwork - if true, should return nanoseconds for any job, if false, should return nanoseconds for next
job's delay until.
public void clear()
clear in interface JobQueuepublic JobHolder findJobById(long id)
findJobById in interface JobQueueid - id of the job, returned by insert method
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||