package org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.match;
-import java.util.List;
-import java.util.Map;
-
-import org.opendaylight.openflowplugin.openflow.md.OFConstants;
+import org.opendaylight.openflowplugin.api.OFConstants;
import org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.FlowConvertor;
import org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.common.Convertor;
import org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.common.InjectionKey;
import org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.common.ResultInjector;
import org.opendaylight.yang.gen.v1.urn.opendaylight.model.match.types.rev131026.Match;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.OxmFieldsActionBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.match.v10.grouping.MatchV10;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.MatchEntries;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.set.field._case.SetFieldActionBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.grouping.MatchBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.v10.grouping.MatchV10;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.FlowModInputBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.match.grouping.MatchBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.multipart.request.multipart.request.body.multipart.request.aggregate._case.MultipartRequestAggregateBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.multipart.request.multipart.request.body.multipart.request.flow._case.MultipartRequestFlowBuilder;
+import java.util.List;
+import java.util.Map;
/**
* add prepared convertors and injectors into given mappings
+ *
* @see MatchReactor
*/
public class MatchReactorMappingFactory {
-
+
/**
- * @param conversionMapping
+ * @param conversionMapping conversion mapping
*/
- public static void addMatchConvertors(Map<Short, Convertor<Match, ?>> conversionMapping) {
+ public static void addMatchConvertors(final Map<Short, Convertor<Match, ?>> conversionMapping) {
conversionMapping.put(OFConstants.OFP_VERSION_1_3, new MatchConvertorImpl());
conversionMapping.put(OFConstants.OFP_VERSION_1_0, new MatchConvertorV10Impl());
}
-
+
/**
- * @param injectionMapping
+ * @param injectionMapping injection mapping
*/
- public static void addMatchIjectors(Map<InjectionKey, ResultInjector<?, ?>> injectionMapping) {
+ public static void addMatchIjectors(final Map<InjectionKey, ResultInjector<?, ?>> injectionMapping) {
// OF-1.3|List<MatchEntries> --> FlowModInputBuilder
- injectionMapping.put(new InjectionKey(OFConstants.OFP_VERSION_1_3, FlowModInputBuilder.class.getName()),
- new ResultInjector<List<MatchEntries>, FlowModInputBuilder>() {
- @Override
- public void inject(List<MatchEntries> value,
- FlowModInputBuilder target) {
- target.setMatch(wrapMatchV13(value).build());
- }
- });
-
+ injectionMapping.put(new InjectionKey(OFConstants.OFP_VERSION_1_3, FlowModInputBuilder.class),
+ new ResultInjector<List<MatchEntry>, FlowModInputBuilder>() {
+ @Override
+ public void inject(final List<MatchEntry> value,
+ final FlowModInputBuilder target) {
+ target.setMatch(wrapMatchV13(value).build());
+ }
+ });
+
// OF-1.3|List<MatchEntries> --> OxmFieldsActionBuilder
- injectionMapping.put(new InjectionKey(OFConstants.OFP_VERSION_1_3, OxmFieldsActionBuilder.class.getName()),
- new ResultInjector<List<MatchEntries>, OxmFieldsActionBuilder>() {
- @Override
- public void inject(List<MatchEntries> value,
- OxmFieldsActionBuilder target) {
- target.setMatchEntries(value);
- }
- });
-
+ injectionMapping.put(new InjectionKey(OFConstants.OFP_VERSION_1_3, SetFieldActionBuilder.class),
+ new ResultInjector<List<MatchEntry>, SetFieldActionBuilder>() {
+ @Override
+ public void inject(final List<MatchEntry> value,
+ final SetFieldActionBuilder target) {
+ target.setMatchEntry(value);
+ }
+ });
+
// OF-1.0|MatchV10Builder --> FlowModInputBuilder
- injectionMapping.put(new InjectionKey(OFConstants.OFP_VERSION_1_0, FlowModInputBuilder.class.getName()),
+ injectionMapping.put(new InjectionKey(OFConstants.OFP_VERSION_1_0, FlowModInputBuilder.class),
new ResultInjector<MatchV10, FlowModInputBuilder>() {
- @Override
- public void inject(MatchV10 value,
- FlowModInputBuilder target) {
- target.setMatchV10(value);
- }
- });
-
+ @Override
+ public void inject(final MatchV10 value,
+ final FlowModInputBuilder target) {
+ target.setMatchV10(value);
+ }
+ });
+
// OF-1.3|List<MatchEntries> --> MultipartRequestFlowBuilder
- injectionMapping.put(new InjectionKey(OFConstants.OFP_VERSION_1_3, MultipartRequestFlowBuilder.class.getName()),
- new ResultInjector<List<MatchEntries>, MultipartRequestFlowBuilder>() {
- @Override
- public void inject(List<MatchEntries> value,
- MultipartRequestFlowBuilder target) {
- target.setMatch(wrapMatchV13(value).build());
- }
- });
-
+ injectionMapping.put(new InjectionKey(OFConstants.OFP_VERSION_1_3, MultipartRequestFlowBuilder.class),
+ new ResultInjector<List<MatchEntry>, MultipartRequestFlowBuilder>() {
+ @Override
+ public void inject(final List<MatchEntry> value,
+ final MultipartRequestFlowBuilder target) {
+ target.setMatch(wrapMatchV13(value).build());
+ }
+ });
+
// OF-1.0|List<MatchEntries> --> MultipartRequestFlowBuilder
- injectionMapping.put(new InjectionKey(OFConstants.OFP_VERSION_1_0, MultipartRequestFlowBuilder.class.getName()),
+ injectionMapping.put(new InjectionKey(OFConstants.OFP_VERSION_1_0, MultipartRequestFlowBuilder.class),
new ResultInjector<MatchV10, MultipartRequestFlowBuilder>() {
- @Override
- public void inject(MatchV10 value,
- MultipartRequestFlowBuilder target) {
- target.setMatchV10(value);
- }
- });
-
+ @Override
+ public void inject(final MatchV10 value,
+ final MultipartRequestFlowBuilder target) {
+ target.setMatchV10(value);
+ }
+ });
+
// OF-1.3|List<MatchEntries> --> MultipartRequestAggregateBuilder
- injectionMapping.put(new InjectionKey(OFConstants.OFP_VERSION_1_3, MultipartRequestAggregateBuilder.class.getName()),
- new ResultInjector<List<MatchEntries>, MultipartRequestAggregateBuilder>() {
- @Override
- public void inject(List<MatchEntries> value,
- MultipartRequestAggregateBuilder target) {
- target.setMatch(wrapMatchV13(value).build());
- }
- });
-
+ injectionMapping.put(new InjectionKey(OFConstants.OFP_VERSION_1_3, MultipartRequestAggregateBuilder.class),
+ new ResultInjector<List<MatchEntry>, MultipartRequestAggregateBuilder>() {
+ @Override
+ public void inject(final List<MatchEntry> value,
+ final MultipartRequestAggregateBuilder target) {
+ target.setMatch(wrapMatchV13(value).build());
+ }
+ });
+
// OF-1.0|List<MatchEntries> --> MultipartRequestAggregateBuilder
- injectionMapping.put(new InjectionKey(OFConstants.OFP_VERSION_1_0, MultipartRequestAggregateBuilder.class.getName()),
+ injectionMapping.put(new InjectionKey(OFConstants.OFP_VERSION_1_0, MultipartRequestAggregateBuilder.class),
new ResultInjector<MatchV10, MultipartRequestAggregateBuilder>() {
- @Override
- public void inject(MatchV10 value,
- MultipartRequestAggregateBuilder target) {
- target.setMatchV10(value);
- }
- });
+ @Override
+ public void inject(final MatchV10 value,
+ final MultipartRequestAggregateBuilder target) {
+ target.setMatchV10(value);
+ }
+ });
}
-
+
/**
* @param value pure match
* @return wrapped match
*/
- public static MatchBuilder wrapMatchV13(List<MatchEntries> value) {
- MatchBuilder matchBuilder = new MatchBuilder();
+ public static MatchBuilder wrapMatchV13(final List<MatchEntry> value) {
+ MatchBuilder matchBuilder = new MatchBuilder();
matchBuilder.setType(FlowConvertor.DEFAULT_MATCH_TYPE);
if (value == null) {
- matchBuilder.setMatchEntries(FlowConvertor.DEFAULT_MATCH_ENTRIES);
+ matchBuilder.setMatchEntry(FlowConvertor.DEFAULT_MATCH_ENTRIES);
} else {
- matchBuilder.setMatchEntries(value);
+ matchBuilder.setMatchEntry(value);
}
return matchBuilder;
}