blather 0.3.4 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/LICENSE +1 -1
- data/README.rdoc +41 -12
- data/examples/echo.rb +1 -1
- data/examples/execute.rb +0 -5
- data/examples/pubsub/cli.rb +64 -0
- data/examples/pubsub/ping_pong.rb +18 -0
- data/examples/rosterprint.rb +14 -0
- data/examples/xmpp4r/echo.rb +35 -0
- data/lib/blather.rb +35 -12
- data/lib/blather/client.rb +1 -1
- data/lib/blather/client/client.rb +19 -13
- data/lib/blather/client/dsl.rb +16 -0
- data/lib/blather/client/dsl/pubsub.rb +133 -0
- data/lib/blather/core_ext/active_support.rb +1 -117
- data/lib/blather/core_ext/active_support/inheritable_attributes.rb +117 -0
- data/lib/blather/core_ext/nokogiri.rb +35 -0
- data/lib/blather/errors.rb +3 -20
- data/lib/blather/errors/sasl_error.rb +3 -1
- data/lib/blather/errors/stanza_error.rb +10 -17
- data/lib/blather/errors/stream_error.rb +11 -14
- data/lib/blather/jid.rb +1 -0
- data/lib/blather/roster.rb +9 -0
- data/lib/blather/roster_item.rb +6 -1
- data/lib/blather/stanza.rb +35 -18
- data/lib/blather/stanza/disco.rb +7 -1
- data/lib/blather/stanza/disco/disco_info.rb +45 -33
- data/lib/blather/stanza/disco/disco_items.rb +32 -21
- data/lib/blather/stanza/iq.rb +13 -8
- data/lib/blather/stanza/iq/query.rb +16 -8
- data/lib/blather/stanza/iq/roster.rb +33 -22
- data/lib/blather/stanza/message.rb +20 -31
- data/lib/blather/stanza/presence.rb +3 -5
- data/lib/blather/stanza/presence/status.rb +13 -21
- data/lib/blather/stanza/presence/subscription.rb +11 -16
- data/lib/blather/stanza/pubsub.rb +63 -0
- data/lib/blather/stanza/pubsub/affiliations.rb +50 -0
- data/lib/blather/stanza/pubsub/create.rb +43 -0
- data/lib/blather/stanza/pubsub/errors.rb +9 -0
- data/lib/blather/stanza/pubsub/event.rb +77 -0
- data/lib/blather/stanza/pubsub/items.rb +63 -0
- data/lib/blather/stanza/pubsub/publish.rb +58 -0
- data/lib/blather/stanza/pubsub/retract.rb +53 -0
- data/lib/blather/stanza/pubsub/subscribe.rb +42 -0
- data/lib/blather/stanza/pubsub/subscription.rb +66 -0
- data/lib/blather/stanza/pubsub/subscriptions.rb +55 -0
- data/lib/blather/stanza/pubsub/unsubscribe.rb +42 -0
- data/lib/blather/stanza/pubsub_owner.rb +41 -0
- data/lib/blather/stanza/pubsub_owner/delete.rb +34 -0
- data/lib/blather/stanza/pubsub_owner/purge.rb +34 -0
- data/lib/blather/stream.rb +76 -168
- data/lib/blather/stream/client.rb +1 -2
- data/lib/blather/stream/component.rb +9 -5
- data/lib/blather/stream/features.rb +53 -0
- data/lib/blather/stream/features/resource.rb +63 -0
- data/lib/blather/stream/{sasl.rb → features/sasl.rb} +53 -52
- data/lib/blather/stream/features/session.rb +44 -0
- data/lib/blather/stream/features/tls.rb +28 -0
- data/lib/blather/stream/parser.rb +70 -46
- data/lib/blather/xmpp_node.rb +113 -52
- data/spec/blather/client/client_spec.rb +44 -58
- data/spec/blather/client/dsl/pubsub_spec.rb +465 -0
- data/spec/blather/client/dsl_spec.rb +19 -6
- data/spec/blather/core_ext/nokogiri_spec.rb +83 -0
- data/spec/blather/errors/sasl_error_spec.rb +8 -8
- data/spec/blather/errors/stanza_error_spec.rb +25 -33
- data/spec/blather/errors/stream_error_spec.rb +21 -16
- data/spec/blather/errors_spec.rb +4 -11
- data/spec/blather/jid_spec.rb +31 -30
- data/spec/blather/roster_item_spec.rb +34 -23
- data/spec/blather/roster_spec.rb +27 -12
- data/spec/blather/stanza/discos/disco_info_spec.rb +61 -42
- data/spec/blather/stanza/discos/disco_items_spec.rb +47 -35
- data/spec/blather/stanza/iq/query_spec.rb +34 -11
- data/spec/blather/stanza/iq/roster_spec.rb +47 -30
- data/spec/blather/stanza/iq_spec.rb +19 -14
- data/spec/blather/stanza/message_spec.rb +30 -17
- data/spec/blather/stanza/presence/status_spec.rb +43 -20
- data/spec/blather/stanza/presence/subscription_spec.rb +41 -21
- data/spec/blather/stanza/presence_spec.rb +34 -21
- data/spec/blather/stanza/pubsub/affiliations_spec.rb +57 -0
- data/spec/blather/stanza/pubsub/create_spec.rb +56 -0
- data/spec/blather/stanza/pubsub/event_spec.rb +84 -0
- data/spec/blather/stanza/pubsub/items_spec.rb +79 -0
- data/spec/blather/stanza/pubsub/publish_spec.rb +83 -0
- data/spec/blather/stanza/pubsub/retract_spec.rb +75 -0
- data/spec/blather/stanza/pubsub/subscribe_spec.rb +61 -0
- data/spec/blather/stanza/pubsub/subscription_spec.rb +97 -0
- data/spec/blather/stanza/pubsub/subscriptions_spec.rb +59 -0
- data/spec/blather/stanza/pubsub/unsubscribe_spec.rb +61 -0
- data/spec/blather/stanza/pubsub_owner/delete_spec.rb +50 -0
- data/spec/blather/stanza/pubsub_owner/purge_spec.rb +50 -0
- data/spec/blather/stanza/pubsub_owner_spec.rb +27 -0
- data/spec/blather/stanza/pubsub_spec.rb +62 -0
- data/spec/blather/stanza_spec.rb +53 -38
- data/spec/blather/stream/client_spec.rb +231 -88
- data/spec/blather/stream/component_spec.rb +14 -5
- data/spec/blather/stream/parser_spec.rb +145 -0
- data/spec/blather/xmpp_node_spec.rb +192 -96
- data/spec/fixtures/pubsub.rb +311 -0
- data/spec/spec_helper.rb +5 -4
- metadata +54 -18
- data/Rakefile +0 -139
- data/ext/extconf.rb +0 -65
- data/ext/push_parser.c +0 -209
- data/lib/blather/core_ext/libxml.rb +0 -28
- data/lib/blather/stream/resource.rb +0 -48
- data/lib/blather/stream/session.rb +0 -36
- data/lib/blather/stream/stream_handler.rb +0 -39
- data/lib/blather/stream/tls.rb +0 -33
- data/spec/blather/core_ext/libxml_spec.rb +0 -58
|
@@ -0,0 +1,311 @@
|
|
|
1
|
+
def items_all_nodes_xml
|
|
2
|
+
<<-ITEMS
|
|
3
|
+
<iq type='result'
|
|
4
|
+
from='pubsub.shakespeare.lit'
|
|
5
|
+
to='francisco@denmark.lit/barracks'
|
|
6
|
+
id='items1'>
|
|
7
|
+
<pubsub xmlns='http://jabber.org/protocol/pubsub'>
|
|
8
|
+
<items node='princely_musings'>
|
|
9
|
+
<item id='368866411b877c30064a5f62b917cffe'>
|
|
10
|
+
<entry xmlns='http://www.w3.org/2005/Atom'>
|
|
11
|
+
<title>The Uses of This World</title>
|
|
12
|
+
<summary>
|
|
13
|
+
O, that this too too solid flesh would melt
|
|
14
|
+
Thaw and resolve itself into a dew!
|
|
15
|
+
</summary>
|
|
16
|
+
<link rel='alternate' type='text/html'
|
|
17
|
+
href='http://denmark.lit/2003/12/13/atom03'/>
|
|
18
|
+
<id>tag:denmark.lit,2003:entry-32396</id>
|
|
19
|
+
<published>2003-12-12T17:47:23Z</published>
|
|
20
|
+
<updated>2003-12-12T17:47:23Z</updated>
|
|
21
|
+
</entry>
|
|
22
|
+
</item>
|
|
23
|
+
<item id='3300659945416e274474e469a1f0154c'>
|
|
24
|
+
<entry xmlns='http://www.w3.org/2005/Atom'>
|
|
25
|
+
<title>Ghostly Encounters</title>
|
|
26
|
+
<summary>
|
|
27
|
+
O all you host of heaven! O earth! what else?
|
|
28
|
+
And shall I couple hell? O, fie! Hold, hold, my heart;
|
|
29
|
+
And you, my sinews, grow not instant old,
|
|
30
|
+
But bear me stiffly up. Remember thee!
|
|
31
|
+
</summary>
|
|
32
|
+
<link rel='alternate' type='text/html'
|
|
33
|
+
href='http://denmark.lit/2003/12/13/atom03'/>
|
|
34
|
+
<id>tag:denmark.lit,2003:entry-32396</id>
|
|
35
|
+
<published>2003-12-12T23:21:34Z</published>
|
|
36
|
+
<updated>2003-12-12T23:21:34Z</updated>
|
|
37
|
+
</entry>
|
|
38
|
+
</item>
|
|
39
|
+
<item id='4e30f35051b7b8b42abe083742187228'>
|
|
40
|
+
<entry xmlns='http://www.w3.org/2005/Atom'>
|
|
41
|
+
<title>Alone</title>
|
|
42
|
+
<summary>
|
|
43
|
+
Now I am alone.
|
|
44
|
+
O, what a rogue and peasant slave am I!
|
|
45
|
+
</summary>
|
|
46
|
+
<link rel='alternate' type='text/html'
|
|
47
|
+
href='http://denmark.lit/2003/12/13/atom03'/>
|
|
48
|
+
<id>tag:denmark.lit,2003:entry-32396</id>
|
|
49
|
+
<published>2003-12-13T11:09:53Z</published>
|
|
50
|
+
<updated>2003-12-13T11:09:53Z</updated>
|
|
51
|
+
</entry>
|
|
52
|
+
</item>
|
|
53
|
+
<item id='ae890ac52d0df67ed7cfdf51b644e901'>
|
|
54
|
+
<entry xmlns='http://www.w3.org/2005/Atom'>
|
|
55
|
+
<title>Soliloquy</title>
|
|
56
|
+
<summary>
|
|
57
|
+
To be, or not to be: that is the question:
|
|
58
|
+
Whether 'tis nobler in the mind to suffer
|
|
59
|
+
The slings and arrows of outrageous fortune,
|
|
60
|
+
Or to take arms against a sea of troubles,
|
|
61
|
+
And by opposing end them?
|
|
62
|
+
</summary>
|
|
63
|
+
<link rel='alternate' type='text/html'
|
|
64
|
+
href='http://denmark.lit/2003/12/13/atom03'/>
|
|
65
|
+
<id>tag:denmark.lit,2003:entry-32397</id>
|
|
66
|
+
<published>2003-12-13T18:30:02Z</published>
|
|
67
|
+
<updated>2003-12-13T18:30:02Z</updated>
|
|
68
|
+
</entry>
|
|
69
|
+
</item>
|
|
70
|
+
</items>
|
|
71
|
+
</pubsub>
|
|
72
|
+
</iq>
|
|
73
|
+
ITEMS
|
|
74
|
+
end
|
|
75
|
+
|
|
76
|
+
def pubsub_items_some_xml
|
|
77
|
+
<<-ITEMS
|
|
78
|
+
<iq type='result'
|
|
79
|
+
from='pubsub.shakespeare.lit'
|
|
80
|
+
to='francisco@denmark.lit/barracks'
|
|
81
|
+
id='items1'>
|
|
82
|
+
<pubsub xmlns='http://jabber.org/protocol/pubsub'>
|
|
83
|
+
<items node='princely_musings'>
|
|
84
|
+
<item id='368866411b877c30064a5f62b917cffe'>
|
|
85
|
+
<entry xmlns='http://www.w3.org/2005/Atom'>
|
|
86
|
+
<title>The Uses of This World</title>
|
|
87
|
+
<summary>
|
|
88
|
+
O, that this too too solid flesh would melt
|
|
89
|
+
Thaw and resolve itself into a dew!
|
|
90
|
+
</summary>
|
|
91
|
+
<link rel='alternate' type='text/html'
|
|
92
|
+
href='http://denmark.lit/2003/12/13/atom03'/>
|
|
93
|
+
<id>tag:denmark.lit,2003:entry-32396</id>
|
|
94
|
+
<published>2003-12-12T17:47:23Z</published>
|
|
95
|
+
<updated>2003-12-12T17:47:23Z</updated>
|
|
96
|
+
</entry>
|
|
97
|
+
</item>
|
|
98
|
+
<item id='3300659945416e274474e469a1f0154c'>
|
|
99
|
+
<entry xmlns='http://www.w3.org/2005/Atom'>
|
|
100
|
+
<title>Ghostly Encounters</title>
|
|
101
|
+
<summary>
|
|
102
|
+
O all you host of heaven! O earth! what else?
|
|
103
|
+
And shall I couple hell? O, fie! Hold, hold, my heart;
|
|
104
|
+
And you, my sinews, grow not instant old,
|
|
105
|
+
But bear me stiffly up. Remember thee!
|
|
106
|
+
</summary>
|
|
107
|
+
<link rel='alternate' type='text/html'
|
|
108
|
+
href='http://denmark.lit/2003/12/13/atom03'/>
|
|
109
|
+
<id>tag:denmark.lit,2003:entry-32396</id>
|
|
110
|
+
<published>2003-12-12T23:21:34Z</published>
|
|
111
|
+
<updated>2003-12-12T23:21:34Z</updated>
|
|
112
|
+
</entry>
|
|
113
|
+
</item>
|
|
114
|
+
<item id='4e30f35051b7b8b42abe083742187228'>
|
|
115
|
+
<entry xmlns='http://www.w3.org/2005/Atom'>
|
|
116
|
+
<title>Alone</title>
|
|
117
|
+
<summary>
|
|
118
|
+
Now I am alone.
|
|
119
|
+
O, what a rogue and peasant slave am I!
|
|
120
|
+
</summary>
|
|
121
|
+
<link rel='alternate' type='text/html'
|
|
122
|
+
href='http://denmark.lit/2003/12/13/atom03'/>
|
|
123
|
+
<id>tag:denmark.lit,2003:entry-32396</id>
|
|
124
|
+
<published>2003-12-13T11:09:53Z</published>
|
|
125
|
+
<updated>2003-12-13T11:09:53Z</updated>
|
|
126
|
+
</entry>
|
|
127
|
+
</item>
|
|
128
|
+
</items>
|
|
129
|
+
<set xmlns='http://jabber.org/protocol/rsm'>
|
|
130
|
+
<first index='0'>368866411b877c30064a5f62b917cffe</first>
|
|
131
|
+
<last>4e30f35051b7b8b42abe083742187228</last>
|
|
132
|
+
<count>19</count>
|
|
133
|
+
</set>
|
|
134
|
+
</pubsub>
|
|
135
|
+
</iq>
|
|
136
|
+
ITEMS
|
|
137
|
+
end
|
|
138
|
+
|
|
139
|
+
def affiliations_xml
|
|
140
|
+
<<-NODE
|
|
141
|
+
<iq type='result'
|
|
142
|
+
from='pubsub.shakespeare.lit'
|
|
143
|
+
to='francisco@denmark.lit'
|
|
144
|
+
id='affil1'>
|
|
145
|
+
<pubsub xmlns='http://jabber.org/protocol/pubsub'>
|
|
146
|
+
<affiliations>
|
|
147
|
+
<affiliation node='node1' affiliation='owner'/>
|
|
148
|
+
<affiliation node='node2' affiliation='owner'/>
|
|
149
|
+
<affiliation node='node3' affiliation='publisher'/>
|
|
150
|
+
<affiliation node='node4' affiliation='outcast'/>
|
|
151
|
+
<affiliation node='node5' affiliation='member'/>
|
|
152
|
+
<affiliation node='node6' affiliation='none'/>
|
|
153
|
+
</affiliations>
|
|
154
|
+
</pubsub>
|
|
155
|
+
</iq>
|
|
156
|
+
NODE
|
|
157
|
+
end
|
|
158
|
+
|
|
159
|
+
def subscriptions_xml
|
|
160
|
+
<<-NODE
|
|
161
|
+
<iq type='result'
|
|
162
|
+
from='pubsub.shakespeare.lit'
|
|
163
|
+
to='francisco@denmark.lit'
|
|
164
|
+
id='affil1'>
|
|
165
|
+
<pubsub xmlns='http://jabber.org/protocol/pubsub'>
|
|
166
|
+
<subscriptions>
|
|
167
|
+
<subscription node='node1' jid='francisco@denmark.lit' subscription='subscribed'/>
|
|
168
|
+
<subscription node='node2' jid='francisco@denmark.lit' subscription='subscribed'/>
|
|
169
|
+
<subscription node='node3' jid='francisco@denmark.lit' subscription='unconfigured'/>
|
|
170
|
+
<subscription node='node4' jid='francisco@denmark.lit' subscription='pending'/>
|
|
171
|
+
<subscription node='node5' jid='francisco@denmark.lit' subscription='none'/>
|
|
172
|
+
</subscriptions>
|
|
173
|
+
</pubsub>
|
|
174
|
+
</iq>
|
|
175
|
+
NODE
|
|
176
|
+
end
|
|
177
|
+
|
|
178
|
+
def event_with_payload_xml
|
|
179
|
+
<<-NODE
|
|
180
|
+
<message from='pubsub.shakespeare.lit' to='francisco@denmark.lit' id='foo'>
|
|
181
|
+
<event xmlns='http://jabber.org/protocol/pubsub#event'>
|
|
182
|
+
<items node='princely_musings'>
|
|
183
|
+
<item id='ae890ac52d0df67ed7cfdf51b644e901'>
|
|
184
|
+
<entry xmlns='http://www.w3.org/2005/Atom'>
|
|
185
|
+
<title>Soliloquy</title>
|
|
186
|
+
<summary>
|
|
187
|
+
To be, or not to be: that is the question:
|
|
188
|
+
Whether 'tis nobler in the mind to suffer
|
|
189
|
+
The slings and arrows of outrageous fortune,
|
|
190
|
+
Or to take arms against a sea of troubles,
|
|
191
|
+
And by opposing end them?
|
|
192
|
+
</summary>
|
|
193
|
+
<link rel='alternate' type='text/html'
|
|
194
|
+
href='http://denmark.lit/2003/12/13/atom03'/>
|
|
195
|
+
<id>tag:denmark.lit,2003:entry-32397</id>
|
|
196
|
+
<published>2003-12-13T18:30:02Z</published>
|
|
197
|
+
<updated>2003-12-13T18:30:02Z</updated>
|
|
198
|
+
</entry>
|
|
199
|
+
</item>
|
|
200
|
+
</items>
|
|
201
|
+
</event>
|
|
202
|
+
</message>
|
|
203
|
+
NODE
|
|
204
|
+
end
|
|
205
|
+
|
|
206
|
+
def event_notification_xml
|
|
207
|
+
<<-NODE
|
|
208
|
+
<message from='pubsub.shakespeare.lit' to='francisco@denmark.lit' id='foo'>
|
|
209
|
+
<event xmlns='http://jabber.org/protocol/pubsub#event'>
|
|
210
|
+
<items node='princely_musings'>
|
|
211
|
+
<item id='ae890ac52d0df67ed7cfdf51b644e901'/>
|
|
212
|
+
</items>
|
|
213
|
+
</event>
|
|
214
|
+
</message>
|
|
215
|
+
NODE
|
|
216
|
+
end
|
|
217
|
+
|
|
218
|
+
def event_subids_xml
|
|
219
|
+
<<-NODE
|
|
220
|
+
<message from='pubsub.shakespeare.lit' to='francisco@denmark.lit' id='foo'>
|
|
221
|
+
<event xmlns='http://jabber.org/protocol/pubsub#event'>
|
|
222
|
+
<items node='princely_musings'>
|
|
223
|
+
<item id='ae890ac52d0df67ed7cfdf51b644e901'/>
|
|
224
|
+
</items>
|
|
225
|
+
</event>
|
|
226
|
+
<headers xmlns='http://jabber.org/protocol/shim'>
|
|
227
|
+
<header name='SubID'>123-abc</header>
|
|
228
|
+
<header name='SubID'>004-yyy</header>
|
|
229
|
+
</headers>
|
|
230
|
+
</message>
|
|
231
|
+
NODE
|
|
232
|
+
end
|
|
233
|
+
|
|
234
|
+
def unsubscribe_xml
|
|
235
|
+
<<-NODE
|
|
236
|
+
<iq type='error'
|
|
237
|
+
from='pubsub.shakespeare.lit'
|
|
238
|
+
to='francisco@denmark.lit/barracks'
|
|
239
|
+
id='unsub1'>
|
|
240
|
+
<pubsub xmlns='http://jabber.org/protocol/pubsub'>
|
|
241
|
+
<unsubscribe node='princely_musings' jid='francisco@denmark.lit'/>
|
|
242
|
+
</pubsub>
|
|
243
|
+
<error type='modify'>
|
|
244
|
+
<bad-request xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/>
|
|
245
|
+
<subid-required xmlns='http://jabber.org/protocol/pubsub#errors'/>
|
|
246
|
+
</error>
|
|
247
|
+
</iq>
|
|
248
|
+
NODE
|
|
249
|
+
end
|
|
250
|
+
|
|
251
|
+
def subscription_xml
|
|
252
|
+
<<-NODE
|
|
253
|
+
<iq type='result'
|
|
254
|
+
from='pubsub.shakespeare.lit'
|
|
255
|
+
to='francisco@denmark.lit/barracks'
|
|
256
|
+
id='sub1'>
|
|
257
|
+
<pubsub xmlns='http://jabber.org/protocol/pubsub'>
|
|
258
|
+
<subscription
|
|
259
|
+
node='princely_musings'
|
|
260
|
+
jid='francisco@denmark.lit'
|
|
261
|
+
subid='ba49252aaa4f5d320c24d3766f0bdcade78c78d3'
|
|
262
|
+
subscription='subscribed'/>
|
|
263
|
+
</pubsub>
|
|
264
|
+
</iq>
|
|
265
|
+
NODE
|
|
266
|
+
end
|
|
267
|
+
|
|
268
|
+
def subscribe_xml
|
|
269
|
+
<<-NODE
|
|
270
|
+
<iq type='set'
|
|
271
|
+
from='francisco@denmark.lit/barracks'
|
|
272
|
+
to='pubsub.shakespeare.lit'
|
|
273
|
+
id='sub1'>
|
|
274
|
+
<pubsub xmlns='http://jabber.org/protocol/pubsub'>
|
|
275
|
+
<subscribe
|
|
276
|
+
node='princely_musings'
|
|
277
|
+
jid='francisco@denmark.lit'/>
|
|
278
|
+
</pubsub>
|
|
279
|
+
</iq>
|
|
280
|
+
NODE
|
|
281
|
+
end
|
|
282
|
+
|
|
283
|
+
def publish_xml
|
|
284
|
+
<<-NODE
|
|
285
|
+
<iq type='result'
|
|
286
|
+
from='pubsub.shakespeare.lit'
|
|
287
|
+
to='hamlet@denmark.lit/blogbot'
|
|
288
|
+
id='publish1'>
|
|
289
|
+
<pubsub xmlns='http://jabber.org/protocol/pubsub'>
|
|
290
|
+
<publish node='princely_musings'>
|
|
291
|
+
<item id='ae890ac52d0df67ed7cfdf51b644e901'/>
|
|
292
|
+
</publish>
|
|
293
|
+
</pubsub>
|
|
294
|
+
</iq>
|
|
295
|
+
NODE
|
|
296
|
+
end
|
|
297
|
+
|
|
298
|
+
def retract_xml
|
|
299
|
+
<<-NODE
|
|
300
|
+
<iq type='set'
|
|
301
|
+
from='hamlet@denmark.lit/elsinore'
|
|
302
|
+
to='pubsub.shakespeare.lit'
|
|
303
|
+
id='retract1'>
|
|
304
|
+
<pubsub xmlns='http://jabber.org/protocol/pubsub'>
|
|
305
|
+
<retract node='princely_musings'>
|
|
306
|
+
<item id='ae890ac52d0df67ed7cfdf51b644e901'/>
|
|
307
|
+
</retract>
|
|
308
|
+
</pubsub>
|
|
309
|
+
</iq>
|
|
310
|
+
NODE
|
|
311
|
+
end
|
data/spec/spec_helper.rb
CHANGED
|
@@ -7,6 +7,8 @@ require 'minitest/spec'
|
|
|
7
7
|
require 'mocha'
|
|
8
8
|
require 'mocha/expectation_error'
|
|
9
9
|
|
|
10
|
+
MiniTest::Unit.autorun
|
|
11
|
+
|
|
10
12
|
module MiniTest
|
|
11
13
|
require 'pathname' if MINI_DIR =~ %r{^./}
|
|
12
14
|
|
|
@@ -36,7 +38,6 @@ class Object
|
|
|
36
38
|
end
|
|
37
39
|
end
|
|
38
40
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
Unit.autorun
|
|
41
|
+
def parse_stanza(xml)
|
|
42
|
+
Nokogiri::XML.parse xml
|
|
43
|
+
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: blather
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.4.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Jeff Smick
|
|
@@ -9,7 +9,7 @@ autorequire:
|
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
11
|
|
|
12
|
-
date: 2009-05
|
|
12
|
+
date: 2009-06-05 00:00:00 -07:00
|
|
13
13
|
default_executable:
|
|
14
14
|
dependencies:
|
|
15
15
|
- !ruby/object:Gem::Dependency
|
|
@@ -23,21 +23,21 @@ dependencies:
|
|
|
23
23
|
version: 0.12.6
|
|
24
24
|
version:
|
|
25
25
|
- !ruby/object:Gem::Dependency
|
|
26
|
-
name:
|
|
26
|
+
name: nokogiri
|
|
27
27
|
type: :runtime
|
|
28
28
|
version_requirement:
|
|
29
29
|
version_requirements: !ruby/object:Gem::Requirement
|
|
30
30
|
requirements:
|
|
31
31
|
- - ">="
|
|
32
32
|
- !ruby/object:Gem::Version
|
|
33
|
-
version: 1.
|
|
33
|
+
version: 1.3.0
|
|
34
34
|
version:
|
|
35
|
-
description: An
|
|
35
|
+
description: An XMPP DSL for Ruby written on top of EventMachine and Nokogiri
|
|
36
36
|
email: sprsquish@gmail.com
|
|
37
37
|
executables: []
|
|
38
38
|
|
|
39
|
-
extensions:
|
|
40
|
-
|
|
39
|
+
extensions: []
|
|
40
|
+
|
|
41
41
|
extra_rdoc_files:
|
|
42
42
|
- LICENSE
|
|
43
43
|
- README.rdoc
|
|
@@ -47,14 +47,18 @@ files:
|
|
|
47
47
|
- examples/execute.rb
|
|
48
48
|
- examples/ping_pong.rb
|
|
49
49
|
- examples/print_heirarchy.rb
|
|
50
|
-
-
|
|
51
|
-
-
|
|
50
|
+
- examples/pubsub/cli.rb
|
|
51
|
+
- examples/pubsub/ping_pong.rb
|
|
52
|
+
- examples/rosterprint.rb
|
|
53
|
+
- examples/xmpp4r/echo.rb
|
|
52
54
|
- lib/blather.rb
|
|
53
55
|
- lib/blather/client.rb
|
|
54
56
|
- lib/blather/client/client.rb
|
|
55
57
|
- lib/blather/client/dsl.rb
|
|
58
|
+
- lib/blather/client/dsl/pubsub.rb
|
|
56
59
|
- lib/blather/core_ext/active_support.rb
|
|
57
|
-
- lib/blather/core_ext/
|
|
60
|
+
- lib/blather/core_ext/active_support/inheritable_attributes.rb
|
|
61
|
+
- lib/blather/core_ext/nokogiri.rb
|
|
58
62
|
- lib/blather/errors.rb
|
|
59
63
|
- lib/blather/errors/sasl_error.rb
|
|
60
64
|
- lib/blather/errors/stanza_error.rb
|
|
@@ -73,15 +77,30 @@ files:
|
|
|
73
77
|
- lib/blather/stanza/presence.rb
|
|
74
78
|
- lib/blather/stanza/presence/status.rb
|
|
75
79
|
- lib/blather/stanza/presence/subscription.rb
|
|
80
|
+
- lib/blather/stanza/pubsub.rb
|
|
81
|
+
- lib/blather/stanza/pubsub/affiliations.rb
|
|
82
|
+
- lib/blather/stanza/pubsub/create.rb
|
|
83
|
+
- lib/blather/stanza/pubsub/errors.rb
|
|
84
|
+
- lib/blather/stanza/pubsub/event.rb
|
|
85
|
+
- lib/blather/stanza/pubsub/items.rb
|
|
86
|
+
- lib/blather/stanza/pubsub/publish.rb
|
|
87
|
+
- lib/blather/stanza/pubsub/retract.rb
|
|
88
|
+
- lib/blather/stanza/pubsub/subscribe.rb
|
|
89
|
+
- lib/blather/stanza/pubsub/subscription.rb
|
|
90
|
+
- lib/blather/stanza/pubsub/subscriptions.rb
|
|
91
|
+
- lib/blather/stanza/pubsub/unsubscribe.rb
|
|
92
|
+
- lib/blather/stanza/pubsub_owner.rb
|
|
93
|
+
- lib/blather/stanza/pubsub_owner/delete.rb
|
|
94
|
+
- lib/blather/stanza/pubsub_owner/purge.rb
|
|
76
95
|
- lib/blather/stream.rb
|
|
77
96
|
- lib/blather/stream/client.rb
|
|
78
97
|
- lib/blather/stream/component.rb
|
|
98
|
+
- lib/blather/stream/features.rb
|
|
99
|
+
- lib/blather/stream/features/resource.rb
|
|
100
|
+
- lib/blather/stream/features/sasl.rb
|
|
101
|
+
- lib/blather/stream/features/session.rb
|
|
102
|
+
- lib/blather/stream/features/tls.rb
|
|
79
103
|
- lib/blather/stream/parser.rb
|
|
80
|
-
- lib/blather/stream/resource.rb
|
|
81
|
-
- lib/blather/stream/sasl.rb
|
|
82
|
-
- lib/blather/stream/session.rb
|
|
83
|
-
- lib/blather/stream/stream_handler.rb
|
|
84
|
-
- lib/blather/stream/tls.rb
|
|
85
104
|
- lib/blather/xmpp_node.rb
|
|
86
105
|
- LICENSE
|
|
87
106
|
- README.rdoc
|
|
@@ -109,14 +128,15 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
109
128
|
requirements: []
|
|
110
129
|
|
|
111
130
|
rubyforge_project: squishtech
|
|
112
|
-
rubygems_version: 1.3.
|
|
131
|
+
rubygems_version: 1.3.4
|
|
113
132
|
signing_key:
|
|
114
133
|
specification_version: 3
|
|
115
|
-
summary: Simpler XMPP
|
|
134
|
+
summary: Simpler XMPP built for speed
|
|
116
135
|
test_files:
|
|
117
136
|
- spec/blather/client/client_spec.rb
|
|
137
|
+
- spec/blather/client/dsl/pubsub_spec.rb
|
|
118
138
|
- spec/blather/client/dsl_spec.rb
|
|
119
|
-
- spec/blather/core_ext/
|
|
139
|
+
- spec/blather/core_ext/nokogiri_spec.rb
|
|
120
140
|
- spec/blather/errors/sasl_error_spec.rb
|
|
121
141
|
- spec/blather/errors/stanza_error_spec.rb
|
|
122
142
|
- spec/blather/errors/stream_error_spec.rb
|
|
@@ -133,8 +153,24 @@ test_files:
|
|
|
133
153
|
- spec/blather/stanza/presence/status_spec.rb
|
|
134
154
|
- spec/blather/stanza/presence/subscription_spec.rb
|
|
135
155
|
- spec/blather/stanza/presence_spec.rb
|
|
156
|
+
- spec/blather/stanza/pubsub/affiliations_spec.rb
|
|
157
|
+
- spec/blather/stanza/pubsub/create_spec.rb
|
|
158
|
+
- spec/blather/stanza/pubsub/event_spec.rb
|
|
159
|
+
- spec/blather/stanza/pubsub/items_spec.rb
|
|
160
|
+
- spec/blather/stanza/pubsub/publish_spec.rb
|
|
161
|
+
- spec/blather/stanza/pubsub/retract_spec.rb
|
|
162
|
+
- spec/blather/stanza/pubsub/subscribe_spec.rb
|
|
163
|
+
- spec/blather/stanza/pubsub/subscription_spec.rb
|
|
164
|
+
- spec/blather/stanza/pubsub/subscriptions_spec.rb
|
|
165
|
+
- spec/blather/stanza/pubsub/unsubscribe_spec.rb
|
|
166
|
+
- spec/blather/stanza/pubsub_owner/delete_spec.rb
|
|
167
|
+
- spec/blather/stanza/pubsub_owner/purge_spec.rb
|
|
168
|
+
- spec/blather/stanza/pubsub_owner_spec.rb
|
|
169
|
+
- spec/blather/stanza/pubsub_spec.rb
|
|
136
170
|
- spec/blather/stanza_spec.rb
|
|
137
171
|
- spec/blather/stream/client_spec.rb
|
|
138
172
|
- spec/blather/stream/component_spec.rb
|
|
173
|
+
- spec/blather/stream/parser_spec.rb
|
|
139
174
|
- spec/blather/xmpp_node_spec.rb
|
|
175
|
+
- spec/fixtures/pubsub.rb
|
|
140
176
|
- spec/spec_helper.rb
|