Ensure all *DataProcess classes have been changed from abstract classes to interfaces...
[packetcable.git] / packetcable-driver / src / main / java / org / umu / cops / COPSDataProcess.java
diff --git a/packetcable-driver/src/main/java/org/umu/cops/COPSDataProcess.java b/packetcable-driver/src/main/java/org/umu/cops/COPSDataProcess.java
new file mode 100644 (file)
index 0000000..3d950b6
--- /dev/null
@@ -0,0 +1,29 @@
+package org.umu.cops;
+
+import org.umu.cops.stack.COPSError;
+
+/**
+ * Defines the standard methods for implementors for processing COPS data.
+ */
+public interface COPSDataProcess {
+
+    /**
+     * Notifies a keep-alive timeout
+     * @param man   The associated request state manager
+     */
+    void notifyNoKAliveReceived(COPSStateMan man);
+
+    /**
+     * Notifies that the connection has been closed
+     * @param man  The associated request state manager
+     * @param error Reason
+     */
+    void notifyClosedConnection(COPSStateMan man, COPSError error);
+
+    /**
+     * Notifies that a request state has been closed
+     * @param man   The associated request state manager
+     */
+    void closeRequestState(COPSStateMan man);
+
+}