44115fad0574fc78f0e33c151bd6d3e78c3a03a2
[openflowjava.git] / openflow-protocol-impl / src / main / java / org / opendaylight / openflowjava / protocol / impl / deserialization / DefaultExperimenterDeserializerInitializer.java
1 /*\r
2  * Copyright (c) 2013 Pantheon Technologies s.r.o. and others. All rights reserved.\r
3  *\r
4  * This program and the accompanying materials are made available under the\r
5  * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
6  * and is available at http://www.eclipse.org/legal/epl-v10.html\r
7  */\r
8 \r
9 package org.opendaylight.openflowjava.protocol.impl.deserialization;\r
10 \r
11 import org.opendaylight.openflowjava.protocol.api.extensibility.DeserializerRegistry;\r
12 import org.opendaylight.openflowjava.protocol.api.extensibility.MessageCodeKey;\r
13 import org.opendaylight.openflowjava.protocol.impl.deserialization.experimenters.ExperimenterActionDeserializer;\r
14 import org.opendaylight.openflowjava.protocol.impl.deserialization.experimenters.OF13ExperimenterInstructionDeserializer;\r
15 import org.opendaylight.openflowjava.protocol.api.util.EncodeConstants;\r
16 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.Action;\r
17 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.instructions.grouping.Instruction;\r
18 \r
19 /**\r
20  * @author michal.polkorab\r
21  *\r
22  */\r
23 public class DefaultExperimenterDeserializerInitializer {\r
24 \r
25     /**\r
26      * Registers default experimenter deserializers\r
27      * @param registry registry to be filled with deserializers\r
28      */\r
29     public static void registerDeserializers(DeserializerRegistry registry) {\r
30         // register OF v1.0 default experimenter deserializers\r
31         // - default action deserializer\r
32         registry.registerDeserializer(new MessageCodeKey(EncodeConstants.OF10_VERSION_ID,\r
33                 EncodeConstants.EXPERIMENTER_VALUE, Action.class), new ExperimenterActionDeserializer());\r
34         // register OF v1.3 default experimenter deserializers\r
35         // - default action deserializer\r
36         registry.registerDeserializer(new MessageCodeKey(EncodeConstants.OF13_VERSION_ID,\r
37                 EncodeConstants.EXPERIMENTER_VALUE, Action.class), new ExperimenterActionDeserializer());\r
38         // - default instruction deserializer\r
39         registry.registerDeserializer(new MessageCodeKey(EncodeConstants.OF13_VERSION_ID,\r
40                 EncodeConstants.EXPERIMENTER_VALUE, Instruction.class), new OF13ExperimenterInstructionDeserializer());\r
41     }\r
42 }\r