Commit Graph

2786 Commits

Author SHA1 Message Date
Florian Schmaus f274581c27 Add MucBookmarkAutojoinManager
Also add MucConfigFormManager and improve the MUC API (SMACK-648). Bump
to jxmpp 0.5.0-alpha3.

Improve and extend PrivateDataManager and BookmarkManager.
2015-04-21 19:31:10 +02:00
Florian Schmaus 265e5c69d5 Use LinkedHashMap for form fields
for efficient lookup.
2015-04-12 19:27:22 +02:00
Florian Schmaus 189f524195 Make SynchronizationPoint interruptible
SMACK-632
2015-04-12 18:33:43 +02:00
Florian Schmaus 4a16ab9329 Merge branch '4.1'
Conflicts:
	version.gradle
2015-04-12 18:32:55 +02:00
Florian Schmaus 00ba5ae3df Replace PrivateDatamanager.getProviderKey with JXMPP method 2015-04-12 18:24:52 +02:00
Florian Schmaus 062e9ee415 Fix javadoc of pubsub.Item 2015-04-12 18:13:19 +02:00
Florian Schmaus e3dced6eea Fix NPE in Roster if 'from' is null 2015-04-12 16:22:41 +02:00
TheHaf a53894a65b Fix typo in exception 2015-04-09 21:16:05 +02:00
Florian Schmaus 1eb315d6b7 Add Manager.getAuthenticatedConnectionOrThrow() 2015-04-09 19:00:03 +02:00
Florian Schmaus 9a69f992c4 Deprecate SynchronizationPoint.reportFailure()
assert and document that an exception must be set when calling
reportFailure(E).
2015-04-07 08:52:48 +02:00
Florian Schmaus dabbb40de6 Fix isSmResumptionPossible() returning wrong values
The cases where reversed. Change the condition for better readability.

Also fix int and long handling in the computation of
maxResumptionMillies.

Fixes SMACK-654.
2015-04-07 08:51:03 +02:00
Florian Schmaus 3b6891b0d0 Fix integer overflow if no max resumption time
is specified by client and server.

Fixes SMACK-653.
2015-04-07 08:51:03 +02:00
Florian Schmaus cca34fd872 First check condition, then remaining wait in SynchronizationPoint
as otherwhise SynchronizationPoint may report NoResponseException when
there was in fact a success or failure reported in case there are
multiple threads waiting for the condition.
2015-04-07 08:51:03 +02:00
Florian Schmaus 83aa6838d9 Use signalAll in SynchronizationPoint
to prevent a thread from not being notified about a change of the state
of the SynchronizationPoint.

If two threads are waiting for a change, which could happen e.g. because
of a connectivity change and one thread does instantShutdown() while the
other handles connectionClosedOnError(), then only one thread, usually
the one handling connectionClosedOnError(), would be notified and
resumed.

Fixes SMACK-652.
2015-04-07 08:51:03 +02:00
Florian Schmaus 57fa631480 Add javadoc to SynchronizationPoint 2015-04-07 08:50:52 +02:00
Florian Schmaus dddba8f08c Allow Roster for anonymous connections
Fixes SMACK-628.
2015-04-06 13:56:32 +02:00
Florian Schmaus 6c637d5784 Don't automatically login() on connect()
if the connection was authenticated before.

Fixes SMACK-647.
2015-04-06 13:51:47 +02:00
Florian Schmaus b4694ec152 Add FinalClass checkstyle check
And mark affected classes final.
2015-04-06 10:45:12 +02:00
Florian Schmaus 5ae1fbd25a Remove no longer required checkstyle supression 2015-04-05 10:55:33 +02:00
Florian Schmaus 38dc59eb8e Fix assert in TestResult
sometimes the unit test where failing because the assert '>' didn't
hold. Use '>=' instead now.
2015-04-05 10:49:14 +02:00
Florian Schmaus 0a6ac76447 Remove package-info.java from test packages
as otherwhise eclipse will complain "The type package-info is already
defined".
2015-04-05 10:48:00 +02:00
Florian Schmaus ee429b5d8b Use UTF-8 as charSet for javadoc 2015-04-05 08:26:58 +02:00
Florian Schmaus 328da5a7e2 Throw IAE on wrong signature (after|before)Class methods
as otherwhise the reflective invokation will eventually throw an
Exception like

Exception in thread "main" java.lang.NullPointerException
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:497)
	at org.igniterealtime.smack.inttest.SmackIntegrationTestFramework.runTests(SmackIntegrationTestFramework.java:412)
	at org.igniterealtime.smack.inttest.SmackIntegrationTestFramework.run(SmackIntegrationTestFramework.java:163)
	at org.igniterealtime.smack.inttest.SmackIntegrationTestFramework.main(SmackIntegrationTestFramework.java:89)
:smack-integration-test:run FAILED
2015-04-04 17:38:00 +02:00
stawny 75e35e8db6 Fix for getting after method 2015-04-04 17:31:14 +02:00
stawny 9d0ea3cf70 Resurrect integration tests: Chat Test 2015-04-04 17:19:31 +02:00
Florian Schmaus de528eee67 Add JavadocPackage checkstyle
change from package.html to package-info.java. Add missing
package-info.java with a placeholder description.
2015-04-04 17:16:47 +02:00
Florian Schmaus dc373f641c Make Smack Java8's javac and javadoc ready 2015-04-04 17:16:27 +02:00
Vyacheslav Blinov cf2027fce7 Fix XEP-0080 geoloc extensions elements formating
XEP-0080 states that lon,lat,error,alt,accuracy,bearing and speed are
decimal values, and thus should either be present as decimal, or not present
at all (as they are optional elements).
Usage of String.valueOf(value) in code lead to creating a "null"
string in case number was not present, thus creating an element with
"null" content, which is not a valid decimal value.
2015-04-01 10:45:33 +02:00
Florian Schmaus 5597b1ffc0 Handle preceding whitespace in DIGEST-MD5
implementation from smack-sasl-provided.

