summaryrefslogtreecommitdiff
path: root/src/main/java/net/transit/network/system/swap
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/net/transit/network/system/swap')
-rw-r--r--src/main/java/net/transit/network/system/swap/AcceptorNode.java31
-rw-r--r--src/main/java/net/transit/network/system/swap/ProviderNode.java20
2 files changed, 51 insertions, 0 deletions
diff --git a/src/main/java/net/transit/network/system/swap/AcceptorNode.java b/src/main/java/net/transit/network/system/swap/AcceptorNode.java
new file mode 100644
index 0000000..c583146
--- /dev/null
+++ b/src/main/java/net/transit/network/system/swap/AcceptorNode.java
@@ -0,0 +1,31 @@
+package net.transit.network.system.swap;
+
+import net.transit.network.packet.Packet;
+import net.transit.network.system.Node;
+
+public interface AcceptorNode extends Node
+{
+
+ /** Link another node as a provider
+ *
+ * @param requester The object to be a provider
+ * @param group
+ * @return Provider
+ */
+ public boolean linkProvider(Node requestor, String group);
+
+
+ /**
+ * @return Node[]
+ */
+ public Node[] getProviders();
+
+
+ /** Accept a packet from a provider
+ *
+ * @param packet
+ * @param group
+ * @return
+ */
+ public boolean accept(Packet<?> packet, String group);
+}
diff --git a/src/main/java/net/transit/network/system/swap/ProviderNode.java b/src/main/java/net/transit/network/system/swap/ProviderNode.java
new file mode 100644
index 0000000..4cd9dba
--- /dev/null
+++ b/src/main/java/net/transit/network/system/swap/ProviderNode.java
@@ -0,0 +1,20 @@
+package net.transit.network.system.swap;
+
+import net.transit.network.system.Node;
+
+public interface ProviderNode extends Node{
+
+ /** Link another node as an acceptor
+ *
+ * @param requester The object requesting the Acceptor
+ * @param group
+ * @return boolean
+ */
+ public boolean linkAcceptor(Node requester, String group);
+
+ /**
+ * @return Node[]
+ */
+ public Node[] getAcceptors();
+
+}