2 * Copyright (c) 2016 Intel corporation 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.yang.gen.v1.urn.opendaylight.neutron.constants.rev150712;
11 import com.google.common.collect.ImmutableBiMap;
13 import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.constants.rev150712.FwProtocolBase;
14 import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.constants.rev150712.FwProtocolIcmp;
15 import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.constants.rev150712.FwProtocolTcp;
16 import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.constants.rev150712.FwProtocolUdp;
17 import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.constants.rev150712.ProtocolBase;
18 import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.constants.rev150712.ProtocolIcmp;
19 import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.constants.rev150712.ProtocolIcmpV6;
20 import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.constants.rev150712.ProtocolHttp;
21 import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.constants.rev150712.ProtocolHttps;
22 import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.constants.rev150712.ProtocolTcp;
23 import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.constants.rev150712.ProtocolUdp;
26 public final class NeutronUtils {
27 private NeutronUtils() {
28 throw new UnsupportedOperationException("Utility class should not be instantiated.");
32 public static class FwProtocolMapper {
33 private FwProtocolMapper() {
34 throw new UnsupportedOperationException("Utility class should not be instantiated.");
37 private static final ImmutableBiMap<String, Class<? extends FwProtocolBase>> MAPPER
38 = new ImmutableBiMap.Builder<String, Class<? extends FwProtocolBase>>()
39 .put("tcp", FwProtocolTcp.class)
40 .put("udp", FwProtocolUdp.class)
41 .put("icmp", FwProtocolIcmp.class)
44 public static Class<? extends FwProtocolBase> get(String key) {
45 return MAPPER.get(key);
48 public static String getName(Class<? extends FwProtocolBase> key) {
49 ImmutableBiMap<Class<? extends FwProtocolBase>, String> inverseMapper = MAPPER.inverse();
50 return inverseMapper.get(key);
55 public static class ProtocolMapper {
56 private ProtocolMapper() {
57 throw new UnsupportedOperationException("Utility class should not be instantiated.");
60 private static final ImmutableBiMap<String, Class<? extends ProtocolBase>> MAPPER
61 = new ImmutableBiMap.Builder<String, Class<? extends ProtocolBase>>()
62 .put("icmp", ProtocolIcmp.class)
63 .put("tcp", ProtocolTcp.class)
64 .put("udp", ProtocolUdp.class)
65 .put("icmpv6", ProtocolIcmpV6.class)
68 public static Class<? extends ProtocolBase> get(String key) {
69 return MAPPER.get(key);
72 public static String getName(Class<? extends ProtocolBase> key) {
73 ImmutableBiMap<Class<? extends ProtocolBase>, String> inverseMapper = MAPPER.inverse();
74 return inverseMapper.get(key);