Class Client
- java.lang.Object
-
- de.bsvrz.kex.tls.osi2osi3.osi2.api.AbstractDataLinkLayer
-
- de.bsvrz.kex.tls.osi2osi3.osi2.tlsoip.Client
-
- All Implemented Interfaces:
de.bsvrz.kex.tls.osi2osi3.osi2.api.DataLinkLayer,de.bsvrz.kex.tls.osi2osi3.properties.PropertyQueryInterface
public class Client extends de.bsvrz.kex.tls.osi2osi3.osi2.api.AbstractDataLinkLayer implements de.bsvrz.kex.tls.osi2osi3.properties.PropertyQueryInterfaceKlasse, die als OSI-2 Protokollmodul für den Client-seitigen Teil einer TLSoIP-Verbindung eingesetzt werden kann.Zur Verwendung dieses Protokollmoduls ist an dem jeweiligen Anschlusspunkt in der Konfiguration in der Attributgruppe "atg.anschlussPunkt" im Attribut "ProtokollTyp" der Wert "de.bsvrz.kex.tls.osi2osi3.osi2.tlsoip.Client" einzutragen.
Im Parameter "atg.protokollEinstellungenStandard" des Anschlußpunkts können die Standardwerte für alle Verbindungen an diesem Anschlußpunkt eingestellt.
Im Parameter "atg.protokollEinstellungenPrimary" der dem Anschlußpunkt zugeordneten AnschlußPunktKommunikationsPartner können individuelle Werte für die Verbindung zum jeweiligen Kommunikationspartner eingestellt werden.
Die Parameterdatensätze können dabei mehrere Einträge enthalten, die jeweils aus einem Namen und einem Wert bestehen.
Folgende Einträge werden unterstützt (siehe auch TLS 2009, Teil 2, Datenübertragung über TCP/IP (TLSoIP):
Verbindungsparameter für beide Verbindungspartner:
Verbindungsparameter für den Client:TLSoIP 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). TLSoIP 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-Serverstlsoip.C_AcceptPortB WIRD AKTUELL NICHT UNTERSTÜTZT!
Portnummer des Alternativ-Serverstlsoip.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.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classClient.ActionTypeDefiniert die Aktionscodes, die von den API-Methoden zur Steuerung des Protokoll-Threads versendet werden
-
Constructor Summary
Constructors Constructor Description Client()Default-Konstruktor, mit dem neue TLSoverIP-Client Protokolle instanziiert werden können.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidabort()Bricht die Kommunikation auf allen Verbindungen des Protokolls sofort ab und beendet anschließend das Protokoll.de.bsvrz.kex.tls.osi2osi3.osi2.api.DataLinkLayer.LinkcreateLink(int remoteAddress)Erzeugt ein neues Verbindungsobjekt.protected java.lang.StringgetDefaultProperty(java.lang.String name)Liefert den Standard-Wert für eine Eigenschaft an einem Anschlusspunkt bei TLS over IP.intgetMaximumDataSize()Bestimmt die maximale Anzahl von Nutzdatenbytes in einem OSI-2 Paket (Telegramm).booleanisStarted()Bestimmt, ob die Kommunikation dieses Protokolls bereits mit der Methodestart()aktiviert wurde.voidsetDavConnection(de.bsvrz.dav.daf.main.ClientDavInterface connection)Nimmmt die Verbindung zum Datenverteiler entgegen.voidsetProperties(java.util.Properties properties)Setzt neue Protokollparameter.voidshutdown()Terminiert alle Verbindungen des Protokolls und beendet anschließend das Protokoll.voidstart()Initialisiert das Protokoll und startet den Protokoll-Threadjava.lang.StringtoString()Gibt Informationen des Protokolls für Debugzwecke zurück.-
Methods inherited from class de.bsvrz.kex.tls.osi2osi3.osi2.api.AbstractDataLinkLayer
addEventListener, allowConnection, allowConnection, checkConnection, getLocalAddress, getProperty, notifyEvent, notifyEvent, removeEventListener, setLocalAddress
-
-
-
-
Method Detail
-
abort
public void abort()
Bricht die Kommunikation auf allen Verbindungen des Protokolls sofort ab und beendet anschließend das Protokoll.- Specified by:
abortin interfacede.bsvrz.kex.tls.osi2osi3.osi2.api.DataLinkLayer
-
createLink
public de.bsvrz.kex.tls.osi2osi3.osi2.api.DataLinkLayer.Link createLink(int remoteAddress)
Erzeugt ein neues Verbindungsobjekt.- Specified by:
createLinkin interfacede.bsvrz.kex.tls.osi2osi3.osi2.api.DataLinkLayer- Parameters:
remoteAddress- OSI-2 Adresse des Kommunikationspartners- Returns:
- Neues Verbindungsobjekt
-
isStarted
public boolean isStarted()
Bestimmt, ob die Kommunikation dieses Protokolls bereits mit der Methodestart()aktiviert wurde.- Specified by:
isStartedin interfacede.bsvrz.kex.tls.osi2osi3.osi2.api.DataLinkLayer- Returns:
true, wenn die Kommunikation dieses Protokolls bereits aktiviert wurde, sonstfalse.
-
setDavConnection
public void setDavConnection(de.bsvrz.dav.daf.main.ClientDavInterface connection)
Nimmmt die Verbindung zum Datenverteiler entgegen. Diese Methode wird vom OSI-3 Modul nach dem Erzeugen des OSI-2 Moduls durch den jeweiligen Konstruktor aufgerufen. Eine Implementierung eines Protokollmoduls kann sich bei Bedarf die übergebene Datenverteilerverbindung intern merken, um zu späteren Zeitpunkten auf die Datenverteiler-Applikationsfunktionen zuzugreifen.- Specified by:
setDavConnectionin interfacede.bsvrz.kex.tls.osi2osi3.osi2.api.DataLinkLayer- Parameters:
connection- Verbindung zum Datenverteiler
-
setProperties
public void setProperties(java.util.Properties properties)
Setzt neue Protokollparameter. Alle Verbindungen werden mit den neuen Parametern reinitialisiert.- Specified by:
setPropertiesin interfacede.bsvrz.kex.tls.osi2osi3.osi2.api.DataLinkLayer- Overrides:
setPropertiesin classde.bsvrz.kex.tls.osi2osi3.osi2.api.AbstractDataLinkLayer- Parameters:
properties- Neue Protokoll und Verbindungsparameter
-
shutdown
public void shutdown()
Terminiert alle Verbindungen des Protokolls und beendet anschließend das Protokoll.- Specified by:
shutdownin interfacede.bsvrz.kex.tls.osi2osi3.osi2.api.DataLinkLayer
-
start
public void start()
Initialisiert das Protokoll und startet den Protokoll-Thread- Specified by:
startin interfacede.bsvrz.kex.tls.osi2osi3.osi2.api.DataLinkLayer
-
toString
public java.lang.String toString()
Gibt Informationen des Protokolls für Debugzwecke zurück. Das genaue Format ist nicht festgelegt und kann sich ändern..- Overrides:
toStringin classjava.lang.Object- Returns:
- Gibt Informationen des Protokolls für Debugzwecke zurück
-
getDefaultProperty
protected java.lang.String getDefaultProperty(java.lang.String name)
Liefert den Standard-Wert für eine Eigenschaft an einem Anschlusspunkt bei TLS over IP.- Specified by:
getDefaultPropertyin classde.bsvrz.kex.tls.osi2osi3.osi2.api.AbstractDataLinkLayer- Parameters:
name- der Eigenschaft.- Returns:
- Standard-Wert der abgefragten Eigenschaft.
-
getMaximumDataSize
public int getMaximumDataSize()
Bestimmt die maximale Anzahl von Nutzdatenbytes in einem OSI-2 Paket (Telegramm).- Returns:
- Maximale Anzahl Nutzdatenbytes.
-
-