/* * Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ package org.opendaylight.openflowplugin.openflow.md.core.sal.convertor; import org.opendaylight.openflowplugin.api.OFConstants; import org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.action.ActionConvertor; import org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.action.ActionResponseConvertor; import org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.flow.FlowConvertor; import org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.flow.FlowInstructionResponseConvertor; import org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.flow.FlowStatsResponseConvertor; import org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.match.MatchResponseConvertor; import org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.match.MatchV10ResponseConvertor; /** * Convertor manager factory. */ public class ConvertorManagerFactory { /** * Create default convertor manager. * * @return the convertor manager */ public static ConvertorManager createDefaultManager() { final TableFeaturesConvertor tableFeaturesConvertor = new TableFeaturesConvertor(); final TableFeaturesResponseConvertor tableFeaturesResponseConvertor = new TableFeaturesResponseConvertor(); final MeterConvertor meterConvertor = new MeterConvertor(); final MeterStatsResponseConvertor meterStatsResponseConvertor = new MeterStatsResponseConvertor(); final MeterConfigStatsResponseConvertor meterConfigStatsResponseConvertor = new MeterConfigStatsResponseConvertor(); final PortConvertor portConvertor = new PortConvertor(); final MatchResponseConvertor matchResponseConvertor = new MatchResponseConvertor(); final MatchV10ResponseConvertor matchV10ResponseConvertor = new MatchV10ResponseConvertor(); final ActionConvertor actionConvertor = new ActionConvertor(); final ActionResponseConvertor actionResponseConvertor = new ActionResponseConvertor(); final GroupConvertor groupConvertor = new GroupConvertor(); final GroupDescStatsResponseConvertor groupDescStatsResponseConvertor = new GroupDescStatsResponseConvertor(); final GroupStatsResponseConvertor groupStatsResponseConvertor = new GroupStatsResponseConvertor(); final PacketOutConvertor packetOutConvertor = new PacketOutConvertor(); final FlowConvertor flowConvertor = new FlowConvertor(); final FlowInstructionResponseConvertor flowInstructionResponseConvertor = new FlowInstructionResponseConvertor(); final FlowStatsResponseConvertor flowStatsResponseConvertor = new FlowStatsResponseConvertor(); return new ConvertorManager(OFConstants.OFP_VERSION_1_0, OFConstants.OFP_VERSION_1_3) .registerConvertor(OFConstants.OFP_VERSION_1_0, tableFeaturesConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_3, tableFeaturesConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_0, tableFeaturesResponseConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_3, tableFeaturesResponseConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_0, meterConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_3, meterConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_0, meterStatsResponseConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_3, meterStatsResponseConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_0, meterConfigStatsResponseConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_3, meterConfigStatsResponseConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_0, portConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_3, portConvertor) // TODO: Add MatchConvertorImpl and MatchConvertorV10Impl .registerConvertor(OFConstants.OFP_VERSION_1_3, matchResponseConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_0, matchV10ResponseConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_0, actionConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_3, actionConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_0, actionResponseConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_3, actionResponseConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_0, groupConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_3, groupConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_0, groupDescStatsResponseConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_3, groupDescStatsResponseConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_0, groupStatsResponseConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_3, groupStatsResponseConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_0, packetOutConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_3, packetOutConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_0, flowConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_3, flowConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_0, flowInstructionResponseConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_3, flowInstructionResponseConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_0, flowStatsResponseConvertor) .registerConvertor(OFConstants.OFP_VERSION_1_3, flowStatsResponseConvertor); } }