Florian Schmaus
9352225f44
Rework SOCKS5 unit tests so that they can be run in parallel
...
As result it is now also possible to start multiple local SOCKS5
proxies with different port, which is usually not necessary in real
life but useful for unit tests.
2019-06-02 10:38:19 +02:00
Florian Schmaus
d337474a86
Add DiscoverItems.Item.toString()
2019-05-23 23:06:39 +02:00
Florian Schmaus
02f7cfcf27
Improve session sweeping logic in AdHocCommandManager
...
Fixes SMACK-624.
2019-05-20 10:41:01 +02:00
Florian Schmaus
02e2eba556
Socks5Proxy: Remove empty line
2019-05-18 13:24:48 +02:00
Florian Schmaus
48010f3b82
Socks5Proxy: Log if server thread termination was interrupted
2019-05-18 13:24:30 +02:00
Florian Schmaus
11ae6d6960
Socks5Proxy: Use CloseableUtil to close server socket
2019-05-18 13:24:05 +02:00
Florian Schmaus
ab99f629a3
Socks5Proxy: Include server socket in thread name
2019-05-18 13:23:24 +02:00
Florian Schmaus
f7762c5db7
Add "whitespace after comma" checkstyle rule
2019-05-17 21:56:46 +02:00
Florian Schmaus
7e25c3ada5
Merge branch '4.3'
2019-05-16 20:52:27 +02:00
Florian Schmaus
60db42e2f4
Merge pull request #299 from magnetsystems/autojoin-callback-on-reconnect
...
Autojoin callback on reconnect
2019-05-08 13:43:46 +02:00
Florian Schmaus
d2f5efcb20
Use StandardCharsets.(UTF_8|US_ASCII)
...
This also gets rid of a ton of UnsupportedEncodingException s.
2019-05-08 12:44:48 +02:00
Florian Schmaus
2a4d110b22
Add Socks5Exception and improve SOCKS5 bytestream exception messages
...
The exception message now also contains the stream hosts and their
exception.
2019-05-08 11:07:18 +02:00
Florian Schmaus
fd89a5e5a5
Add StreamHost.toString()
2019-05-08 09:24:23 +02:00
Florian Schmaus
7f0dc72dab
Update errorprone(-plugin) and make Unused(Variable|Method) an error
2019-05-07 23:09:00 +02:00
Florian Schmaus
68d7d738b6
Remove all tabs and add checkstyle rule that enforces no-tabs
...
Fixes SMACK-866.
2019-05-07 21:24:00 +02:00
Florian Schmaus
4a3dda93af
Merge pull request #315 from adiaholic/doc-fix-in-index
...
Minor changes in documentation.
2019-05-06 22:57:59 +02:00
Florian Schmaus
4133eb175c
Replace XPP3 by XmlPullParser interface wrapping StAX and XPP3
...
Introducing Smack's own XmlPullParser interface which tries to stay as
compatible as possible to XPP3. The interface is used to either wrap
StAX's XMLStreamReader if Smack is used on Java SE, and XPP3's
XmlPullParser if Smack is used on on Android.
Fixes SMACK-591.
Also introduce JUnit 5 and non-strict javadoc projects.
2019-05-06 22:10:50 +02:00
Eng ChongMeng
dd903bec95
SMACK-868: Fix XHTMLText producing invalid XML
2019-05-06 00:39:41 +02:00
adiaholic
1554a33518
Changed XEP-031 to XEP-0131
2019-05-04 14:18:46 +05:30
Florian Schmaus
d97fb126a1
Add PubSubManager.getInstanceFor() just like all other Managers
...
and deprecate PubSubManager.getInstance().
2019-04-16 11:21:22 +02:00
Florian Schmaus
9c30e4f3cc
Merge branch '4.3'
2019-04-16 09:27:48 +02:00
Florian Schmaus
488055948d
Add missing 'synchronized' keywords to Manager.getInstanceFor()
...
Fixes SMACK-865.
2019-04-15 09:48:52 +02:00
V Lau
f1fb03d08c
Add a success callback for auto-join on reconnect.
...
When auto-join on reconnection is success, invoke a callback.
Conform to the proper copyright format.
2019-04-09 14:21:11 -07:00
Florian Schmaus
0ec7e84cbc
Update link to XMPP Registry for Service Discovery Identities
2019-04-09 14:26:15 +02:00
Florian Schmaus
9ad162af6e
Use correct field in ServiceDiscoveryManager.getIdentities()
...
Fixes SMACK-863.
2019-04-09 12:14:12 +02:00
Florian Schmaus
0d17f195b0
Use EntityFullJid as JID type in MultiUserChat.getJoinedRooms()
...
Got a user who put in a EntityBareJid and wondered why the returned
list was empty.
2019-04-07 22:13:38 +02:00
Florian Schmaus
0cd3318b12
Merge pull request #301 from adiaholic/JIRA836
...
Saving an instance of ServiceDiscoveryManager in MultiUserChatManager.
2019-03-24 11:39:20 +01:00
Florian Schmaus
989dbb14e8
Merge pull request #296 from MarcelHeckel/PingManager_ConnectionOkOnAnyPacket
...
PingManager: con. assumed ok for any packed within the ping interval
2019-03-20 20:00:54 +01:00
adiaholic
d6e25730d0
Saving an instance of ServiceDiscoveryManager in MultiUserChatManager.
...
Previously, the costly method 'ServiceDiscoveryManager.getInstance()'
was called at multiple instances inside MultiUserChatManager.
In this commit I wish to replace this call by saving a private final
instance of 'ServiceDiscoveryManager' which will is an attempt at
solving SMACK-836.
2019-03-18 13:10:20 +05:30
Florian Schmaus
daab6039a1
Smack 4.3.3
...
-----BEGIN PGP SIGNATURE-----
iQGTBAABCgB9FiEEl3UFnzoh3OFr5PuuIjmn6PWFIFIFAlyKV9tfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDk3
NzUwNTlGM0EyMURDRTE2QkU0RkJBRTIyMzlBN0U4RjU4NTIwNTIACgkQIjmn6PWF
IFL4vQf/Qfg3VzNEnmk0+KjOtuvfAbhMfzE92gfo15vE0PPEIe9VA0Pzkvqhva4k
Efw7BhD2zx8hWvo0d5FfkdII89hSYnOCiSmhiX1Ln9q/gUqFW0TDAKpsMfAl7jAK
Fap8M7uUStP9T6fF/gq01djYCYoWA/4v1lGKv4J4b9gWCqzGIF2sK0M7of7VERnr
pEXJSUM228rk6EYjVmX/9Ujo1Y+xaNMFFZZSbKYrirAqjP540v0OPBCRQyB8qFaI
NTcNJ+qESe6Q80mw5V+y/kD6kX0LERSDB+pigzOOOlmfMtD1uADR84tAynuTKNAU
7/5K/YSQxceRY6RTgD17Al5lHIH5nw==
=ToR+
-----END PGP SIGNATURE-----
Merge tag '4.3.3'
Smack 4.3.3
2019-03-14 18:23:33 +01:00
Heckel
3d3d89612f
PingManager: Assume server ping successful if stanzas where received
...
We assume that the connection is good even if there was no ping
result but a stanzas within the ping interval.
In some case we have produced so much load, that the ping result
was not delivered in time because so many other packets were
delivered before.
2019-03-14 12:42:46 +01:00
Florian Schmaus
7f0932a481
Reset the MUC self-presence collector on presence stanzas on join
...
To prevent timeouts when joining very large MUCs we now reset the
self-presence collector's timeout for every other (occupant) presence
we receive.
Fixes SMACK-859.
2019-03-04 23:01:52 +01:00
Florian Schmaus
825a5836eb
Merge branch '4.3'
2019-02-17 22:28:01 +01:00
Florian Schmaus
e9b514548b
Filter error messages in DeliveryReceiptManager
2019-02-17 22:27:38 +01:00
Florian Schmaus
85f7e1d39c
Remove deprecated methods scheduled for removal in Smack 4.4
2019-02-16 17:17:25 +01:00
Florian Schmaus
8df69bd3ce
Use XmlEnvironment in parsing/provider subsystem
2019-02-15 23:21:30 +01:00
Florian Schmaus
394f3d133a
Make SmackException abstract
2019-02-10 21:53:31 +01:00
Florian Schmaus
7fce6b5a98
Introduce SmackMessageException
2019-02-10 21:50:39 +01:00
Florian Schmaus
7dee3b88a2
Introduce SmackParsingException
2019-02-10 19:01:47 +01:00
Florian Schmaus
083dac8b83
Rework exceptions in the parsing / provider subsystem
2019-02-05 13:18:03 +01:00
Florian Schmaus
fee3ed81ca
Introduce XmlEnvironment
2019-02-05 13:18:03 +01:00
Florian Schmaus
658fd08d20
Use try-with-resources where possible
...
and make StanzaCollector implement AutoCloseable.
2019-02-05 13:18:03 +01:00
Florian Schmaus
e98d42790a
SmackReactor/NIO, Java8/Android19, Pretty print XML, FSM connections
...
This commit adds
- SmackReactor / NIO
- a framework for finite state machine connections
- support for Java 8
- pretty printed XML debug output
It also
- reworks the integration test framework
- raises the minimum Android API level to 19
- introduces XmppNioTcpConnection
Furthermore fixes SMACK-801 (at least partly). Java 8 language
features are available, but not all runtime library methods. For that
we would need to raise the Android API level to 24 or higher.
2019-02-05 13:18:03 +01:00
Florian Schmaus
ee8728479d
Merge branch '4.3'
2018-12-27 14:43:31 +01:00
Florian Schmaus
1a4ad7b8b5
Mark Local SOCKS5 Proxy thread as daemon thread
...
Fixes SMACK-849.
2018-12-27 14:42:48 +01:00
Florian Schmaus
e4c31541e0
Make MultiUserChat.leave() behave as leaveSync()
...
and mark leaveSync() as deprecated.
Fixes SMACK-848.
2018-12-26 21:50:36 +01:00
Florian Schmaus
a9de8e2f76
Merge branch '4.3'
2018-12-26 21:40:10 +01:00
Florian Schmaus
4b21f003af
Add MultiUserChat.leaveSync()
...
Fixes SMACK-848.
2018-12-26 21:39:25 +01:00
Florian Schmaus
62a0c6f26e
Merge branch '4.3'
2018-11-29 22:39:55 +01:00
Florian Schmaus
fa7297019d
Add checkstyle rule for "Boolean.valueOf()" usages
2018-11-29 22:38:11 +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
cc1bee4659
SMACK-828: Add support for XEP-0107: User Mood
2018-11-11 16:13:41 +01:00
Florian Schmaus
b7ea226c56
Bump "Error Prone" to 2.3.2
...
and gradle-errorprone-plugin to 0.6.
2018-10-31 16:06:31 +01:00
Florian Schmaus
2ee621ed10
Factor NickProvider in extra file and fill under correct package
2018-10-21 09:31:15 +02:00
Florian Schmaus
382057f520
Make Nick immutable
2018-10-21 09:01:54 +02:00
Florian Schmaus
2f1f0b6c1a
Clear comments in Nick
2018-10-21 08:58:33 +02:00
Florian Schmaus
c053f5a41b
Escape nickname in Nick.toXML()
2018-10-21 08:58:16 +02:00
Florian Schmaus
ab120691cb
Smack 4.3.1
...
-----BEGIN PGP SIGNATURE-----
iQGTBAABCgB9FiEEl3UFnzoh3OFr5PuuIjmn6PWFIFIFAlvDIBdfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDk3
NzUwNTlGM0EyMURDRTE2QkU0RkJBRTIyMzlBN0U4RjU4NTIwNTIACgkQIjmn6PWF
IFKObAgApvEwstvSXhgzlrA46DM6fXezbPEnO1rh8rCPJEAsmfBSnyINSuuhelzw
zN8L7GAU0jDeuDivxA12vQx5QB8wuCHKgc5pXDKNRi9eUdsyDUMKswcbMMAJWDvq
I3bm7TOC1D9ZWmfhGmqfulrsVD1Q0wh+P2A1/CWVR5ZZUB5S4fESFZUrnCfJmeXe
f+INXUiui3otAF6nPxKm782rSfHWvA32i4Obnagh3oPX/c9R7Ftb78Wukrsbaqfg
+a5iTlBJXLG75/Yozq+JqmWlUvEKv7le0vkF5fF+oc76H4p1U1wqQyIMei/Pwaer
H/SyMqLPzCiwpUHiunpWD13e5kkeLw==
=47on
-----END PGP SIGNATURE-----
Merge tag '4.3.1'
Smack 4.3.1
2018-10-14 14:31:31 +02:00
Florian Schmaus
ec982f65e2
Fix IndexOutOfBoundsException in FormField.getFirstValue()
...
Fixes SMACK-838.
2018-10-14 12:07:51 +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
271ac7ee7a
Use PossibleFromTypeFilter for MultiUserChat's presence listener
2018-09-10 21:05:47 +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
0e847f34f3
Remove unused method in pubsub.Subscription
2018-08-21 12:51:52 +02:00
Florian Schmaus
7374caefef
Make StringEncoder generic
2018-08-21 11:09:26 +02:00
Florian Schmaus
27164f4c06
Do not use a generic return parameter in PubSubManager.getNode()
2018-08-16 17:23:15 +02:00
Florian Schmaus
528e170b99
Use pepPubSubManager in PepManager.publish()
2018-08-15 20:16:33 +02:00
Florian Schmaus
4d4f92ba86
Rename PEP to Pep
2018-08-15 20:15:57 +02:00
Florian Schmaus
4b3f757ed9
Add a PEP PubSubManager to PEPManager
2018-08-15 20:13:40 +02:00
Florian Schmaus
5569782113
Fix javadoc in PEPManager
2018-08-15 17:58:53 +02:00
Florian Schmaus
a1d4a91fa0
Make PubSubManager.deleteNode(String) "node did not exists" aware
2018-08-15 17:48:54 +02:00
Florian Schmaus
a00aa726fe
Introduce CloseableUtil
2018-08-15 17:25:22 +02:00
Florian Schmaus
50385be964
Bump jxmpp to 0.7.0-alpha1
2018-08-02 14:45:26 +02:00
74bebc13e6
requireNotNullOrEmpty -> requireNotNullNorEmpty
2018-07-17 15:10:39 +02:00
Florian Schmaus
ce4f3352a2
Merge branch '4.3'
2018-06-23 17:18:17 +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
8841c4aed2
Remove deprecated method sin SDM and AdHocCommandManager
...
These methods are related to functionality which is no longer existend
in XEP-0030.
2018-06-14 09:59:46 +02:00
Florian Schmaus
84ef4047a7
Remove depreacted methods in MultiUserChat
2018-06-14 09:58:52 +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
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
5ae164f670
Add Forwarded.extractMessagesFrom(Collection<Forwarded>)
2018-06-06 08:39:09 +02:00
Florian Schmaus
8aa7029b38
Add DataForm.addFields()
2018-06-03 21:19:04 +02:00
Florian Schmaus
d26baeb66f
Add Date API methods to FormField values
2018-06-03 17:29:09 +02:00
Florian Schmaus
298bcc8097
Improve FormField.resetValues()
...
by using clear() instead of removeAll().
2018-06-03 17:29:09 +02:00
Florian Schmaus
ccf2b8bcf8
Add MultiUserChat.getXmppConnection()
2018-05-31 18:37:08 +02:00
Boris Grozev
fd5e86ce5a
fix: Cleans the multiUserChats map.
2018-05-21 14:54:23 -05:00
Florian Schmaus
98a029e9c7
Set name of local SOCKS5 proxy thread
2018-05-13 19:37:41 +02:00
Florian Schmaus
fd97f5ba0b
Use a CopyOnWriteArraySet for joinedRooms
...
Since it is accessed concurrently. And also may cause a
ConcurrentModificationException when the MultiUserChatManager tries to
re-join the joined rooms.
Fixes SMACK-819.
2018-05-10 20:30:24 +02:00
Florian Schmaus
72de6540b2
Add DiscoInfoLookupShortcutMechanism and EntityCapabilitiesChangedListener
...
to allow for plugable XEP-0115 like mechanisms. For example XEP-0390.
2018-05-10 20:30:23 +02:00
Florian Schmaus
c94962c763
Add toString() to Disco Feature and Identity
2018-05-10 15:25:20 +02:00
Florian Schmaus
e8923b9d16
Enable trailing whitespace checkstyle check
...
for all source code regions, including javadoc.
2018-05-09 23:26:39 +02:00
Florian Schmaus
cb9a11b74e
Fix Forwarded.toXml(String): Set the correct enclosing XML namespace
2018-05-09 17:13:09 +02:00
Florian Schmaus
779ebd5d69
Merge pull request #234 from vanitasvitae/fixDeliveryReceipts
...
Make receipts id optional (SMACK-815)
2018-05-06 22:00:47 +02:00
95534da53f
Make receipts id optional
...
(SMACK-815)
Remove @author and change javadoc
2018-04-28 13:24:46 +02:00
Florian Schmaus
5ab2903c32
Change Element.toXml() to toXml(String enclosingNamespace)
2018-04-27 10:05:25 +02:00
Florian Schmaus
6c4a02691e
Make PubSub's SimplePayload infer the XML Element name and namespace
...
Fixes SMACK-816.
2018-04-23 22:00:12 +02:00
Florian Schmaus
cc0022c919
Globally s;Stanza(/Packet);Stanza; and more 'packet' → 'stanza'
2018-04-23 21:10:22 +02:00
Florian Schmaus
2065a7ed01
Add findServicesDiscoverInfo() with service argument
...
to ServiceDiscoveryManager.
2018-04-23 20:41:33 +02:00