.. include:: /../getting_started/vars.rst
.. _section-Product-Lbed-700:
RTI Limited Bandwidth Endpoint Discovery Plugin
***********************************************
In |CONNEXT| 7, the XML Schema Definition (XSD) of the XML file that
LBED uses has changed to meet the OMG's
`DDS Consolidated XML Syntax (DDS-XML) `_,
a standard that determines how to represent and describe DDS entities and
resources using XML. In addition, other changes were made to improve
ease of use and LBED functionality. See the
:link_lbed_release_notes_700:`Limited Bandwidth Endpoint Discovery Plugin Release Notes <>`
for further information about the improvements made.
An application using LBED in |CONNEXT| 7 is able to communicate with an application
using previous versions of the LBED plugin. To continue using a 6.1.2 or earlier
LBED application with |CONNEXT| 7, however, you will need to rewrite your
existing LBED XML configuration files using the DDS-XML syntax. This document
will guide you through the overall process. It explains the steps to follow
for a single XML file. Repeat them for all LBED XML files in your system.
.. note::
Before continuing with the steps below, it is recommended that you look at the
:link_lbed_users_manual_710:`Limited Bandwidth Endpoint Discovery Plugin User's Manual <>`.
Understanding the new configuration and schema of the plugin will help you
modify your existing applications.
Use the following points to help you create a new LBED XML file (after reading the
:link_lbed_users_manual_710:`Limited Bandwidth Endpoint Discovery Plugin User's Manual <>`
to get a basic understanding of the new configuration and schema).
- Create a new XML file. Name it as you want, preferably with a name similar
to the old file name.
..
- In the new file, start with the ```` tag. Use the
http://community.rti.com/schema/7.1.0/rti_dds_profiles.xsd schema (DDS-XML).
..
- For each of your endpoints that you specified in your old XML file, create a
QoS profile in the new file containing the QoS policies you specified for it.
While doing so, keep in mind the following:
- The syntax between the old XSD and the DDS-XML XSD is different for certain
QoS policies, such as the :link_propqos_usersman_710:`PROPERTY QosPolicy <>`.
Having XML validation while editing will help you detect and fix the
inconsistencies. For that, it is enough to add the XSD to the ```` tag
as explained above. You can also check the documentation of the specific policy in
:link_allqos_usersman_710:`All QoS Policies, in the RTI Connext Core Libraries User's Manual <>`.
- In previous releases, you specified everything inside the ````
and ```` tags for your endpoints. In DDS-XML, some QoS are
not specified inside ```` or ```` tags;
some belong to ````, ````, ````, or
```` tags (for example, the
:link_partitions_usersman_710:`PARTITION QoSPolicy <>` is specified for
*Publishers* and *Subscribers*). See
:link_lbed_qos_users_manual_710:`Supported QoS, in the Limited Bandwidth Endpoint Discovery Plugin User's Manual <>`
for more information on which QoSes LBED supports and to which Entities they
apply.
- If the endpoints in your old file share the same QoS (or part of them),
reuse the same profile or use inheritance between profiles. (The old LBED
XML could not make use of inheritance, but now that you are using DDS-XML,
you can. See
:link_qosinherit_usersman_710:`QoS Profile Inheritance and Composition, in the RTI Connext Core Libraries User's Manual <>`
for more information.)
- If a QoS policy in your old file was specified with the default value, you
can remove it (although you don't have to). Default values are assumed for
policies not specified in the profile (unless the profile inherits from
another one that specifies a non-default value for the policy).
..
- The ``rtps_object_id`` is specified inside the
:link_dwprotocol_usersman_710:`DATA_WRITER_PROTOCOL QosPolicy <>`
and :link_drprotocol_usersman_710:`DATA_READER_PROTOCOL QosPolicy <>`. In
the old LBED file, the ``rtps_object_id`` was always mandatory. In LBED
|CONNEXT| 7, if your application uses *RTI Connext XML-Based Application Creation*
for creating local entities, you don't need to specify an RTPS Object ID for
each endpoint. (This is a new feature.)
..
- The ```` tag does not exist in DDS-XML. To check whether the
type being used by the endpoint is keyed or not, LBED |CONNEXT| 7 will look at the
type definition. For user-defined types, you need to provide that definition
to LBED. There are two alternatives:
- Add the XML type definition of your type to the new XML file (recommended).
- Let LBED automatically use the definition of the type with the same name
that is registered in the local *DomainParticipant*. Using this approach
may require changes in code.
..
See
:link_lbed_addtypes_users_manual_710:`Add the types used by the endpoints, in the Limited Bandwidth Endpoint Discovery Plugin User's Manual <>`
for further information.
..
- The ```` and ```` tags do not exist in DDS-XML. This
information is specified instead with the ```` and ````
tags, both inside a ```` element. See
:link_lbed_addtopics_users_manual_710:`Add the Topics, in the Limited Bandwidth Endpoint Discovery Plugin User's Manual <>`
for instructions on using the ```` and ```` tags in
place of your ```` and ```` tags.
..
- Specify the main structure of the DDS Entities in the new XML file. For that,
DDS-XML uses a ````. For example, note the
structure of the following LBED 6.1.2 XML file:
.. code-block:: xml
...
In DDS-XML, the structure looks like this:
.. code-block:: xml
See
:link_lbed_addtopo_users_manual_710:`Add the DomainParticipants' topology, in the Limited Bandwidth Endpoint Discovery Plugin User's Manual <>`
for further information.
..
- Add the QoS profiles that the entities of the previous step are using, as
explained in
:link_lbed_addqos_users_manual_710:`Add the required QoS profiles to the entities, in the Limited Bandwidth Endpoint Discovery Plugin User's Manual <>`.
..
- Finally, modify your XML QoS profile file (i.e., USER_QOS_PROFILES.xml) so
the LBED ``config_file`` property points to the newly created file instead of
the old one.
..
- Note the following further considerations:
- The ```` tag does not exist in DDS-XML. LBED will now
automatically fill the RTPS Protocol Version using the value received in the
participant announcements of the discovered *DomainParticipants*.
- In DDS-XML, it is not possible to specify the locator's IP address for the
:link_transuniqos_usersman_710:`TRANSPORT_UNICAST QosPolicy <>`.
LBED will now automatically fill the unicast locators' IP addresses using
the default unicast locators' addresses received in the participant announcements
of the discovered *DomainParticipants*.
.. MG-115