| | |
| | | */ |
| | | void setTaskState(TaskState taskState) |
| | | { |
| | | Lock lock = taskScheduler.writeLockEntry(taskEntryDN); |
| | | // We only need to grab the entry-level lock if we don't already hold the |
| | | // broader scheduler lock. |
| | | boolean needLock = (! taskScheduler.holdsSchedulerLock()); |
| | | Lock lock = null; |
| | | if (needLock) |
| | | { |
| | | lock = taskScheduler.writeLockEntry(taskEntryDN); |
| | | } |
| | | |
| | | try |
| | | { |
| | |
| | | } |
| | | finally |
| | | { |
| | | taskScheduler.unlockEntry(taskEntryDN, lock); |
| | | if (needLock) |
| | | { |
| | | taskScheduler.unlockEntry(taskEntryDN, lock); |
| | | } |
| | | } |
| | | } |
| | | |
| | |
| | | */ |
| | | private void setActualStartTime(long actualStartTime) |
| | | { |
| | | Lock lock = taskScheduler.writeLockEntry(taskEntryDN); |
| | | // We only need to grab the entry-level lock if we don't already hold the |
| | | // broader scheduler lock. |
| | | boolean needLock = (! taskScheduler.holdsSchedulerLock()); |
| | | Lock lock = null; |
| | | if (needLock) |
| | | { |
| | | lock = taskScheduler.writeLockEntry(taskEntryDN); |
| | | } |
| | | |
| | | try |
| | | { |
| | |
| | | } |
| | | finally |
| | | { |
| | | taskScheduler.unlockEntry(taskEntryDN, lock); |
| | | if (needLock) |
| | | { |
| | | taskScheduler.unlockEntry(taskEntryDN, lock); |
| | | } |
| | | } |
| | | } |
| | | |
| | |
| | | */ |
| | | private void setCompletionTime(long completionTime) |
| | | { |
| | | Lock lock = taskScheduler.writeLockEntry(taskEntryDN); |
| | | // We only need to grab the entry-level lock if we don't already hold the |
| | | // broader scheduler lock. |
| | | boolean needLock = (! taskScheduler.holdsSchedulerLock()); |
| | | Lock lock = null; |
| | | if (needLock) |
| | | { |
| | | lock = taskScheduler.writeLockEntry(taskEntryDN); |
| | | } |
| | | |
| | | try |
| | | { |
| | |
| | | } |
| | | finally |
| | | { |
| | | taskScheduler.unlockEntry(taskEntryDN, lock); |
| | | if (needLock) |
| | | { |
| | | taskScheduler.unlockEntry(taskEntryDN, lock); |
| | | } |
| | | } |
| | | } |
| | | |
| | |
| | | public void addLogMessage(ErrorLogSeverity severity, int messageID, |
| | | String messageString) |
| | | { |
| | | Lock lock = taskScheduler.writeLockEntry(taskEntryDN); |
| | | // We only need to grab the entry-level lock if we don't already hold the |
| | | // broader scheduler lock. |
| | | boolean needLock = (! taskScheduler.holdsSchedulerLock()); |
| | | Lock lock = null; |
| | | if (needLock) |
| | | { |
| | | lock = taskScheduler.writeLockEntry(taskEntryDN); |
| | | } |
| | | |
| | | try |
| | | { |
| | |
| | | } |
| | | finally |
| | | { |
| | | taskScheduler.unlockEntry(taskEntryDN, lock); |
| | | if (needLock) |
| | | { |
| | | taskScheduler.unlockEntry(taskEntryDN, lock); |
| | | } |
| | | } |
| | | } |
| | | |