Author: koen.aers(a)jboss.com
Date: 2008-07-28 11:00:29 -0400 (Mon, 28 Jul 2008)
New Revision: 9359
Added:
trunk/flow/plugins/org.jboss.tools.flow.common.core/src/main/java/org/jboss/tools/flow/common/core/AbstractConnection.java
trunk/flow/plugins/org.jboss.tools.flow.common.core/src/main/java/org/jboss/tools/flow/common/core/AbstractFlow.java
trunk/flow/plugins/org.jboss.tools.flow.common.core/src/main/java/org/jboss/tools/flow/common/core/AbstractNode.java
trunk/flow/plugins/org.jboss.tools.flow.common.core/src/main/java/org/jboss/tools/flow/common/core/AbstractNodeContainer.java
Modified:
trunk/flow/plugins/org.jboss.tools.flow.common.core/META-INF/MANIFEST.MF
trunk/flow/plugins/org.jboss.tools.flow.common.core/src/main/java/org/jboss/tools/flow/common/core/NodeContainer.java
Log:
abstract base implementation of the interfaces
Modified: trunk/flow/plugins/org.jboss.tools.flow.common.core/META-INF/MANIFEST.MF
===================================================================
--- trunk/flow/plugins/org.jboss.tools.flow.common.core/META-INF/MANIFEST.MF 2008-07-28
14:30:34 UTC (rev 9358)
+++ trunk/flow/plugins/org.jboss.tools.flow.common.core/META-INF/MANIFEST.MF 2008-07-28
15:00:29 UTC (rev 9359)
@@ -5,3 +5,4 @@
Bundle-Version: 1.0.0
Bundle-Vendor: JBoss, a Division of Red Hat
Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Export-Package: org.jboss.tools.flow.common.core
Added:
trunk/flow/plugins/org.jboss.tools.flow.common.core/src/main/java/org/jboss/tools/flow/common/core/AbstractConnection.java
===================================================================
---
trunk/flow/plugins/org.jboss.tools.flow.common.core/src/main/java/org/jboss/tools/flow/common/core/AbstractConnection.java
(rev 0)
+++
trunk/flow/plugins/org.jboss.tools.flow.common.core/src/main/java/org/jboss/tools/flow/common/core/AbstractConnection.java 2008-07-28
15:00:29 UTC (rev 9359)
@@ -0,0 +1,31 @@
+package org.jboss.tools.flow.common.core;
+
+import java.util.HashMap;
+
+public abstract class AbstractConnection implements Connection {
+
+ private HashMap<String, Object> metaData = new HashMap<String, Object>();
+ private Node from, to;
+
+ public AbstractConnection(Node from, Node to) {
+ this.from = from;
+ this.to = to;
+ }
+
+ public Object getMetaData(String key) {
+ return metaData.get(key);
+ }
+
+ public void setMetaData(String key, Object value) {
+ metaData.put(key, value);
+ }
+
+ public Node getFrom() {
+ return from;
+ }
+
+ public Node getTo() {
+ return to;
+ }
+
+}
Added:
trunk/flow/plugins/org.jboss.tools.flow.common.core/src/main/java/org/jboss/tools/flow/common/core/AbstractFlow.java
===================================================================
---
trunk/flow/plugins/org.jboss.tools.flow.common.core/src/main/java/org/jboss/tools/flow/common/core/AbstractFlow.java
(rev 0)
+++
trunk/flow/plugins/org.jboss.tools.flow.common.core/src/main/java/org/jboss/tools/flow/common/core/AbstractFlow.java 2008-07-28
15:00:29 UTC (rev 9359)
@@ -0,0 +1,88 @@
+package org.jboss.tools.flow.common.core;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+
+public class AbstractFlow implements Flow {
+
+ private String name;
+ private HashMap<String, Object> metaData = new HashMap<String, Object>();
+ private ArrayList<Node> nodes = new ArrayList<Node>();
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public Object getMetaData(String key) {
+ return metaData.get(key);
+ }
+
+ public void setMetaData(String key, Object value) {
+ metaData.put(key, value);
+ }
+
+ public List<Node> getNodes() {
+ return nodes;
+ }
+
+ public void addNode(Node node) {
+ nodes.add(node);
+ node.setNodeContainer(this);
+ }
+
+ public void removeNode(Node node) {
+ node.setNodeContainer(null);
+ nodes.remove(node);
+ }
+
+ public String getId() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public String getPackageName() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public String getType() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public String getVersion() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public void setId(String id) {
+ // TODO Auto-generated method stub
+
+ }
+
+ public void setPackageName(String packageName) {
+ // TODO Auto-generated method stub
+
+ }
+
+ public void setType(String type) {
+ // TODO Auto-generated method stub
+
+ }
+
+ public void setVersion(String version) {
+ // TODO Auto-generated method stub
+
+ }
+
+ public Node getNode(long id) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+}
Added:
trunk/flow/plugins/org.jboss.tools.flow.common.core/src/main/java/org/jboss/tools/flow/common/core/AbstractNode.java
===================================================================
---
trunk/flow/plugins/org.jboss.tools.flow.common.core/src/main/java/org/jboss/tools/flow/common/core/AbstractNode.java
(rev 0)
+++
trunk/flow/plugins/org.jboss.tools.flow.common.core/src/main/java/org/jboss/tools/flow/common/core/AbstractNode.java 2008-07-28
15:00:29 UTC (rev 9359)
@@ -0,0 +1,45 @@
+package org.jboss.tools.flow.common.core;
+
+import java.util.HashMap;
+
+public class AbstractNode {
+
+ private long id;
+ private String name;
+ private AbstractFlow container;
+
+ private HashMap<String, Object> metaData = new HashMap<String, Object>();
+
+ public long getId() {
+ return id;
+ }
+
+ public void setId(long l) {
+ id = l;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public void setMetaData(String key, Object value) {
+ metaData.put(key, value);
+ }
+
+ public Object getMetaData(String key) {
+ return metaData.get(key);
+ }
+
+ public Object getNodeContainer() {
+ return container;
+ }
+
+ public void setNodeContainer(AbstractFlow container) {
+ this.container = container;
+ }
+
+}
Added:
trunk/flow/plugins/org.jboss.tools.flow.common.core/src/main/java/org/jboss/tools/flow/common/core/AbstractNodeContainer.java
===================================================================
---
trunk/flow/plugins/org.jboss.tools.flow.common.core/src/main/java/org/jboss/tools/flow/common/core/AbstractNodeContainer.java
(rev 0)
+++
trunk/flow/plugins/org.jboss.tools.flow.common.core/src/main/java/org/jboss/tools/flow/common/core/AbstractNodeContainer.java 2008-07-28
15:00:29 UTC (rev 9359)
@@ -0,0 +1,52 @@
+package org.jboss.tools.flow.common.core;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+
+public abstract class AbstractNodeContainer implements NodeContainer {
+
+ private String name;
+ private HashMap<String, Object> metaData = new HashMap<String, Object>();
+ private ArrayList<Node> nodes = new ArrayList<Node>();
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public Object getMetaData(String key) {
+ return metaData.get(key);
+ }
+
+ public void setMetaData(String key, Object value) {
+ metaData.put(key, value);
+ }
+
+ public List<Node> getNodes() {
+ return nodes;
+ }
+
+ public void addNode(Node node) {
+ nodes.add(node);
+ node.setNodeContainer(this);
+ }
+
+ public void removeNode(Node node) {
+ node.setNodeContainer(null);
+ nodes.remove(node);
+ }
+
+ public Node getNode(long id) {
+ for (Node node : nodes) {
+ if (node.getId() == id) {
+ return node;
+ }
+ }
+ return null;
+ }
+
+}
Modified:
trunk/flow/plugins/org.jboss.tools.flow.common.core/src/main/java/org/jboss/tools/flow/common/core/NodeContainer.java
===================================================================
---
trunk/flow/plugins/org.jboss.tools.flow.common.core/src/main/java/org/jboss/tools/flow/common/core/NodeContainer.java 2008-07-28
14:30:34 UTC (rev 9358)
+++
trunk/flow/plugins/org.jboss.tools.flow.common.core/src/main/java/org/jboss/tools/flow/common/core/NodeContainer.java 2008-07-28
15:00:29 UTC (rev 9359)
@@ -1,5 +1,7 @@
package org.jboss.tools.flow.common.core;
+import java.util.List;
+
/**
* A container of nodes.
*
@@ -12,7 +14,7 @@
*
* @return the nodes of this node container
*/
- Node[] getNodes();
+ List<Node> getNodes();
/**
* Returns the node with the given id
Show replies by date