Fixes SMACK-649.
2015-03-31 10:25:40 +02:00
Vyacheslav Blinov 5272680d47 Add XmlStringBuilder API for Date
Fixes XEP-0080 GeoLoc timestamp element formating
2015-03-30 20:56:36 +02:00
Florian Schmaus 64d134052d Enable javadoc checkstyle
and fix violations.
2015-03-29 12:29:32 +02:00
Florian Schmaus 57260b2a44 Smack 4.1.0
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQF8BAABCgBmBQJVF86PXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w
 ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQxMzU3QjAxODY1QjI1MDNDMTg0NTNEMjA4
 Q0FDMkE5Njc4NTQ4RTM1AAoJEIysKpZ4VI41990IAJ2cdhJlcysnHV5ju+zEhOpX
 WkVK14oHoA6OErsgYc8DCGU+kw86PsefNHQEa0MzfSbNUS/mOZqyLzP/aF9SRvXA
 qBFAp87P84PSE8svDifrBlB9gbymPgyEJaPwMWvullY94WINub/FlGUp3PSrxxYA
 uZdv4biBICp/1hj8/D9nZHwm0aAf/7RHi2NJWFZOAOi2Jd1afqQiRqtBtLIXvEXh
 cfXzUI5K5pzQ7/Rkro4BcqTD5fsZA37FN3NgcUKvzpN8q/5nZjEl9zJZnE25srQ6
 iwIZrnYipnrGX6a8NpNrLn3xB/GwvLkD3V355U/zYT67bUQ2SnvEPAQSzQHxArQ=
 =IIBb
 -----END PGP SIGNATURE-----

Merge tag '4.1.0'

Smack 4.1.0

Conflicts:
	version.gradle
2015-03-29 12:27:54 +02:00
Florian Schmaus 54cbd9a50a Smack 4.1.1-SNAPSHOT 2015-03-29 12:26:36 +02:00
Florian Schmaus 4bb8aea281 Smack 4.1.0 2015-03-29 12:05:59 +02:00
Florian Schmaus 6a5637c2e4 Add JivePropertiesExtension.from(Message) 2015-03-25 10:29:43 +01:00
Florian Schmaus e1cb837489 Make FileTransferNegotiatorTest extends InitExtensions 2015-03-25 10:29:43 +01:00
Florian Schmaus 72f41e20b1 Don't rethrow RuntimeExceptions in parseAndProcessStanza 2015-03-25 10:29:43 +01:00
Florian Schmaus 0897b76718 Fix unit-tests initialization
Remove the TestSuite class. We now have

SmackTestSuite
    ^
	|
InitExtensions
    ^
	|
$UnitTest

where most basic setup is done in a static block within
SmackTestSuite (only stringencoder setup right now).

Also some minor fixes in unit tests.
2015-03-24 21:40:08 +01:00
Florian Schmaus c6594aec2f Lint fixes: Remove dead code, etc.
- make method static when possible
- remove never thrown Exception declarations
- other fixes
2015-03-24 18:33:47 +01:00
Florian Schmaus 83b84c5bd3 Merge branch '4.1'
Conflicts:
	smack-core/src/main/java/org/jivesoftware/smack/StanzaListener.java
	smack-core/src/main/java/org/jivesoftware/smack/XMPPConnection.java
	smack-core/src/main/java/org/jivesoftware/smack/packet/Stanza.java
	smack-core/src/main/java/org/jivesoftware/smack/util/PacketParserUtils.java
	version.gradle
2015-03-24 17:16:18 +01:00
Florian Schmaus dbaee174ca Smack 4.1.0-rc6-SNAPSHOT 2015-03-24 17:15:53 +01:00
Florian Schmaus 869c01b91f Smack 4.1.0-rc5 2015-03-24 17:15:53 +01:00
Florian Schmaus 9ac3633612 javadoc: s/packet/stanza/ 2015-03-24 17:15:50 +01:00
Florian Schmaus 164b7c6690 Set localNodeVer after currentCapsVersion is set 2015-03-24 12:05:56 +01:00
Florian Schmaus 49c2c35609 Synchronize SDM methods that change the state
Other Managers, e.g. EntityCapsManager, may be notified if e.g. a
feature is added or removed. While they are notified, the state of SDM
must be consistent, therefore synchronize SDM methods that modify the
state.
2015-03-24 11:59:35 +01:00
Florian Schmaus 130a8216d1 EntityCapsManager must not use CapsVersionAndHash.toString()
as it would return Object.toString(). Instead the entity version string
was required. Use getLocalNodeVer() instead.
2015-03-24 11:59:31 +01:00
Florian Schmaus b7fbd0614e Fix assert statement in XMPPTCPConnection 2015-03-23 22:44:15 +01:00
Florian Schmaus 7cefe63175 Don't require a properties file
when running the integration tests.
2015-03-23 21:12:13 +01:00
Florian Schmaus f4d76fa85e Add 'XEP-80: User Location' to list of supported XEPs 2015-03-23 18:59:10 +01:00
Florian Schmaus 40a2a28ebe Enable -Werror and add XmppHostnameVerifier
We now treat warnings as errors (-Werror).

In order to do so, it was necessary to remove Java7HostnameVerifier
since it depended on internal properietary API. XmppHostnameVerifier
take the place of it.
2015-03-23 14:20:03 +01:00