RTI Connext C# API Version 7.2.0
Rti.RequestReply.ReplierBuilder< TRequest, TReply > Class Template Reference

A builder that allows configuring and creating a new Replier. It can be retrieved via participant.BuildReplier<TRequest, TReply>() (an extension method defined in DomainParticipantRequestReplyExtensions). More...

Public Member Functions

ReplierBuilder< TRequest, TReply > WithTopicNames (string requestTopicName, string replyTopicName)
 Sets RequestTopicName and ReplyTopicName. More...
 
ReplierBuilder< TRequest, TReply > WithServiceName (string serviceName)
 Sets ServiceName. More...
 
ReplierBuilder< TRequest, TReply > WithRequestsAvailableHandler (Action< Replier< TRequest, TReply > > requestHandler)
 Sets RequestHandler. More...
 
ReplierBuilder< TRequest, TReply > WithPublisher (Publisher publisher)
 Sets Publisher. More...
 
ReplierBuilder< TRequest, TReply > WithSubscriber (Subscriber subscriber)
 Sets Subscriber. More...
 
ReplierBuilder< TRequest, TReply > WithDataWriterQos (DataWriterQos dataWriterQos)
 Sets DataWriterQos. More...
 
ReplierBuilder< TRequest, TReply > WithDataReaderQos (DataReaderQos dataReaderQos)
 Sets DataReaderQos. More...
 
ReplierBuilder< TRequest, TReply > WithRequestDynamicType (DynamicType requestDynamicType)
 Sets RequestDynamicType. More...
 
ReplierBuilder< TRequest, TReply > WithReplyDynamicType (DynamicType replyDynamicType)
 Sets ReplyDynamicType. More...
 
Replier< TRequest, TReply > Create ()
 Creates a new Replier object using the current properties of the ReplierBuilder<TRequest, TReply> instance. More...
 

Properties

DomainParticipant Participant [get]
 The DomainParticipant used by the Replier. More...
 
string RequestTopicName [get, set]
 The name of the request topic a Requester and a Replier use to match. More...
 
string ReplyTopicName [get, set]
 The name of the reply topic a Requester and a Replier use to match. More...
 
string ServiceName [get, set]
 The service name that a Requester and a Replier use to match. More...
 
Action< Replier< TRequest, TReply > > RequestHandler [get, set]
 The requestHandler to be notified when requests are available. More...
 
Publisher Publisher [get, set]
 The publisher used by the Replier. More...
 
Subscriber Subscriber [get, set]
 The subscriber used by the Replier. More...
 
DataWriterQos DataWriterQos [get, set]
 The QoS used by the Replier's underlying DataWriter<TReply>. More...
 
DataReaderQos DataReaderQos [get, set]
 The QoS used by the Replier's underlying DataReader<TRequest>. More...
 
DynamicType RequestDynamicType [get, set]
 The request type, when Rti.Types.Dynamic.DynamicData is used. More...
 
DynamicType ReplyDynamicType [get, set]
 The reply type, when Rti.Types.Dynamic.DynamicData is used. More...
 

Detailed Description

A builder that allows configuring and creating a new Replier. It can be retrieved via participant.BuildReplier<TRequest, TReply>() (an extension method defined in DomainParticipantRequestReplyExtensions).

The builder's configuration will be used to create the resulting Replier. Either WithTopicNames or WithServiceName has to be used to set the corresponding properties for creation to be successful. The rest of properties will use the default configuration if not specified.

Member Function Documentation

◆ WithTopicNames()

ReplierBuilder< TRequest, TReply > Rti.RequestReply.ReplierBuilder< TRequest, TReply >.WithTopicNames ( string  requestTopicName,
string  replyTopicName 
)
inline

Sets RequestTopicName and ReplyTopicName.

Parameters
requestTopicNameThe new RequestTopicName to be set.
replyTopicNameThe new ReplyTopicName to be set.
Returns
The same builder.

Either the topic names or ServiceName have to be set in order to call Create().

◆ WithServiceName()

ReplierBuilder< TRequest, TReply > Rti.RequestReply.ReplierBuilder< TRequest, TReply >.WithServiceName ( string  serviceName)
inline

Sets ServiceName.

Parameters
serviceNameThe new ServiceName to be set.
Returns
The same builder.

Either the topic names or ServiceName have to be set in order to call Create().

◆ WithRequestsAvailableHandler()

ReplierBuilder< TRequest, TReply > Rti.RequestReply.ReplierBuilder< TRequest, TReply >.WithRequestsAvailableHandler ( Action< Replier< TRequest, TReply > >  requestHandler)
inline

