RTI Connext Java API  Version 6.0.0
 All Classes Namespaces Functions Variables Groups Pages
TopicQueryDispatchQosPolicy Class Reference

Configures the ability of a com.rti.dds.publication.DataWriter to publish samples in response to a com.rti.dds.subscription.TopicQuery. More...

Inheritance diagram for TopicQueryDispatchQosPolicy:
QosPolicy

Public Attributes

boolean enable = false
 Allows this writer to dispatch TopicQueries.
 
int samples_per_period = ResourceLimitsQosPolicy.LENGTH_UNLIMITED
 Sets the maximum number of samples to publish in each publication_period.
 
final Duration_t publication_period = new Duration_t(1, 0)
 Sets the periodic interval at which samples are published.
 
- Public Attributes inherited from QosPolicy
final QosPolicyId_t id
 The ID of this QoS policy.
 
final String policy_name
 The name of this QoS policy.
 

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

Configures the ability of a com.rti.dds.publication.DataWriter to publish samples in response to a com.rti.dds.subscription.TopicQuery.

Enables the ability of a com.rti.dds.publication.DataWriter to publish historical samples upon reception of a com.rti.dds.subscription.TopicQuery and how often they are published.

Since a TopicQuery selects previously written samples, the DataWriter must have a com.rti.dds.infrastructure.DurabilityQosPolicy.kind different from com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQosPolicyKind.VOLATILE_DURABILITY_QOS. Also, com.rti.dds.infrastructure.ReliabilityQosPolicy.kind must be set to com.rti.dds.infrastructure.ReliabilityQosPolicyKind.RELIABLE_RELIABILITY_QOS.

A TopicQuery may select multiple samples at once. The writer will publish them periodically, independently from newly written samples. com.rti.dds.infrastructure.TopicQueryDispatchQosPolicy.publication_period configures the frequency of that period and com.rti.dds.infrastructure.TopicQueryDispatchQosPolicy.samples_per_period configures the maximum number of samples to publish each period.

If the DataWriter blocks during the publication of one of these samples, it will stop and try again the next period. (See com.rti.ndds.example.FooDataWriter.write for the conditions that may cause the write operation to block.)

All the DataWriters that belong to a single com.rti.dds.publication.Publisher and enable TopicQueries share the same event thread, but each DataWriter schedules separate events. To configure that thread, see com.rti.dds.infrastructure.AsynchronousPublisherQosPolicy.topic_query_publication_thread.

If the DataWriter is dispatching more than one TopicQuery at the same time, the configuration of this periodic event applies to all of them. For example, if a DataWriter receives two TopicQueries around the same time, the period is 1 second, the number of samples per period is 10, the first TopicQuery selects 5 samples, and the second one selects 8, the DataWriter will immediately attempt to publish all 5 for the first TopicQuery and 5 for the second one. After one second, it will publish the remaining 3 samples.

Entity:
com.rti.dds.publication.DataWriter
Properties:
RxO = N/A
Changeable = NO
See Also
com.rti.dds.publication.Publisher

Member Data Documentation

boolean enable = false

Allows this writer to dispatch TopicQueries.

When set to true, this writer can receive and dispatch TopicQueries.

[default] com.rti.dds.infrastructure.false

int samples_per_period = ResourceLimitsQosPolicy.LENGTH_UNLIMITED

Sets the maximum number of samples to publish in each publication_period.

[default] com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH_UNLIMITED

[range] [1, 100000000] or com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH_UNLIMITED

final Duration_t publication_period = new Duration_t(1, 0)

Sets the periodic interval at which samples are published.

[default] 1 second

[range] [0,1 year]


RTI Connext Java API Version 6.0.0 Copyright © Sun Mar 3 2019 Real-Time Innovations, Inc