public class Server 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_AcceptPort | Dynamische und oder Private Ports (49152 bis 65535) gemäß IANA konfigurierbar, auf dem der Server anfragen entgegen nimmt. | |
tlsoip.C_PortMode | aktiv | AKTUELL WIRD NUR "AKTIV" UNTERSTÜTZT! Portmodus (aktiv/passiv). Passiv nur für Mithörschnittstellen. |
tlsoip.C_ClientCount | 1 | AKTUELL WIRD NUR PortMode
"AKTIV" mit ClientClount "1" UNTERSTÜTZT! Anzahl der unterstützten Ports (1..255), bei aktiven Ports immer gleich 1. |
tlsoip.C_ActivePort | WIRD AKTUELL NICHT UNTERSTÜTZT! Bei passiven Ports: Zugeordneter aktiver Port. | |
tlsoip.C_XmitRequest | nein | WIRD AKTUELL
NICHT UNTERSTÜTZT! Bei passiven Ports: Übertragung der Telegramme in Abrufrichtung (ja/nein). |
tlsoip.C_XmitAnswer | nein | WIRD AKTUELL NICHT UNTERSTÜTZT! Bei passiven Ports: Übertragung der Telegramme in Antwortrichtung (ja/nein). |
tlsoip.C_TelTypeList | WIRD AKTUELL NICHT UNTERSTÜTZT! Bei passiven Ports: Liste der erlaubten TelType (OSI-2 TLSoIP). |
Modifier and Type | Class and Description |
---|---|
static class |
Server.ActionType
Definiert die Aktionscodes, die von den API-Methoden zur Steuerung des Protokoll-Threads versendet werden
|
private static class |
Server.IllegalTelegramException
Signalisiert fehlerhafte Zustände in empfangenen Telegrammen
|
private class |
Server.Link
Realisiert ein Verbindungsobjekt, das die Kommunikation mit einem einzelnen Kommunikationspartner verwaltet.
|
private static class |
Server.PriorizedByteArray
Dient zur Speicherung eines zu versendenden Telegramms mit einer zugeordneten Priorität
|
private class |
Server.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<Server.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) Server.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 |
---|
Server()
Default-Konstruktor, mit dem neue TLSoverIP-Server 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 Server.Worker _worker
de.bsvrz.dav.daf.main.ClientDavInterface _connection
private ProtocolState _protocolState
private java.util.List<Server.Link> _links
private final java.lang.Object _protocolLock
public Server() 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