Provides interfaces to store and retrieve cabling and channel data.

The {@link mice.cdb.service.cabling.Cabling Cabling} interface provides methods to retrieve data and the {@link mice.cdb.service.cabling.CablingSuperMouse CablingSuperMouse} interface extends the Cabling interface providing additional methods to store data.

The cabling can be split into three distinct types with different data stored about each type. The types are:

Control
Detector
Tracker

Controls

The data stored for the controls are:

crate
the number of the crate
module
the number of the module
channel
the number of the channel
name
the name of the device that is connected to the channel

Where the combination of crate, module, channel are unique.

Detectors

The data stored for the detectors are:

name
the name of the detector
adcComputerId
the adc computer id
adcGeoNumber
the adc geo number
adcChannel
the adc channel
tdcComputerId
the tdc computer id
tdcGeoNumber
the tdc geo number
tdcChannel
the tdc channel
station
the station number
plane
the plane number
slab
the slab number
pmt
the pmt number

Possible values for the name of the trackers 'Ckov A', 'Ckov B', 'EMR', 'KL', 'Scalers', 'TOF0', 'TOF1', 'TOF2', 'Trigger', 'Trigger request'

Trackers

The data stored for the trackers are:

name
the name of the tracker
vlsbComputerId
the vlsb computer id
vlsbGeoNumber
the vlsb geo number
vlsbChannel
the vlsb channel
trackerNo
the tracker number
station
the station number
plane
the plane number
channel
the channel number

Where the combination of vlsbComputerId, vlsbGeoNumber, vlsbChannel are unique. Possible values for the name of the trackers are are 'Tracker 1' and 'Tracker 2'

General

The data about cabling are made persistent via a relational database. The address of the database is determined from the configuration file cdb.props . The configuration file can be found at MICE_HOME/etc/cdb-server/ , where MICE_HOME is a property passed into the servlet container. By default if MICE_HOME is not set then the value /opt/mice is used. The configuration file should contain the following properties:

db.url
db.name
db.user
db.pwd
db.superUser
db.superPwd

Where db.url is the URL of the database to use, db.name is the name of the database, db.user and db.pwd should point a READ ONLY account for use by the Cabling class and db.superUser and db.superPwd are used by the CablingSuperMouse class for READ/WRITE access to the database.

@since 1.0