|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objecttuwien.auto.calimero.link.KNXNetworkLinkFT12
public class KNXNetworkLinkFT12
Implementation of the KNX network network link based on the FT1.2 protocol, using a
FT12Connection.
Once a link has been closed, it is not available for further link communication, i.e. it can't be reopened.
| Constructor Summary | |
|---|---|
KNXNetworkLinkFT12(int portNumber,
KNXMediumSettings settings)
Creates a new network link based on the FT1.2 protocol for accessing the KNX network. |
|
KNXNetworkLinkFT12(java.lang.String portID,
KNXMediumSettings settings)
Creates a new network link based on the FT1.2 protocol for accessing the KNX network. |
|
| Method Summary | |
|---|---|
void |
addLinkListener(NetworkLinkListener l)
Adds the specified event listener l to receive events from this
link. |
void |
close()
Ends communication with the KNX network and closes the network link. |
byte |
getHopCount()
Returns the hop count used as default for KNX messages. |
KNXMediumSettings |
getKNXMedium()
Returns the KNX medium settings used by this network link. |
java.lang.String |
getName()
Returns the name of the link, a short textual representation to identify a link. |
boolean |
isOpen()
Checks for open network link. |
void |
removeLinkListener(NetworkLinkListener l)
Removes the specified event listener l, so it does no longer
receive events from this link. |
void |
send(CEMILData msg,
boolean waitForCon)
Sends a KNX link layer message supplied as type cEMI L-data. |
void |
sendRequest(KNXAddress dst,
Priority p,
byte[] nsdu)
Sends a link layer request message to the given destination. |
void |
sendRequestWait(KNXAddress dst,
Priority p,
byte[] nsdu)
Sends a link layer request message to the given destination, and waits for the corresponding link layer confirmation. |
void |
setHopCount(int count)
Sets the hop count used as default in KNX messages. |
void |
setKNXMedium(KNXMediumSettings settings)
Supplies medium information necessary for KNX communication. |
java.lang.String |
toString()
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public KNXNetworkLinkFT12(int portNumber,
KNXMediumSettings settings)
throws KNXException
The port number is used to choose the serial port for communication. It is mapped to the default port identifier using that number on the platform.
portNumber - port number of the serial communication port to usesettings - medium settings defining device and medium specifics needed for
communication
KNXException
public KNXNetworkLinkFT12(java.lang.String portID,
KNXMediumSettings settings)
throws KNXException
The port identifier is used to choose the serial port for communication. These identifiers are usually device and platform specific.
portID - identifier of the serial communication port to usesettings - medium settings defining device and medium specifics needed for
communication
KNXException| Method Detail |
|---|
public void addLinkListener(NetworkLinkListener l)
KNXNetworkLinkl to receive events from this
link.
If l was already added as listener, no action is performed.
addLinkListener in interface KNXNetworkLinkl - the listener to addpublic void close()
KNXNetworkLink
All registered link listeners get notified.
If no communication access was established in the first place, no action is
performed.
close in interface KNXNetworkLinkpublic byte getHopCount()
KNXNetworkLink
getHopCount in interface KNXNetworkLinkKNXNetworkLink.setHopCount(int)public KNXMediumSettings getKNXMedium()
KNXNetworkLinkThe returned object is a reference to the one used by this link (not a copy).
getKNXMedium in interface KNXNetworkLinkpublic java.lang.String getName()
KNXNetworkLink
The name is unique for links with different remote endpoints.
The returned name is used by this link for the name of its log service. Supply
KNXNetworkLink.getName() for LogManager.getLogService(String) for example to get
the log service of this link.
By default, "link " + address/ID of the remote endpoint is returned (e.g. "Link
192.168.0.10:3671" for an IP link).
After closing the link, the returned name might differ, e.g. get reset to some
arbitrary default name.
getName in interface KNXNetworkLinkpublic boolean isOpen()
KNXNetworkLink
After a call to KNXNetworkLink.close() or after the underlying protocol initiated the end
of the communication, this method always returns false.
isOpen in interface KNXNetworkLinktrue if this network link is open, false on
closedpublic void removeLinkListener(NetworkLinkListener l)
KNXNetworkLinkl, so it does no longer
receive events from this link.
If l was not added in the first place, no action is performed.
removeLinkListener in interface KNXNetworkLinkl - the listener to remove
public void send(CEMILData msg,
boolean waitForCon)
throws KNXTimeoutException,
KNXLinkClosedException
KNXNetworkLink
If the source address of msg is 0.0.0, the device address supplied
in the medium settings is used as message source address.
send in interface KNXNetworkLinkmsg - cEMI L-data message to sendwaitForCon - true to wait for link layer confirmation response,
false to not wait for the confirmation
KNXTimeoutException - on a timeout during send (for example when waiting on
acknowledge using a reliable sending protocol)
KNXLinkClosedException - if the link is closed
public void sendRequest(KNXAddress dst,
Priority p,
byte[] nsdu)
throws KNXTimeoutException,
KNXLinkClosedException
KNXNetworkLink
Depending on the address, the request is either point-to-point, multicast or
broadcast. A network link implementation is allowed to interpret a dst
parameter of null as system broadcast, or otherwise uses its default
broadcast behavior.
sendRequest in interface KNXNetworkLinkdst - KNX destination address, or nullp - priority this KNX message is assigned tonsdu - network layer service data unit
KNXTimeoutException - on a timeout during send (for example when waiting on
acknowledge using a reliable sending protocol)
KNXLinkClosedException - if the link is closed
public void sendRequestWait(KNXAddress dst,
Priority p,
byte[] nsdu)
throws KNXTimeoutException,
KNXLinkClosedException
KNXNetworkLink
Depending on the address, the request is either point-to-point, multicast or
broadcast. A network link implementation is allowed to interpret a dst
parameter of null as system broadcast, or otherwise uses its default
broadcast behavior.
sendRequestWait in interface KNXNetworkLinkdst - KNX destination address, or nullp - priority this message is assigned tonsdu - network layer service data unit
KNXTimeoutException - on a timeout during send or while waiting for the
confirmation
KNXLinkClosedException - if the link is closedpublic void setHopCount(int count)
KNXNetworkLink
It denotes how many sub networks a message is allowed to travel.
A message its hop count is decremented by KNX routers to limit distance and avoid
looping. On hop count value 0, the message is discarded from the network. A hop
count of 7 never gets decremented.
By default, a hop count of 6 is specified.
setHopCount in interface KNXNetworkLinkcount - hop count value, 0 <= value <= 7public void setKNXMedium(KNXMediumSettings settings)
KNXNetworkLink
These informations are differing between KNX media and depend on the KNX network
this link is communicating with.
The settings medium type has to match the medium type supplied to
the link in the first place.
The settings object is not copied internally to allow subsequent
changes to medium settings by the user which should take effect immediately.
setKNXMedium in interface KNXNetworkLinksettings - medium settings to use, the expected subtype is according to the
KNX network mediumpublic java.lang.String toString()
toString in class java.lang.Object
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||