-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathchatcfg.xml
134 lines (130 loc) · 5.26 KB
/
chatcfg.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
<?xml version="1.0" encoding="UTF-8"?>
<dds xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://community.rti.com/schema/7.2.0/rti_routing_service.xsd" version="7.2.0">
<types>
<const name="MAX_NAME_SIZE" type="int32" value="128"/>
<const name="MAX_MSG_SIZE" type="int32" value="512"/>
<struct name="ChatUser">
<member name="username" type="string" stringMaxLength="MAX_NAME_SIZE" key="true"/>
<member name="group" type="string" stringMaxLength="MAX_NAME_SIZE"/>
<member name="firstName" type="string" stringMaxLength="MAX_NAME_SIZE" optional="true"/>
<member name="lastName" type="string" stringMaxLength="MAX_NAME_SIZE" optional="true"/>
</struct>
<struct name="ChatMessage">
<member name="fromUser" type="string" stringMaxLength="MAX_NAME_SIZE" key="true"/>
<member name="toUser" type="string" stringMaxLength="MAX_NAME_SIZE" key="true"/>
<member name="toGroup" type="string" stringMaxLength="MAX_NAME_SIZE" key="true"/>
<member name="message" type="string" stringMaxLength="MAX_MSG_SIZE" key="true"/>
</struct>
</types>
<qos_library name="chat_library">
<qos_profile name="Chat_Profile">
<domain_participant_qos>
<participant_name>
<name>ChatApp</name>
</participant_name>
</domain_participant_qos>
</qos_profile>
<qos_profile name="ChatUser_Profile" base_name="BuiltinQosLib::Pattern.Status">
<datareader_qos>
<liveliness>
<lease_duration>
<sec>3</sec>
<nanosec>0</nanosec>
</lease_duration>
</liveliness>
<subscription_name>
<name>ChatUser_Reader</name>
</subscription_name>
</datareader_qos>
<datawriter_qos>
<liveliness>
<lease_duration>
<sec>2</sec>
<nanosec>0</nanosec>
</lease_duration>
</liveliness>
<publication_name>
<name>ChatUser_Writer</name>
</publication_name>
</datawriter_qos>
</qos_profile>
<qos_profile name="ChatMessage_Profile">
<publisher_qos>
<partition>
<name>
<element>$(group)</element>
</name>
</partition>
</publisher_qos>
<subscriber_qos>
<partition>
<name>
<element>$(group)</element>
</name>
</partition>
</subscriber_qos>
<datareader_qos>
<subscription_name>
<name>ChatMessage_Reader</name>
</subscription_name>
</datareader_qos>
<datawriter_qos>
<reliability>
<kind>BEST_EFFORT_RELIABILITY_QOS</kind>
</reliability>
<publication_name>
<name>ChatMessage_Writer</name>
</publication_name>
</datawriter_qos>
</qos_profile>
</qos_library>
<domain_library name="Chat_DomainLibrary">
<domain name="Chat_Domain" domain_id="69">
<register_type name="ChatUser" type_ref="ChatUser"/>
<register_type name="ChatMessage" type_ref="ChatMessage"/>
<topic name="userInfo" register_type_ref="ChatUser"/>
<topic name="message" register_type_ref="ChatMessage"/>
</domain>
</domain_library>
<domain_participant_library name="Chat_ParticipantLibrary">
<domain_participant name="ChatParticipant" domain_ref="Chat_DomainLibrary::Chat_Domain">
<publisher name="ChatUserPublisher">
<data_writer name="ChatUserWriter" topic_ref="userInfo">
<datawriter_qos base_name="chat_library::ChatUser_Profile">
</datawriter_qos>
</data_writer>
</publisher>
<publisher name="ChatMessagePublisher">
<data_writer name="ChatMessageWriter" topic_ref="message">
<datawriter_qos base_name="chat_library::ChatMessage_Profile">
</datawriter_qos>
</data_writer>
<publisher_qos base_name="chat_library::ChatMessage_Profile">
</publisher_qos>
</publisher>
<subscriber name="ChatUserSubscriber">
<data_reader name="ChatUserReader" topic_ref="userInfo">
<datareader_qos base_name="chat_library::ChatUser_Profile">
</datareader_qos>
</data_reader>
</subscriber>
<subscriber name="ChatMessageSubscriber">
<data_reader name="ChatMessageReader" topic_ref="message">
<content_filter name="MessageFilter" kind="builtin.sql">
<expression>(toUser MATCH %0) or (toGroup MATCH %1)</expression>
<expression_parameters>
<element>'$(user)'</element>
<element>'$(group)'</element>
</expression_parameters>
</content_filter>
<datareader_qos base_name="chat_library::ChatMessage_Profile">
</datareader_qos>
</data_reader>
<subscriber_qos base_name="chat_library::ChatMessage_Profile">
</subscriber_qos>
</subscriber>
<domain_participant_qos base_name="chat_library::Chat_Profile">
</domain_participant_qos>
</domain_participant>
</domain_participant_library>
</dds>