Merge "Use ClassToInstanceMap instead of a HashMap"
[openflowplugin.git] / openflowplugin-impl / src / main / java / org / opendaylight / openflowplugin / impl / protocol / deserialization / DeserializerInjector.java
index cf40f1914ce121414fc33889aab548fef11bd009..c60a929b81144d95dfbe803da11ce5a9f9000a2e 100644 (file)
@@ -11,15 +11,35 @@ package org.opendaylight.openflowplugin.impl.protocol.deserialization;
 import org.opendaylight.openflowjava.protocol.api.extensibility.DeserializerExtensionProvider;
 
 /**
- * Util class for injecting new deserializers into OpenflowJava
+ * Util class for injecting new deserializers into OpenflowJava.
  */
-public class DeserializerInjector {
+public final class DeserializerInjector {
+
+    private DeserializerInjector() {
+    }
 
     /**
-     * Injects deserializers into provided {@link org.opendaylight.openflowjava.protocol.api.extensibility.DeserializerExtensionProvider}
+     * Injects deserializers into provided.
+     * {@link org.opendaylight.openflowjava.protocol.api.extensibility.DeserializerExtensionProvider}
+     *
      * @param provider OpenflowJava deserializer extension provider
      */
     public static void injectDeserializers(final DeserializerExtensionProvider provider) {
         // Inject new deserializers here
+        MatchDeserializerInjector.injectDeserializers(provider);
+        ActionDeserializerInjector.injectDeserializers(provider);
+        InstructionDeserializerInjector.injectDeserializers(provider);
+        MultipartDeserializerInjector.injectDeserializers(provider);
+        MessageDeserializerInjector.injectDeserializers(provider);
+    }
+
+    /**
+     * Reverts original deserializers in provided.
+     * {@link org.opendaylight.openflowjava.protocol.api.extensibility.DeserializerExtensionProvider}
+     *
+     * @param provider OpenflowJava deserializer extension provider
+     */
+    public static void revertDeserializers(final DeserializerExtensionProvider provider) {
+        MessageDeserializerInjector.revertDeserializers(provider);
     }
 }