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
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 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)
-
-