Commit Graph

3604 Commits

Author SHA1 Message Date
Tairs Rzajevs 0332fa54d1 Fix previous archive page requested incorrectly in MamManager
Previous page should be before the first message in the previous
result set, not the last.

Fixes SMACK-843.
2018-11-29 22:50:59 +01:00
Florian Schmaus fa7297019d Add checkstyle rule for "Boolean.valueOf()" usages 2018-11-29 22:38:11 +01:00
Florian Schmaus dbfc123e5e Use ParserUtils.parseXmlBoolean() where appropriate 2018-11-29 22:29:21 +01:00
Florian Schmaus 7ea7f9e2e9 Add ParserUtils.parseXmlBoolean(String) 2018-11-29 09:02:05 +01:00
Florian Schmaus b675f49b3d
Merge pull request #287 from ge0rg/4.3
Partially fix boolean parser, 4.3 branch
2018-11-28 13:57:22 +01:00
Georg Lukas b8bd10b056 RoomInfo: use proper boolean parser for `muc#roominfo_subjectmod`
XML allows both false/true and 0/1 syntax for booleans.

Signed-off-by: Georg Lukas <georg@op-co.de>
2018-11-28 11:11:52 +01:00
Georg Lukas 8b88f9cb20 Bookmarks: use proper boolean parser for `autojoin`
Some clients (read: Gajim) store boolean values as `0` and `1` instead
of `false` and `true`, which is legal for the XML boolean type.

Signed-off-by: Georg Lukas <georg@op-co.de>
2018-11-28 11:11:52 +01:00
Georg Lukas 229653af30 ParserUtils: fix boolean parser
How could this even happen?

Signed-off-by: Georg Lukas <georg@op-co.de>
2018-11-28 11:11:52 +01:00
asokolov 2900c5ae23 Move xml-not-well-formed (RFC 3920) condition handling to StreamError
Fixes SMACK-842.
2018-11-14 14:53:04 +01:00
Florian Schmaus 5f05da2f77 Smack 4.3.2-SNAPSHOT 2018-10-14 14:22:00 +02:00
Florian Schmaus 6a43481320 Smack 4.3.1 2018-10-14 12:53:11 +02:00
Florian Schmaus cf22371d3e Catch IllegalArgumentException in XmlUtil clinit
Fixes SMACK-833.
2018-10-14 12:10:50 +02:00
Florian Schmaus ec982f65e2 Fix IndexOutOfBoundsException in FormField.getFirstValue()
Fixes SMACK-838.
2018-10-14 12:07:51 +02:00
Florian Schmaus 89c9a41863 Bump MiniDNS to 0.3.3 2018-10-14 11:57:50 +02:00
Florian Schmaus 85731fbe3e
Merge pull request #275 from spslinger/fix-getPresence-ConcurrentModificationException
Fix getPresence ConcurrentModificationException
2018-10-11 14:11:02 +02:00
spslinger 1e21ab763c
Fix getPresence ConcurrentModificationException
Fix for SMACK-841

Since Smack 4.2.4, the getPresencesInternal method in the Roster class
can return a LruCache object, which is a LinkedHashMap with access
order. This means that any access using get or getOrDefault will be a
modification of the Map. If you loop over the keySet of the Map and
there are more than one, the second call to get will throw a
ConcurrentModificationException!

Since the keys are only used here to obtain the corresponding
values, the simplest solution is to just loop over the values instead.
2018-10-11 12:29:32 +02:00
Florian Schmaus 1aa35bc957 Merge branch '4.3' of github.com:Flowdalic/Smack into 4.3 2018-09-12 20:02:16 +02:00
Florian Schmaus 87fac888c6 Improve MultiUserChat's API to query hosted rooms
Return a Map instead of a List. This makes it possible to check for
the existence of MUC by looking up the MUC's address in the Map's key
set.
2018-09-12 19:56:46 +02:00
Florian Schmaus 77baaa99bc Do not warn on presence from bare MUC JID in MultiUserChat
as such presence messages became a thing in XMPP (e.g. for XEP-0153
avatars for MUC).
2018-09-10 21:00:49 +02:00
Florian Schmaus e7372b05ea
Merge pull request #266 from jitsi/4.3
Disconnect BOSH client on shutdown and clear client instance.
2018-08-30 14:36:52 +02:00
damencho 3ffdb9befd Clears bosh client instance on shutdown. Fixes SMACK-829. 2018-08-27 23:58:49 -05:00
Florian Schmaus 158103c918 Add javadoc for MamQueryArgs.Builder.queryLastPage() 2018-08-16 15:35:59 +02:00
Florian Schmaus a4f1039a06 Fix example in MamManager's javadoc: s/queryRecentPage/queryLastPage/ 2018-08-16 15:35:38 +02:00
Florian Schmaus 6e4b85a6b7 Smack 4.3.1-SNAPSHOT 2018-08-02 16:11:25 +02:00
Florian Schmaus 14f4f8eed9 Smack 4.3.0 2018-08-02 15:29:59 +02:00
Florian Schmaus 4b5708603f Bump MiniDNS to 0.3.2 2018-08-02 12:56:32 +02:00
Florian Schmaus 5a7e656898 Bump JXMPP to 0.6.3 2018-08-02 12:55:51 +02:00
Florian Schmaus 5bf0fd64ac Add ExceptionThrowingCallbackWithHint and javadoc
about parsing exceptions also providing rationale.
2018-08-02 09:40:11 +02:00
Florian Schmaus a3fcbdbf5a Make Stanza.appendErrorIfExists() aware of the enclosing XML namespace
Originally discovered by Paul Schaub:

