1
0
Fork 0
mirror of https://codeberg.org/Mercury-IM/Smack synced 2024-12-26 06:07:59 +01:00
Commit graph

639 commits

Author SHA1 Message Date
Florian Schmaus
5f5805cd1c Merge branch '3.4'
Conflicts:
	build/build.xml
2014-02-10 09:09:02 +01:00
Florian Schmaus
9c61c6c945 Convert Connection references to weak references
If a Manager is strong referenced from a gc root, usually the instances
map, it should not hold itself a strong reference the connection in
order to avoid a cycle that prevents the Connection instance from being
gc'ed.

SMACK-383
2014-02-07 13:17:36 +01:00
Florian Schmaus
2cb3d5a0d4 Move 'new MXParser()' in try/catch block
aSmack replaces 'new MXParser()' with
'XmlPullParserFactory.newInstance().newPullParser()' which can throw a
XmlPullParserException. In order to build aSmack, we need to move the
'new MXParser()' within a try/catch block.
2014-02-04 09:57:01 +01:00
Lars Noschinski
c06b0a7720 Implement support for roster versioning
Roster versioning is defined in RFC 6121, section 2.2.6; the protocol
was originally described in XEP-0237.

Fixes SMACK-399
2014-02-04 09:57:01 +01:00
Florian Schmaus
e7a2cad401 Add hidden default constructor to ConnectionConfiguration
aSmack subclasses ConnectionConfiguration and needs a constructor that
does no network I/O.
2014-02-04 09:56:28 +01:00
rcollier
9a2993e661 Updated versioning for release (3.4.0)
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_4_0@13891 b35dd754-fafc-0310-a699-88a17e54d16e
2014-02-03 01:55:16 +00:00
rcollier
1b651d4939 SMACK-534 Refactored all System.out/err and printStackTrace calls with appropriate Java util logging calls.
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_4_0@13887 b35dd754-fafc-0310-a699-88a17e54d16e
2014-02-02 22:39:07 +00:00
rcollier
5bbf6cf224 SMACK-387 Added some configuration to the ChatManager to allow for different matching modes on incoming messages with no thread id.
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_4_0@13885 b35dd754-fafc-0310-a699-88a17e54d16e
2014-02-01 22:22:30 +00:00
rcollier
86df178654 SMACK-464 Updated javadoc to make method usage more clear.
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_4_0@13869 b35dd754-fafc-0310-a699-88a17e54d16e
2014-01-20 02:52:44 +00:00
Florian Schmaus
c143f0de25 SMACK-525 fix NPE when initConnection() fails
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_4_0@13862 b35dd754-fafc-0310-a699-88a17e54d16e
2014-01-17 10:40:10 +00:00
rcollier
f155cb4d07 SMACK-286 Made ProviderManager much more configurable.
Separated the reading of provider files from the ProviderManager.  Manager now only manages.  Added ability to add collections of providers to the manager via a ProviderLoader, of which there is one default implementation which loads from the default file format.  Now provider files can be programmatically added at any time.  Also updated the configuration abilities so that a provider file can also be set via VM arg, as well as the smack configuration itself. Introduced Java Util Logging as well.

git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_4_0@13861 b35dd754-fafc-0310-a699-88a17e54d16e
2014-01-16 05:14:39 +00:00
Florian Schmaus
3ecb723a0d SMACK-463 Catch and log exceptions in packet listeners
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_2@13803 b35dd754-fafc-0310-a699-88a17e54d16e
2013-11-05 19:55:16 +00:00
Florian Schmaus
49573866ab SMACK-462 Use getInstace() ConnectionCreationListener
Prevent duplicate instances of a manager by using it's getInstance()
method instead of the manager's constructor.

git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_2@13800 b35dd754-fafc-0310-a699-88a17e54d16e
2013-11-03 21:49:58 +00:00
Florian Schmaus
84e1f32284 SMACK-339 Allow ConnectionListeners to be added before Connection is connected
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_2@13798 b35dd754-fafc-0310-a699-88a17e54d16e
2013-11-02 11:46:21 +00:00
Florian Schmaus
418dd24392 SMACK-373 Don't remove listeners after a disconnect() , keep state of Connection between disconnect() and connect()/login()
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_2@13793 b35dd754-fafc-0310-a699-88a17e54d16e
2013-10-27 17:40:06 +00:00
Florian Schmaus
62bc862015 SMACK-443 remove duplicate notifyReconnection()
notifyReconnection() was called in initConnection() and in connect()

git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_2@13789 b35dd754-fafc-0310-a699-88a17e54d16e
2013-10-26 11:26:19 +00:00
Florian Schmaus
b16f34f61e SMACK-458 Managers should be kept on disconnects
Smack's Managers should not remove itself when the connection is closed
or should re-add themselves if the connection get reconnected.

