Florian Schmaus
818ee8a727
Make Objects.requireNonNull() throw IllegalArgumentException
...
and not NullPointerException. Altough this differs from
java.util.Objects behavior, throwing an IllegalArgumentException
appears more sensible and makes it easier to catch it in Smack's
parsing function.
2019-06-11 12:47:40 +02:00
Florian Schmaus
4d36e3b521
Introduce FormFieldChildElement and make FormField immutable
2019-06-11 12:47:39 +02:00
Florian Schmaus
619b8e6f4a
Add secure(OnlineAttackSafe|Unique|OfflineAttackSafe)RandomString()
...
and replace usages of java.util.UUID in Smack with
secureUniqueRandomString() because it uses a thread-local secure random
number generator.
2019-06-02 20:08:03 +02:00
Florian Schmaus
f7762c5db7
Add "whitespace after comma" checkstyle rule
2019-05-17 21:56: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
7f0dc72dab
Update errorprone(-plugin) and make Unused(Variable|Method) an error
2019-05-07 23:09:00 +02:00
Florian Schmaus
e1ed035beb
Remove xmlunit-lagacy and add xmlunit-assertj
2019-05-07 19:06:16 +02:00
Florian Schmaus
95dbf5bb36
Change JUnit API from 4 to 5 in smack-experimental
2019-05-07 18:51:22 +02:00
Florian Schmaus
505493d889
Add XmlStringBuilder.optAttribute(String, Number)
2019-05-07 10:18:55 +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
Florian Schmaus
ae2c57f56b
Fix XML in MamResultProviderTest
...
Add missing whitespace between XML attributes.
2019-04-29 13:56:16 +02:00
Florian Schmaus
9c30e4f3cc
Merge branch '4.3'
2019-04-16 09:27:48 +02:00
Florian Schmaus
11775ed6b0
Add checkstyle rule for 'synchronized' on Manager.getInstanceFor()
2019-04-15 09:58:53 +02:00
Florian Schmaus
488055948d
Add missing 'synchronized' keywords to Manager.getInstanceFor()
...
Fixes SMACK-865.
2019-04-15 09:48:52 +02:00
Florian Schmaus
fc45e1b905
DoX: Ensure that the response message ID matches the query ID
2019-04-09 17:02:56 +02:00
Florian Schmaus
62fd897cf7
Add support for XEP-0418: DNS Queries over XMPP (DoX)
...
Fixes SMACK-862.
2019-04-09 10:56:47 +02:00
Florian Schmaus
9f8d13b8cd
Do not explicitly select the Provider in HashManager
...
Note that we still setup the BouncyCastleProvider so all requested
MessageDigest instances should be avaialble.
2019-04-02 15:58:34 +02:00
Florian Schmaus
d6a90942a4
Unify Bouncy Castle versions: Add bouncyCastleVersion variable
2019-04-02 15:58:34 +02:00
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
Florian Schmaus
3bdc1d30b1
Correctly name provider INSTANCE fields
...
and make them 'final' where possible.
2019-02-23 23:59:17 +01:00
Florian Schmaus
5f7cfd04bd
Add further unit test to StableUniqueStanzaIdTest
2019-02-23 23:59:17 +01:00
Florian Schmaus
5a2109e73f
Move cast in extra line in ADD_ORIGIN_ID_INTERCEPTOR
2019-02-23 23:40:27 +01:00
Florian Schmaus
4da4558b29
Make origin-id interceptor static and rename it
2019-02-23 23:39:58 +01:00
Florian Schmaus
27749b2137
Remove unused filter in StableUniqueStanzaIdManager
2019-02-23 23:39:41 +01:00
Florian Schmaus
8df69bd3ce
Use XmlEnvironment in parsing/provider subsystem
2019-02-15 23:21:30 +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
7a3f6f29cc
Merge branch '4.3'
2018-12-21 13:21:50 +01:00
Florian Schmaus
d1c73eba8d
Fix MamManager javadoc
...
of methods which have been renamed.
2018-12-20 17:00:00 +01:00
Florian Schmaus
273937199b
Merge branch '4.3'
2018-11-29 22:55:38 +01:00
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
62a0c6f26e
Merge branch '4.3'
2018-11-29 22:39:55 +01:00
Florian Schmaus
dbfc123e5e
Use ParserUtils.parseXmlBoolean() where appropriate
2018-11-29 22:29:21 +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
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
Simon Schuster
f23f27aa75
Typo in CarbonManager.java
...
The listeners "were" registered...
2018-09-09 22:06:43 +02:00
Florian Schmaus
105192d7e7
Only announce support for ChatMarkers if there is a listener
2018-09-06 20:24:41 +02:00
Florian Schmaus
0fa6fb946c
Remove broken methods in ChatMarkersManager
2018-09-06 20:24:41 +02:00
Florian Schmaus
0778485243
Deduplicate code ChatMarkersElements
...
by introducing ChatMarkerExtensionWithId.
2018-09-06 20:24:41 +02:00
Florian Schmaus
36bfa060a5
Ensure the ID is given in ChatMarkersElements
2018-09-06 20:24:41 +02:00
Florian Schmaus
3547fde91c
Rename EligibleForChatMarker to EligibleForChatMarkerFilter
2018-09-06 20:24:41 +02:00
Florian Schmaus
3f1b18636e
Use Message.hasStanzaIdSet() in EligibleForChatMarker filter
2018-09-06 20:24:41 +02:00
Florian Schmaus
0b9cce507d
Use asEntityBareJidOrThrow() in ChatMarkersManager listener
2018-09-06 20:24:41 +02:00
Florian Schmaus
b12f5a1591
Make MarkableExtension a singleton
...
to reduce pressure on the memory subsystem.
2018-09-06 20:24:41 +02:00
Florian Schmaus
45736e8ead
Remove NORMAL_OR_CHAT_OR_GROUPCHAT MessageTypeFilter
...
Type 'groupchat' message stanzas are not like others, they usually
require special handling. Hence such a filter is usually an indication
that multiple concepts are intermixed.
2018-09-06 18:42:41 +02:00
Florian Schmaus
830f3661e7
Avoid getInstanceOf() in listener as it is a costly operation
2018-09-06 18:41:19 +02:00
Miguel Hincapie
547138b325
Improve ChatMarkersManager
...
* Created filters to be used with incoming and outgoing message stanzas
* Added a list of ChatMarkersListener and its add and remove methods.
* Added a stanza listener for outgoing messages.
* Added a stanza listener for incoming messages.
* Added discover feature for XEP-0333.
* Added methods to inform a message was: received, displayed or ack
* Added javadoc autor tag.
2018-09-06 18:39:00 +02: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
51e800c034
Smack 4.3.0
...
-----BEGIN PGP SIGNATURE-----
iQGTBAABCgB9FiEEl3UFnzoh3OFr5PuuIjmn6PWFIFIFAltjB1dfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDk3
NzUwNTlGM0EyMURDRTE2QkU0RkJBRTIyMzlBN0U4RjU4NTIwNTIACgkQIjmn6PWF
IFISagf/bFhu9Getz7tvo3R+Z2brTszQSKVIvXf6DFKXWapUwOLeZp6EQGQXbnym
UOz1ykMnkCrgKRyNmPFwG2ZBcHWdL0/2nvyfm0e6nhd5gsoTJoqH8gMtVNlIsa47
lGatkr0JhsyHUREtMbnRmGMEh5M+pMGGWGLqHIFXJIZJ2/IV2cMlBx0jPFpd+Toc
IKXfe8euZp6Ic8JKk4V7SIcpTJw9zsihsXP3zwwDjn0xft89tI8lpT6MfaWL9q+Z
bUSEoEv27gJvK1iFbxKR4A1TGnmesl8GMBeWhU2+aF8PardYuc3+0qjD9yah6o6p
hlg4um1bgWixqRgGWfkcbhDHS1E04A==
=+uoq
-----END PGP SIGNATURE-----
Merge tag '4.3.0'
Smack 4.3.0
2018-08-02 16:17:58 +02:00
Florian Schmaus
48627bd0fe
Merge pull request #253 from vanitasvitae/norEmpty
...
requireNotNullOrEmpty: Obey the rules of grammar
2018-07-28 12:57:49 +02:00
74bebc13e6
requireNotNullOrEmpty -> requireNotNullNorEmpty
2018-07-17 15:10:39 +02:00
29e2a633d8
Fix ClassCastException in hasProtocol method
2018-07-04 16:26:52 +02:00
2347c2a025
Avoid adding multiple processing hints to a message
2018-07-04 11:55:58 +02:00
Florian Schmaus
8011ba96bb
Merge pull request #244 from vanitasvitae/EmeImprovements
...
Add EME convenience methods
2018-07-03 09:52: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
b66cc4c5b5
Add EME convenience methods
2018-06-20 13:59:08 +02:00
Florian Schmaus
9f786fc70d
Remove deprecated methods in MamManager
2018-06-14 10:00:24 +02:00
Florian Schmaus
9161ba9e7d
Improve MamManager API
2018-06-12 08:53:18 +02:00
Florian Schmaus
a3cf1ab0ca
Fix MamManager.isSupported(): Use archive address
2018-06-06 08:45:13 +02:00
Florian Schmaus
fb5d7ff7d4
Add MamManager.getInstanceFor(MultiUserChat)
2018-05-31 18:37:31 +02:00
Florian Schmaus
cb97b5032c
Improve javadoc for MamManager.getInstanceFor(XMPPConnection)
2018-05-31 18:27:54 +02:00
Florian Schmaus
50e98fe31d
Improve javadoc for MamManager.isSupported()
2018-05-31 18:27:34 +02:00
Florian Schmaus
7a2e4140c7
Add MamManager.getArchiveAddress()
2018-05-31 18:27:11 +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
a9e45475ab
Treat <body/> just like all other extension elements in Message
...
This turned out to be a rather large change.
2018-05-09 17:13:09 +02:00
Florian Schmaus
5ab2903c32
Change Element.toXml() to toXml(String enclosingNamespace)
2018-04-27 10:05:25 +02:00
Florian Schmaus
cc0022c919
Globally s;Stanza(/Packet);Stanza; and more 'packet' → 'stanza'
2018-04-23 21:10:22 +02:00
Florian Schmaus
74f14484e6
Smack 4.2.4
...
-----BEGIN PGP SIGNATURE-----
iQGTBAABCgB9FiEEl3UFnzoh3OFr5PuuIjmn6PWFIFIFAlrTPy5fFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDk3
NzUwNTlGM0EyMURDRTE2QkU0RkJBRTIyMzlBN0U4RjU4NTIwNTIACgkQIjmn6PWF
IFI5aAf/Rb6Y+hqxiHRbsmww74rt7HfgQnOjOjz3bPhgbVH2emzBHzxsU2pBBY87
iTfCXjXA3qQ9FzluBchLrd9EciDEXq1A/ZblYnR+kch1DK7wvVipTPWIzOHt6ahD
q7vfS9EmmFBCRjNM4tW8zwaajWWeJAWimXoZFxuy/n+2FORnx0x5NrnIHwYvyUtf
nY432BOiCg7l6J9sgfcoYDgP0Ot4SkdfUIgGOYonv0lzKW8HkU/OZZwEMbFhlCHU
s0inbU5ldDDP7xXIinDqHVSKpRlSIkaOJ0zbAQLjFz8h2fCnqDGhpnNbun8Xb7l2
agsATloOl91tlUV5D+qRWjzkx7pDxA==
=YqLS
-----END PGP SIGNATURE-----
Merge tag '4.2.4'
Smack 4.2.4
2018-04-15 14:48:22 +02:00
e200f2ddf8
Add OMEMO to EME
2018-04-15 13:39:27 +02:00
Florian Schmaus
476fdf99a1
Inroduce AsyncButOrdered
2018-04-08 21:21:50 +02:00
Florian Schmaus
2efec89050
Rename XMPPError to StanzaError
...
Fixes SMACK-769.
2018-04-07 22:59:25 +02:00
Florian Schmaus
609f4243d9
Remove deprecated method in PUshNotificationsManager
2018-04-07 21:22:39 +02:00
Florian Schmaus
75babfb9c6
Add comment to HttpFileUploadManager
2018-04-06 13:26:03 +02:00
Florian Schmaus
1d88c857b5
Change FormField value(s) type from String to CharSequence
2018-04-06 13:24:54 +02:00
Florian Schmaus
6a42d5baff
Rework FileUtils
2018-04-06 10:25:06 +02:00
Florian Schmaus
ad87243060
Globally 's;stanza(/packet);stanza;'
2018-03-31 14:17:30 +02:00
Florian Schmaus
a9ca1a0989
Enable ModifierOrder checkstyle check
...
Fixes SMACK-812
2018-03-29 12:35:11 +02:00
Florian Schmaus
193688e553
Merge branch '4.2'
2018-03-28 12:51:28 +02:00
Florian Schmaus
5b9254aff5
Merge pull request #209 from fuentesj11/rename-deprecate-xmppconnection-methods
...
Rename and deprecate XMPPConnection methods
2018-03-28 12:11:32 +02:00
Jesus Fuentes
a70063dc89
Rename and deprecate XMPPConnection methods
...
Rename and deprecate XMPPConnections methods as described in SMACK-802
2018-03-22 15:40:40 -05:00
Florian Schmaus
f42d9137b5
Merge branch '4.2'
2018-03-21 15:22:22 +01:00
b81f8fe18e
Add support for XEP-0372: References
...
Add support for XEP-0372: References
Fixes SMACK-799
2018-03-12 13:37:19 +01:00
Florian Schmaus
026f3a2f8c
Merge branch '4.2'
2018-02-22 14:54:48 +01:00
Florian Schmaus
e1eb2d4ef1
Remove package-info.java from test code
...
Otherwise we have duplicate package-info.java files which caues some
build systems and IDEs to report a failure.
2018-02-22 14:16:04 +01:00
Florian Schmaus
4bf5c0c714
Suppress 'unsused' warning in SpoilerTest
2018-02-22 09:31:35 +01:00
Florian Schmaus
c1e557e1d4
Add NAMESPACE field to SpoilerElement
2018-02-22 09:31:35 +01:00
Florian Schmaus
bde6239c26
Return empty map in SpoilerElement.getSpoilers() instead of null
2018-02-22 09:31:35 +01:00
Florian Schmaus
4292659f22
Use StringUtils in SpoilerElement
2018-02-22 09:03:09 +01:00
Florian Schmaus
81f599425a
Make SDM a field in SpoilerManager
2018-02-22 09:02:28 +01:00
ce19ea4114
Add support for XEP-0382: Spoiler Messages
...
Fixes SMACK-795.
2018-02-22 08:51:54 +01:00
a729a7c43b
Add support for XEP-0394: Message Markup
...
Fixes SMACK-794.
2018-02-21 20:49:01 +01:00
b3b76b9ff4
Add support for XEP-0359: Stable and Unique Stanza IDs
...
Fixes SMACK-798
2018-02-21 20:43:56 +01:00
Florian Schmaus
a48e8ef843
Merge branch '4.2'
2018-02-21 20:13:05 +01:00
9f47daa7ad
Add missing package-info descriptions.
2018-02-21 16:47:11 +01:00