Fixes an inconvenience, where an IQ with the implicit namespace
`jabber:client` would append the namespace to an error child element
like this:

```
<iq (xmlns='jabber:client) <!-- in parenthesis since the NS is implicit --> ... >
    <error xmlns='jabber:client' <!-- this NS is too much --> ... />
</iq>
``
2018-08-01 13:16:20 +02:00
Florian Schmaus 9596ca8943 Bump AnimalSniffer to 1.4.5 2018-07-30 11:51:20 +02:00
Florian Schmaus 0ffc29aa67
Merge pull request #249 from vanitasvitae/checkHint
Avoid adding multiple storage hints to a message
2018-07-04 14:19:06 +02:00
Paul Schaub 2347c2a025
Avoid adding multiple processing hints to a message 2018-07-04 11:55:58 +02:00
Florian Schmaus 78a5f5089a
Merge pull request #248 from mhariri/fix_bosh_msg_ns
Fix missing body namespace in BOSH messages
2018-07-02 23:02:20 +02:00
Mohsen Hariri 33221c57f9 Fix missing body namespace in BOSH messages
The body's "jabber:client" namespace was missing
in BOSH messages.
2018-07-02 17:20:03 +02:00
Florian Schmaus c73219b797 Add (To|From)TypeFilter.(FROM|TO)_ANY_JID
to filter all stanzas which have a valid jid set as to/from.
2018-06-20 22:17:11 +02:00
Florian Schmaus 61be4d768d Add javadoc describing the XMPPErrorException class 2018-06-20 22:17:11 +02:00
Florian Schmaus 23bb5c5625 Add XMPPErrorException.getStanzaError()
Also deprecate getXMPPError and let StanzaError implement
ExtensionElement.
2018-06-20 22:17:11 +02:00
Florian Schmaus 651ee7b85e Smack 4.3.0-rc2-SNAPSHOT 2018-06-17 14:10:12 +02:00
Florian Schmaus 21f0be58df Smack 4.3.0-rc1 2018-06-17 13:49:29 +02:00
Florian Schmaus 37b5260cdd Fix DNSUtil.setDaneProvider()
Fixes SMACK-820.
2018-06-12 19:06:18 +02:00
Florian Schmaus 9e865fe6ab Merge remote-tracking branch 'ignite/4.3' into 4.3 2018-06-12 13:41:43 +02:00
Florian Schmaus 6ba9218c77 Introduce myRoomJid EntityFullJid in MultiUserChat 2018-06-12 12:16:56 +02:00
Florian Schmaus 021ebf8ab3
Merge pull request #242 from igniterealtime/4.3_MUC-leave-without-nickname
fix: Prevent attempt to construct invalid address
2018-06-12 11:05:27 +02:00
Guus der Kinderen 03a267a925 fix: Prevent attempt to construct invalid address
When no join was properly registered, a nickname will not be defined.
In that case, attempting to construct the from address for the 'leave'
presence stanza will result in:

java.lang.IllegalArgumentException: The Resourcepart must not be null

This commit prevents that, by verifying that the nickname is non-null,
before sending that stanza.
2018-06-12 10:09:55 +02:00
Florian Schmaus 9161ba9e7d Improve MamManager API 2018-06-12 08:53:18 +02:00
Florian Schmaus d958b42eff Add StanzaCollector.getCollectedStanzasAfterCancelled() 2018-06-11 22:08:15 +02:00
Florian Schmaus 1dec29617e Fix StanzaCollector's Exception message: s/Packet/Stanza/ 2018-06-11 22:08:15 +02:00
Florian Schmaus 77707737df Make StanzaCollector's cancelled field volatile 2018-06-11 22:08:15 +02:00
Florian Schmaus c792be9267 Add StringUtils.requireNullOrNotEmpty() 2018-06-07 17:55:00 +02:00
Florian Schmaus 414d730962 Optimize XmlStringBuilder.element() for the empty element case
For example RSM (XEP-0059) gives <before/> a different semantic as
<before>UID</before>.
2018-06-07 17:15:16 +02:00