From 38bdf817e5e1f5583b397f0392238609c2ad02d1 Mon Sep 17 00:00:00 2001
From: abobrov <abobrov@localhost>
Date: Fri, 17 Apr 2009 13:38:40 +0000
Subject: [PATCH] - reject tasks with missing dependencies.
---
opendj-sdk/opends/src/server/org/opends/server/backends/task/TaskScheduler.java | 11 +++++++++++
1 files changed, 11 insertions(+), 0 deletions(-)
diff --git a/opendj-sdk/opends/src/server/org/opends/server/backends/task/TaskScheduler.java b/opendj-sdk/opends/src/server/org/opends/server/backends/task/TaskScheduler.java
index ab81c1a..58267e5 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/backends/task/TaskScheduler.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/backends/task/TaskScheduler.java
@@ -349,6 +349,17 @@
throw new DirectoryException(ResultCode.ENTRY_ALREADY_EXISTS, message);
}
+ for (String dependencyID : task.getDependencyIDs())
+ {
+ Task t = tasks.get(dependencyID);
+ if (t == null)
+ {
+ Message message = ERR_TASKSCHED_DEPENDENCY_MISSING.get(
+ String.valueOf(id), dependencyID);
+ throw new DirectoryException(ResultCode.NO_SUCH_OBJECT, message);
+ }
+ }
+
tasks.put(id, task);
TaskState state = shouldStart(task);
--
Gitblit v1.10.0