blob: e461b24827fa00a758eff7afecb515a47d015885 [file] [log] [blame]
/*
* Copyright 2017-present Open Networking Laboratory
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.onosproject.l3vpn.netl3vpn;
import java.util.HashMap;
import java.util.Map;
/**
* Representation of BGP information which contains the protocol info and the
* VPN name.
*/
public class BgpInfo {
/**
* Map of route protocol and the protocol info for the BGP info.
*/
private Map<RouteProtocol, ProtocolInfo> protocolInfo;
/**
* VPN name, to which the BGP info belongs.
*/
private String vpnName;
/**
* Constructs BGP info.
*/
public BgpInfo() {
}
/**
* Returns the map of protocol info associated with the BGP info.
*
* @return protocol info map.
*/
Map<RouteProtocol, ProtocolInfo> protocolInfo() {
return protocolInfo;
}
/**
* Sets the map of protocol info with route protocol as key value.
*
* @param protocolInfo protocol info map
*/
void protocolInfo(Map<RouteProtocol, ProtocolInfo> protocolInfo) {
this.protocolInfo = protocolInfo;
}
/**
* Adds a protocol info with route protocol as key to the map.
*
* @param route route protocol
* @param info protocol info
*/
void addProtocolInfo(RouteProtocol route, ProtocolInfo info) {
if (protocolInfo == null) {
protocolInfo = new HashMap<>();
}
protocolInfo.put(route, info);
}
/**
* Returns the VPN name of the BGP info.
*
* @return VPN name
*/
String vpnName() {
return vpnName;
}
/**
* Sets the VPN name.
*
* @param vpnName VPN name
*/
void vpnName(String vpnName) {
this.vpnName = vpnName;
}
@Override
public String toString() {
return "VPN name : " + vpnName;
}
}