Extensibility support - added possibility to unregister registered (de)serializers
[openflowjava.git] / openflow-protocol-spi / src / main / java / org / opendaylight / openflowjava / protocol / spi / connection / SwitchConnectionProvider.java
index c31cb44375ea115d9130f3772c5180cafcd539ac..8bae5c06779c406b5806f4d43fc96db6348dbd07 100644 (file)
@@ -63,4 +63,21 @@ public interface SwitchConnectionProvider extends AutoCloseable {
      */
     public void registerDeserializer(MessageCodeKey key, OFGeneralDeserializer deserializer);
 
+    /**
+     * Unregisters custom serializer
+     * @param key used for serializer lookup
+     * @param serializer serializer implementation
+     * @return true if serializer was removed,
+     *  false if no serializer was found under specified key
+     */
+    public  <KEY_TYPE> boolean unregisterSerializer(MessageTypeKey<KEY_TYPE> key);
+
+    /**
+     * Unregisters custom deserializer
+     * @param key used for deserializer lookup
+     * @param deserializer deserializer instance
+     * @return true if deserializer was removed,
+     *  false if no deserializer was found under specified key
+     */
+    public boolean unregisterDeserializer(MessageCodeKey key);
 }