public final class ParameterDataTransferPolicy
extends java.lang.Object
Diese Klasse wird benutzt, um bei beidseitigen Parameter-Daten-Übetragungen festzustellen, wenn beide Seiten annährend gleichzeitig Parameter senden. Dann wird das lokale System priorisiert und ein unendlichen hin und her-wechseln der Daten verhindert.
Funktionsweise der Klasse: Es gibt 2 innere DataTransferPolicy
-Klassen, die jeweils für den Datenverkehr in eine Richtung zuständig sind. Falls Daten eintreffen, wird über einen ThreadPool der Task _task
gestartet, der sich um die eingetroffenen Daten kümmert.
Modifier and Type | Class and Description |
---|---|
(package private) class |
ParameterDataTransferPolicy.Policy |
Modifier and Type | Field and Description |
---|---|
private DataTransferPolicy.DataPackage |
_currentData |
private ParameterDataTransferPolicy.Policy |
_localRemotePolicy
Die Transfer-Klasse für die Verbindung Lokal nach Remote
|
private ParameterDataTransferPolicy.Policy |
_remoteLocalPolicy
Die Transfer-Klasse für Remote nach Lokal
|
private java.lang.Runnable |
_task
Der Task, der die Daten weiterleitet und dabei verhindert, dass in beide Richtungen annährend gleichzeitg Daten übertragen werden.
|
(package private) static java.util.concurrent.ThreadPoolExecutor |
_threadPool |
Constructor and Description |
---|
ParameterDataTransferPolicy(LowLevelDataPipe localRemoteDataPipe,
LowLevelDataPipe remoteLocalDataPipe)
Konstruktor
|
Modifier and Type | Method and Description |
---|---|
DataTransferPolicy |
getLocalRemotePolicy()
Gibt das Verbindungsverfahren für die Lokal-Remote-Datenleitung zurück
|
DataTransferPolicy |
getRemoteLocalPolicy()
Gibt das Verbindungsverfahren für die Remote-Lokal-Datenleitung zurück
|
private final ParameterDataTransferPolicy.Policy _localRemotePolicy
Die Transfer-Klasse für die Verbindung Lokal nach Remote
private final ParameterDataTransferPolicy.Policy _remoteLocalPolicy
Die Transfer-Klasse für Remote nach Lokal
private final java.lang.Runnable _task
Der Task, der die Daten weiterleitet und dabei verhindert, dass in beide Richtungen annährend gleichzeitg Daten übertragen werden.
private DataTransferPolicy.DataPackage _currentData
static final java.util.concurrent.ThreadPoolExecutor _threadPool
public ParameterDataTransferPolicy(LowLevelDataPipe localRemoteDataPipe, LowLevelDataPipe remoteLocalDataPipe)
Konstruktor
localRemoteDataPipe
- Datenleitung Lokal nach RemoteremoteLocalDataPipe
- Datenleitung Remote nach Lokalpublic DataTransferPolicy getLocalRemotePolicy()
Gibt das Verbindungsverfahren für die Lokal-Remote-Datenleitung zurück
public DataTransferPolicy getRemoteLocalPolicy()
Gibt das Verbindungsverfahren für die Remote-Lokal-Datenleitung zurück