2 * Copyright (c) 2017 Cisco Systems. 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.groupbasedpolicy.renderer.vpp.lisp;
11 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress;
12 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.lisp.rev170315.dp.subtable.grouping.local.mappings.local.mapping.Eid;
14 import java.util.HashMap;
15 import java.util.HashSet;
20 * Created by Shakib Ahmed on 3/29/17.
22 public class LispState {
23 private String hostName;
24 private boolean lispEnabled;
25 private boolean gpeEnabled;
26 private HashMap<String, String> locIntfToLocSetNameMapping;
27 private Set<IpAddress> mapServerIpAddressSet;
28 private Set<IpAddress> mapResolverIpAddressSet;
29 private Set<Long> vniSet;
30 private boolean mapRegisteredEnabled;
31 private HashMap<Eid, String> eidToMappingIdMapper;
32 private int interfaceCount;
34 public LispState(String hostName) {
35 this.hostName = hostName;
37 locIntfToLocSetNameMapping = new HashMap<>();
38 mapServerIpAddressSet = new HashSet<>();
39 mapResolverIpAddressSet = new HashSet<>();
40 mapRegisteredEnabled = false;
41 vniSet = new HashSet<>();
42 eidToMappingIdMapper = new HashMap<>();
46 public String getHostName() {
50 public boolean isLispEnabled() {
54 public void setLispEnabled(boolean lispEnabled) {
55 this.lispEnabled = lispEnabled;
58 public boolean isGpeEnabled() {
62 public void setGpeEnabled(boolean gpeEnabled) {
63 this.gpeEnabled = gpeEnabled;
66 public String getLocIntfToLocSetNameMapping(String locatorIntf) {
67 return locIntfToLocSetNameMapping.get(locatorIntf);
70 public void setLocIntfToLocSetNameMapping(String locIntfName, String locSetName) {
71 locIntfToLocSetNameMapping.put(locIntfName, locSetName);
74 public Set<Map.Entry<String, String>> getLocatorSetEntry() {
75 return locIntfToLocSetNameMapping.entrySet();
78 public int getLocatorCount() {
79 return locIntfToLocSetNameMapping.size();
82 public boolean mapServerSetContains(IpAddress ip) {
83 return mapServerIpAddressSet.contains(ip);
86 public void addInMapServerSet(IpAddress ip) {
87 mapServerIpAddressSet.add(ip);
90 public boolean mapResolverSetContains(IpAddress ip) {
91 return mapResolverIpAddressSet.contains(ip);
94 public void addInMapResolverSet(IpAddress ip) {
95 mapResolverIpAddressSet.add(ip);
98 public boolean vniSetContains(long vni) {
99 return vniSet.contains(vni);
102 public void addInVniSet(long vni) {
106 public boolean isMapRegisteredEnabled() {
107 return mapRegisteredEnabled;
110 public void setMapRegisteredEnabled(boolean mapRegisteredEnabled) {
111 this.mapRegisteredEnabled = mapRegisteredEnabled;
114 public boolean eidSetContains(Eid eid) {
115 return eidToMappingIdMapper.containsKey(eid);
118 public void addInEidSet(Eid eid, String mappingId) {
120 eidToMappingIdMapper.put(eid, mappingId);
123 public int eidCount() {
124 return eidToMappingIdMapper.size();
127 public void deleteEid(Eid eid) {
128 eidToMappingIdMapper.remove(eid);
131 public String getEidMapping(Eid eid) {
132 return eidToMappingIdMapper.get(eid);
135 public int getInterfaceId() {
136 return interfaceCount;