2 * Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
9 package org.opendaylight.openflowplugin.openflow.md.core.sal.convertor;
11 import org.opendaylight.openflowplugin.api.OFConstants;
12 import org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.action.ActionConvertor;
13 import org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.action.ActionResponseConvertor;
14 import org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.flow.FlowConvertor;
15 import org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.flow.FlowInstructionResponseConvertor;
16 import org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.flow.FlowStatsResponseConvertor;
17 import org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.match.MatchResponseConvertor;
18 import org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.match.MatchV10ResponseConvertor;
21 * Convertor manager factory.
23 public class ConvertorManagerFactory {
25 * Create default convertor manager.
27 * @return the convertor manager
29 public static ConvertorManager createDefaultManager() {
30 final TableFeaturesConvertor tableFeaturesConvertor = new TableFeaturesConvertor();
31 final TableFeaturesResponseConvertor tableFeaturesResponseConvertor = new TableFeaturesResponseConvertor();
32 final MeterConvertor meterConvertor = new MeterConvertor();
33 final MeterStatsResponseConvertor meterStatsResponseConvertor = new MeterStatsResponseConvertor();
34 final MeterConfigStatsResponseConvertor meterConfigStatsResponseConvertor = new MeterConfigStatsResponseConvertor();
35 final PortConvertor portConvertor = new PortConvertor();
36 final MatchResponseConvertor matchResponseConvertor = new MatchResponseConvertor();
37 final MatchV10ResponseConvertor matchV10ResponseConvertor = new MatchV10ResponseConvertor();
38 final ActionConvertor actionConvertor = new ActionConvertor();
39 final ActionResponseConvertor actionResponseConvertor = new ActionResponseConvertor();
40 final GroupConvertor groupConvertor = new GroupConvertor();
41 final GroupDescStatsResponseConvertor groupDescStatsResponseConvertor = new GroupDescStatsResponseConvertor();
42 final GroupStatsResponseConvertor groupStatsResponseConvertor = new GroupStatsResponseConvertor();
43 final PacketOutConvertor packetOutConvertor = new PacketOutConvertor();
44 final FlowConvertor flowConvertor = new FlowConvertor();
45 final FlowInstructionResponseConvertor flowInstructionResponseConvertor = new FlowInstructionResponseConvertor();
46 final FlowStatsResponseConvertor flowStatsResponseConvertor = new FlowStatsResponseConvertor();
48 return new ConvertorManager(OFConstants.OFP_VERSION_1_0, OFConstants.OFP_VERSION_1_3)
49 .registerConvertor(OFConstants.OFP_VERSION_1_0, tableFeaturesConvertor)
50 .registerConvertor(OFConstants.OFP_VERSION_1_3, tableFeaturesConvertor)
51 .registerConvertor(OFConstants.OFP_VERSION_1_0, tableFeaturesResponseConvertor)
52 .registerConvertor(OFConstants.OFP_VERSION_1_3, tableFeaturesResponseConvertor)
53 .registerConvertor(OFConstants.OFP_VERSION_1_0, meterConvertor)
54 .registerConvertor(OFConstants.OFP_VERSION_1_3, meterConvertor)
55 .registerConvertor(OFConstants.OFP_VERSION_1_0, meterStatsResponseConvertor)
56 .registerConvertor(OFConstants.OFP_VERSION_1_3, meterStatsResponseConvertor)
57 .registerConvertor(OFConstants.OFP_VERSION_1_0, meterConfigStatsResponseConvertor)
58 .registerConvertor(OFConstants.OFP_VERSION_1_3, meterConfigStatsResponseConvertor)
59 .registerConvertor(OFConstants.OFP_VERSION_1_0, portConvertor)
60 .registerConvertor(OFConstants.OFP_VERSION_1_3, portConvertor)
61 // TODO: Add MatchConvertorImpl and MatchConvertorV10Impl
62 .registerConvertor(OFConstants.OFP_VERSION_1_3, matchResponseConvertor)
63 .registerConvertor(OFConstants.OFP_VERSION_1_0, matchV10ResponseConvertor)
64 .registerConvertor(OFConstants.OFP_VERSION_1_0, actionConvertor)
65 .registerConvertor(OFConstants.OFP_VERSION_1_3, actionConvertor)
66 .registerConvertor(OFConstants.OFP_VERSION_1_0, actionResponseConvertor)
67 .registerConvertor(OFConstants.OFP_VERSION_1_3, actionResponseConvertor)
68 .registerConvertor(OFConstants.OFP_VERSION_1_0, groupConvertor)
69 .registerConvertor(OFConstants.OFP_VERSION_1_3, groupConvertor)
70 .registerConvertor(OFConstants.OFP_VERSION_1_0, groupDescStatsResponseConvertor)
71 .registerConvertor(OFConstants.OFP_VERSION_1_3, groupDescStatsResponseConvertor)
72 .registerConvertor(OFConstants.OFP_VERSION_1_0, groupStatsResponseConvertor)
73 .registerConvertor(OFConstants.OFP_VERSION_1_3, groupStatsResponseConvertor)
74 .registerConvertor(OFConstants.OFP_VERSION_1_0, packetOutConvertor)
75 .registerConvertor(OFConstants.OFP_VERSION_1_3, packetOutConvertor)
76 .registerConvertor(OFConstants.OFP_VERSION_1_0, flowConvertor)
77 .registerConvertor(OFConstants.OFP_VERSION_1_3, flowConvertor)
78 .registerConvertor(OFConstants.OFP_VERSION_1_0, flowInstructionResponseConvertor)
79 .registerConvertor(OFConstants.OFP_VERSION_1_3, flowInstructionResponseConvertor)
80 .registerConvertor(OFConstants.OFP_VERSION_1_0, flowStatsResponseConvertor)
81 .registerConvertor(OFConstants.OFP_VERSION_1_3, flowStatsResponseConvertor);