public class Client extends TLSoIP implements de.bsvrz.kex.tls.osi2osi3.properties.PropertyQueryInterface
Name | Defaultwert | Beschreibung |
---|---|---|
tlsoip.C_HelloDelay | 30 | Zeit [s], nach der ein Keep-Alive-Telegramm an die Gegenstelle versendet werden muss (0=ausgeschaltet für Testzwecke, 1...3599). |
tlsoip.C_HelloTimeout | 60 | Zeit [s], nach der spätestens ein Keep-Alive-Telegramm der Gegenstelle erwartet wird ( > C_HelloDelay der Gegenstelle), (0=ausgeschaltet für Testzwecke, 1...3600). |
tlsoip.C_ReceiptCount | 10 | Anzahl empfangener/gesendeter Telegramme, nach der spätestens ein Quittungstelegramm versendet werden muss/erwartet wird (1..255). |
tlsoip.C_ReceiptDelay | 15 | Zeit [s], nach der nach Erhalt eines Telegramms spätenstens ein Quittierungstelegramm an die Gegenstelle versendet werden muss (1..59). |
tlsoip.C_ReceiptTimeout | 30 | Zeit [s], nach der spätestens ein Quittungstelegramm von der Gegenstelle erwartet wird (> C_ReceiptDelay der Gegenstelle) (1..60). |
tlsoip.C_SecureConnection | nein | WIRD AKTUELL NICHT UNTERSTÜTZT (immer nein): Verbindung wird ohne SSL betrieben (nein), Verbindung wird mit SSL betrieben (ja). |
Name | Defaultwert | Beschreibung |
---|---|---|
tlsoip.C_ServerAdrA | IP-Adresse des Servers. | |
tlsoip.C_AcceptPortA | Portnummer des Servers. | |
tlsoip.C_ReconnectDelay | 20 | Zeit [s], nach der bei Nichtbestehen einer Verbindung spätestens ein neuer Verbindungsaufbau initiiert werden muss (0=sofort, 1...3600). |
tlsoip.C_ConnectDuration | 0 |
AKTUELL WIRD NUR "0=immer" UNTERSTÜTZT! Dauer [s], für die eine Verbindung vom Client aufrecht erhalten werden soll (0=immer, 1...3600). |
tlsoip.C_ConnectDelay | 00 05 00 | WIRD AKTUELL
NICHT UNTERSTÜTZT! Zeit [hh mm ss], nach der zur Prüfung der Erreichbarkeit des Servers ein Verbindungsaufbau stattfinden muss (optional, nur für temporäre Verbindungen) (00 00 01...23 59 59). |
tlsoip.C_ServerAdrB | WIRD AKTUELL NICHT UNTERSTÜTZT! IP-Adresse des Alternativ-Servers |
|
tlsoip.C_AcceptPortB | WIRD AKTUELL NICHT UNTERSTÜTZT! Portnummer des Alternativ-Servers | |
tlsoip.waitForInitialReceive | nein | Wenn "ja", dann wartet das Protokoll nach dem Aufbau der TCP-Verbindung auf den Empfang eines initialen Telegramms, bevor eine Verbindung als "lebt" gemeldet wird. |
Modifier and Type | Class and Description |
---|---|
static class |
Client.ActionType
Definiert die Aktionscodes, die von den API-Methoden zur Steuerung des Protokoll-Threads versendet werden
|
private static class |
Client.IllegalTelegramException
Signalisiert fehlerhafte Zustände in empfangenen Telegrammen
|
private class |
Client.Link
Realisiert ein Verbindungsobjekt, das die Kommunikation mit einem einzelnen Kommunikationspartner verwaltet.
|
private static class |
Client.PriorizedByteArray
Dient zur Speicherung eines zu versendenden Telegramms mit einer zugeordneten Priorität
|
private class |
Client.Worker
Klasse die das Runnable-Interface implementiert, vom Protokollthread ausgeführt wird und den Protokollablauf
steuert
|
Modifier and Type | Field and Description |
---|---|
(package private) de.bsvrz.dav.daf.main.ClientDavInterface |
_connection
Verbindung zum Datenverteiler
|
private java.util.List<Client.Link> |
_links
Verbindungen zu Kommunikationspartnern, die durch das Protokoll verwaltet werden
|
private java.lang.Object |
_protocolLock
Monitor Objekt, das zur Synchronisation des Protokoll-Threads und den API-Zugriffen von fremden Threads auf das
Protokoll koordiniert
|
private ProtocolState |
_protocolState
Aktueller Zustand des Protokolls
|
(package private) Client.Worker |
_worker
Runnable Objekt, das vom Protokollthread ausgeführt wird und den Protokollablauf steuert
|
private java.lang.Thread |
_workThread
Thread des Protokolls
|
private static de.bsvrz.sys.funclib.debug.Debug |
DEBUG
Logger für Debugausgaben
|
Constructor and Description |
---|
Client()
Default-Konstruktor, mit dem neue TLSoverIP-Client Protokolle instanziiert werden können.
|
Modifier and Type | Method and Description |
---|---|
void |
abort()
Bricht die Kommunikation auf allen Verbindungen des Protokolls sofort ab und beendet anschließend das Protokoll.
|
de.bsvrz.kex.tls.osi2osi3.osi2.api.DataLinkLayer.Link |
createLink(int remoteAddress)
Erzeugt ein neues Verbindungsobjekt.
|
boolean |
isStarted()
Bestimmt, ob die Kommunikation dieses Protokolls bereits mit der Methode
start() aktiviert wurde. |
void |
setDavConnection(de.bsvrz.dav.daf.main.ClientDavInterface connection)
Nimmmt die Verbindung zum Datenverteiler entgegen.
|
void |
setProperties(java.util.Properties properties)
Setzt neue Protokollparameter.
|
void |
shutdown()
Terminiert alle Verbindungen des Protokolls und beendet anschließend das Protokoll.
|
void |
start()
Initialisiert das Protokoll und startet den Protokoll-Thread
|
java.lang.String |
toString()
Gibt Informationen des Protokolls für Debugzwecke zurück.
|
getDefaultProperty, getMaximumDataSize
addEventListener, allowConnection, allowConnection, checkConnection, getLocalAddress, getProperty, notifyEvent, notifyEvent, removeEventListener, setLocalAddress
private static final de.bsvrz.sys.funclib.debug.Debug DEBUG
private final java.lang.Thread _workThread
final Client.Worker _worker
de.bsvrz.dav.daf.main.ClientDavInterface _connection
private ProtocolState _protocolState
private java.util.List<Client.Link> _links
private final java.lang.Object _protocolLock
public Client() throws java.io.IOException
java.io.IOException
- wenn eine nicht abgefangene Ausnahme auftritt.public void abort()
abort
in interface de.bsvrz.kex.tls.osi2osi3.osi2.api.DataLinkLayer
public de.bsvrz.kex.tls.osi2osi3.osi2.api.DataLinkLayer.Link createLink(int remoteAddress)
createLink
in interface de.bsvrz.kex.tls.osi2osi3.osi2.api.DataLinkLayer
remoteAddress
- OSI-2 Adresse des Kommunikationspartnerspublic boolean isStarted()
start()
aktiviert wurde.isStarted
in interface de.bsvrz.kex.tls.osi2osi3.osi2.api.DataLinkLayer
true
, wenn die Kommunikation dieses Protokolls bereits aktiviert wurde, sonst
false
.public void setDavConnection(de.bsvrz.dav.daf.main.ClientDavInterface connection)
setDavConnection
in interface de.bsvrz.kex.tls.osi2osi3.osi2.api.DataLinkLayer
connection
- Verbindung zum Datenverteilerpublic void setProperties(java.util.Properties properties)
setProperties
in interface de.bsvrz.kex.tls.osi2osi3.osi2.api.DataLinkLayer
setProperties
in class de.bsvrz.kex.tls.osi2osi3.osi2.api.AbstractDataLinkLayer
properties
- Neue Protokoll und Verbindungsparameterpublic void shutdown()
shutdown
in interface de.bsvrz.kex.tls.osi2osi3.osi2.api.DataLinkLayer
public void start()
start
in interface de.bsvrz.kex.tls.osi2osi3.osi2.api.DataLinkLayer
public java.lang.String toString()
toString
in class java.lang.Object