public class Client extends WanCom implements PropertyQueryInterface
Name | Defaultwert | Beschreibung |
---|---|---|
wancom.host | Domainname oder IP-Adresse des Kommunikationspartners. | |
wancom.port | 7100 | TCP-Portnummer des WanCom-Servers beim Kommunikationspartner. |
wancom.version | 35 | Im WanCom-Header übertragene Version des eingesetzten Protokolls. |
wancom.keepAliveTime | 20 | Zeit in Sekunden zwischen dem Versand von 2 Keep-Alive Telegrammen. |
wancom.keepAliveTimeoutCount | 3 | Anzahl von in Folge vergangenen keepAliveTime-Intervallen ohne Empfang eines KeepAlive-Telegramms bevor die Verbindung abgebrochen wird. |
wancom.keepAliveType | 50 | WanCom-Type-Feld in KeepAlive-Telegrammen. |
wancom.tlsType | 600 | WanCom-Type-Feld in versendeten TLS-Telegrammen. |
wancom.tlsTypeReceive | WanCom-Type-Feld in empfangenen TLS-Telegrammen. Dieser Wert muss nur
angegeben werden, wenn er sich vom WanCom-Typen zum Versand (wancom.tlsType) unterscheidet. Wenn dieser Wert nicht angegeben wurde, wird der Wert von
wancom.tlsType auch zum Empfang verwendet. Wenn der Wert -1 angegeben wird, dann werden alle WanCom-Typ-Werte (außer dem Wert für
KeepAlive-Telegramme wancom.keepAliveType) akzeptiert. | |
wancom.connectRetryDelay | 60 | Wartezeit in Sekunden, bevor ein fehlgeschlagener Verbindungsversuch wiederholt wird. |
wancom.localAddress | Lokale Adresse, die in Wan-Com-Header als Absender eingetragen werden soll. Ein leerer Text, wird automatisch durch die aktuelle lokale Adresse der Wan-Com-Verbindung ersetzt. |
Modifier and Type | Class and Description |
---|---|
static class |
Client.ActionType |
private static class |
Client.IllegalTelegramException |
private class |
Client.Link |
private static class |
Client.PriorizedByteArray |
private class |
Client.Worker |
Modifier and Type | Field and Description |
---|---|
private static Debug |
_debug |
private List<Client.Link> |
_links |
private Object |
_protocolLock |
private ProtocolState |
_protocolState |
(package private) Client.Worker |
_worker |
private Thread |
_workThread |
Constructor and Description |
---|
Client() |
Modifier and Type | Method and Description |
---|---|
void |
abort()
Beendet die Kommunikation dieses Protokolls.
|
DataLinkLayer.Link |
createLink(int remoteAddress)
Erzeugt eine neue logische Verbindung zu einem bestimmten Kommunikationspartner.
|
boolean |
isStarted()
Bestimmt, ob die Kommunikation dieses Protokolls bereits mit der Methode
start() aktiviert wurde. |
void |
setDavConnection(ClientDavInterface connection)
Nimmmt die Verbindung zum Datenverteiler entgegen.
|
void |
setProperties(Properties properties)
Setzt einen neuen Satz von Protokoll-Parametern.
|
void |
shutdown()
Beendet die Kommunikation dieses Protokolls.
|
void |
start()
Aktiviert die Kommunikation dieses Protokolls.
|
String |
toString() |
createKeepAliveTelegramBytes, getDefaultProperty, getMaximumDataSize
addEventListener, allowConnection, allowConnection, checkConnection, getLocalAddress, getProperty, notifyEvent, notifyEvent, removeEventListener, setLocalAddress
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getProperty
private static final Debug _debug
final Client.Worker _worker
private final Thread _workThread
private final Object _protocolLock
private ProtocolState _protocolState
private List<Client.Link> _links
public Client() throws IOException
IOException
public void setDavConnection(ClientDavInterface connection)
setDavConnection
in interface DataLinkLayer
connection
- Verbindung zum Datenverteilerpublic boolean isStarted()
start()
aktiviert wurde.isStarted
in interface DataLinkLayer
true
, wenn die Kommunikation dieses Protokolls bereits aktiviert wurde, sonst false
.public void start()
DataLinkLayer
start
in interface DataLinkLayer
public void shutdown()
DataLinkLayer
DataLinkLayer.Link.shutdown()
terminiert. Dabei wird sichergestellt,
dass Daten, die zuvor an die Methode DataLinkLayer.Link.send(byte[], int)
übergeben wurden, auch übertragen werden.shutdown
in interface DataLinkLayer
public void abort()
DataLinkLayer
DataLinkLayer.Link.abort()
terminiert.abort
in interface DataLinkLayer
public void setProperties(Properties properties)
DataLinkLayer
setProperties
in interface DataLinkLayer
setProperties
in class AbstractDataLinkLayer
properties
- Neue Verbindungsparameter.DataLinkLayer.Link.getProperty(java.lang.String)
public DataLinkLayer.Link createLink(int remoteAddress)
DataLinkLayer
createLink
in interface DataLinkLayer
remoteAddress
- OSI-2 Adresse bzw. Portnummer des gewünschten Kommunikationspartners.