Commit Graph

3340 Commits

Author SHA1 Message Date
Paul Schaub afeafd2336
SMACK-761: Migrate the ChatState package to chat2 API 2018-03-08 12:07:12 +01:00
Florian Schmaus 2e4ce965cd
Merge pull request #208 from fuentesj11/documentation-review
Proofread Getting Started documentation
2018-03-04 17:21:46 +01:00
Florian Schmaus b7e7aeee9e Reset Java source compatibility to 1.7 (Java 7)
The following wild problem appeared:

Smack currently checks for Android API compatiblity by creating a
extra 'compileAndroid' task, which has the boot classpath set to the
corresponding android.jar of the minimum Android API level required by
Smack. This ensures that the task failes if we use methods which are
not part of this Android API level.

Now setting javac's source/target compatibility level to Java 8 in
itself is not a problem, newer Android build toolchains will desugar
most Java 8 ishms to the Java 7 flavor supported by the dex tool,
hence Android projects are able to consume a Java 8 enabled Smack.

But as soon as we use lambdas with an minimum Android API level
lower than 26, the compileAndroid task will fail with:

com.sun.tools.javac.code.Symbol$CompletionFailure:
  class file for java.lang.invoke.MethodHandles$Lookup not found.

Re-opens SMACK-801.
2018-03-04 10:40:50 +01:00
Jesus Fuentes 7791e53454 Fix found typos
Fix found typos in the documentation -Jesus
2018-02-28 07:30:18 -06:00
Florian Schmaus 7c9060c32b Merge branch '4.2' 2018-02-27 08:09:34 +01:00
Son Goku 32262a9c54 Proofread Getting Started documentation 2018-02-26 08:18:43 -06:00
Florian Schmaus 27808e9e8c Make PingManager use Manager.schedule() 2018-02-26 10:24:35 +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
Guus der Kinderen 1b58581ca0
Fixed typo. 2018-02-24 14:02:10 +01:00
Florian Schmaus 42c2e4d077 Remove stanza ID ack'ed listeneres after max 3 instead of 12 hours 2018-02-23 18:53:47 +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 20014d56b4 Use true/false instead of 1/0 in boolean type FormFields 2018-02-23 11:50:54 +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 1bd3469fec Also set persist items to true in PubSubIntegrationTest 2018-02-22 15:05:12 +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
Paul Schaub ce19ea4114 Add support for XEP-0382: Spoiler Messages
Fixes SMACK-795.
2018-02-22 08:51:54 +01:00
Paul Schaub a729a7c43b Add support for XEP-0394: Message Markup
Fixes SMACK-794.
2018-02-21 20:49:01 +01:00
Paul Schaub b3b76b9ff4 Add support for XEP-0359: Stable and Unique Stanza IDs
Fixes SMACK-798
2018-02-21 20:43:56 +01:00
Florian Schmaus ec4be1963a Deprecate legacy disco-publish API of ServiceDiscoveryManager 2018-02-21 20:43:56 +01:00
Florian Schmaus 41f5cf8435 Remove unused LOGGER from ServiceDiscoveryManager 2018-02-21 20:21:10 +01:00
Florian Schmaus a48e8ef843 Merge branch '4.2' 2018-02-21 20:13:05 +01:00
Florian Schmaus 79cb639f93 Improve PubSubIntegrationTest.simplePubSubNodeTest()
by setting the node's deliverPayloads to 'false'.
2018-02-21 20:09:11 +01:00
Florian Schmaus 98708d67a2 Make ServiceDiscoveryManager.findService() consider all services
with the same matching feature announced.

Consider for example PubSub where usually the service itself announces
the PubSub feature as part of PEP, and where an additional PubSub
component exists. The old logic will just lookup the first matching
service with a PubSub feature announcement and check if for a matching
identiy. If we look for a real PubSub service, but stumble first over
user's service with PEP, then findService() will return 'null' although
there would have been a valid PubSub service.

Fixes SMACK-805.
2018-02-21 20:09:11 +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
Florian Schmaus a1f9ede5fb
Merge pull request #204 from knightcube/patch-2
Fixed typos in README.md
2018-02-21 20:06:27 +01:00
Paul Schaub 9f47daa7ad
Add missing package-info descriptions. 2018-02-21 16:47:11 +01:00
Florian Schmaus 245a3b3851 Use the correct ad-hoc action in ServiceAdministrationManager
Fixes SMACK-804. Thanks to Holger Weiß for his help with the issue.

Smack would always use the 'next' action only 'execute' (which is
always allowed) and 'complete' where candidates.

