Florian Schmaus
0729392ab8
Fix isSupported discovery of "Push Notifications"
...
Fixes SMACK-780.
2017-10-14 14:12:28 +02:00
Florian Schmaus
2a97d7c5ea
Don't reinvent methods in HashManager
...
use the existing API from StringUtils instead.
Also rename StringUtils.toBytes() to 'toUtf8Bytes()'.
2017-08-16 14:55:25 +02:00
Florian Schmaus
6565618840
Encode algorithm recommendation in HashManager
2017-08-16 14:38:22 +02:00
Florian Schmaus
ba323b51f9
Remove API parts scheduled to be removed in Smack 4.3
2017-08-16 14:31:46 +02:00
Florian Schmaus
80eaaf2d71
Fix warnings
2017-08-16 14:10:00 +02:00
Florian Schmaus
6203d163c4
Deprecate old async API
2017-08-16 13:46:42 +02:00
Florian Schmaus
43abd52d76
Smack 4.2.1
...
-----BEGIN PGP SIGNATURE-----
iQGTBAABCgB9FiEEl3UFnzoh3OFr5PuuIjmn6PWFIFIFAlmR75tfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDk3
NzUwNTlGM0EyMURDRTE2QkU0RkJBRTIyMzlBN0U4RjU4NTIwNTIACgkQIjmn6PWF
IFLeXggAjdgj7YVUe22NtamnROBj1c3PaWwgSY0gEjcyDPsOz5qeqNUdQLHbmt2j
XQQpYZWKg1/1uoQHlsixaFKbGVctKRk72aNEodRfd1osta11WTOwZKEb8nI411Tt
7M0Fhf430WZY6nioZiZIorsmid57fftJ2EMPlmjEDp2FD0AVGAXkEhCneGaPtt9Q
hbWbepIy9tApeIH+QgmFLBmPLnFCaSg+X6NUden3Z21bUz5vH8pmcbeUVfsNB7kW
nkkDuNwKHPFLgjuhcq7D+KAKRwNU7n8WEuHseRzM7bMCEB+S/rZok5KPXe/tV4v+
YZKN2e+2yh4j5l4FT/fCzELfWcvrgA==
=MV3G
-----END PGP SIGNATURE-----
Merge tag '4.2.1'
Smack 4.2.1
2017-08-14 21:01:36 +02:00
Florian Schmaus
b9ed22c732
Add MamManager.isSupported()
...
Fixes SMACK-777.
2017-08-14 20:23:35 +02:00
Florian Schmaus
9d63baf55a
Use assertXMLEqual() in SlotRequestCreateTest
2017-07-05 19:09:30 +02:00
Florian Schmaus
858ba3f82a
Fix HTTP File Upload's SlotRequest
...
Fixes SMACK-774. Thanks to Nathan Freitas for reporting this.
2017-07-05 18:27:47 +02:00
5bd01b7385
Add Jingle File Transfer elements and JingleUtil class
2017-06-30 15:03:13 +02:00
Florian Schmaus
2b11074950
Merge branch '4.2'
2017-06-17 15:55:38 +02:00
Florian Schmaus
08e897113d
Add CustomImportOrder checkstyle rule
...
And matching ImportOrder settings for Eclipse in
resources/eclipse/smack.importorder
2017-06-14 17:12:43 +02:00
95d2cd75ec
Reorder imports
2017-06-13 23:54:47 +02:00
3ecd01135c
Add convenience methods to HashManager
2017-06-13 23:51:57 +02:00
28f3130cf9
Add Use of Cryptographic Hashfunctions (XEP-300)
...
Also move bouncycastle dep from smack-omemo to
smack-experimental.
2017-06-03 00:33:56 +02:00
Florian Schmaus
ce1cddc722
More checkstyle whitespace related checks
2017-05-24 14:42:38 +02:00
Florian Schmaus
162dee0a47
Fix IotIsFriendResponse element name and XML
...
Fixes SMACK-756
2017-04-25 17:07:19 +02:00
6bebeb354b
Fix StoreHint (wrong element name)
2017-04-23 23:37:14 +02:00
Florian Schmaus
ba2a287112
Add support for XEP-0380: Explicit Message Encryption
...
Fixes SMACK-746
2017-04-22 18:58:39 +02:00
Florian Schmaus
142297042c
Add support for XEP-0334: Message Processing Hints
...
Fixes SMACK-758
2017-04-22 17:50:39 +02:00
andri.khrisharyadi
c8b4df4f84
Fix EnablePushNotificationsIQ wrong form type
...
Should be submit instead of form
Fixes SMACK-752
2017-04-03 18:59:14 +07:00
Florian Schmaus
09b6608a3a
Fix and improve the HTTP File Upload implementation
...
Fix a few resource leaks. Improve the API and add an integration
test. Also add compability layer for XEP-0363: HTTP File Upload 0.2.
SMACK-747
2017-03-10 17:54:29 +01:00
Grigory Fedorov
72d4c8b611
Add support for XEP-0363: HTTP File Upload.
...
Fixes SMACK-747
2017-03-10 17:47:13 +01:00
Florian Schmaus
a8c6de6b98
Improve MamManager javadoc
2017-03-10 17:47:13 +01:00
Florian Schmaus
32fd52ea8e
Sync MAM API with PubSub API: One MamManager per MAM archive address
2017-02-24 19:33:11 +01:00
Florian Schmaus
00005d87be
Improve MamTest
...
- Use DummyConnection
- Use InitExtensions
2017-02-24 19:32:46 +01:00
Anno van Vliet
c13cddd91a
Enable querying MAM by address and node.
...
Enhance the API to query archives for example from a room or a pubsub
node.
2017-02-24 08:11:57 +01:00
Florian Schmaus
4c646436a5
Bump "Error Prone" to 2.0.15
...
and fix a few things :)
2017-02-11 16:16:41 +01:00
Florian Schmaus
684d33b773
Fix Carbon Listener setup
...
We can't always setup the carbons listener in the constructor of the
manager, as the our local XMPP address may not be available yet. So
setup the carbons listener on a connection listener *and* in the
constructor.
2017-02-01 10:59:44 +01:00
Florian Schmaus
35ac228125
Add CarbonCopyReceivedListener
2017-01-24 08:46:08 +01:00
Florian Schmaus
a4ae941a7c
Fix memory leak in MUC-light
...
Basically the same fix as for MUC in
965cbcc979
2017-01-20 16:48:21 +01:00
Florian Schmaus
e5980641c0
Fix "XEP-0323: IoT - Sensor Data" namespace in provider
...
This is a follow up commit of 9d8caf0563
2017-01-17 11:11:25 +01:00
Florian Schmaus
9d8caf0563
Fix "XEP-0323: IoT - Sensor Data" namespace
2017-01-12 12:48:07 +01:00
Florian Schmaus
d47463a533
Deprecate Chat API, introduce new Chat API
...
Also add (From|To)TypeFilter and update/fix the documentation in a few places.
2017-01-11 19:48:22 +01:00
Florian Schmaus
90a5e289f8
s/processPacket/processStanza/ s/PacketCollector/StanzaCollector/
2017-01-03 11:35:04 +01:00
Florian Schmaus
183c605278
Bump JXMPP to 0.5.0
2017-01-02 09:40:46 +01:00
Fernando Ramirez
f7fcff139c
Add MAM methods to load previous page and to load most recent page
2016-12-29 00:13:02 +01:00
Florian Schmaus
7655ac17f2
Re-activate EntityCaps integration test
2016-12-24 10:27:04 +01:00
Florian Schmaus
26b16665e5
Add setting to enable IoT Managers automatically
...
or not. Since they interfer a lot with existing code (presence
management etc.)
2016-12-19 18:11:18 +01:00
Florian Schmaus
9165e818d9
Add ParenPad and NoWhitespaceAfter checkstyle rules
2016-11-29 12:01:41 +01:00
Florian Schmaus
da58b20b53
IoT: Prevent control/read-out from non friends
...
and make the behavior configurable.
2016-11-17 10:25:35 +01:00
Fernando Ramirez
6d74d0383c
Add support for XEP-0333: Chat Markers
...
Fixes SMACK-736
2016-11-15 22:49:26 +01:00
Fernando Ramirez
5372c1bcf4
Add support Multi-User Chat Light
...
Fixes SMACK-740
2016-11-15 22:41:24 +01:00
Florian Schmaus
44d6a9d7c1
Improve logging of IoTProvisioningManager
2016-11-05 18:31:26 +01:00
Florian Schmaus
48a46e43ab
Use bare JID when using FriendshipDeniedCache
...
As it only contains bare JIDs.
2016-11-05 18:26:44 +01:00
Fernando Ramirez
e266b1acd8
Push Notifications (XEP-0357) implementation
...
Fixes SMACK-738
2016-11-01 08:46:59 +01:00
Florian Schmaus
1d3c48e6ce
Add support for IoT Friend approvals
...
This adds supports for an experimental protocol flow where a pending
friend request's decission is later on deliverd to the requestor after
the owner made its decission.
2016-10-31 14:50:37 +01:00
Fernando Ramirez
9554c7be26
Add XEP-0191 - Blocking Command implementation
...
SMACK-731
2016-08-31 08:07:36 +02:00
Florian Schmaus
0a96016727
Use generics in IoTControlManager
2016-08-09 17:47:09 +02:00
Florian Schmaus
f1e24e2273
Rework Roster's SubscribeListener
...
allow multiple of them to be installed, instead of at most one. Fixes
deadlock in LowLevelRosterIntegration test because
IoTProvisioningManager's SubscribeListener would not come up with a
decission.
2016-07-31 14:50:59 +02:00
Florian Schmaus
5b137616bb
Fix NPE in IoTDiscoveryManager
2016-07-31 14:50:59 +02:00
Florian Schmaus
aeb385a022
Apply refinements and fixes to the MAM code
...
SMACK-625.
2016-07-23 15:45:45 +02:00
Fernando Ramirez
189cac072b
Implement Message Archive Management (MAM) XEP-0313
...
Fixes SMACK-625
2016-07-23 12:45:14 +02:00
Florian Schmaus
b91978dcc4
Add (partial) support for IoT XEPs
...
That is XEP-0323, -0324, -0325, and -0347.
SMACK-727.
2016-07-21 08:51:11 +02:00
Florian Schmaus
529e1eb058
Fix 'test' dependencies
...
The previously used approach of
project(':smack-core').sourceSets.test.runtimeClasspath
caused the 'eclipse' target to produce duplicate classpath entries in
.classpath when run with Gradle >= 2.6. It also relied on Gradle
internals.
Instead we now use
project(path: ":smack-core", configuration: "testRuntime")
project(path: ":smack-core", configuration: "archives")
to be able to use test classes from other subprojects (usually
smack-core) in e.g. smack-extensions. The 'archives' configuration
includes the test jar.
See also https://discuss.gradle.org/t/11784
Thanks to Lari Hotari for helping with this issue.
2016-02-10 12:39:18 +01:00
Florian Schmaus
e6a9027cc6
Improve StringUtils.escapeForXml()
2016-01-18 22:04:20 +01:00
Florian Schmaus
04a0004035
Smack 4.1.4
...
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iQF8BAABCgBmBQJV9nAlXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w
ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQxMzU3QjAxODY1QjI1MDNDMTg0NTNEMjA4
Q0FDMkE5Njc4NTQ4RTM1AAoJEIysKpZ4VI41sFEIAJlfRspk6S5ymNc4w7u/FT1w
MpHT/cxqIQIBU9J5dYqeW6Y8O6VuUeknCmZBEv7dIVHroTmvfosMauAyRZJXWeeL
FQQTBqDJszYdM88x/d5X6d25lCEBdQkdDh2a5s9AIy9RH0iXE74AypuikbroK+VC
zI3wRPUFq7WnARtmiP2NalSgSNv5ToeicBO+JSniQ+O52ZAlP2FSDfi4uzPPigdP
Ip/V3eF4Bp0YZimcxAnWdnMU+ciVLClRYKgD3+qTEoic7dx3dzeTyrk1NoLRgQl9
mfcNXBgUScHZAoSIkR0QiUx9ktPCJ950qa+XtW3B8NtDOZkXegUL/a8ukQAuz+k=
=qMsC
-----END PGP SIGNATURE-----
Merge tag '4.1.4'
Smack 4.1.4
2015-09-14 09:05:24 +02:00
Florian Schmaus
b1e4884fbb
Remove erroneous next() from AbstractJsonExtensionProvider
...
Fixes SMACK-695.
2015-08-24 11:09:59 +02:00
Florian Schmaus
f9faebe831
Add (disable|enable)CarbonsAsync() to CarbonsManager
2015-07-31 14:04:03 +02:00
Florian Schmaus
8c6e56b122
Reset carbons state on clean disconnect
...
and if session was not resumed. Fixes SMACK-688.
2015-07-31 13:27:03 +02:00
Florian Schmaus
710948c8f7
Add support for XEP-360: Nonzas
...
SMACK-682
2015-07-14 22:43:58 +02:00
Florian Schmaus
9ea5c0a2ce
"Smackify" HOXT code: Use Smack programming idioms
2015-07-01 13:39:04 +02:00
Tibo-lg
4d57848a0f
Update HOXT API to use the buidler pattern.
2015-07-01 12:57:05 +02:00
Tibo-lg
e20c17050e
Change append
to optAppend
for headers and data to avoid NullPointerException
2015-06-22 19:07:34 +02:00
Florian Schmaus
1cd268a8f0
Deprecate Forwarded.getForwardedPacket()
2015-06-02 17:30:57 +02:00
Florian Schmaus
b4694ec152
Add FinalClass checkstyle check
...
And mark affected classes final.
2015-04-06 10:45:12 +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
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
64d134052d
Enable javadoc checkstyle
...
and fix violations.
2015-03-29 12:29:32 +02: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
f546d28ad8
Xlint all the things
...
and fix all warnings.
2015-03-23 09:28:49 +01:00
Florian Schmaus
5e86db4f80
Substitute 'packet' with 'stanza(/packet)' in javadoc
2015-03-21 09:36:28 +01:00
Florian Schmaus
0fde39fa45
's;^\s+$;;' on all source files
...
And add checkstyle test for lines containing only whitespace characters.
2015-03-17 11:33:02 +01:00
Florian Schmaus
bc093b620d
Make Provider.parse() just throw Exception
...
instead of throwing XmlPullParserException, IOException and
SmackException.
Add a guard to AbstractXMPPConnection.processPacket() to always re-throw
RuntimeExceptions.
2015-03-13 09:27:18 +01:00
Florian Schmaus
701aa7d9c4
Merge branch '4.1'
...
Conflicts:
smack-core/src/main/java/org/jivesoftware/smack/AbstractXMPPConnection.java
smack-core/src/main/java/org/jivesoftware/smack/PacketCollector.java
smack-core/src/main/java/org/jivesoftware/smack/PacketListener.java
smack-core/src/main/java/org/jivesoftware/smack/XMPPConnection.java
smack-core/src/main/java/org/jivesoftware/smack/debugger/SmackDebugger.java
smack-core/src/main/java/org/jivesoftware/smack/packet/Packet.java
smack-core/src/main/java/org/jivesoftware/smack/util/XmlStringBuilder.java
smack-core/src/test/java/org/jivesoftware/smack/ThreadedDummyConnection.java
smack-extensions/src/main/java/org/jivesoftware/smackx/address/provider/MultipleAddressesProvider.java
smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/ibb/DataListener.java
smack-extensions/src/main/java/org/jivesoftware/smackx/filetransfer/FaultTolerantNegotiator.java
smack-extensions/src/main/java/org/jivesoftware/smackx/filetransfer/IBBTransferNegotiator.java
smack-extensions/src/main/java/org/jivesoftware/smackx/filetransfer/Socks5TransferNegotiator.java
smack-extensions/src/main/java/org/jivesoftware/smackx/filetransfer/StreamNegotiator.java
smack-extensions/src/main/java/org/jivesoftware/smackx/muc/MultiUserChat.java
smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/LeafNode.java
smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/Node.java
smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/PubSubManager.java
smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/packet/PubSub.java
smack-extensions/src/main/java/org/jivesoftware/smackx/vcardtemp/VCardManager.java
smack-extensions/src/test/java/org/jivesoftware/smackx/receipts/DeliveryReceiptTest.java
smack-im/src/main/java/org/jivesoftware/smack/chat/ChatManager.java
smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/JingleSession.java
smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/provider/JingleProvider.java
smack-legacy/src/main/java/org/jivesoftware/smackx/workgroup/packet/UserID.java
smack-legacy/src/main/java/org/jivesoftware/smackx/xroster/provider/RosterExchangeProvider.java
smack-tcp/src/main/java/org/jivesoftware/smack/tcp/XMPPTCPConnection.java
version.gradle
2015-03-04 22:42:36 +01:00
Florian Schmaus
75ec271c6c
Rename PacketListener to StanzaListener
...
and add the PacketListener as deprecated interface.
2015-03-02 15:49:56 +01:00
Florian Schmaus
d4a6d8e653
Rename PacketFilter (and implementing classes) and PacketExtension
...
to StanzaFilter and ExtensionElement.
2015-02-28 13:49:38 +01:00
Florian Schmaus
5bb4727c57
Use Jid (and subclasses) from jxmpp-jid
...
Fixes SMACK-634
2015-02-17 16:07:16 +01:00
Florian Schmaus
bc61527bd2
Expose InterruptedException
...
SMACK-632
2015-02-14 14:57:33 +01:00
Florian Schmaus
4698805a34
Rename 'Packet' class to 'Stanza'
...
Smack still uses the term 'Packet' in some places. This is just the
first step towards using correct XMPP terms in Smack.
2015-02-06 09:34:51 +01:00
Florian Schmaus
0f028fdf50
Make IQ.type private
...
to prevent subclasses form setting type to null.
2015-01-21 13:17:23 +01:00
Florian Schmaus
98c69f6895
Add ServiceDiscoveryManager.serverSupportsFeature()
2015-01-10 19:36:33 +01:00
Florian Schmaus
8e74f7faed
Improve 'forward' code
...
Move Forwarded into forward.packet and remove deprecated methods. Also
make fields final.
Improve ForwardedProvider:
- use INSTANCE of DelayInformationProvider
- use loop label
- don't throw exceptions in certain cases, instead log
2015-01-09 11:32:00 +01:00
Christoph Fiehe
665e7914f2
Enable OSGi compliance via 'DynamicImport-Package: *'
...
on package layer instead of Declarative Service (DS) approach.
Restructuring and cleanup of initialization process to ensure that all
internal config files are found by the corresponding bundle
classloaders.
SMACK-343
2015-01-03 13:14:02 +01:00
Florian Schmaus
f2703bc195
Improve SHIM API
...
- HeadersExtension.getHeaders() now returns a List instead of a
Collection
- Use XmlStringBuilder in Header and HeadersExtension toXML()
- Add HeadersProviderTest
- Use Smack formatting
Also remove duplicate parsing code regarding SHIM from HOXT
implementation.
2015-01-02 00:09:30 +01:00
Florian Schmaus
9e797c1b17
Enable PacketExtensions for IQs
...
This is actually only part one, i.e. with this commit if the user adds a
PacketExtension to an IQ it will be included in IQ.toXml(). Which was
previously only the case if the IQ subclass explicitly included packet
extensions.
The second part of the change is to change the IQ provider, so that
packet extensions are automatically parsed.
Cases where PacketExtensions are used for Message and IQ are slightly
changed. The IQ sublcass now only has a field with this
PacketExtension (see for example
bytestreams.ibb.packet.DataPacketExtension).
Also changed hoxt API: Removed unnecessary indirection and made the
API more Smack idiomatic.
2014-11-10 11:43:18 +01:00
Florian Schmaus
a3de2ecc25
Add missing GCM namespace in experimental.providers
2014-10-31 00:24:13 +01:00
Florian Schmaus
e63fe22647
Add support for XEP-335: JSON Containers
...
and GCM JSON payloads for Google's GCM Cloud Connection Server.
2014-10-30 13:21:33 +01:00
Florian Schmaus
6980c8e63d
Rework Smack Provider design
...
this is the first stop towards fixing "SMACK-65: parsing should look for
depth", by providing the initial parsing depth to the provider. Some
methods (.e.g parseMessage) now use the depth as abort condition,
instead of a unclean String equals check.
parseIQ() and parseExtension() where both renamed to parse.
This also restricts the Exceptions thrown by the parse method, to just
XmlPullParserException, IOException and SmackException (not really a big
victory, but nevertheless a slight improvement).
StreamFeatureProvider is now gone, we simply use PacketExtensionProvider
for stream features.
2014-10-08 16:01:14 +02:00
Florian Schmaus
b78a711ebd
Add support for XEP-0352: Client State Indication
...
SMACK-607
2014-09-19 23:52:14 +02:00
Florian Schmaus
58e430af42
PacketExtension.from(Packet), deprecate getFrom()
...
add 'from(Packet)' to DataForm
2014-09-16 22:22:25 +02:00
Florian Schmaus
bbf89c65bf
Fix typo in XmlStringBuilder, it's not an Angel
...
s/rightAngelBracket/rightAngleBracket/
2014-08-20 21:25:14 +02:00
atsykholyas
880a348ff4
Updated support for HTTP over XMPP (XEP-0332)
...
Updated Base64BinaryChunk packet and provider to support latest
version of specification (0.3):
- added support for new nr attribute.
2014-08-16 08:21:06 +02:00
Florian Schmaus
aeda0e4660
Add an API to send and wait async for a response
...
SMACK-595
Also remove the unused AbstractXMPPConnection.getPacketListeners()
method.
2014-08-16 00:08:53 +02:00
Florian Schmaus
7277eb553a
Enable more 'checkstyle' checks
...
AvoidStarImport
IllegalImport
RedundantImport
UpperEll
ArrayTypeStyle
GenericWhitespace
EmptyStatement
PackageDelcaration
2014-08-15 23:17:45 +02:00
Florian Schmaus
bd333bd1ac
Add Enable/Disable Carbon IQs
2014-08-13 13:48:15 +02:00
Florian Schmaus
d06d5b7c69
Merge branch '4.0'
...
Conflicts:
build.gradle
2014-07-20 14:19:59 +02:00
Florian Schmaus
9db5e28fe5
Fix ExperimentalInitializer
2014-07-20 11:08:11 +02:00
Florian Schmaus
49ee058c38
Cleanup carbons, forwarded and a few others API
...
Adopt to common design patterns in Smack:
- getFrom(Packet) in Packetextensions
- INSTANCES.put() in getInstanceFor()
- ELEMENT instead of ELEMENT_NAME
- Use XmlStringBuilder
2014-07-16 11:46:30 +02:00
Júlio Cesar Bueno Cotta
9be0c480e3
Change IQ.Type to enum
2014-06-06 21:10:13 -03:00
Florian Schmaus
3647a7fce5
Improve parsing. Add method for de-serializing Strings
...
Move some duplicate code from XMPP(TCP|BOSH)Connection to
PacketParserUtils. Remove TestUtils as the method now part of Smack's
public API in PacketParserUtils.
2014-05-28 08:18:44 +02:00
Florian Schmaus
beecb8a675
Make XMPPConnection an interface
...
create AbstractXMPPConnection.
2014-05-28 08:18:41 +02:00
Florian Schmaus
4c76f2652d
Reworked OSGi support of Smack (SMACK-343)
...
Because of OSGi, no subproject of Smack (which is the same as a OSGi
bundle) must export a package that is already exported by another
subproject.
Therefore it was necessary to move the TCP and BOSH code into their own
packages: org.jivesoftware.smack.(tcp|bosh).
OSGi classloader restrictions also made it necessary to create a
Declarative Service for smack-extensions, smack-experimental and
smack-lagacy (i.e. smack subprojects which should be initialized), in
order to initialize them accordingly, as smack-core is, when used in a
OSGi environment, unable to load and initialize classes from other smack
bundles. OSGi's "Service Component Runtime" (SCR) will now take care of
running the initialization code of the particular Smack bundle by
activating its Declarative Service.
That is also the reason why most initialization related method now have an
additional classloader argument.
Note that due the refactoring, some ugly changes in XMPPTCPConnection
and its PacketReader and PacketWriter where necessary.
2014-05-15 16:09:37 +02:00
Florian Schmaus
90ea9ba2fc
Make ProviderManager static
...
also remove initialize() from ProviderFileLoader, by simply putting the
code into the constructor.
2014-05-11 09:27:41 +02:00
Florian Schmaus
91fd15ad86
Prefix subprojects with 'smack-'
...
instead of using the old baseName=smack appendix=project.name approach,
we are now going convention over configuration and renaming the
subprojects directories to the proper name.
Having a prefix is actually very helpful, because the resulting
libraries will be named like the subproject. And a core-4.0.0-rc1.jar is
not as explicit about what it actually *is* as a
smack-core-4.0.0-rc1.jar.
SMACK-265
2014-04-28 19:44:14 +02:00