public class RANDataStore extends DataStore
In memory data store implementation for holding RAN specific data for the ITNM java collector framework. The RAN data store has methods to aid in adding RAN specific data for various devices, such as a base station, GSM cell, transceiver etc.
The add methods not only add add a device to the store, but also add RAN specific data as defined by the RAN NCIM
tables. For example, addBaseStation(int, String, String, String, String)
adds a device representing a base
station to the store, and adds ranBaseStation
NCIM table entries under the customData -> ranData
entries, which is retrieved from the getRANData(int, String)
invocation. Where relevant, RAN data
relationships are also added, so in the case of a base station, if a base station controller ID is provided, a
dependency relationship will be created between the controller and the newly created device.
A key part of the RAN data store is the getRANData(int, String)
method which returns all of the RAN specific
data added to the devices under the custom data entry. This provides the functionality required by the RAN collector
agent for the GetRanData XML-RPC call.
collectorDescription, collectorName, dataSources, readLock, rwLock, writeLock
Constructor and Description |
---|
RANDataStore(java.lang.String collectorName,
java.lang.String collectorDescription)
Create a data store for holding RAN data
|
Modifier and Type | Method and Description |
---|---|
RANNetworkDevice |
addBaseStation(int dataSourceId,
java.lang.String deviceId,
java.lang.String baseStationId,
java.lang.String controllerId,
java.lang.String technologyType)
Add a new base station to the data store
|
RANNetworkDevice |
addBaseStationController(int dataSourceId,
java.lang.String deviceId,
java.lang.String controllerId,
java.lang.String technologyType)
Add a new base station controller to the data store
|
RANNetworkDevice |
addGGSN(int dataSourceId,
java.lang.String deviceId,
java.lang.String ggsnId,
java.lang.String technologyType,
java.lang.String accessPointName)
Add a new Gateway GPRS Serving Node (GGSN) to the data store
|
RANLogicalElement |
addGSMCell(int dataSourceId,
java.lang.String cellId,
java.lang.String technologyType,
java.util.Map<java.lang.String,java.lang.Object> cellData)
Add a GSM cell to the data store.
|
void |
addLocationInformation(int dataSourceId,
java.lang.String elementId,
java.lang.String mcc,
java.lang.String mnc,
java.lang.String lac,
java.lang.String rac)
Add RAN specific location information to a RAN device or element.
|
RANNetworkDevice |
addMediaGateway(int dataSourceId,
java.lang.String deviceId,
java.lang.String mgwId)
Add a new media gateway to the store
|
RANNetworkDevice |
addMobileSwitchingCentre(int dataSourceId,
java.lang.String deviceId,
java.lang.String mscId,
java.lang.String technologyType,
java.lang.String mscType)
Add a new mobile switching centre to the data store
|
RANNetworkDevice |
addMSS(int dataSourceId,
java.lang.String deviceId,
java.lang.String mssId)
Add a new mobile switching centre server (MSS) to the data store
|
RANNetworkDevice |
addMultiplexer(int dataSourceId,
java.lang.String deviceId)
Add a device that is a multiplexer.
|
RANNetworkDevice |
addNodeB(int dataSourceId,
java.lang.String deviceId,
java.lang.String nodeBId,
java.lang.String controllerId,
java.lang.String technologyType)
Add a new Node B to the data store
|
void |
addNodeBLocalCell(int dataSourceId,
java.lang.String deviceId,
java.lang.String localCellId,
java.lang.String cellId,
java.util.Map<java.lang.String,java.lang.Object> data)
Add a node B local cell to a RAN network device
|
RANNetworkDevice |
addPacketControlUnit(int dataSourceId,
java.lang.String deviceId,
java.lang.String packetControlUnitId,
java.lang.String controllerId,
java.lang.String technologyType)
Add a new packet control unit to the data store
|
RANNetworkDevice |
addRadioNetworkController(int dataSourceId,
java.lang.String deviceId,
java.lang.String controllerId,
java.lang.String technologyType)
Add a new radio network controller to the data store
|
void |
addRANConnection(int dataSourceId,
java.lang.String deviceId,
java.util.Map<java.lang.String,java.lang.Object> connection)
Add a logical RAN connection to a specified device.
|
void |
addRANConnection(int dataSourceId,
java.lang.String deviceId,
java.util.Map<java.lang.String,java.lang.Object> connection,
int nsei)
Add a logical RAN connection to a specified device.
|
void |
addSector(int dataSourceId,
java.lang.String deviceId,
java.lang.String transceiverId,
java.lang.String sectorId,
java.util.Map<java.lang.String,java.lang.Object> sectorData)
Add a RAN sector to a given transceiver
|
RANNetworkDevice |
addSGSN(int dataSourceId,
java.lang.String deviceId,
java.lang.String sgsnId,
java.lang.String technologyType)
Add a new serving GPRS serving node (SGSN) to the data store
|
void |
addTransceiver(int dataSourceId,
java.lang.String deviceId,
java.lang.String transceiverId,
java.lang.String cellId,
java.util.Map<java.lang.String,java.lang.Object> data)
Add a transceiver to a RAN network device
|
RANLogicalElement |
addUtranCell(int dataSourceId,
java.lang.String cellId,
java.util.Map<java.lang.String,java.lang.Object> cellData)
Add a UTRAN cell to the data store.
|
void |
associate(int dataSourceId,
java.lang.String elementOneId,
java.lang.String elementTwoId)
Associate two elements, identified by their IDs.
|
static java.lang.String |
generateRANEntityName(java.lang.String entityType,
java.lang.String... params)
Generate a name for a RAN entity constructed of the type of the entity (e.g.
|
java.lang.String |
getNodeBLocalCellName(int dataSourceId,
java.lang.String deviceId,
java.lang.String cellId)
Get the name for a node B local cell, e.g.
|
java.lang.String |
getRANData(int dataSourceId,
java.lang.String deviceId)
Get an XML representation of all RAN data stored in the data store for a given device
|
java.lang.String |
getTransceiverName(int dataSourceId,
java.lang.String deviceId,
java.lang.String transceiverId)
Get the name for a transceiver, e.g.
|
addAssociatedAddress, addConnection, addDataSource, addDataSource, addDataSource, addDeviceData, addEntity, addGeographicLocation, addInterface, addL2Vpn, addL3Vpn, addL3VpnInterface, addL3VpnRouteTarget, addLayer1Connection, addLayer2Connection, addLayer3Connection, addLsp, addMplsInterface, deviceCollects, deviceCollects, deviceDependency, deviceDependency, deviceHosts, getAssociatedAddresses, getAssociatedAddresses, getCollectorDescription, getCollectorName, getConnections, getConnections, getDataSource, getDataSources, getDeviceInfo, getDeviceInfo, getDeviceInfo, getDeviceList, getDeviceList, getDeviceList, getDeviceName, getDeviceName, getEntities, getEntities, getInfo, getInterfaceName, getInterfaceName, getInventory, getInventory, getLayer1Connections, getLayer1Connections, getLayer2Connections, getLayer2Connections, getLayer2Vpns, getLayer2Vpns, getLayer3Connections, getLayer3Connections, getLayer3Vpns, getLayer3Vpns, getMplsInterfaces, getMplsInterfaces, interfaceCollects, interfaceCollects, interfaceDependency, interfaceDependency, interfaceHosts, removeAllDeviceData, removeDataSource, removeDeviceData, removeDeviceEntityData, removeDeviceInterfaceData, removeDeviceLayer2ConnectionData, removeDeviceLayer2VpnData, removeDeviceLayer3VpnData, removeDeviceMplsData, resolveAssociatedAddresses, resolveAssociatedAddresses, setCollectorDescription, setCollectorName
public RANDataStore(java.lang.String collectorName, java.lang.String collectorDescription)
collectorName
- The name of the collectorcollectorDescription
- A description of the collectorpublic static java.lang.String generateRANEntityName(java.lang.String entityType, java.lang.String... params)
entityType
- The type of entity, e.g. ranPacketSwitchedCoreparams
- Any parameters associated with the entity e.g. mcc, mncpublic RANNetworkDevice addBaseStation(int dataSourceId, java.lang.String deviceId, java.lang.String baseStationId, java.lang.String controllerId, java.lang.String technologyType) throws CollectorException
dataSourceId
- The ID of the data sourcedeviceId
- The ID of the base station that uniquely identifies it within the data store - to be used as a device
IDbaseStationId
- The base station ID, which may be the same as the deviceId (or not, for example if the device Id is of
the form bscId/bsId)controllerId
- If known, the unique identifier of the base station controller for this base station (which may or may
not be the controllerId attribute)technologyType
- The RAN technology type (e.g. GSM, GPRS)CollectorException
public RANNetworkDevice addBaseStationController(int dataSourceId, java.lang.String deviceId, java.lang.String controllerId, java.lang.String technologyType) throws CollectorException
dataSourceId
- The ID of the data sourcedeviceId
- The ID of the base station controller that uniquely identifies it within the data store - to be used
as a device IDcontrollerId
- The base station controller ID, which may be the same as the deviceIdtechnologyType
- The RAN technology type (e.g. GSM, GPRS)CollectorException
public RANNetworkDevice addGGSN(int dataSourceId, java.lang.String deviceId, java.lang.String ggsnId, java.lang.String technologyType, java.lang.String accessPointName) throws CollectorException
dataSourceId
- The ID of the data sourcedeviceId
- The ID of the GGSN that uniquely identifies it within the data store - to be used as a device IDggsnId
- The GGSN ID, which may be the same as the deviceIdtechnologyType
- The technology type of the GGSNaccessPointName
- The access point nameCollectorException
public RANLogicalElement addGSMCell(int dataSourceId, java.lang.String cellId, java.lang.String technologyType, java.util.Map<java.lang.String,java.lang.Object> cellData) throws CollectorException
dataSourceId
- The ID of the data sourcecellId
- The ID of the GSM cell that uniquely identifies it within the data store. This may be different to the
cellId attribute if the cellId does not act as a unique identifier between elementstechnologyType
- The technology type for the GSM cellcellData
- Any additional data associated with the cell, from the following list:
CollectorException
public void addLocationInformation(int dataSourceId, java.lang.String elementId, java.lang.String mcc, java.lang.String mnc, java.lang.String lac, java.lang.String rac)
dataSourceId
- The ID of the data source containing the device or elementelementId
- The unique identifier for the element or device to which we want to add RAN location informationrac
- The routing area code for this element (or associated routing area)mcc
- The mobile country code for this element (or associated routing or location area)mnc
- The mobile network code for this element (or associated routing or location area)lac
- The location area code for this element (or associated routing or location area)public RANNetworkDevice addMediaGateway(int dataSourceId, java.lang.String deviceId, java.lang.String mgwId) throws CollectorException
dataSourceId
- The ID of the data sourcedeviceId
- The ID of the media gateway that uniquely identifies it within the data store - to be used as a device
IDmgwId
- The ID of the media gateway, which may be the same as the device IDCollectorException
public RANNetworkDevice addMobileSwitchingCentre(int dataSourceId, java.lang.String deviceId, java.lang.String mscId, java.lang.String technologyType, java.lang.String mscType) throws CollectorException
dataSourceId
- The ID of the data sourcedeviceId
- The ID of the mobile switching centre that uniquely identifies it within the data store - to be used
as a device IDmscId
- The ID of the mobile switching centre, which may be the same as the device IDtechnologyType
- The technology type of the mobile switching centremscType
- The type of the mobile switching centreCollectorException
public RANNetworkDevice addMSS(int dataSourceId, java.lang.String deviceId, java.lang.String mssId) throws CollectorException
dataSourceId
- The ID of the data sourcedeviceId
- The ID of the MSS that uniquely identifies it within the data store - to be used as a device IDmssId
- The ID of the MSS, which may be the same as the device IDCollectorException
public RANNetworkDevice addMultiplexer(int dataSourceId, java.lang.String deviceId) throws CollectorException
dataSourceId
- The ID of the data sourcedeviceId
- The ID of the multiplexer device that uniquely identifies it within the data store - to be used as a
device IDCollectorException
public RANNetworkDevice addNodeB(int dataSourceId, java.lang.String deviceId, java.lang.String nodeBId, java.lang.String controllerId, java.lang.String technologyType) throws CollectorException
dataSourceId
- The ID of the data sourcedeviceId
- The ID of the node B that uniquely identifies it within the data store - to be used as a device IDnodeBId
- The ID of the node B, which may be the same as the deviceId (or not, for example if the device Id is
of the form rncId/nbId)controllerId
- (Optional) The ID of the radio network controller for this node BtechnologyType
- The RAN technology type (e.g. GSM, GPRS)CollectorException
public void addNodeBLocalCell(int dataSourceId, java.lang.String deviceId, java.lang.String localCellId, java.lang.String cellId, java.util.Map<java.lang.String,java.lang.Object> data)
dataSourceId
- The ID of the data sourcedeviceId
- The ID of the network devicelocalCellId
- The ID of the cell to addcellId
- The ID of the associated GSM or UTRAN celldata
- The cell data, e.g. ID and technology typepublic RANNetworkDevice addPacketControlUnit(int dataSourceId, java.lang.String deviceId, java.lang.String packetControlUnitId, java.lang.String controllerId, java.lang.String technologyType) throws CollectorException
dataSourceId
- The ID of the data sourcedeviceId
- The ID of the packet control unit that uniquely identifies it within the data store - to be used as a
device IDpacketControlUnitId
- The ID of the packet control unit which may be the same as the deviceId (or not, for example if the
device Id is of the form bscId/pcuId)controllerId
- If known, the unique identifier of the base station controller for this packet control unit (which may
or may not be the controllerId attribute)technologyType
- The RAN technology type (e.g. GSM, GPRS)CollectorException
public RANNetworkDevice addRadioNetworkController(int dataSourceId, java.lang.String deviceId, java.lang.String controllerId, java.lang.String technologyType) throws CollectorException
dataSourceId
- The ID of the data sourcedeviceId
- The ID of the radio network controller that uniquely identifies it within the data store - to be used
as a device IDcontrollerId
- The radio network controller ID, which may be the same as the deviceIdtechnologyType
- The RAN technology type (e.g. GSM, GPRS)CollectorException
public void addRANConnection(int dataSourceId, java.lang.String deviceId, java.util.Map<java.lang.String,java.lang.Object> connection) throws CollectorException
Add a logical RAN connection to a specified device. Connections can be added for devices or for interfaces on devices.
These connections do not represent connections at Layer1, 2 or 3. They provide a logical association of RAN entities to allow a RAN network to be displayed visually.
If Network Service Entities are used, the identifier can be added to tag the connection, such that an end point
is created at either end. This can, in turn, be used in event lookups. To do this, use the
addRANConnection(int, String, Map, int)
method and provide a network service endpoint identifier
parameter.
dataSourceId
- The ID of the sourcedeviceId
- The ID of the deviceconnection
- Link data: SourceName SourceInterfaceId DestinationName DestinationInterfaceIdCollectorException
public void addRANConnection(int dataSourceId, java.lang.String deviceId, java.util.Map<java.lang.String,java.lang.Object> connection, int nsei) throws CollectorException
Add a logical RAN connection to a specified device. Connections can be added for devices or for interfaces on devices.
These connections do not represent connections at Layer1, 2 or 3. They provide a logical association of RAN entities to allow a RAN network to be displayed visually.
If Network Service Entities are used, the identifier can be added to tag the connection, such that an end point is created at either end. This can, in turn, be used in event lookups. To do this, provide a network service endpoint identifier parameter.
dataSourceId
- The ID of the sourcedeviceId
- The ID of the deviceconnection
- Link data: SourceName SourceInterfaceId DestinationName DestinationInterfaceIdnsei
- The network service endpoint identifier to tag the connection such that an end point is created at
either end.CollectorException
public void addSector(int dataSourceId, java.lang.String deviceId, java.lang.String transceiverId, java.lang.String sectorId, java.util.Map<java.lang.String,java.lang.Object> sectorData)
dataSourceId
- The ID of the data sourcedeviceId
- The ID of the device containing the transceivertransceiverId
- The ID of the transceiversectorId
- The ID of the RAN sector to addsectorData
- A map representing the RAN sector data e.g. ID, height and beam directionpublic RANNetworkDevice addSGSN(int dataSourceId, java.lang.String deviceId, java.lang.String sgsnId, java.lang.String technologyType) throws CollectorException
dataSourceId
- The ID of the data sourcedeviceId
- The ID of the SGSN that uniquely identifies it within the data store - to be used as a device IDsgsnId
- The SGSN ID, which may be the same as the deviceIdtechnologyType
- The technology type of the SGSNCollectorException
public void addTransceiver(int dataSourceId, java.lang.String deviceId, java.lang.String transceiverId, java.lang.String cellId, java.util.Map<java.lang.String,java.lang.Object> data)
dataSourceId
- The ID of the data sourcedeviceId
- The ID of the network devicetransceiverId
- The ID of the transceiver to addcellId
- The ID of the associated GSM or UTRAN celldata
- A map supporting the options listed below:
public RANLogicalElement addUtranCell(int dataSourceId, java.lang.String cellId, java.util.Map<java.lang.String,java.lang.Object> cellData) throws CollectorException
dataSourceId
- The ID of the data sourcecellId
- The ID of the UTRAN cell that uniquely identifies it within the data store. This may be different to
the cellId attribute if the cellId does not act as a unique identifier between elementscellData
- Any additional data associated with the cell, from the following list:
CollectorException
public void associate(int dataSourceId, java.lang.String elementOneId, java.lang.String elementTwoId)
Associatable.associate(Associatable)
method on an element to attempt to automatically define any relationships between the two elements.dataSourceId
- The ID of the data source containing the elementselementOneId
- The ID of the first elementelementTwoId
- The ID of the second elementpublic java.lang.String getNodeBLocalCellName(int dataSourceId, java.lang.String deviceId, java.lang.String cellId)
dataSourceId
- The ID for the data sourcedeviceId
- The ID for the devicecellId
- The id for the node B local cellpublic java.lang.String getRANData(int dataSourceId, java.lang.String deviceId)
dataSourceId
- The ID of the datasourcedeviceId
- The ID of the device (which could be a chassis e.g. a base station, or another entity such as a cell)public java.lang.String getTransceiverName(int dataSourceId, java.lang.String deviceId, java.lang.String transceiverId)
dataSourceId
- The ID for the data sourcedeviceId
- The ID for the devicetransceiverId
- The id for the transceiver