Class LowLevelDataPipe

  • Direct Known Subclasses:
    LowLevelDataPipeDrain, LowLevelDataPipeSource

    public abstract class LowLevelDataPipe
    extends java.lang.Object
    Empfängt Daten von einem Objekt in einem Datenverteiler und sendet diese an das gleiche oder ein anderes Objekt (vorzugsweise auf einem anderen Datenverteiler), evtl. unter Benutzung einer anderen Attributgruppe und eines anderen Aspekts sowie unter Zuhilfenahme eines Plugins, das die Daten gegebenenfalls anpasst, falls z.B. unterschiedliche Attributgruppen vorliegen.
    • Field Detail

      • _atgSource

        protected final java.lang.String _atgSource
      • _atgTarget

        protected final java.lang.String _atgTarget
      • _aspSource

        protected final java.lang.String _aspSource
      • _aspTarget

        protected final java.lang.String _aspTarget
      • _simulationVariantSource

        protected final short _simulationVariantSource
      • _simulationVariantTarget

        protected final short _simulationVariantTarget
      • _receiveOptions

        protected final de.bsvrz.dav.daf.main.ReceiveOptions _receiveOptions
      • _receiverRole

        protected final de.bsvrz.dav.daf.main.ReceiverRole _receiverRole
      • _senderRole

        protected final de.bsvrz.dav.daf.main.SenderRole _senderRole
      • _hasSender

        protected volatile boolean _hasSender
      • _hasReceiver

        protected volatile boolean _hasReceiver
      • _stopOnNextData

        protected volatile boolean _stopOnNextData
    • Constructor Detail

      • LowLevelDataPipe

        protected LowLevelDataPipe​(ManagerInterface manager,
                                   java.lang.String aspTarget,
                                   ObjectManagerInterface objectManagerInterface,
                                   java.lang.String atgSource,
                                   KExDaVObject target,
                                   short simulationVariantTarget,
                                   java.lang.String atgTarget,
                                   short simulationVariantSource,
                                   java.lang.String aspSource,
                                   KExDaVDataPlugin plugin,
                                   de.bsvrz.dav.daf.main.ReceiverRole receiverRole,
                                   de.bsvrz.dav.daf.main.SenderRole senderRole,
                                   de.bsvrz.dav.daf.main.ReceiveOptions receiveOptions,
                                   KExDaVObject source)
    • Method Detail

      • createLowLevelDataPipe

        public static LowLevelDataPipe createLowLevelDataPipe​(KExDaVObject source,
                                                              KExDaVObject target,
                                                              java.lang.String atgSource,
                                                              java.lang.String atgTarget,
                                                              java.lang.String aspSource,
                                                              java.lang.String aspTarget,
                                                              short simulationVariantSource,
                                                              short simulationVariantTarget,
                                                              de.bsvrz.dav.daf.main.ReceiveOptions receiveOptions,
                                                              de.bsvrz.dav.daf.main.ReceiverRole receiverRole,
                                                              de.bsvrz.dav.daf.main.SenderRole senderRole,
                                                              KExDaVDataPlugin plugin,
                                                              ObjectManagerInterface objectManagerInterface,
                                                              ManagerInterface manager)
        Erstellt eine Datenverbindungsklasse
        Parameters:
        source - Quell-Objekt
        target - Ziel-Objekt
        atgSource - Quell-Atg
        atgTarget - Ziel-Atg
        aspSource - Quell-Aspekt
        aspTarget - Ziel-Aspekt
        simulationVariantSource - Quell-Simulationsvariante
        simulationVariantTarget - Ziel-Simulationsvariante
        receiveOptions - Nur geänderte Daten übertragen?
        receiverRole - Art der Anmeldung im Quellsystem
        senderRole - Art der Anmeldung im Zielsystem
        plugin - Modul, das das Kopieren und gegebenenfalls anpassen der Daten übernimmt. Im einfachsten Fall eine Instanz des BasicKExDaVDataPlugin.
        objectManagerInterface - Verwaltung korrespondierender Objekte (optional)
        manager - Callback für Ereignisse und Warnungen
        Returns:
        Datenverbindungsklasse
      • setPolicy

        public void setPolicy​(DataTransferPolicy policy)
        Setzt das Austauschverfahren (sinnvollerweise zu setzen, bevor der Datenaustausch gestartet wird)
        Parameters:
        policy - Austauschverfahren
      • start

        public abstract void start()
        Startet den Datentransfer
      • stop

        public void stop()
        Stoppt den Datentransfer
      • startOneTime

        public void startOneTime()
        Führt nur einen Datenaustausch durch
      • equals

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • updateSendControl

        protected abstract void updateSendControl​(byte state)