Package de.bsvrz.dav.dav.main
Class LowLevelTransmitterConnections
- java.lang.Object
-
- de.bsvrz.dav.dav.main.LowLevelTransmitterConnections
-
public final class LowLevelTransmitterConnections extends java.lang.Object
Diese Klasse ist die Low-level-Verwaltung für Datenverteiler-Datenverteiler-Verbindungen Sie kümmert sich um den Verbindungsaufbau und um dem Aufbau bei Ersatzverbindungen im Falle eines Fehlers.
-
-
Constructor Summary
Constructors Constructor Description LowLevelTransmitterConnections(HighLevelTransmitterManager transmitterManager, ServerDavParameters serverDavParameters, LowLevelConnectionsManagerInterface lowLevelConnectionsManager)
Konstruktor
-
Method Summary
Modifier and Type Method Description void
close(boolean error, java.lang.String message)
void
disableConnection(long davId)
void
enableConnection(long davId)
java.util.Set<java.lang.Long>
getDisabledTransmitterConnections()
de.bsvrz.dav.daf.main.impl.config.telegrams.TransmitterConnectionInfo
getRemoteTransmitterConnectionInfo(long connectedTransmitterId)
java.util.Map<de.bsvrz.dav.daf.main.impl.config.telegrams.TransmitterInfo,CommunicationStateAndMessage>
getStateMap()
T_T_HighLevelCommunication
getTransmitterConnection(long transmitterId)
de.bsvrz.dav.daf.main.impl.config.telegrams.TransmitterConnectionInfo
getTransmitterConnectionInfo(long connectedTransmitterId)
java.util.Collection<T_T_HighLevelCommunication>
getTransmitterConnections()
short
getWeight(long connectedTransmitterId)
Diese Methode wird von der Protokollsteuerung aufgerufen, um einer Verbindung ein Gewicht zuzuweisen.void
removeTransmitterConnection(T_T_HighLevelCommunication transmitterCommunication)
Entfernt die angegebene Verbindung, weil diese terminiert wurdevoid
setDisabledTransmitterConnections(java.util.Collection<java.lang.Long> disabledConnections)
void
startTransmitterConnections(java.lang.Class<? extends de.bsvrz.dav.daf.communication.lowLevel.ServerConnectionInterface> communicationProtocolClass, de.bsvrz.dav.daf.main.impl.config.telegrams.TransmitterConnectionInfo[] transmitterConnectionInfos, java.util.Collection<java.lang.Long> disabledConnections)
Startet den Aufbau der Dav-Dav-Verbindungenvoid
updateId(T_T_HighLevelCommunication communication)
-
-
-
Constructor Detail
-
LowLevelTransmitterConnections
public LowLevelTransmitterConnections(HighLevelTransmitterManager transmitterManager, ServerDavParameters serverDavParameters, LowLevelConnectionsManagerInterface lowLevelConnectionsManager)
Konstruktor- Parameters:
transmitterManager
- High-Level-VerwaltungserverDavParameters
- ParameterlowLevelConnectionsManager
- Low-Level-Verwaltung
-
-
Method Detail
-
startTransmitterConnections
public void startTransmitterConnections(java.lang.Class<? extends de.bsvrz.dav.daf.communication.lowLevel.ServerConnectionInterface> communicationProtocolClass, de.bsvrz.dav.daf.main.impl.config.telegrams.TransmitterConnectionInfo[] transmitterConnectionInfos, java.util.Collection<java.lang.Long> disabledConnections) throws java.lang.InstantiationException, java.lang.IllegalAccessException, de.bsvrz.dav.daf.main.CommunicationError
Startet den Aufbau der Dav-Dav-Verbindungen- Parameters:
communicationProtocolClass
- Kommunikationsprotokoll-KlassetransmitterConnectionInfos
- Konfigurierte Dav-Dav-VerbindungendisabledConnections
- Deaktivierte Verbindungen- Throws:
java.lang.InstantiationException
- Wenn das Kommunikationsprotokoll nicht erzeugt werden kann (benötigt öffentlichen, parameterlosen Konstruktor)java.lang.IllegalAccessException
- Wenn das Kommunikationsprotokoll nicht erzeugt werden kann (benötigt öffentlichen, parameterlosen Konstruktor)de.bsvrz.dav.daf.main.CommunicationError
- Wenn beim Aufbau der Serververbindung ein Fehler auftritt (z.B. Port bereits belegt)
-
getWeight
public final short getWeight(long connectedTransmitterId)
Diese Methode wird von der Protokollsteuerung aufgerufen, um einer Verbindung ein Gewicht zuzuweisen. Die Information wird von der Wegverwaltung benutzt, wenn eine Verbindung bewertet wird.- Parameters:
connectedTransmitterId
- ID des DAV- Returns:
- Gewichtung der Verbindung
-
close
public void close(boolean error, java.lang.String message)
-
removeTransmitterConnection
public void removeTransmitterConnection(T_T_HighLevelCommunication transmitterCommunication)
Entfernt die angegebene Verbindung, weil diese terminiert wurde- Parameters:
transmitterCommunication
- Verbindung
-
getTransmitterConnections
public java.util.Collection<T_T_HighLevelCommunication> getTransmitterConnections()
-
updateId
public void updateId(T_T_HighLevelCommunication communication)
-
getDisabledTransmitterConnections
public java.util.Set<java.lang.Long> getDisabledTransmitterConnections()
-
setDisabledTransmitterConnections
public void setDisabledTransmitterConnections(java.util.Collection<java.lang.Long> disabledConnections)
-
enableConnection
public void enableConnection(long davId)
-
disableConnection
public void disableConnection(long davId)
-
getStateMap
public java.util.Map<de.bsvrz.dav.daf.main.impl.config.telegrams.TransmitterInfo,CommunicationStateAndMessage> getStateMap()
-
getTransmitterConnectionInfo
public de.bsvrz.dav.daf.main.impl.config.telegrams.TransmitterConnectionInfo getTransmitterConnectionInfo(long connectedTransmitterId)
-
getRemoteTransmitterConnectionInfo
public de.bsvrz.dav.daf.main.impl.config.telegrams.TransmitterConnectionInfo getRemoteTransmitterConnectionInfo(long connectedTransmitterId)
-
getTransmitterConnection
public T_T_HighLevelCommunication getTransmitterConnection(long transmitterId)
-
-