Commit Graph

3013 Commits

Author SHA1 Message Date
Florian Schmaus f1e24e2273 Rework Roster's SubscribeListener
allow multiple of them to be installed, instead of at most one. Fixes
deadlock in LowLevelRosterIntegration test because
IoTProvisioningManager's SubscribeListener would not come up with a
decission.
2016-07-31 14:50:59 +02:00
Florian Schmaus 5b137616bb Fix NPE in IoTDiscoveryManager 2016-07-31 14:50:59 +02:00
Florian Schmaus 8810f17460 Allow empty username/passwords in integration test 2016-07-31 14:50:59 +02:00
Florian Schmaus c74d16f68a Merge pull request #86 from esl/ramabit.mam.doc
Add MAM documentation
2016-07-30 11:14:38 +02:00
Florian Schmaus 632acbe33f Smack 4.2.0-beta3-SNAPSHOT 2016-07-30 11:11:54 +02:00
Florian Schmaus 252f1b690c Smack 4.2.0-beta2 2016-07-30 11:00:06 +02:00
Florian Schmaus 00134c8f50 Smack 4.1.8
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQF8BAABCgBmBQJXnGezXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w
 ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQ5Nzc1MDU5RjNBMjFEQ0UxNkJFNEZCQUUy
 MjM5QTdFOEY1ODUyMDUyAAoJECI5p+j1hSBSo3EH/1usQTee7P4ABvL5iB2LtQtB
 B2tZdOpDWAyNass7+kP40MX544O2cFxS0NHW6vY+BJCvdn128iWJGYlFY0qLv6ON
 +cLYMs4zlBnI/o/V8siCMa/awUnUvBEe6lyHTZc2fLp9x1g/qx9GUZuOznk8CEC4
 aF6YBFbcL+uXj6Rx4mVCfBtPur+Nr64Pz2pm6T0kw0PdeFbFY9Bn9rnfPHhGl7vk
 4w7f6QJ/VsjmlQUK9s65tLoKdWlmnp7hY5fvdPeAc7jNfsIMPUMxk/JgloXrLPP3
 q0g6IKQe/40lWcyDn5doyhhncGxLcdHx4sUP+UM0MRlJyS924xCIhg2wxRkq2Ag=
 =Lfdm
 -----END PGP SIGNATURE-----

Merge tag '4.1.8'

Smack 4.1.8
2016-07-30 10:43:20 +02:00
Florian Schmaus a1bbefc9e3 Smack 4.1.9-SNAPSHOT 2016-07-30 10:39:38 +02:00
Florian Schmaus a87007fb77 Smack 4.1.8 2016-07-30 10:29:30 +02:00
ramabit 656914dcb0 add mam.md in index.md 2016-07-29 17:55:10 -03:00
ramabit 125f858b45 add mam documentation 2016-07-29 16:46:56 -03:00
Florian Schmaus 67cc513b2e Update releasedocs/README.html 2016-07-24 23:40:07 +02:00
Florian Schmaus 4d7e4b2ab1 Add Message(String, String) constructor
to make simply Smack examples work, e.g.

Message message = new Message("user@example.org", "Hi, how are you?");
2016-07-24 21:21:21 +02:00
Florian Schmaus aeb385a022 Apply refinements and fixes to the MAM code
SMACK-625.
2016-07-23 15:45:45 +02:00
Fernando Ramirez 189cac072b Implement Message Archive Management (MAM) XEP-0313
Fixes SMACK-625
2016-07-23 12:45:14 +02:00
Florian Schmaus b91978dcc4 Add (partial) support for IoT XEPs
That is XEP-0323, -0324, -0325, and -0347.

SMACK-727.
2016-07-21 08:51:11 +02:00
Florian Schmaus d1fe5c2933 Use loopback address for Socks5 unit tests
to prevent using an address that is not reachable for whatever reason.
2016-07-08 16:39:10 +02:00
Florian Schmaus 651f8cf7c0 Improve MucEnterConfiguration javadoc
by mentioning how to obtain a builder for it.
2016-07-08 11:18:20 +02:00
Florian Schmaus d3cc9d12a0 Implement flexible port selection in Socks5ClientTest 2016-07-08 08:07:37 +02:00
Florian Schmaus 66f4b9cdff Change type of purge/remove IQ (XEP-0013) to 'set'
Fixes SMACK-726
2016-07-06 08:38:26 +02:00
Florian Schmaus 45b04800a4 Handle AlreadyConnectedException in ReconnectionManager
Fixes SMACK-725.
2016-07-04 08:27:18 +02:00
Florian Schmaus e943bbbd91 Handle AlreadyLoggedInException in ReconnectionManager
Fixes SMACK-725.
2016-07-04 08:27:06 +02:00
Florian Schmaus fb55b9065f Do not re-use the Socket after connect() failed
Fixes SMACK-724.
2016-07-04 08:25:15 +02:00
Florian Schmaus 1f87185ee8 Do not base64 twice in SASL X-OAUTH2
Fixes SMACK-722.
2016-07-04 08:25:01 +02:00
Florian Schmaus 17c9661283 Handle AlreadyLoggedInException in ReconnectionManager
Fixes SMACK-725.
2016-07-01 08:18:56 +02:00
Florian Schmaus d07ed60737 Add support for "Caps Optimizations"
Smack's previous entity caps implementation assumed that an entity lost
its entity caps feature as soon as a presence without caps from that
entity was received. But according to XEP-0115 § 8.4, this is a
perfectly normal optimization technique. We now reset the caps state
after an available presence becomes unavailable.