This should also fix some NPE's.

We are currently going with two different designs of Manager: 1. The one
with WeakReferences/WeakHashMaps (SDM, EntityCapsManager) and 2. the one
where the managers remove their listeners on connectionClosed() *and*
connectionClosedOnError(), and later add their listeners on
reconnectionSuccessful(). The first design has the Connection instance
only weak referenced. The other design does reference Connection
strongly (e.g. the 'managers' map in IBBManager/S5BManager), but removes
this references when connectionClosed(onError)() is called.

git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_2@13788 b35dd754-fafc-0310-a699-88a17e54d16e
2013-10-26 11:17:16 +00:00
Florian Schmaus
aa5906f1f1 SMACK-457 Remove unnecessary printStackTrace() in XMPPConnection
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_2@13773 b35dd754-fafc-0310-a699-88a17e54d16e
2013-10-17 17:38:19 +00:00
Florian Schmaus
bd709dc323 SMACK-452 Correctly parse stream error packets
Modified PacketParserUtils.parseStreamError() to take into account that
there may be an optional text element and an optional application
specific element.

git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_2@13767 b35dd754-fafc-0310-a699-88a17e54d16e
2013-10-09 17:02:34 +00:00
Florian Schmaus
b253203cfb SMACK-444 Allow 'null' for options in ServerTrustManager
Allow 'null' for TruststorePath and TruststorePassword in ServerTrustManager

git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_2@13766 b35dd754-fafc-0310-a699-88a17e54d16e
2013-10-09 12:31:17 +00:00
Florian Schmaus
9a7bf4a4c3 SMACK-456 Added the causing exception
XMPPConnection.connectUsingConfiguraiton() does now add the causing
exception to the throwed exception.

