RTI Connext Java API  Version 6.0.1
 All Classes Namespaces Functions Variables Groups Pages
PublicationMatchedStatus Class Reference

com.rti.dds.infrastructure.StatusKind.StatusKind.PUBLICATION_MATCHED_STATUS More...

Inherits Status.

Public Attributes

int total_count = 0
 The total cumulative number of times that this com.rti.dds.publication.DataWriter discovered a "match" with a com.rti.dds.subscription.DataReader.
 
int total_count_change = 0
 The changes in total_count since the last time the listener was called or the status was read.
 
int current_count = 0
 The current number of DataReaders with which this com.rti.dds.publication.DataWriter is matched.
 
int current_count_peak = 0
 <<extension>> Greatest number of DataReaders that matched this com.rti.dds.publication.DataWriter simultaneously.
 
int current_count_change = 0
 The change in current_count since the last time the listener was called or the status was read.
 
final InstanceHandle_t last_subscription_handle = new InstanceHandle_t()
 This InstanceHandle can be used to look up which remote com.rti.dds.subscription.DataReader was the last to cause this DataWriter's status to change, using com.rti.dds.publication.DataWriter.get_matched_subscription_data.
 

Additional Inherited Members

- Public Member Functions inherited from Struct
abstract boolean equals (Object obj)
 
abstract int hashCode ()
 
String toString ()
 
- Protected Member Functions inherited from Struct
 Struct ()
 
abstract void pull_from_nativeI (long native_status)
 
abstract void push_to_nativeI (long native_status)
 

Detailed Description

com.rti.dds.infrastructure.StatusKind.StatusKind.PUBLICATION_MATCHED_STATUS

A "match" happens when the com.rti.dds.publication.DataWriter finds a com.rti.dds.subscription.DataReader with the same com.rti.dds.topic.Topic, same or compatible data type, and requested QoS that is compatible with that offered by the com.rti.dds.publication.DataWriter. (For information on compatible data types, see the Getting Started Guide, Addendum for Extensible Types .)

This status is also changed (and the listener, if any, called) when a match is ended. A local com.rti.dds.publication.DataWriter will become "unmatched" from a remote com.rti.dds.subscription.DataReader when that com.rti.dds.subscription.DataReader goes away for any of the following reasons:

This status may reflect changes from multiple match or unmatch events, and the com.rti.dds.publication.PublicationMatchedStatus.current_count_change can be used to determine the number of changes since the listener was called back or the status was checked.

Member Data Documentation

int total_count = 0

The total cumulative number of times that this com.rti.dds.publication.DataWriter discovered a "match" with a com.rti.dds.subscription.DataReader.

This number increases whenever a new match is discovered. It does not decrease when an existing match goes away for any of the reasons described in com.rti.dds.publication.PublicationMatchedStatus.

int total_count_change = 0

The changes in total_count since the last time the listener was called or the status was read.

Note that this number will never be negative (because it's the total number of times this DataWriter ever matched with a DataReader).

int current_count = 0

The current number of DataReaders with which this com.rti.dds.publication.DataWriter is matched.

This number increases when a new match is discovered and decreases when an existing match goes away for any of the reasons described in com.rti.dds.publication.PublicationMatchedStatus.

int current_count_peak = 0

<<extension>> Greatest number of DataReaders that matched this com.rti.dds.publication.DataWriter simultaneously.

That is, there was no moment in time when more than this many DataReaders matched this DataWriter. (As a result, total_count can be higher than current_count_peak.)

int current_count_change = 0

The change in current_count since the last time the listener was called or the status was read.

Note that a negative current_count_change means that one or more DataReaders have become unmatched for one or more of the reasons described in com.rti.dds.publication.PublicationMatchedStatus.

final InstanceHandle_t last_subscription_handle = new InstanceHandle_t()

This InstanceHandle can be used to look up which remote com.rti.dds.subscription.DataReader was the last to cause this DataWriter's status to change, using com.rti.dds.publication.DataWriter.get_matched_subscription_data.

If the DataReader no longer matches this DataWriter due to any of the reasons in com.rti.dds.publication.PublicationMatchedStatus except incompatible QoS, then the DataReader has been purged from this DataWriter's DomainParticipant discovery database. (See the "What is Discovery?" section of the User's Manual.) In that case, the com.rti.dds.publication.DataWriter.get_matched_subscription_data method will not be able to return information about the DataReader. The only way to get information about the lost DataReader is if you cached the information previously.


RTI Connext Java API Version 6.0.1 Copyright © Sat Nov 23 2019 Real-Time Innovations, Inc