Class XconnectManager
- java.lang.Object
-
- org.onosproject.segmentrouting.xconnect.impl.XconnectManager
-
- All Implemented Interfaces:
XconnectService
public class XconnectManager extends Object implements XconnectService
-
-
Field Summary
Fields Modifier and Type Field Description org.onosproject.net.config.NetworkConfigRegistrycfgServiceorg.onosproject.net.device.DeviceServicedeviceServiceorg.onosproject.net.flowobjective.FlowObjectiveServiceflowObjectiveServiceorg.onosproject.net.intf.InterfaceServiceinterfaceServiceorg.onosproject.net.config.NetworkConfigServicenetCfgServiceSegmentRoutingServicesrService-
Fields inherited from interface org.onosproject.segmentrouting.xconnect.api.XconnectService
XCONNECT_ACL_PRIORITY, XCONNECT_PRIORITY
-
-
Constructor Summary
Constructors Constructor Description XconnectManager()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddOrUpdateXconnect(org.onosproject.net.DeviceId deviceId, org.onlab.packet.VlanId vlanId, Set<XconnectEndpoint> endpoints)Creates or updates Xconnect.com.google.common.collect.ImmutableMap<XconnectKey,Integer>getNext()Returns the Xconnect next objective store.intgetNextId(org.onosproject.net.DeviceId deviceId, org.onlab.packet.VlanId vlanId)Returns Xconnect next objective ID associated with group device + vlan.Set<XconnectDesc>getXconnects()Gets Xconnects.List<org.onlab.packet.VlanId>getXconnectVlans(org.onosproject.net.DeviceId deviceId, org.onosproject.net.PortNumber port)Gives xconnect VLAN of given port of a device.booleanhasXconnect(org.onosproject.net.ConnectPoint cp)Check if there is Xconnect configured on given connect point.booleanisXconnectVlan(org.onosproject.net.DeviceId deviceId, org.onlab.packet.VlanId vlanId)Checks given VLAN is XConnect VLAN in given device.voidremoveNextId(int nextId)Removes given next ID from Xconnect next objective store.voidremoveXonnect(org.onosproject.net.DeviceId deviceId, org.onlab.packet.VlanId vlanId)Deletes Xconnect.
-
-
-
Field Detail
-
netCfgService
public org.onosproject.net.config.NetworkConfigService netCfgService
-
deviceService
public org.onosproject.net.device.DeviceService deviceService
-
flowObjectiveService
public org.onosproject.net.flowobjective.FlowObjectiveService flowObjectiveService
-
srService
public SegmentRoutingService srService
-
interfaceService
public org.onosproject.net.intf.InterfaceService interfaceService
-
cfgService
public org.onosproject.net.config.NetworkConfigRegistry cfgService
-
-
Method Detail
-
addOrUpdateXconnect
public void addOrUpdateXconnect(org.onosproject.net.DeviceId deviceId, org.onlab.packet.VlanId vlanId, Set<XconnectEndpoint> endpoints)Description copied from interface:XconnectServiceCreates or updates Xconnect.- Specified by:
addOrUpdateXconnectin interfaceXconnectService- Parameters:
deviceId- device IDvlanId- VLAN IDendpoints- set of endpoints
-
removeXonnect
public void removeXonnect(org.onosproject.net.DeviceId deviceId, org.onlab.packet.VlanId vlanId)Description copied from interface:XconnectServiceDeletes Xconnect.- Specified by:
removeXonnectin interfaceXconnectService- Parameters:
deviceId- device IDvlanId- VLAN ID
-
getXconnects
public Set<XconnectDesc> getXconnects()
Description copied from interface:XconnectServiceGets Xconnects.- Specified by:
getXconnectsin interfaceXconnectService- Returns:
- set of Xconnect descriptions
-
hasXconnect
public boolean hasXconnect(org.onosproject.net.ConnectPoint cp)
Description copied from interface:XconnectServiceCheck if there is Xconnect configured on given connect point.- Specified by:
hasXconnectin interfaceXconnectService- Parameters:
cp- connect point- Returns:
- true if there is Xconnect configured on the connect point
-
getXconnectVlans
public List<org.onlab.packet.VlanId> getXconnectVlans(org.onosproject.net.DeviceId deviceId, org.onosproject.net.PortNumber port)
Description copied from interface:XconnectServiceGives xconnect VLAN of given port of a device.- Specified by:
getXconnectVlansin interfaceXconnectService- Parameters:
deviceId- Device IDport- Port number- Returns:
- true if given VLAN vlanId is XConnect VLAN on device deviceId.
-
isXconnectVlan
public boolean isXconnectVlan(org.onosproject.net.DeviceId deviceId, org.onlab.packet.VlanId vlanId)Description copied from interface:XconnectServiceChecks given VLAN is XConnect VLAN in given device.- Specified by:
isXconnectVlanin interfaceXconnectService- Parameters:
deviceId- Device IDvlanId- VLAN ID- Returns:
- true if given VLAN vlanId is XConnect VLAN on device deviceId.
-
getNext
public com.google.common.collect.ImmutableMap<XconnectKey,Integer> getNext()
Description copied from interface:XconnectServiceReturns the Xconnect next objective store.- Specified by:
getNextin interfaceXconnectService- Returns:
- current contents of the xconnectNextObjStore
-
getNextId
public int getNextId(org.onosproject.net.DeviceId deviceId, org.onlab.packet.VlanId vlanId)Description copied from interface:XconnectServiceReturns Xconnect next objective ID associated with group device + vlan.- Specified by:
getNextIdin interfaceXconnectService- Parameters:
deviceId- - Device IDvlanId- - VLAN ID- Returns:
- Current associated group ID
-
removeNextId
public void removeNextId(int nextId)
Description copied from interface:XconnectServiceRemoves given next ID from Xconnect next objective store.- Specified by:
removeNextIdin interfaceXconnectService- Parameters:
nextId- next ID
-
-