public class Primary extends AbstractTc57 implements PropertyQueryInterface
OSI-2 Modul, das das TC57-Protokoll nach TLS auf Seite der Primary implementiert.
| Modifier and Type | Class and Description |
|---|---|
private class |
Primary.Link |
private static class |
Primary.PollState
Definiert die möglichen Unterzustände einer Verbindung.
|
private static class |
Primary.PriorizedByteArray |
private class |
Primary.RunnablePrimary |
| Modifier and Type | Field and Description |
|---|---|
private static Debug |
_debug |
private java.util.List |
_links |
private java.util.ListIterator |
_linksPollingIterator |
private java.util.Properties |
_newProperties |
private static boolean |
_offlineTest |
private java.lang.Thread |
_pollingThread |
private java.lang.Object |
_protocolLock |
private boolean |
_reloadProperties |
private SerialPortControl |
_serialPortControl |
private boolean |
_shuttingDown |
private int |
_simulatedDataCount |
private boolean |
_started |
private boolean |
_stopped |
| Constructor and Description |
|---|
Primary() |
| 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 dr Methode
start() aktiviert wurde. |
private SecondaryFrame |
querySecondary(PrimaryFrame primaryFrame,
PropertyConsultant propertyConsultant,
Primary.Link link) |
void |
setDavConnection(ClientDavInterface connection)
Nimmmt die Verbindung zum Datenverteiler entgegen.
|
void |
setProperties(java.util.Properties properties)
Setzt einen neuen Satz von Protokoll-Parametern.
|
void |
shutdown()
Beendet die Kommunikation dieses Protokolls.
|
private SecondaryFrame |
simulateQuery(PrimaryFrame primaryFrame) |
private byte[] |
simulateQueryBytes(PrimaryFrame primaryFrame) |
void |
start()
Aktiviert die Kommunikation dieses Protokolls.
|
java.lang.String |
toString() |
getDefaultProperty, getMaximumDataSizeaddEventListener, allowConnection, allowConnection, checkConnection, getLocalAddress, getProperty, notifyEvent, notifyEvent, removeEventListener, setLocalAddressclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetPropertyprivate static final Debug _debug
private final java.lang.Object _protocolLock
private final java.lang.Thread _pollingThread
private boolean _started
private boolean _stopped
private boolean _shuttingDown
private java.util.List _links
private java.util.ListIterator _linksPollingIterator
private SerialPortControl _serialPortControl
private java.util.Properties _newProperties
private boolean _reloadProperties
private static final boolean _offlineTest
private int _simulatedDataCount
public java.lang.String toString()
toString in class java.lang.Objectpublic void setDavConnection(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.
setDavConnection in interface DataLinkLayerconnection - Verbindung zum Datenverteilerpublic boolean isStarted()
Bestimmt, ob die Kommunikation dieses Protokolls bereits mit dr Methode start() aktiviert wurde.
isStarted in interface DataLinkLayertrue, wenn die Kommunikation dieses Protokolls bereits aktiviert wurde, sonst false.public void start()
DataLinkLayerAktiviert die Kommunikation dieses Protokolls.
start in interface DataLinkLayerpublic void shutdown()
DataLinkLayerBeendet die Kommunikation dieses Protokolls. Alle noch verbundenen Links werden mit der Methode 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 DataLinkLayerpublic void abort()
DataLinkLayerBeendet die Kommunikation dieses Protokolls. Alle noch verbundenen Links werden mit der Methode DataLinkLayer.Link.abort() terminiert.
abort in interface DataLinkLayerpublic void setProperties(java.util.Properties properties)
DataLinkLayerSetzt einen neuen Satz von Protokoll-Parametern. Diese dienen auch als Defaultwerte für die Verbindungsparameter.
setProperties in interface DataLinkLayersetProperties in class AbstractDataLinkLayerproperties - Neue Verbindungsparameter.DataLinkLayer.Link.getProperty(java.lang.String)private SecondaryFrame querySecondary(PrimaryFrame primaryFrame, PropertyConsultant propertyConsultant, Primary.Link link) throws java.lang.InterruptedException, java.io.IOException
java.lang.InterruptedExceptionjava.io.IOExceptionprivate SecondaryFrame simulateQuery(PrimaryFrame primaryFrame)
private byte[] simulateQueryBytes(PrimaryFrame primaryFrame)
public DataLinkLayer.Link createLink(int remoteAddress)
DataLinkLayerErzeugt eine neue logische Verbindung zu einem bestimmten Kommunikationspartner.
createLink in interface DataLinkLayerremoteAddress - OSI-2 Adresse bzw. Portnummer des gewünschten Kommunikationspartners.