Class LowLevelTransmitterConnections

java.lang.Object
de.bsvrz.dav.dav.main.LowLevelTransmitterConnections

public final class LowLevelTransmitterConnections extends 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 Details

  • Method Details

    • startTransmitterConnections

      public void startTransmitterConnections(Class<? extends de.bsvrz.dav.daf.communication.lowLevel.ServerConnectionInterface> communicationProtocolClass, de.bsvrz.dav.daf.main.impl.config.telegrams.TransmitterConnectionInfo[] transmitterConnectionInfos, Collection<Long> disabledConnections) throws InstantiationException, IllegalAccessException, de.bsvrz.dav.daf.main.CommunicationError
      Startet den Aufbau der Dav-Dav-Verbindungen
      Parameters:
      communicationProtocolClass - Kommunikationsprotokoll-Klasse
      transmitterConnectionInfos - Konfigurierte Dav-Dav-Verbindungen
      disabledConnections - Deaktivierte Verbindungen
      Throws:
      InstantiationException - Wenn das Kommunikationsprotokoll nicht erzeugt werden kann (benötigt öffentlichen, parameterlosen Konstruktor)
      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, String message)
    • removeTransmitterConnection

      public void removeTransmitterConnection(T_T_HighLevelCommunication transmitterCommunication)
      Entfernt die angegebene Verbindung, weil diese terminiert wurde
      Parameters:
      transmitterCommunication - Verbindung
    • getTransmitterConnections

      public Collection<T_T_HighLevelCommunication> getTransmitterConnections()
    • updateId

      public void updateId(T_T_HighLevelCommunication communication)
    • getDisabledTransmitterConnections

      public Set<Long> getDisabledTransmitterConnections()
    • setDisabledTransmitterConnections

      public void setDisabledTransmitterConnections(Collection<Long> disabledConnections)
    • enableConnection

      public void enableConnection(long davId)
    • disableConnection

      public void disableConnection(long davId)
    • getStateMap

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