Author: koen.aers(a)jboss.com
Date: 2008-08-05 10:13:53 -0400 (Tue, 05 Aug 2008)
New Revision: 9516
Added:
trunk/flow/plugins/org.jboss.tools.flow.common.graph/src/org/jboss/tools/flow/editor/strategy/
trunk/flow/plugins/org.jboss.tools.flow.common.graph/src/org/jboss/tools/flow/editor/strategy/AcceptsElementStrategy.java
Modified:
trunk/flow/plugins/org.jboss.tools.flow.common.graph/META-INF/MANIFEST.MF
trunk/flow/plugins/org.jboss.tools.flow.common.graph/src/org/jboss/tools/flow/editor/core/ContainerWrapper.java
trunk/flow/plugins/org.jboss.tools.flow.common.graph/src/org/jboss/tools/flow/editor/core/DefaultContainerWrapper.java
trunk/flow/plugins/org.jboss.tools.flow.common.graph/src/org/jboss/tools/flow/editor/core/DefaultFlowWrapper.java
Log:
add support for pluggable strategy for containers to accept elements
Modified: trunk/flow/plugins/org.jboss.tools.flow.common.graph/META-INF/MANIFEST.MF
===================================================================
--- trunk/flow/plugins/org.jboss.tools.flow.common.graph/META-INF/MANIFEST.MF 2008-08-05
12:51:37 UTC (rev 9515)
+++ trunk/flow/plugins/org.jboss.tools.flow.common.graph/META-INF/MANIFEST.MF 2008-08-05
14:13:53 UTC (rev 9516)
@@ -23,6 +23,7 @@
org.jboss.tools.flow.editor.core,
org.jboss.tools.flow.editor.editpart,
org.jboss.tools.flow.editor.figure,
- org.jboss.tools.flow.editor.policy
+ org.jboss.tools.flow.editor.policy,
+ org.jboss.tools.flow.editor.strategy
Bundle-ClassPath: .
Bundle-RequiredExecutionEnvironment: J2SE-1.5
Modified:
trunk/flow/plugins/org.jboss.tools.flow.common.graph/src/org/jboss/tools/flow/editor/core/ContainerWrapper.java
===================================================================
---
trunk/flow/plugins/org.jboss.tools.flow.common.graph/src/org/jboss/tools/flow/editor/core/ContainerWrapper.java 2008-08-05
12:51:37 UTC (rev 9515)
+++
trunk/flow/plugins/org.jboss.tools.flow.common.graph/src/org/jboss/tools/flow/editor/core/ContainerWrapper.java 2008-08-05
14:13:53 UTC (rev 9516)
@@ -31,5 +31,5 @@
AbstractFlowWrapper getFlowWrapper();
boolean acceptsElement(NodeWrapper element);
-
+
}
Modified:
trunk/flow/plugins/org.jboss.tools.flow.common.graph/src/org/jboss/tools/flow/editor/core/DefaultContainerWrapper.java
===================================================================
---
trunk/flow/plugins/org.jboss.tools.flow.common.graph/src/org/jboss/tools/flow/editor/core/DefaultContainerWrapper.java 2008-08-05
12:51:37 UTC (rev 9515)
+++
trunk/flow/plugins/org.jboss.tools.flow.common.graph/src/org/jboss/tools/flow/editor/core/DefaultContainerWrapper.java 2008-08-05
14:13:53 UTC (rev 9516)
@@ -61,4 +61,8 @@
return (Node)getElement();
}
+ public boolean acceptsElement(NodeWrapper element) {
+ return getParent().acceptsElement(element);
+ }
+
}
Modified:
trunk/flow/plugins/org.jboss.tools.flow.common.graph/src/org/jboss/tools/flow/editor/core/DefaultFlowWrapper.java
===================================================================
---
trunk/flow/plugins/org.jboss.tools.flow.common.graph/src/org/jboss/tools/flow/editor/core/DefaultFlowWrapper.java 2008-08-05
12:51:37 UTC (rev 9515)
+++
trunk/flow/plugins/org.jboss.tools.flow.common.graph/src/org/jboss/tools/flow/editor/core/DefaultFlowWrapper.java 2008-08-05
14:13:53 UTC (rev 9516)
@@ -4,8 +4,11 @@
import org.jboss.tools.flow.common.core.Node;
import org.jboss.tools.flow.editor.core.AbstractFlowWrapper;
import org.jboss.tools.flow.editor.core.NodeWrapper;
+import org.jboss.tools.flow.editor.strategy.AcceptsElementStrategy;
public class DefaultFlowWrapper extends AbstractFlowWrapper {
+
+ private AcceptsElementStrategy acceptsElementStrategy;
public Integer getRouterLayout() {
Integer routerLayout = (Integer)
((Flow)getElement()).getMetaData("routerLayout");
@@ -35,4 +38,18 @@
((Flow)getElement()).removeNode((Node)element.getElement());
}
+ public boolean acceptsElement(NodeWrapper wrapper) {
+ if (wrapper == null) {
+ return false;
+ } else if (acceptsElementStrategy != null) {
+ return acceptsElementStrategy.acceptsElement(wrapper.getElement());
+ } else {
+ return true;
+ }
+ }
+
+ public void setAcceptsElementStrategy(AcceptsElementStrategy strategy) {
+ this.acceptsElementStrategy = strategy;
+ }
+
}
Added:
trunk/flow/plugins/org.jboss.tools.flow.common.graph/src/org/jboss/tools/flow/editor/strategy/AcceptsElementStrategy.java
===================================================================
---
trunk/flow/plugins/org.jboss.tools.flow.common.graph/src/org/jboss/tools/flow/editor/strategy/AcceptsElementStrategy.java
(rev 0)
+++
trunk/flow/plugins/org.jboss.tools.flow.common.graph/src/org/jboss/tools/flow/editor/strategy/AcceptsElementStrategy.java 2008-08-05
14:13:53 UTC (rev 9516)
@@ -0,0 +1,11 @@
+package org.jboss.tools.flow.editor.strategy;
+
+import org.jboss.tools.flow.common.core.Container;
+
+public interface AcceptsElementStrategy {
+
+ void setContainer(Container container);
+
+ boolean acceptsElement(Object element);
+
+}
Show replies by date