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 HashMap<String, String> locIntfToLocSetNameMapping;
26 private Set<IpAddress> mapServerIpAddressSet;
27 private Set<IpAddress> mapResolverIpAddressSet;
28 private Set<Long> vniSet;
29 private boolean mapRegisteredEnabled;
30 private HashMap<Eid, String> eidToMappingIdMapper;
31 private int interfaceCount;
33 public LispState(String hostName) {
34 this.hostName = hostName;
36 locIntfToLocSetNameMapping = new HashMap<>();
37 mapServerIpAddressSet = new HashSet<>();
38 mapResolverIpAddressSet = new HashSet<>();
39 mapRegisteredEnabled = false;
40 vniSet = new HashSet<>();
41 eidToMappingIdMapper = new HashMap<>();
45 public String getHostName() {
49 public boolean isLispEnabled() {
53 public void setLispEnabled(boolean lispEnabled) {
54 this.lispEnabled = lispEnabled;
57 public String getLocIntfToLocSetNameMapping(String locatorIntf) {
58 return locIntfToLocSetNameMapping.get(locatorIntf);
61 public void setLocIntfToLocSetNameMapping(String locIntfName, String locSetName) {
62 locIntfToLocSetNameMapping.put(locIntfName, locSetName);
65 public Set<Map.Entry<String, String>> getLocatorSetEntry() {
66 return locIntfToLocSetNameMapping.entrySet();
69 public int getLocatorCount() {
70 return locIntfToLocSetNameMapping.size();
73 public boolean mapServerSetContains(IpAddress ip) {
74 return mapServerIpAddressSet.contains(ip);
77 public void addInMapServerSet(IpAddress ip) {
78 mapServerIpAddressSet.add(ip);
81 public boolean mapResolverSetContains(IpAddress ip) {
82 return mapResolverIpAddressSet.contains(ip);
85 public void addInMapResolverSet(IpAddress ip) {
86 mapResolverIpAddressSet.add(ip);
89 public boolean vniSetContains(long vni) {
90 return vniSet.contains(vni);
93 public void addInVniSet(long vni) {
97 public boolean isMapRegisteredEnabled() {
98 return mapRegisteredEnabled;
101 public void setMapRegisteredEnabled(boolean mapRegisteredEnabled) {
102 this.mapRegisteredEnabled = mapRegisteredEnabled;
105 public boolean eidSetContains(Eid eid) {
106 return eidToMappingIdMapper.containsKey(eid);
109 public void addInEidSet(Eid eid, String mappingId) {
111 eidToMappingIdMapper.put(eid, mappingId);
114 public int eidCount() {
115 return eidToMappingIdMapper.size();
118 public void deleteEid(Eid eid) {
119 eidToMappingIdMapper.remove(eid);
122 public String getEidMapping(Eid eid) {
123 return eidToMappingIdMapper.get(eid);
126 public int getInterfaceId() {
127 return interfaceCount;