Example XMPP trace:

SENT: <iq to='salem.geekplace.eu' id='f0JiQ-45' type='set'><command xmlns='http://jabber.org/protocol/commands' node='http://jabber.org/protocol/admin#add-user' action='execute'></command></iq><r xmlns='urn:xmpp:sm:3'/>

RECV: <iq xml:lang='en' to='sinttest-admin@salem.geekplace.eu/one-phx8g' from='salem.geekplace.eu' type='result' id='f0JiQ-45'>
<command status='executing' sessionid='2018-02-21T14:48:13.508812Z' node='http://jabber.org/protocol/admin#add-user' xmlns='http://jabber.org/protocol/commands'>
<actions execute='complete'>
  <complete/>
</actions>
<x type='form' xmlns='jabberdata'>
<title>Add User</title>
<field var='FORM_TYPE' type='hidden'><value>http://jabber.org/protocol/admin</value></field>
<field var='accountjid' type='jid-single' label='Jabber ID'><required/></field>
<field var='password' type='text-private' label='Password'><required/></field>
<field var='password-verify' type='text-private' label='Password Verification'><required/></field>
</x>
</command>
</iq>

SENT:
<iq to='salem.geekplace.eu' id='f0JiQ-49' type='set'>
<command xmlns='http://jabber.org/protocol/commands' node='http://jabber.org/protocol/admin#add-user' sessionid='2018-02-21T14:48:13.508812Z' action='next'>
<x xmlns='jabberdata' type='submit'>
<field var='FORM_TYPE' type='hidden'><value>http://jabber.org/protocol/admin</value></field>
<field var='accountjid' type='jid-single'><value>smack-inttest-one-phx8g@salem.geekplace.eu</value></field>
<field var='password' type='text-private'><value>L2Cz2gKeVsBAEBRJ</value></field>
<field var='password-verify' type='text-private'><value>L2Cz2gKeVsBAEBRJ</value></field>
</x>
</command>
</iq>

RECV:
<iq xml:lang='en' to='sinttest-admin@salem.geekplace.eu/one-phx8g' from='salem.geekplace.eu' type='error' id='f0JiQ-49'>
<command action='next' sessionid='2018-02-21T14:48:13.508812Z' node='http://jabber.org/protocol/admin#add-user' xmlns='http://jabber.org/protocol/commands'>
<x type='submit' xmlns='jabberdata'>
<field var='FORM_TYPE' type='hidden'><value>http://jabber.org/protocol/admin</value></field>
<field var='accountjid' type='jid-single'><value>smack-inttest-one-phx8g@salem.geekplace.eu</value></field>
<field var='password' type='text-private'><value>L2Cz2gKeVsBAEBRJ</value></field>
<field var='password-verify' type='text-private'><value>L2Cz2gKeVsBAEBRJ</value></field>
</x>
</command>
<error code='400' type='modify'><bad-request xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/><text xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'>Unexpected action</text>
</error>
</iq>
2018-02-21 16:34:03 +01:00
Florian Schmaus 20b97eb241 Add javadoc to Provider 2018-02-21 10:37:25 +01:00
Paul Schaub ec95bd4422 Prevent race condition in ecaps test (#206)
Properly synchronize EntityCapsTest.testPreventDiscoInfo()
2018-02-20 15:52:04 +01:00
Rajat Kumar Gupta 6ff68b40dc
Fixed typos 2018-02-16 08:48:27 +05:30
Florian Schmaus e38f80b3cb Improve ConsistentColor API
- Rename Context to ConsistentColorSettings
- Add convenience RGBFrom(CharSequence) method
- Remove _angle in code

SMACK-800.
2018-02-10 21:15:00 +01:00
Paul Schaub e0af3db189 Add support for XEP-0392: Consistent Color Generation
Fixes SMACK-800.
2018-02-10 21:09:07 +01:00
Killer 8e3d3a7d14 Fix copy and paste issue in processing.md 2018-02-10 20:32:36 +01:00
Florian Schmaus e00ebd2141 Smack 4.3.0-beta2-SNAPSHOT 2018-02-10 18:16:14 +01:00
Florian Schmaus 3210baeebd Smack 4.3.0-beta1 2018-02-10 14:53:53 +01:00
Florian Schmaus d6be4a7782 Set Java source and target compatibility to Java 8
Fixes SMACK-801.
2018-02-10 14:11:27 +01:00
Florian Schmaus 5333bde2e8 Merge branch '4.2' 2018-02-10 12:14:09 +01:00