Package de.bsvrz.dav.dav.main
Class LowLevelTransmitterConnections
- java.lang.Object
-
- de.bsvrz.dav.dav.main.LowLevelTransmitterConnections
-
public final class LowLevelTransmitterConnections extends java.lang.ObjectDiese 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
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose(boolean error, java.lang.String message)voiddisableConnection(long davId)voidenableConnection(long davId)java.util.Set<java.lang.Long>getDisabledTransmitterConnections()de.bsvrz.dav.daf.main.impl.config.telegrams.TransmitterConnectionInfogetRemoteTransmitterConnectionInfo(long connectedTransmitterId)java.util.Map<de.bsvrz.dav.daf.main.impl.config.telegrams.TransmitterInfo,CommunicationStateAndMessage>getStateMap()T_T_HighLevelCommunicationgetTransmitterConnection(long transmitterId)de.bsvrz.dav.daf.main.impl.config.telegrams.TransmitterConnectionInfogetTransmitterConnectionInfo(long connectedTransmitterId)java.util.Collection<T_T_HighLevelCommunication>getTransmitterConnections()shortgetWeight(long connectedTransmitterId)Diese Methode wird von der Protokollsteuerung aufgerufen, um einer Verbindung ein Gewicht zuzuweisen.voidremoveTransmitterConnection(T_T_HighLevelCommunication transmitterCommunication)Entfernt die angegebene Verbindung, weil diese terminiert wurdevoidsetDisabledTransmitterConnections(java.util.Collection<java.lang.Long> disabledConnections)voidstartTransmitterConnections(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-VerbindungenvoidupdateId(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.CommunicationErrorStartet 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 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)
-
-