Florian Schmaus
8fa90113c9
Remove finalize() from AbstractXmppNioConnection
2019-07-19 23:05:46 +02:00
adiaholic
fe85ab3b83
Correcting mini typing error
2019-07-09 22:12:26 +05:30
Florian Schmaus
658905e1ba
Do not check exception message in PacketParserUtilsTest
...
as it may be localized.
This also makes PacketParserUtilsTest to use Junit5.
Fixes SMACK-874.
2019-07-05 17:40:45 +02:00
Florian Schmaus
df5899e72b
Introduce SmackConfiguration.SMACK_URL(_STRING)
2019-07-04 15:51:28 +02:00
Florian Schmaus
1b5a264d52
Add assert to IQ.initializeAsResultFor(IQ)
...
This method is not meant to be used to be invoked with the identity.
2019-07-04 15:48:07 +02:00
Florian Schmaus
870e6c674a
Make ExceptionUtil.getStackTrace(Throwable) null safe
2019-07-04 15:47:46 +02:00
Florian Schmaus
e3ec422071
Try to lookup QNAME first in XmppElementUtil.getQNameFor()
2019-06-12 22:30:56 +02:00
Florian Schmaus
fa0c16d75c
Introduce EqualsUtil and HashCode.(Builder|Cache)
2019-06-12 14:51:17 +02:00
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
6e1193edaf
Use QName instead of XmppStringUtils.generateKey()
2019-06-11 12:47:39 +02:00
Florian Schmaus
7d59df9eed
Change type of presence priority to 'Byte'
2019-06-11 12:47:39 +02:00
Florian Schmaus
e911874e72
Make MultiMap use generics where sensible
...
I wonder why I orginally did not do it that way…
2019-06-11 12:47:39 +02:00
Florian Schmaus
ce70308099
Introduce UInt(16|32) datatypes
2019-06-11 12:47:39 +02:00
Florian Schmaus
b834df65e9
Add NumberUtil.requireUShort16(int)
2019-06-11 12:47:39 +02:00
Florian Schmaus
b3b242f397
Add TODO comment to XmlStringBuilder
2019-06-11 12:47:39 +02:00
Florian Schmaus
4d36e3b521
Introduce FormFieldChildElement and make FormField immutable
2019-06-11 12:47:39 +02:00
Florian Schmaus
3c306eaff9
Improve comment in SmackReactor
2019-06-05 10:54:07 +02:00
Florian Schmaus
9a2cca2bd3
Merge branch 'master' of github.com:Flowdalic/Smack
2019-06-03 17:41:49 +02:00
Florian Schmaus
b288768f77
Introduce util.InternetAddress
...
and use it where sensible. Also fixes a few unit tests along the way.
2019-06-03 17:41:10 +02:00
Florian Schmaus
4334ca33ff
Add missing selector.wakeup() in SmackRactor.schedule()
...
Without this, newly scheduled runnables would potentially not be
scheduled in case the reactor thread was blocking in select(0)
indefinetly.
Thanks to Eng ChongMeng for reporting this.
2019-06-03 09:28:52 +02:00
Florian Schmaus
027cae3bd0
Remove unnecessary synchronization in SmackReater.schedule()
...
The DelayQueue 'scheduledActions' is already thread-safe.
2019-06-03 09:27:28 +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
839e347676
Rename NumberUtil.checkIfInUInt32Range() to requireUInt32
2019-06-02 10:46:53 +02:00
Florian Schmaus
726a2de273
Deprecate ParserUtils.getQName()
2019-06-02 10:44:50 +02:00
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
adiaholic
f91044657f
Generic Exception replaced with Type Specific Exceptions.
...
'parseAndProcessStanza()' throws generic Exceptions.
Since there are plenty of exceptions that should not be
catched by smack, it's better to throw Type Specific Exceptions.
This Commit is was in response to SMACK-839.
2019-05-19 17:09:01 +05:30
Florian Schmaus
04238bd36a
Add CloseableUtil.maybeClose(Closeable)
2019-05-18 13:25:31 +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
381190a45c
Add ConnectionConfiguration.getXmppServiceDomainAsDnsNameIfPossible()
...
in preperation of SMACK-870, so that the DNS name can be used for the
certificate verification.
2019-05-16 14:02:28 +02:00
Florian Schmaus
04f1d79d72
Try GC in MemoryLeakTestUtil.assertReferencesQueueSize()
...
It appears that we observe a partion GC run on some systems,
especially ones with few resources. Hopefully this increases the
chances to observe the expected GC affects so that the unit test
passes also on those systems.
2019-05-09 12:33:43 +02:00
Florian Schmaus
2dedd75cd7
Add comment about Thread.yield() in MemoryLeakTestUtil
2019-05-09 12:06:01 +02:00
Florian Schmaus
edcde28ecd
Set UncaughtExceptionHandler for CACHED_EXECUTOR_SERVICE
...
In order to avoid uncaught exceptions from terminating the
program (SMACK-896).
2019-05-09 11:04:26 +02:00
Florian Schmaus
49f4de0cdb
Replace 'key' with QName
2019-05-08 21:10:39 +02:00
Florian Schmaus
f6be434f66
Remove deprecated methods in StanzaCollector
2019-05-08 20:42:08 +02:00
Florian Schmaus
32429bcb9c
Add message to InterruptedException if blocking queue was shut down
2019-05-08 15:19:10 +02:00
Florian Schmaus
d20a2675a8
Make StanzaCollector final
2019-05-08 12:44:48 +02:00
Florian Schmaus
f8de22478b
Double the timeout to 120s in MemoryLeakTestUtil
...
Because an failing test on Travis was observered using a timeout of
60s:
org.jivesoftware.smackx.muc.MucMemoryLeakTest > mucMemoryLeakTest FAILED
java.lang.AssertionError: No reference found after 60000ms
at org.junit.Assert.fail(Assert.java:88)
at org.junit.Assert.assertTrue(Assert.java:41)
at org.junit.Assert.assertNotNull(Assert.java:712)
at org.jivesoftware.smack.util.MemoryLeakTestUtil.assertReferencesQueueSize(MemoryLeakTestUtil.java:110)
at org.jivesoftware.smack.util.MemoryLeakTestUtil.noResourceLeakTest(MemoryLeakTestUtil.java:103)
at org.jivesoftware.smackx.muc.MucMemoryLeakTest.mucMemoryLeakTest(MucMemoryLeakTest.java:29)
2019-05-08 12:44:48 +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
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
e1ed035beb
Remove xmlunit-lagacy and add xmlunit-assertj
2019-05-07 19:06:16 +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
adiaholic
af5f161fff
Prevent extremely long reply timeouts from being set.
...
Smack will throw an IllegalArguementException if extremely
long reply timeouts are tried to be set. I assumed currentTimeMilli()
to be the boundary condition as per SMACK-718
2019-04-26 20:32:35 +05:30
Florian Schmaus
99bf8316f5
Add javadoc about callbacks to XMPPConnection
2019-04-16 09:33:07 +02:00
Florian Schmaus
9c30e4f3cc
Merge branch '4.3'
2019-04-16 09:27:48 +02:00
Florian Schmaus
6076a9dfa5
Introduce asyncGoLimited()
...
which limits the number of threads created for asynchronous
operations.
Fixes SMACK-864.
2019-04-14 21:40:09 +02:00
Florian Schmaus
474ea68d4a
Remove unused method in Smack's Base64 API
2019-04-09 10:56:47 +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
75b1d8ce13
Add AbstractError.Builder.setDescriptiveEnText(String, Exception)
2019-04-09 09:33:32 +02:00
Florian Schmaus
1122bf394c
Add ExceptionUtil
2019-04-09 09:33:32 +02:00
Florian Schmaus
3075430713
Use IQ.isRequestIQ() in IQ
2019-04-09 09:33:32 +02:00
Florian Schmaus
d1f2631771
Use IQ.isResponseIQ() in AbstractXMPPConnection
2019-04-09 09:33:32 +02:00
Florian Schmaus
87e0ac9ba1
Add IQ.isResponseIQ()
2019-04-09 09:33:32 +02:00
Florian Schmaus
7d5274dad1
Use java.util.Base64 and remove build-in Base64 API
2019-04-09 09:33:32 +02:00
Florian Schmaus
d6b6fdca17
Add ConnectionConfiguration.setXmppAddressAndPassword()
2019-04-07 16:44:04 +02:00
Florian Schmaus
38384a1eed
Improve javadoc of ConnectionConfiguration
2019-04-07 16:43:48 +02:00
Florian Schmaus
89c0fa4b99
Let StringUtils.(insecure)randomString() return empty string
...
in case length is zero. Also do throw a NegativeArraySizeException if
length is negative instead of returning null.
This fixes the following sporadic test issue:
org.jivesoftware.smackx.ox.PainlessOpenPgpProviderTest > encryptDecryptTest FAILED
java.lang.AssertionError
at org.jivesoftware.smack.util.XmlStringBuilder.escape(XmlStringBuilder.java:425)
at org.jivesoftware.smackx.ox.element.EncryptedOpenPgpContentElement.addCommonXml(EncryptedOpenPgpContentElement.java:65)
at org.jivesoftware.smackx.ox.element.CryptElement.toXML(CryptElement.java:51)
at org.jivesoftware.smackx.ox.element.CryptElement.toXML(CryptElement.java:31)
at org.jivesoftware.smack.packet.Element.toXML(Element.java:41)
at org.jivesoftware.smackx.ox.element.OpenPgpContentElement.toInputStream(OpenPgpContentElement.java:186)
at org.jivesoftware.smackx.ox.crypto.PainlessOpenPgpProvider.encrypt(PainlessOpenPgpProvider.java:136)
at org.jivesoftware.smackx.ox.PainlessOpenPgpProviderTest.encryptDecryptTest(PainlessOpenPgpProviderTest.java:155)
because EncryptedOpenPgpContentElement rpad field was sometimes
'null' in case the random function returned '0' as length.
2019-03-25 18:58:58 +01:00
Florian Schmaus
14f288a763
Introduce RandomUtil
...
and use it in EncryptedOpenPgpContentElement
2019-03-25 18:58:58 +01:00
Florian Schmaus
927eb5e7d7
Add MemoryLeakTest(Util)
...
to check for the correct operation of what was implemented with
SMACK-383.
2019-03-25 18:58:58 +01:00
Florian Schmaus
a23adfab6e
Merge branch '4.3'
2019-03-24 00:16:24 +01:00
Oliver Mihatsch
007a04c4fe
Better error messages when using a Proxy to connect to the XMPP server.
2019-03-24 00:12:32 +01:00
Oliver Mihatsch
3450ffad2b
Do not use "CONNECT" in the Host header field.
2019-03-24 00:09:54 +01:00
Florian Schmaus
8e52e80399
Synchronize later in notifyConnectionError(Exception)
...
especially *after* the sync points have been notified so that a
potential thread currently callin gconnect()/login() throws and leaves
the synchronized section.
This commit is more or less equivalent to
3ded023629
of the 4.3 branch.
2019-03-16 10:43:41 +01: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
569f7417a8
Add AuthenticatedConnectionInitiallyEstablished timestamp
2019-03-10 21:24:37 +01:00
Florian Schmaus
c4289b2c18
Add AbstractXMPPConnection.initState()
...
and init/reset the sychronization points there.
This method is called right at the beginning of connect() and at the
end of shutdown().
2019-03-10 21:24:37 +01:00
Florian Schmaus
7518bf9a25
Add descriptive text to StanzaError.toString()
2019-03-10 21:24:37 +01:00
Florian Schmaus
7d2c3ac9f9
Do not call synchronized methods in reader/writer thread
...
This may cause deadlocks with a call to acquire(2) on the introduced
readerWriterSemaphore in initConnection(), which is also synchronized.
2019-03-10 21:24:37 +01:00
Florian Schmaus
3d1a781a22
Show correct reply timeout value in StanzaCollector's NoResponseException
2019-03-05 08:21:59 +01:00
Florian Schmaus
f602de8771
Call shutdown() in connect() on exception
...
to clean up the state build up by connect().
Related to SMACK-855 there is the possiblitiy of a stray (writer)
thread if, for example, tlsHandled.checkifSuccessOrWaitorThrow() in
XMPPTCPConnection.connectInternal() throws. This commit should prevent
that.
2019-03-04 20:14:12 +01:00
Florian Schmaus
488e20476e
Improve message of StressTestFailedException.NotAllMessagesReceivedException
2019-02-17 21:47:16 +01:00
Florian Schmaus
b3ed9bc29f
Add BooleansUtils
2019-02-17 18:21:57 +01:00
Florian Schmaus
9f3d2d2f28
Log if reported XMPP domain does not match expected
2019-02-16 21:54:11 +01:00
Florian Schmaus
12bd76a011
s/@since 4.4/@since 4.4.0/
2019-02-16 17:17:50 +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
a13829aa74
Add javadoc to Smack(Message|Wrapped)Exception
2019-02-10 21:55:07 +01:00
Florian Schmaus
394f3d133a
Make SmackException abstract
2019-02-10 21:53:31 +01:00
Florian Schmaus
7e76712c46
Make SASLAuthentication.authenticationFailed(Exception) private
2019-02-10 21:51:01 +01:00
Florian Schmaus
7fce6b5a98
Introduce SmackMessageException
2019-02-10 21:50:39 +01:00
Florian Schmaus
b51a6c54e8
Introduce SmackSaslException
2019-02-10 21:50:39 +01:00
Florian Schmaus
7dee3b88a2
Introduce SmackParsingException
2019-02-10 19:01:47 +01:00
Florian Schmaus
163ca2b009
Merge branch '4.3'
2019-02-09 20:15:09 +01:00
Florian Schmaus
78dcaec75b
Remove null checks for writer/reader fields in XMPPTCPConnection
...
as those are never null since
60f324eb1b
(the previous commit).
2019-02-09 18:20:55 +01:00
Florian Schmaus
09bffb8dca
Fail sync points on exception in XMPPTCPConnection
2019-02-09 18:12:03 +01:00
Florian Schmaus
083dac8b83
Rework exceptions in the parsing / provider subsystem
2019-02-05 13:18:03 +01:00
Florian Schmaus
4c42d0cd32
Add concurrent but in-order listeners to XMPPConnection
2019-02-05 13:18:03 +01:00
Florian Schmaus
fee3ed81ca
Introduce XmlEnvironment
2019-02-05 13:18:03 +01:00
Florian Schmaus
dc780ffd6c
Make sendStanza() final
2019-02-05 13:18:03 +01:00
Florian Schmaus
5705f18f58
Remove SmackDaneVerifier.finish(SSLSocket)
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
a2743549b8
Make TCP socket connection attempt interruptable
...
by introducing SmackFuture.SocketFuture.
Fixes SMACK-847.
2018-12-21 12:03:49 +01:00
Florian Schmaus
fb2a9b2167
Merge branch '4.3'
2018-12-14 23:09:59 +01:00
Florian Schmaus
f6da386dea
Ensure that IQ response 'to' address and ID are set correctly
...
Fixes SMACK-845.
2018-12-14 17:18:53 +01:00
Florian Schmaus
0c134db072
Add ConnectionConfiguration.setHostAddressByNameOrIp(CharSequence fqdnOrIp)
2018-12-04 15:59:11 +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
Florian Schmaus
7ea7f9e2e9
Add ParserUtils.parseXmlBoolean(String)
2018-11-29 09:02:05 +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
Florian Schmaus
4358251e89
Merge branch '4.3'
2018-11-14 15:02:24 +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
5c090c35d4
Ensure sync listeners not being called after they removed themselves
2018-11-11 16:55:57 +01:00
Florian Schmaus
49b7e8b905
Merge pull request #280 from MarcelHeckel/bosh_connection_with_compression
...
Enables the HTTP compression in JBOSH
2018-11-09 13:52:16 +01:00
Marcel Heckel
1ea10831b6
Enables the HTTP compression in JBOSH
...
Adds an extra parameter "compressionEnabled" to ConnectionConfiguration
that is used to set the setCompressionEnabled() of BOSHClientConfig
2018-11-08 13:36:45 +01:00
Florian Schmaus
0adcf889bf
Merge pull request #278 from vanitasvitae/omemoFileBasedStoreUrlEncode
...
Use new BareJidEncoder class in FileBasedOmemoStore
2018-11-08 07:38:43 +01:00
9302b08854
Use new BareJidEncoder class in FileBasedOmemoStore
2018-11-07 18:17:25 +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
367580d37b
Make sure StanzaCollector is cancelled
...
even if nextResult(long) throws an InterruptedException when called in
nextResultOrThrow(long).
2018-10-22 11:34:49 +02:00
Florian Schmaus
00ce194109
Use Enum.toString() instead of Enum.name() in XmlStringBuilder.optElement()
2018-10-19 11:12:57 +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
cf22371d3e
Catch IllegalArgumentException in XmlUtil clinit
...
Fixes SMACK-833.
2018-10-14 12:10:50 +02:00
Florian Schmaus
b60a772df1
Remove unnecessary getNamespace() call in XmlStringBuilder
2018-10-03 20:09:56 +02:00
Florian Schmaus
127510692d
Remove unnecessary supress "deprecation" warning in ReconnectionManager
2018-10-03 20:09:19 +02:00
Florian Schmaus
09279b8ac0
Add AbstractBlockingQueueWithShutdown.putAll(Collection)
2018-09-11 21:56:45 +02:00
Florian Schmaus
5097f01b7a
Make StreamOpen.toXML(String) 'null' aware
2018-09-11 09:42:08 +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
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
c0b1fee700
Add "rule of thumb" to StanzaFilter javadoc
2018-08-25 12:55:51 +02:00
Florian Schmaus
7374caefef
Make StringEncoder generic
2018-08-21 11:09:26 +02:00
Florian Schmaus
fb3009adb2
Add FileUtils.maybeCreateFileWithParentDirectories(File)
2018-08-17 13:00:34 +02:00
Florian Schmaus
a70ae7ab8e
Add FileUtils.maybeDeleteFileOrThrow(File)
2018-08-17 13:00:34 +02:00
Florian Schmaus
3e65cb31c3
Consolidate FileUtils from smack-openpgp into smack-core
2018-08-15 17:36:29 +02:00
Florian Schmaus
a00aa726fe
Introduce CloseableUtil
2018-08-15 17:25:22 +02:00
Florian Schmaus
1136e8a2e9
Log exception in ProviderFileLoader
2018-08-13 16:40:16 +02:00
Florian Schmaus
6fb95d6226
Close stream in FileUtils.addLines()
2018-08-13 16:39:56 +02:00
Florian Schmaus
5517d03fae
Close stream in UrlInitializer
2018-08-13 16:39:28 +02:00
Florian Schmaus
1e376d4ada
Link to Manager from javadoc-overview.html
2018-08-02 17:14:33 +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
9bb724d65d
Add Possible(From|To)TypeFilter
2018-08-02 11:39:25 +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
d78733e23a
Remove duplicate FileUtils methods
2018-07-30 16:05:58 +02:00
Florian Schmaus
166b8be8a9
Merge pull request #243 from vanitasvitae/tempDir
...
Add utility method to get temp directory
2018-07-30 10:57:24 +02:00
f0af00ee43
XEP-0373, XEP-0374: OpenPGP for XMPP: Instant Messaging
...
Fixes SMACK-826
2018-07-29 18:52:45 +02:00
74bebc13e6
requireNotNullOrEmpty -> requireNotNullNorEmpty
2018-07-17 15:10:39 +02:00
4afe573a68
Add Objects.requireNonNullOrEmpty
2018-07-17 11:39:51 +02:00
4ee034bf40
Add utility method to get temp directory
2018-07-03 10:39:54 +02:00
Florian Schmaus
ce4f3352a2
Merge branch '4.3'
2018-06-23 17:18:17 +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
c83f6ec9c8
Merge branch '4.3'
2018-06-17 14:10:52 +02:00
Florian Schmaus
9e18ba2327
Remove deprecated methods in XMPPConnection
2018-06-14 10:00:37 +02:00
Florian Schmaus
37b5260cdd
Fix DNSUtil.setDaneProvider()
...
Fixes SMACK-820.
2018-06-12 19:06:18 +02:00
Florian Schmaus
f290197f6a
Merge branch '4.3'
2018-06-12 15:49:43 +02:00
Florian Schmaus
1edc00b334
Merge remote-tracking branch 'ignite/master'
2018-06-12 15:49:00 +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
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
Florian Schmaus
f2ea3e0d5b
Add XmlUnitUtils.assertXmlSimilar()
2018-06-03 21:19:38 +02:00
Florian Schmaus
8f691e4b1d
Add ArrayBlockingQueueWithShutdown.tryTake()
2018-05-31 17:20:09 +02:00
Florian Schmaus
751c7b0d40
Improve ArrayBlockingQueueWithShutdown.tryPut()
...
to return the internal state when the operation is performed.
2018-05-31 17:19:36 +02:00
Florian Schmaus
a89f3458f2
Merge pull request #239 from vanitasvitae/fileutils
...
Add method to delete directory
2018-05-22 09:40:21 +02:00
Boris Grozev
fd5e86ce5a
fix: Cleans the multiUserChats map.
2018-05-21 14:54:23 -05:00
168e9398e3
Add method to delete directory
2018-05-21 12:35:25 +02:00
27c77fcb1c
Add utility methods
...
ParserUtils: getShortAttribute
XmlStringBuilder: attribute(String, long), optAttribute(String, Long)
2018-05-20 11:27:52 +02:00
Florian Schmaus
84f282befe
Add XMPPConnection trySendStanza()
2018-05-16 14:49:53 +02:00
Florian Schmaus
c7697ea9d0
Add ArrayBlockingQueueWithShutdown.tryPut(E)
2018-05-16 07:57:50 +02:00
Florian Schmaus
cb27b02658
Make SmackFuture use Smack's cached executor service
...
instead of SmackFuture using it's own executor service.
2018-05-10 20:30:24 +02:00
Florian Schmaus
a22ec4b112
Use java.text.Normalizer for SASLPrep
2018-05-10 20:30:23 +02:00
Florian Schmaus
0e31bc8f73
Fix Stanza.overrideExtension(ExtensionElement)
...
Also fixes SMACK-818.
2018-05-10 15:34:24 +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
96f75a1857
Fix TODO in PacketParserUtils
2018-05-09 17:13:09 +02:00
Florian Schmaus
0df7734efc
Slightly improve PacketParserUtils.parseSessionFeature()
2018-05-09 17:13:09 +02:00
Florian Schmaus
49417d2e20
Remove deprecated methods in PacketParserUtils
2018-05-09 17:13:09 +02:00
Florian Schmaus
6d76e8a1ae
Remove PacketParserutils.getLanguageAttribute(XmlPullParser)
2018-05-09 17:13:09 +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
cd5daa6fd7
Do net set a default language when parsing Message stanzas
...
the fallback is (usually) not needed, as most XMPP XML streams have a default
xml:lang set (See RFC 6120 § 4.7.4.).
2018-05-09 17:13:09 +02:00
Florian Schmaus
93c2b2be26
Do not return a Message "default" language if there is none
2018-05-09 17:13:08 +02:00
Florian Schmaus
b4b75a3cca
Make <subject/> (XML) language optional
2018-05-09 16:48:53 +02:00
Florian Schmaus
4b8f7ca6b6
Make <body/> (XML) language optional
2018-05-09 16:47:28 +02:00
Florian Schmaus
ad932caf78
Do not use a reflection based initializer for core elements
...
like Message.Body from smack-core.
2018-05-09 16:45:14 +02:00
Florian Schmaus
09c6a9e2bc
Add Objects.equals(Object, Object)
2018-05-09 12:37:09 +02:00
901b316c06
Add and register BodyElementProvider
2018-05-06 18:47:44 +02:00
Florian Schmaus
82cbc40327
Bump MiniDNS to 0.3.0
2018-05-05 10:53:52 +02:00
Florian Schmaus
5ab2903c32
Change Element.toXml() to toXml(String enclosingNamespace)
2018-04-27 10:05:25 +02:00
Florian Schmaus
a91ca2aebf
Bump MiniDNS to 0.3.0-alpha1
...
Also add minidns-core as dependency to smack-core. This requires
increasing the minimum required Android SDK level to 9, as this is
what MiniDNS requires.
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
98109e7b86
Record request stanza in XMPPErrorException
2018-04-23 20:56:54 +02:00
Florian Schmaus
73168bff69
Use XmlUtil for XML pretty printing in Protocol
2018-04-23 17:02:28 +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
f11134dc4c
Remove deprecated reconnection callbacks in ConnectionListener
...
Fixes SMACK-776.
2018-04-07 21:15:20 +02:00
Florian Schmaus
0a99291d59
Make asyncGo() and schedule() static
...
in AbstractXMPPConnection.
2018-04-07 21:11:55 +02:00
Florian Schmaus
9b5dafe541
Enable LeftCurly checkstyle check
2018-04-06 10:25:06 +02:00
Florian Schmaus
5a841ff0a8
Remove support for classpath:org.jivesoftware.smack/disabledClasses
...
when initalizing Smack.
2018-04-06 10:25:06 +02:00
Florian Schmaus
f73641da5a
Better exception messages on Smack initialization
2018-04-06 10:25:06 +02:00
Florian Schmaus
f48b761c33
Log exception when handling debugEnable
2018-04-06 10:25:06 +02:00
Florian Schmaus
ac5508ae37
Remove deprecated CustomSmackConfiguration on intialization
2018-04-06 10:25:06 +02:00
Florian Schmaus
6a42d5baff
Rework FileUtils
2018-04-06 10:25:06 +02:00
Florian Schmaus
b443958bee
Remove setting to disable legacy session establishment
2018-04-02 13:27:01 +02:00
Florian Schmaus
ad87243060
Globally 's;stanza(/packet);stanza;'
2018-03-31 14:17:30 +02:00
Florian Schmaus
1d12be1644
Add XMPPConnection.sendIqRequestAndWaitForResponse(IQ)
2018-03-31 14:15:46 +02:00
Florian Schmaus
a9ca1a0989
Enable ModifierOrder checkstyle check
...
Fixes SMACK-812
2018-03-29 12:35:11 +02:00
Florian Schmaus
3132d9a224
Bump errorprone to 2.2.0
2018-03-28 15:56:04 +02:00
Florian Schmaus
b5209f4701
Enable RedundantModifier checkstyle check
2018-03-28 14:02:21 +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
Florian Schmaus
ac24d6737f
Drop CharsequenceEquals
...
it got duplicated into
- CharsequenceEquals
- CharSequenceEquals
with cb18056613
2018-03-21 15:15:08 +01:00
Florian Schmaus
1d438ec1c2
Merge pull request #214 from fuentesj11/javadoc-update
...
Update/fix javadocs
2018-03-12 16:04:05 +01:00
Jesus Fuentes
903f90e1c1
Update/fix javadocs
2018-03-09 07:15:46 -06:00
Florian Schmaus
7c9060c32b
Merge branch '4.2'
2018-02-27 08:09:34 +01:00
Florian Schmaus
ecc53b1bc8
Add Manager.schedule(Runnable, long, TimeUnit)
...
using Smack's scheduled executor service.
2018-02-26 10:24:01 +01:00
Florian Schmaus
4f88f23f33
Make scheduled executor service static
2018-02-26 10:23:02 +01:00
Florian Schmaus
cd05d5f5d8
Call schedule() instead of directly invoking the scheduled executor
...
in AbstractXMPPConnection.
2018-02-25 11:29:39 +01:00
Florian Schmaus
c90607d7db
Call schedule() instead of directly invoking the scheduled executor
...
in AbstractXMPPConnection.
2018-02-23 18:50:02 +01:00
Florian Schmaus
3bdeca44f2
Merge branch '4.2'
2018-02-23 18:35:34 +01:00
Florian Schmaus
72a2014572
Set core-pool size of single-threaded executor to zero
...
in AbstractXMPPConnection.
2018-02-23 18:22:53 +01:00
Florian Schmaus
a4ab6245f6
Make cached executor service static
2018-02-23 17:04:51 +01:00
Florian Schmaus
abdfe73006
Remove executorService from AbstractXMPPConnection
...
Reduces thread count per connection by one.
2018-02-23 16:48:15 +01:00
Florian Schmaus
793d3c47ad
Move TLS and SASL sync points into subclasses
...
In preperation of subclasses with different connection approaches.
2018-02-23 10:37:17 +01:00
Florian Schmaus
5e25491877
Do not send unavailable on disconnect() when not authenticated
2018-02-23 10:37:12 +01:00
Florian Schmaus
a48e8ef843
Merge branch '4.2'
2018-02-21 20:13:05 +01:00
Florian Schmaus
64f41364f9
Merge pull request #207 from vanitasvitae/descriptions
...
Add missing package-info.java descriptions.
2018-02-21 20:08:39 +01:00
9f47daa7ad
Add missing package-info descriptions.
2018-02-21 16:47:11 +01:00
Florian Schmaus
20b97eb241
Add javadoc to Provider
2018-02-21 10:37:25 +01:00
Florian Schmaus
6f7d6a7f50
Smack 4.2.3
...
-----BEGIN PGP SIGNATURE-----
iQGTBAABCgB9FiEEl3UFnzoh3OFr5PuuIjmn6PWFIFIFAlp7XzVfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDk3
NzUwNTlGM0EyMURDRTE2QkU0RkJBRTIyMzlBN0U4RjU4NTIwNTIACgkQIjmn6PWF
IFKdbQf8CpKmvAUqThaxSKUZKOzlH71BkneT7gdjLvDyvVLXkxZt+arC/Sx9WHXs
OqP6XxxcUKpP9SVItyikEiyq4A4EAlYbtnGcAnJ2Zc04MorEvYtfePgX29WVMKa6
VGZv4PyILAqRMBgQP6+TW++sgqB8JvlVY29e2igfM7mFjOiZdKkEPr2TZ995/XiT
07WFxo72Fe7xXWTVWx5e2hbgC+KPtUFbm0rEBQ3x3seBbRQkn2f3sm8AItj6NKvz
3W9Fzc7n+NY0l+84lX4mSB4Xq851AtOhJPeuSBijgYNM6V8yAXdCAHd0XJSiE89e
/WwRIJAxLy74WzXs0wN3IAieKQhHdw==
=/ZOL
-----END PGP SIGNATURE-----
Merge tag '4.2.3'
Smack 4.2.3
2018-02-10 11:56:52 +01:00
lohse
93683389e3
Bugfix in SOCKS5 authentication
...
Read password bytes from the correct field.
Fixes SMACK-796, introduced with 4c64643
2018-01-19 12:53:57 +01:00
Florian Schmaus
3c4225d167
Merge branch '4.2'
2017-12-25 14:16:43 +01:00
Florian Schmaus
34373e8710
Enable javadoc 'html' doclint
...
Also make all 'test' tasks depend on the 'javadoc' task.
Fixes SMACK-650.
2017-12-25 14:08:18 +01:00
Florian Schmaus
0cf33f9849
Merge branch '4.2'
2017-12-25 12:10:35 +01:00
Florian Schmaus
89c97bb46c
Enable javadoc 'syntax' doclint
...
Addresses SMACK-650 but does not yet fix it completely.
2017-12-25 12:09:46 +01:00
Florian Schmaus
0eeab74990
Merge branch '4.2'
2017-12-25 11:40:45 +01:00
Florian Schmaus
e5e5fca7c1
Merge pull request #191 from vanitasvitae/fixJavadoc
...
Fix javadoc issues in some packages
2017-12-24 14:46:02 +01:00
52398b535f
Fix javadoc issues in some packages
2017-12-23 20:21:19 +01:00
2288825b1c
Retain smack-core API
2017-12-19 15:06:40 +01:00
2f2c2f8663
Fix minor codestyle issues
2017-12-17 11:19:41 +01:00
Florian Schmaus
431e5b3c67
Merge branch '4.2' into master-paul-merged
2017-12-17 11:16:02 +01:00
cb18056613
Fix minor codestyle issues
2017-12-17 11:03:46 +01:00
Florian Schmaus
200f90ffdc
Add IpAddressUtilTest
2017-12-16 12:40:17 +01:00
Florian Schmaus
517fc6e0f2
Add assert to IpAddressUtil.isIPv4LiteralAddress(String)
2017-12-16 12:37:11 +01:00
Florian Schmaus
5147f6e915
Fix IPAddressUtil.isIPv4LiteralAddress(String)
...
Fixes SMACK-791
2017-12-16 12:36:02 +01:00
Florian Schmaus
47940ba5ad
Fix NPE in DNSResolver.lookupSRVRecords0
...
in case hostAddresses was null, the isEmpty() check before the log()
invocation would throw an NPE. Thanks to Ingo Bauersachs for reporting
this.
Fixes SMACK-788.
2017-12-05 20:50:34 +01:00
Florian Schmaus
76a6b9f2a1
Smack 4.2.2
...
-----BEGIN PGP SIGNATURE-----
iQGTBAABCgB9FiEEl3UFnzoh3OFr5PuuIjmn6PWFIFIFAloZnf5fFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDk3
NzUwNTlGM0EyMURDRTE2QkU0RkJBRTIyMzlBN0U4RjU4NTIwNTIACgkQIjmn6PWF
IFLcIQgAsTLRI3sWIZDPRuI5YaU/y6beqqzMp5cQgk/9+9DHGBoziLEU1spkvBs2
Yvlwu3NtHSJsI+ibzYLEFRnzEwuW07vXw7R5J+kRSZrsE40z1HCQRwUIXDkPgghe
MuL6vT6OV+kLqKb33YLSBuT2fj2pzVE6mRmMsnFekay/weEqOGUZaY9Hd5lJ31/9
33fQC0FQfKULQ5t7PbdfX4dDDNWn0n6v+KjvjaskHI0oA+vqPWxPkj8gNXWW8b72
tVV4h5uXQ0ziK3oED79+GH+DSiET9N2PmsZ7woXiFy5H8KbcQDVe5Pazf+Iq2VQ+
Vi6Vxikr6Ak+v2Xkt+e3x9E6mZDI1w==
=CVqq
-----END PGP SIGNATURE-----
Merge tag '4.2.2'
Smack 4.2.2
2017-11-25 18:45:32 +01:00
Florian Schmaus
2edbc64957
Refactor reconnection callbacks into an extra class
...
Fixes SMACK-775
2017-11-25 16:30:18 +01:00
Florian Schmaus
32f681c6e5
Initialize keytsoreType with KeyStore.getDefaultType()
2017-11-22 22:34:56 +01:00
Florian Schmaus
81002c4fbd
Merge branch '4.2'
2017-11-22 08:37:47 +01:00
Florian Schmaus
5ff4387f68
Fix Presence.getPriority() to not return Integer.MIN_VALUE
...
Fixes SMACK-787.
2017-11-21 21:05:10 +01:00
Florian Schmaus
4775f350ae
Add javadoc to Presence.priority
2017-11-21 21:04:13 +01:00
Florian Schmaus
9e11b68144
Add comment style checkstyle rule requiring a space
2017-11-20 08:53:19 +01:00