private class Wiretapper.Link extends AbstractDataLinkLayer.Link implements DataLinkLayer.Link, PropertyQueryInterface
Modifier and Type | Field and Description |
---|---|
private boolean |
_fcb |
private long |
_lastGoodReply |
private java.util.Properties |
_properties |
private PropertyConsultant |
_propertyConsultant |
private boolean |
_tolerateRetry |
_linkLock, _linkPropertyLock, _linkState, _remoteAddress
Modifier | Constructor and Description |
---|---|
private |
Link(int remoteAddress) |
Modifier and Type | Method and Description |
---|---|
void |
abort()
Abbruch der Kommunikation auf dieser logischen Verbindung.
|
void |
connect()
Aktiviert die Kommunikation auf dieser logischen Verbindung.
|
DataLinkLayer |
getDataLinkLayer()
Bestimmt das Kommunikationsprotokoll zu dem diese Verbindung gehört.
|
java.lang.String |
getProperty(java.lang.String name)
Bestimmt den Wert eines bestimmten Verbindungsparameters.
|
void |
handleErrorSituation(java.lang.String message) |
void |
handleQuery(PrimaryFrame primaryFrame,
SecondaryFrame secondaryFrame) |
void |
send(byte[] bytes,
int priority)
Übernimmt die übergebenen Nutzdaten in den Sendepuffer.
|
void |
setProperties(java.util.Properties properties)
Setzt einen neuen verbindungsspezifischen Satz von Verbindungsparametern.
|
void |
shutdown()
Beendet die Kommunikation auf dieser logischen Verbindung.
|
private boolean |
synchronizedPollAction()
Führt Pollaktionen durch, die notwendig sind, bevor der synchronisierte Bereich zum Zugriff auf die Liste mit den zu bearbeitenden Verbindungen (_links) verlassen wird.
|
java.lang.String |
toString() |
private void |
unsynchronizedPollAction() |
getRemoteAddress, getState, notifyEvent
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getRemoteAddress, getState
private java.util.Properties _properties
private boolean _fcb
private long _lastGoodReply
private final PropertyConsultant _propertyConsultant
private boolean _tolerateRetry
public java.lang.String toString()
toString
in class AbstractDataLinkLayer.Link
public DataLinkLayer getDataLinkLayer()
DataLinkLayer.Link
Bestimmt das Kommunikationsprotokoll zu dem diese Verbindung gehört.
getDataLinkLayer
in interface DataLinkLayer.Link
public java.lang.String getProperty(java.lang.String name)
DataLinkLayer.Link
Bestimmt den Wert eines bestimmten Verbindungsparameters. Wenn der gewünschte Verbindungsparameter nicht in den verbindungsspezifischen Parametern enthalten ist, wird mit der DataLinkLayer.getProperty(java.lang.String)
Methode des Sicherungsprotokolls ein Defaultwert bestimmt.
getProperty
in interface DataLinkLayer.Link
getProperty
in interface PropertyQueryInterface
name
- Name des Verbindungsparameters.DataLinkLayer.Link.setProperties(java.util.Properties)
,
DataLinkLayer.getProperty(java.lang.String)
public void setProperties(java.util.Properties properties)
DataLinkLayer.Link
Setzt einen neuen verbindungsspezifischen Satz von Verbindungsparametern.
setProperties
in interface DataLinkLayer.Link
properties
- Neue Verbindungsparameter.public void connect()
DataLinkLayer.Link
Aktiviert die Kommunikation auf dieser logischen Verbindung.
connect
in interface DataLinkLayer.Link
public void shutdown() throws java.lang.InterruptedException
DataLinkLayer.Link
Beendet die Kommunikation auf dieser logischen Verbindung. Vor der Terminierung der Verbindung wird sichergestellt, dass Daten, die zuvor an die Methode DataLinkLayer.Link.send(byte[], int)
übergeben wurden, auch übertragen werden.
shutdown
in interface DataLinkLayer.Link
java.lang.InterruptedException
public void abort() throws java.lang.InterruptedException
DataLinkLayer.Link
Abbruch der Kommunikation auf dieser logischen Verbindung. Der Aufruf dieser Methode führt zur sofortigen Terminierung der Verbindung. Daten, die zuvor an die Methode DataLinkLayer.Link.send(byte[], int)
übergeben wurden und noch nicht übertragen wurden, werden nicht mehr übertragen.
abort
in interface DataLinkLayer.Link
java.lang.InterruptedException
public void send(byte[] bytes, int priority) throws java.lang.InterruptedException
DataLinkLayer.Link
Übernimmt die übergebenen Nutzdaten in den Sendepuffer. Die übergebenen Nutzdaten werden asynchron in der Reihenfolge der Aufrufe dieser Methode an den Kommunikationspartner dieser Verbindung übertragen.
send
in interface DataLinkLayer.Link
bytes
- Zu übertragende Nutzdatenbytes.priority
- Priorität der zu übertragenden Datenjava.lang.InterruptedException
private boolean synchronizedPollAction()
Führt Pollaktionen durch, die notwendig sind, bevor der synchronisierte Bereich zum Zugriff auf die Liste mit den zu bearbeitenden Verbindungen (_links) verlassen wird.
true
, wenn eine Aktion durchgeführt wurde und das Polling mit der nächsten Verbindung fortgesetzt werden soll, sonst false
.private void unsynchronizedPollAction()
public void handleQuery(PrimaryFrame primaryFrame, SecondaryFrame secondaryFrame)
public void handleErrorSituation(java.lang.String message)