Sets RequestHandler.

Parameters
requestHandlerThe new RequestHandler to be set.
Returns
The same builder.

Request handlers can be added and removed after creating the Replier. See Replier<TRequest, TReply>.RequestsAvailable event.

◆ WithPublisher()

ReplierBuilder< TRequest, TReply > Rti.RequestReply.ReplierBuilder< TRequest, TReply >.WithPublisher ( Publisher  publisher)
inline

Sets Publisher.

Parameters
publisherThe new Publisher to be set.
Returns
The same builder.

◆ WithSubscriber()

ReplierBuilder< TRequest, TReply > Rti.RequestReply.ReplierBuilder< TRequest, TReply >.WithSubscriber ( Subscriber  subscriber)
inline

Sets Subscriber.

Parameters
subscriberThe new Subscriber to be set.
Returns
The same builder.

◆ WithDataWriterQos()

ReplierBuilder< TRequest, TReply > Rti.RequestReply.ReplierBuilder< TRequest, TReply >.WithDataWriterQos ( DataWriterQos  dataWriterQos)
inline

Sets DataWriterQos.

Parameters
dataWriterQosThe new DataWriterQos to be set.
Returns
The same builder.

◆ WithDataReaderQos()

ReplierBuilder< TRequest, TReply > Rti.RequestReply.ReplierBuilder< TRequest, TReply >.WithDataReaderQos ( DataReaderQos  dataReaderQos)
inline

Sets DataReaderQos.

Parameters
dataReaderQosThe new DataReaderQos to be set.
Returns
The same builder.

◆ WithRequestDynamicType()

ReplierBuilder< TRequest, TReply > Rti.RequestReply.ReplierBuilder< TRequest, TReply >.WithRequestDynamicType ( DynamicType  requestDynamicType)
inline

Sets RequestDynamicType.

Parameters
requestDynamicTypeThe new RequestDynamicType to be set.
Returns
The same builder.

◆ WithReplyDynamicType()

ReplierBuilder< TRequest, TReply > Rti.RequestReply.ReplierBuilder< TRequest, TReply >.WithReplyDynamicType ( DynamicType  replyDynamicType)
inline

Sets ReplyDynamicType.

Parameters
replyDynamicTypeThe new ReplyDynamicType to be set.
Returns
The same builder.

◆ Create()

Replier< TRequest, TReply > Rti.RequestReply.ReplierBuilder< TRequest, TReply >.Create ( )
inline

Creates a new Replier object using the current properties of the ReplierBuilder<TRequest, TReply> instance.

Returns
The new Replier object.

Property Documentation

◆ Participant

DomainParticipant Rti.RequestReply.ReplierBuilder< TRequest, TReply >.Participant
get

The DomainParticipant used by the Replier.

◆ RequestTopicName

string Rti.RequestReply.ReplierBuilder< TRequest, TReply >.RequestTopicName
getset

The name of the request topic a Requester and a Replier use to match.

Either both topic names or ServiceName have to be set.

◆ ReplyTopicName

string Rti.RequestReply.ReplierBuilder< TRequest, TReply >.ReplyTopicName
getset

The name of the reply topic a Requester and a Replier use to match.

Either both topic names or ServiceName have to be set.

◆ ServiceName

string Rti.RequestReply.ReplierBuilder< TRequest, TReply >.ServiceName
getset

The service name that a Requester and a Replier use to match.

Either both topic names or ServiceName have to be set.

◆ RequestHandler

Action<Replier<TRequest, TReply> > Rti.RequestReply.ReplierBuilder< TRequest, TReply >.RequestHandler
getset

The requestHandler to be notified when requests are available.

◆ Publisher

The publisher used by the Replier.

◆ Subscriber

The subscriber used by the Replier.

◆ DataWriterQos

The QoS used by the Replier's underlying DataWriter<TReply>.

◆ DataReaderQos

The QoS used by the Replier's underlying DataReader<TRequest>.

◆ RequestDynamicType

DynamicType Rti.RequestReply.ReplierBuilder< TRequest, TReply >.RequestDynamicType
getset

The request type, when Rti.Types.Dynamic.DynamicData is used.

This is required when the Replier's TRequest is Rti.Types.Dynamic.DynamicData.

◆ ReplyDynamicType

DynamicType Rti.RequestReply.ReplierBuilder< TRequest, TReply >.ReplyDynamicType
getset

The reply type, when Rti.Types.Dynamic.DynamicData is used.

This is required when the Replier's TReply is Rti.Types.Dynamic.DynamicData.