From f4f1bdf44c2b42b2ff67b4d6922d07b10adcb888 Mon Sep 17 00:00:00 2001
From: floblanc <floblanc@localhost>
Date: Wed, 04 Mar 2009 16:03:05 +0000
Subject: [PATCH] Fix 3846 WorkflowElement class should provide routines to retrieve child workflow elements
---
opends/src/server/org/opends/server/workflowelement/WorkflowElement.java | 31 ++++++++++++++++++++++++++++++-
1 files changed, 30 insertions(+), 1 deletions(-)
diff --git a/opends/src/server/org/opends/server/workflowelement/WorkflowElement.java b/opends/src/server/org/opends/server/workflowelement/WorkflowElement.java
index 70d9a3b..32f5fd7 100644
--- a/opends/src/server/org/opends/server/workflowelement/WorkflowElement.java
+++ b/opends/src/server/org/opends/server/workflowelement/WorkflowElement.java
@@ -22,7 +22,7 @@
* CDDL HEADER END
*
*
- * Copyright 2008 Sun Microsystems, Inc.
+ * Copyright 2008-2009 Sun Microsystems, Inc.
*/
package org.opends.server.workflowelement;
@@ -431,4 +431,33 @@
{
observableStatus.deleteObserver(observer);
}
+
+ /**
+ * Retrieves the list of child workflow elements, ie the
+ * WorkflowElements below this one in the topology tree.
+ *
+ * @return child workflow elements
+ */
+ public abstract List<WorkflowElement<?>> getChildWorkflowElements();
+
+ /**
+ * Checks whether the tree of workflow elements below this one
+ * contains the provided workflow element.
+ *
+ * @param element The WorkflowElement we are looking for in the topology
+ * below this object.
+ * @return boolean
+ */
+ public boolean hasChildWorkflowElement(WorkflowElement element) {
+ if (this.getChildWorkflowElements().size() == 0) {
+ return (this.equals(element));
+ }
+
+ for (WorkflowElement subElement:this.getChildWorkflowElements()) {
+ if (subElement.hasChildWorkflowElement(element)) {
+ return true;
+ }
+ }
+ return false;
+ }
}
--
Gitblit v1.10.0