Extend endpoint APIs with getters for currently used locators [10495]#1749
Extend endpoint APIs with getters for currently used locators [10495]#1749MiguelCompany merged 33 commits intofeature/unique_network_flowsfrom
Conversation
1e200f0 to
c5bcfcd
Compare
| * @return OK if a list of locators is returned. | ||
| */ | ||
| RTPS_DllAPI ReturnCode_t get_listening_locators( | ||
| eprosima::fastrtps::rtps::LocatorList_t& locators) const; |
There was a problem hiding this comment.
If we are going to use LocatorList_t as argument type, we could make an alias in eprosima::fastdds::dds. It feels odd to use something from fastrtps in this API (although we are already using GUID_t).
Additionally, this files pre-declares TopicAttributes and ReaderAttributes in eprosima::fastrtps but are not used. We could remove them.
There was a problem hiding this comment.
Which namespace would be the correct one? We already have some classes on eprosima::fastdds::rtps, so I would prefer to add them there.
Where do you think is a good place to add the aliases?
Should we add them directly on Locator.h?
Is it better to create a separate file with all the fastdds::rtps -> fastrtps::rtps aliases?
In the future (i.e. v3.0), we should get rid of the fastrtps namespace, so having a single place where we have all the necessary aliases may be better.
There was a problem hiding this comment.
I have removed the forward declarations on b5f45fa
There was a problem hiding this comment.
My bad on the comment. I really meant change it to eprosima::fastdds::rtps.
I think we can leave eprosima::fastdds::rtps to keep classes that are specific to RTPS layer, like locators (specific to RTPS in the sense that they deal with the underlying connection channel). I believe other classes in this namespace were put there following this rationale.
I would go for the fastdds::rtps -> fastrtps::rtps aliases, since the latter is the one to be deprecated. This is what we've been doing so far, with the QosPolicies, for example. Besides, deprecating the fastrtps::rtps will be as easy as removing the includes in fastrtps folder.
Regarding the place for the alias, right now we have:
include/fastdds/rtps/common/Locator.hthat defines the locator infastrtps::rtpsinclude/fastrtps/rtps/common/Locator.hwhich only includes the former, without changing the namespace.
What I think we should do here is:- Change the namespace in
include/fastdds/rtps/common/Locator.htofastdds::rtps - Make the alias to
fastrtps::rtpsininclude/fastrtps/rtps/common/Locator.h.
af74509 to
dce946a
Compare
dce946a to
67ba02b
Compare
…cators Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
273786c to
76a9b86
Compare
IkerLuengo
left a comment
There was a problem hiding this comment.
LGTM
Also, failing tests are known to be flaky
* Refs 10495. Modified Subscriber API to retrieve endpoint listening locators Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Removed unnecessary RTPS_DllAPI. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Added get_listening_locators to DataReader API. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Added test to DataReaderTests. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Blackbox test added. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Uncrustify SenderResource headers. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Add empty interface add_locators_to_list. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Implementation of UDPSenderResource::add_locators_to_list. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Method endpoint_to_locator sets locator kind. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Added RTPSParticipantImpl::get_sending_locators. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Added get_sending_locators to fastrtps Publisher. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Added get_sending_locators to fastdds DataWriter. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Blackbox test added. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Fixing mock of RTPSParticipantImpl. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Extended test on DataReader. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Added PubGetSendingLocatorsWhitelist blackbox test. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Remove unused forward declarations Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Fixed build error on Linux and Mac. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Fixed typo on DataReaderTests. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Uncrustify. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Moving LocatorList_t to eprosima::fastdds::rtps. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Using LocatorList from new namespace on DataWriter. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Using LocatorList from new namespace on DataReader. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Updating includes on core/policy. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Include what you use on NetworkFactory.h. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Updating transports. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Updating discovery server code. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Updating utils::Host. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Updating tests. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Updating examples. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Uncrustify. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Adding debug to Blackbox test. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Fix on blackbox test Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
* Extend endpoint QoS with new unique locators request feature (#1757) * Refs 10496. Prepare compatibility checks on DataReaderQos. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10496. Remove old TODO code. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * fixup * Refs 10496. Add InvalidQos checks to DataReaderTests. * Refs 10496. Fix link error on ListenerTests. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10496. Fixed const -> const ref on property policy setters. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10496. Add blackbox test expecting endpoint creation failure. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10496. Fail on creation of endpoints requesting unique_network_flows. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10496. Add check for UNSUPPORTED_QOS on DataWriterTests. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10496.Fail with unsupported on DataWriterImpl::check_qos. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Extend endpoint APIs with getters for currently used locators (#1749) * Refs 10495. Modified Subscriber API to retrieve endpoint listening locators Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Removed unnecessary RTPS_DllAPI. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Added get_listening_locators to DataReader API. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Added test to DataReaderTests. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Blackbox test added. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Uncrustify SenderResource headers. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Add empty interface add_locators_to_list. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Implementation of UDPSenderResource::add_locators_to_list. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Method endpoint_to_locator sets locator kind. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Added RTPSParticipantImpl::get_sending_locators. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Added get_sending_locators to fastrtps Publisher. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Added get_sending_locators to fastdds DataWriter. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Blackbox test added. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Fixing mock of RTPSParticipantImpl. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Extended test on DataReader. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Added PubGetSendingLocatorsWhitelist blackbox test. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Remove unused forward declarations Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Fixed build error on Linux and Mac. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Fixed typo on DataReaderTests. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Uncrustify. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Moving LocatorList_t to eprosima::fastdds::rtps. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Using LocatorList from new namespace on DataWriter. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Using LocatorList from new namespace on DataReader. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Updating includes on core/policy. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Include what you use on NetworkFactory.h. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Updating transports. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Updating discovery server code. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Updating utils::Host. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Updating tests. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Updating examples. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Uncrustify. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10495. Adding debug to Blackbox test. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Fix on blackbox test Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Implementation of unique locators request feature for readers (#1768) * Refs 10497. Update sub_unique_network_flows blackbox. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10497. Added PubSubBasic test with unique flows feature. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10497. Added method to parse property value. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10497. createReceiverResources now returns bool. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10497. Try to create specific resources when requested. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10497. PubSubParticipant takes data when received. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10497. Uncrustify. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com> * Refs 10497. Fix build error on non-windows platforms. Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
This PR is part of the unique network flows feature