Also introduce PresenceEventListener, which is required for this
feature.

Also make Roster.preApprove() take a BareJid as argument.

Fixes SMACK-723.
2016-06-30 17:01:46 +02:00
Florian Schmaus 4248fbbb89 Use lowercase chars in integration testRunId 2016-06-29 08:08:13 +02:00
Florian Schmaus 73fcbc6b27 Do not re-use the Socket after connect() failed
Fixes SMACK-724.
2016-06-21 21:23:30 +02:00
Florian Schmaus f8c00533c7 build.gradle: Record branch in version string 2016-06-21 21:23:30 +02:00
Florian Schmaus ae6664479e Fix messaging.md
Thanks to Clinton Yeboah for reporting this
2016-06-21 10:06:47 +02:00
Florian Schmaus 30861fb7ce Add comment about dropping SM state on stream errors.
Related to SMACK-696.
2016-06-15 09:19:25 +02:00
Florian Schmaus 08c93da56a Delay notifyConnectionError in writer shutdown 2016-06-09 09:20:09 +02:00
Florian Schmaus 8deac592fb Finer logs in XMPPTCPConnection.shutdown() 2016-06-09 09:20:09 +02:00
Florian Schmaus 2d398b8dcf repl: cd into PROJECT_ROOT 2016-06-09 09:20:09 +02:00
Florian Schmaus 1241d32610 Fixes and small updates for integrationtest.md 2016-06-08 23:05:44 +02:00
Florian Schmaus 4c18814b12 sinttest: Throw exception if service is not set 2016-06-08 23:05:44 +02:00
Florian Schmaus 60b07b1d67 Make DiscoverInfoProvider namespace aware
Some servers respond to disco#info requests with

<iq id='npGtO-21' type='result' to='phone@xxx/MAXS' from='xxx'>
<query xmlns='http://jabber.org/protocol/disco#info'>
<identity type='pep' name='Prosody' category='pubsub'/>
<identity type='im' name='Prosody' category='server'/>
<feature var='urn:xmpp:blocking'/>
<feature var='urn:xmpp:carbons:2'/>
<feature var='urn:xmpp:carbons:1'/>
<feature var='vcard-temp'/>
<feature var='http://jabber.org/protocol/commands'/>
<feature var='urn:xmpp:mam:0'/>
<feature var='jabber:iq:private'/>
<feature var='http://jabber.org/protocol/pubsub#publish'/>
<feature var='http://jabber.org/protocol/disco#info'/>
<feature var='http://jabber.org/protocol/disco#items'/>
<feature var='urn:xmpp:ping'/>
<feature var='msgoffline'/>
<feature var='jabber:iq:roster'/>
<feature var='urn:xmpp:archive:auto'/>
<feature var='urn:xmpp:archive:manage'/>
<feature var='urn:xmpp:archive:pref'/>
<feature var='http://jabber.org/protocol/rsm'/>
<feature xmlns='urn:xmpp:archive'><optional><default/></optional></feature>
</query></iq>

Note the

<feature
xmlns='urn:xmpp:archive'><optional><default/></optional></feature>

which will cause the current parser implementation to parse it as
DiscoInfo Feature resulting in an Exception because some attributes are
missing.

This commit prevents this.
2016-06-03 10:59:10 +02:00
Florian Schmaus 3bd35ecb1a Do not fully qualify type in javadoc 2016-06-03 10:59:10 +02:00
Florian Schmaus 78cf3006ea Don't stamp outgoing stanza in ChatManager
Servers are required to stamp the 'from' stanza attribute anyways.
2016-06-03 10:59:10 +02:00
Florian Schmaus 2e2d147083 Fix typos in integrationtest.md documentation 2016-06-03 10:59:10 +02:00
Florian Schmaus ac5d9d56c6 Do not base64 twice in SASL X-OAUTH2
Fixes SMACK-722.
2016-06-01 13:10:11 +02:00
UltimateZero df0f805feb Use empty string nick on empty element tag
It will use an empty string in case of an empty element tag.
2016-05-31 08:10:31 +02:00
Florian Schmaus fefc8cf332 Log stanza in Roster PresencePacketListener 2016-05-25 22:58:35 +02:00
Florian Schmaus 86e11e69e8 Add Message.toString() providing a short description 2016-05-25 22:58:34 +02:00
Florian Schmaus 98ec77caee Use Message in FromMatchesFilterTest 2016-05-25 22:58:34 +02:00
Florian Schmaus 2bf6435881 Make Bind IQ constructor private 2016-05-25 22:58:34 +02:00
Florian Schmaus 03031dfb5d Add javadoc to SASLError 2016-05-22 22:55:28 +02:00
Florian Schmaus 90f52fcc3b Suppress 'unused' warning in XMPPTCPConnection 2016-05-22 22:50:49 +02:00
Florian Schmaus b7211d5d67 Report illegal Stream Management state
Fixes SMACK-721.
2016-05-22 12:02:12 +02:00
Florian Schmaus f4ce4b6e77 Add @see RFC for Presence's priority element 2016-05-21 12:44:13 +02:00