RTI Connext Java API Version 7.1.0
|
com.rti.dds.infrastructure.StatusKind.StatusKind.LIVELINESS_CHANGED_STATUS More...
Inherits Status.
Public Member Functions | |
LivelinessChangedStatus () | |
The no-argument constructor for this status object. More... | |
LivelinessChangedStatus (LivelinessChangedStatus src) | |
A copy constructor. More... | |
Public Attributes | |
int | alive_count |
The total count of currently alive com.rti.dds.publication.DataWriter entities that write the com.rti.dds.topic.Topic that this com.rti.dds.subscription.DataReader reads. More... | |
int | not_alive_count |
The total count of currently not_alive com.rti.dds.publication.DataWriter entities that write the com.rti.dds.topic.Topic that this com.rti.dds.subscription.DataReader reads. More... | |
int | alive_count_change |
The change in the alive_count since the last time the listener was called or the status was read. More... | |
int | not_alive_count_change |
The change in the not_alive_count since the last time the listener was called or the status was read. More... | |
final InstanceHandle_t | last_publication_handle |
This InstanceHandle can be used to look up which remote com.rti.dds.publication.DataWriter was the last to cause this DataReader's status to change, using com.rti.dds.subscription.DataReader.get_matched_publication_data. More... | |
com.rti.dds.infrastructure.StatusKind.StatusKind.LIVELINESS_CHANGED_STATUS
The com.rti.dds.subscription.DataReaderListener.on_liveliness_changed callback may be invoked for the following reasons:
The liveliness of any com.rti.dds.publication.DataWriter matching this DataReader (as defined by the com.rti.dds.infrastructure.LivelinessQosPolicyKind setting) is lost.
A DataWriter's liveliness is recovered after being lost.
A new matching DataWriter has been discovered.
A matching DataWriter has been deleted.
A QoS Policy has changed such that a DataWriter that matched this DataReader before no longer matches (such as a change to the com.rti.dds.infrastructure.PartitionQosPolicy). In this case, RTI Connext will no longer keep track of the DataWriter's liveliness. Furthermore, consider two scenarios:
DataWriter was not alive when it and DataReader stopped matching: com.rti.dds.subscription.LivelinessChangedStatus.alive_count will remain the same (since the matching DataWriter was not alive) and com.rti.dds.subscription.LivelinessChangedStatus.not_alive_count will decrease (since there's one less not-alive matching DataWriter).
Note: There are several ways that a DataWriter and DataReader can become incompatible after the DataWriter has lost liveliness. For example, when the com.rti.dds.infrastructure.LivelinessQosPolicyKind is set to DDS_MANUAL_BY_PARTICIPANT_LIVELINESS_QOS, it is possible that the DataWriter has not asserted its liveliness in a timely manner, and then a QoS change occurs on the DataWriter or DataReader that makes the entities incompatible.
The no-argument constructor for this status object.
A copy constructor.
NullPointerException | if the given status is null. |
References LivelinessChangedStatus.alive_count, LivelinessChangedStatus.alive_count_change, LivelinessChangedStatus.last_publication_handle, LivelinessChangedStatus.not_alive_count, and LivelinessChangedStatus.not_alive_count_change.
int alive_count |
The total count of currently alive com.rti.dds.publication.DataWriter entities that write the com.rti.dds.topic.Topic that this com.rti.dds.subscription.DataReader reads.
Referenced by LivelinessChangedStatus.LivelinessChangedStatus().
int not_alive_count |
The total count of currently not_alive com.rti.dds.publication.DataWriter entities that write the com.rti.dds.topic.Topic that this com.rti.dds.subscription.DataReader reads.
Referenced by LivelinessChangedStatus.LivelinessChangedStatus().
int alive_count_change |
The change in the alive_count since the last time the listener was called or the status was read.
Referenced by LivelinessChangedStatus.LivelinessChangedStatus().
int not_alive_count_change |
The change in the not_alive_count since the last time the listener was called or the status was read.
Note that a positive not_alive_count_change means one of the following:
The DomainParticipant containing the matched DataWriter has lost liveliness or has been deleted.
Referenced by LivelinessChangedStatus.LivelinessChangedStatus().
final InstanceHandle_t last_publication_handle |
This InstanceHandle can be used to look up which remote com.rti.dds.publication.DataWriter was the last to cause this DataReader's status to change, using com.rti.dds.subscription.DataReader.get_matched_publication_data.
It's possible that the DataWriter has been purged from the discovery database. (See the "Discovery Overview" section of the User's Manual.) If so, the com.rti.dds.subscription.DataReader.get_matched_publication_data method will not be able to return information about the DataWriter. In this case, the only way to get information about the lost DataWriter is if you cached the information previously.
Referenced by LivelinessChangedStatus.LivelinessChangedStatus().