git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_2@13765 b35dd754-fafc-0310-a699-88a17e54d16e
2013-10-09 11:54:03 +00:00
rcollier
e87daff68f Versioning updates for new release.
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_1@13761 b35dd754-fafc-0310-a699-88a17e54d16e
2013-10-07 02:42:12 +00:00
rcollier
25012a6744 SMACK-425 Few changes based on review http://fisheye.igniterealtime.org/cru/SMACK-4
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_1@13759 b35dd754-fafc-0310-a699-88a17e54d16e
2013-10-05 23:14:24 +00:00
rcollier
d237e06dab SMACK-441 Create packet collector only when necessary
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_1@13703 b35dd754-fafc-0310-a699-88a17e54d16e
2013-06-30 20:00:50 +00:00
Florian Schmaus
9f2446c78e SMACK-448 Java7ZlibInputOutputStream: Use correct Deflater compression level
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_1@13693 b35dd754-fafc-0310-a699-88a17e54d16e
2013-06-24 22:42:37 +00:00
Florian Schmaus
0f247cf30e SMACK-405 Removed redundant code in XMPPConnection.shutdown()
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_1@13690 b35dd754-fafc-0310-a699-88a17e54d16e
2013-06-22 17:02:09 +00:00
Florian Schmaus
cb5e1dc94b SMACK-431 Entity Capabilities are now enabled as default for new connections. Added an extensions documentation html page.
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_1@13689 b35dd754-fafc-0310-a699-88a17e54d16e
2013-06-22 17:01:58 +00:00
Florian Schmaus
30bc5afa2b SMACK-425 Introduced smack.parsing.ParsingExceptionCallback, a callback invoked when a exception is thrown while parsing a stanza. Smack is now able to either rethrow the exception ulitmatly causing a disconnect *or* log/ignore the exception and resume parsing after the faulty stanza.
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_1@13688 b35dd754-fafc-0310-a699-88a17e54d16e
2013-06-22 17:01:40 +00:00
Florian Schmaus
18a603d932 SMACK-428 add 'public int RosterEntry.hashCode()'
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_1@13662 b35dd754-fafc-0310-a699-88a17e54d16e
2013-05-17 22:05:57 +00:00
Florian Schmaus
6eb4b39716 Spelling fixes
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_1@13661 b35dd754-fafc-0310-a699-88a17e54d16e
2013-05-17 22:05:40 +00:00
Florian Schmaus
8e10e5f374 SMACK-369 remove try/catch block in XMPPConnection.connect()
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_1@13660 b35dd754-fafc-0310-a699-88a17e54d16e
2013-05-17 22:05:24 +00:00
rcollier
57051abfea Updated version information for 3.3 release.
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_0@13638 b35dd754-fafc-0310-a699-88a17e54d16e
2013-05-04 12:15:17 +00:00
rcollier
fe2e9cdb76 SMACK-344 Patch applied that allows the host and service name to be different for SASL authentication
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_0@13620 b35dd754-fafc-0310-a699-88a17e54d16e
2013-04-20 22:05:28 +00:00
rcollier
13d87e3d40 SMACK-361 Changed default for filename encoding to Base 32 (which should work on all file systems) and added a Base 64 filename and url safe implementation of the StringEncoder.
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_0@13619 b35dd754-fafc-0310-a699-88a17e54d16e
2013-04-20 21:55:27 +00:00
rcollier
3a4b05ac00 SMACK-412 Abstracted the keepalive implementation and set the thread to start and stop on demand.
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_0@13610 b35dd754-fafc-0310-a699-88a17e54d16e
2013-04-16 01:39:17 +00:00
rcollier
b4432d7627 SMACK-352 Changed or removed copyright notices that should not have been attributed to Jive Software.
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_0@13604 b35dd754-fafc-0310-a699-88a17e54d16e
2013-04-07 19:15:32 +00:00
rcollier
ba81a45b8c SMACK-404 Removed unnecessary string construction.
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_0@13603 b35dd754-fafc-0310-a699-88a17e54d16e
2013-04-07 15:41:20 +00:00
rcollier
4155e9ca80 SMACK-391 Reformat some new files to Smack standard
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_0@13602 b35dd754-fafc-0310-a699-88a17e54d16e
2013-04-07 13:17:26 +00:00
rcollier
9da54ecbce SMACK-225 Converted abstract class to interface, added missing hashcode method, fixed typos and some minor name changes and added licensing text
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_0@13600 b35dd754-fafc-0310-a699-88a17e54d16e
2013-04-01 13:40:02 +00:00
rcollier
0fdfd6e75e SMACK-361 Some general code cleanup added some missing hashcode methods and added back some removed public API methods (marked as deprecated).
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_0@13598 b35dd754-fafc-0310-a699-88a17e54d16e
2013-03-31 14:24:50 +00:00
rcollier
b0bdd56b20 SMACK-412 Fixed merge error.
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_0@13589 b35dd754-fafc-0310-a699-88a17e54d16e
2013-03-23 13:27:55 +00:00
rcollier
a14178990b SMACK-412 Added the pingMyServer back in, cleaned up unneeded synchronization and removed minimum ping interval.
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_0@13588 b35dd754-fafc-0310-a699-88a17e54d16e
2013-03-23 11:59:08 +00:00
rcollier
999c86ef4c SMACK-225 Modified DNSUtils to return a default HostAddress when no DNS resolver is available. This restores the previous default behaviour.
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_0@13587 b35dd754-fafc-0310-a699-88a17e54d16e
2013-03-23 11:55:43 +00:00
Florian Schmaus
57a5f88ead SMACK-384 Don't use a semaphore while waiting for PacketReader to be started.
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_0@13577 b35dd754-fafc-0310-a699-88a17e54d16e
2013-03-22 18:14:08 +00:00
Florian Schmaus
ff64c57b4d Added isFullJID() helper in StringUtils
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_0@13575 b35dd754-fafc-0310-a699-88a17e54d16e
2013-03-22 18:13:53 +00:00
rcollier
aab1dcdabe SMACK-412 Split the ping implementation to a server ping to replace keepalive and a simplified ping manager for manual pings of other entities.
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_0@13569 b35dd754-fafc-0310-a699-88a17e54d16e
2013-03-19 02:37:36 +00:00
Florian Schmaus
a55b54f20b SMACK-417 If both PacketReader and PacketWriter fail at the same time, connectionClosedonError() is called two times
Refactored notifyConnectionError() and notifyReconnection() from PacketReader to XMPPConnection. Made PacketReader.done and PacketWriter.done volatile. Prevent duplicate connectionClosedonError() calls by making the method synchronzied and protected them with an enter guard: if (packetReader.done && packetWriter.done) return;

git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_0@13568 b35dd754-fafc-0310-a699-88a17e54d16e
2013-03-18 19:58:48 +00:00
Florian Schmaus
6dcf8e0123 SMACK-419 PacketWriter: Only flush if queue is empty
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_0@13567 b35dd754-fafc-0310-a699-88a17e54d16e
2013-03-18 19:58:14 +00:00
Florian Schmaus
2eb13f48d2 SMACK-225 Fixed DNS SRV handling, as per RFC 2782. Added support for multiple DNS SRV resolvers namely javax and org.xbill.dns (aka dnsjava).
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_0@13561 b35dd754-fafc-0310-a699-88a17e54d16e
2013-03-18 08:53:11 +00:00
Florian Schmaus
21be8c55ee SMACK-361 Added support for Entity Capabilities.
git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/branches/smack_3_3_0@13560 b35dd754-fafc-0310-a699-88a17e54d16e
2013-03-18 08:50:48 +00:00