Commit Graph

121 Commits

Author SHA1 Message Date
Florian Schmaus 57c1b57b7c s/ a XMPP/ an XMPP/ 2015-02-12 12:13:19 +01:00
Florian Schmaus 772da6bfa0 Fix connections.md: It's 'XMPPTCPConnectionConfiguration.Builder'
added the missing dot ('.'). The Builder was renamed a while ago.
2015-02-06 09:34:58 +01:00
Florian Schmaus e977c349a8 Add documentation/developer/provider.md
also fix stanzas.md
2015-02-04 16:34:10 +01:00
Florian Schmaus 1407f10f7f Make connect() return a self-reference 2015-01-26 07:54:13 +01:00
Florian Schmaus e3f1865821 Add XEP-224: Attention to the supported extensions 2015-01-26 07:54:10 +01:00
Florian Schmaus d5b8647d9d Create smack-im subproject for XMPP-IM
Move Roster and Chat(Manager) code into their own packages within the
new smack-im subproject.

Apply Manager pattern to Roster.

Fixes SMACK-637.
2015-01-26 07:54:05 +01:00
Florian Schmaus 9d775c8418 Fix documentation wrt FormField and DataForm Type 2015-01-20 12:43:18 +01:00
Florian Schmaus 440af7675a Rename SmackConfiguration.DEBUG_ENABLED to DEBUG 2015-01-19 08:26:42 +01:00
vito-c e31b284afa Don't append closing body in XHTMLText.toString()
Also add XHTMLExtension.from(Message) and change XHTMLManager.addBody()
signature so that it expects a XHTMLText (Modifications to the original
patch by Florian Schmaus).
2015-01-07 15:00:28 +01:00
Anno van Vliet b08dbc1dbc Support for XEP-0122: Data Forms Validation.
Data Forms Validation are a part of Data Fields and implemented as
extensions, added to a Datafield.

Data validation extensions are validated before adding to the message,
using the consistency rules as described in the XEP.
Fixes SMACK-621.

Minor modifications done by Florian Schmaus <flo@geekplace.eu>
2014-12-30 02:03:12 +01:00
Florian Schmaus 71029f0a45 Fix XEP URLs in documentation/extensions/index.md
Thanks to Oliver Hausler for reporting.
2014-12-21 10:36:18 +01:00
Florian Schmaus f4c7e2e086 Add smack-tcp to gettingstarted.md 2014-12-19 11:14:34 +01:00
Florian Schmaus 77f0fdc156 Add (IQ|PacketExtension)IntrospectionProvider
This simplifies code as there is no longer a distinction between
"normal" providers and introspection providers in ProviderManager
necessary.

It's also easier to get an idea where introspection is used for parsing.
2014-12-10 11:09:52 +01:00
Anno ff977825da Support for XEP-0141: Data Forms Layout.
Data Forms layouts are a part of Data Forms and implemented as
extensions, added to a Dataform. Fixes issue SMACK-612.
2014-11-20 23:25:26 +01:00
Florian Schmaus c81cd34561 Apply builder pattern to ConnectionConfiguration
Introducing a clean split between the constant connection configuration
parameters, which are now all in ConnectionConfiguration and the dynamic
connection state (e.g. hostAddresses) which are now in
AbstractXMPPConnection.

Also removed all arguments of login() since the username, password,
resource and callback handler need now to be configured via
ConnectionConfiguration.

Also remove documentation/extensions/messageevents.md, as it's already
in documentation/legacy
2014-11-15 09:46:31 +01:00
Florian Schmaus 6168fca288 Message Evenents is in smack-legacy and documentation/legacy 2014-11-10 11:43:25 +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 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 8d7b329432 Update debugging.md
The lite debugger is also only found in smack-debug. Only the console
debugger is shipped with smack-core.
2014-10-16 16:50:52 +02:00
Florian Schmaus b54d133b36 Add MultiUserChatManager
apply the Manager pattern to 'muc'. This prevents the user creating
multiple MultiUserChat instances for the same MUC.

Move the static method from MultiUserChat to MultiUserChatManager.

Also add AbstractNodeInformationProvider.
2014-10-13 22:32:34 +02: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 2dc93d7639 Add support for XEP-0059: Result Set Management
SMACK-581
2014-09-13 12:28:18 +02:00
Florian Schmaus fc51f3df48 Add support for XEP-0198: Stream Management
- De-duplicate code by moving it into AbstractXMPPConnection
- Introduce TopLevelStreamElement as superclass for all XMPP stream elements.
- Add SynchronizationPoint, ParserUtils
- Add ParserUtils

Fixes SMACK-333 and SMACK-521
2014-09-11 09:49:16 +02:00
Florian Schmaus 393c713471 Don't repeat documentation, link to it instead
also fix some typos and improve some markdown formatting.
2014-08-28 15:26:02 +02:00
Florian Schmaus aa14f55902 Updated providers.md: s/.getInstance()//
As ProviderManager has now only static methods
2014-08-20 12:33:15 +02:00
Florian Schmaus 397eb88468 Merge branch '4.0'
Conflicts:
	build.gradle
	documentation/connections.html
	documentation/debugging.html
	documentation/extensions/filetransfer.html
	documentation/extensions/rosterexchange.html
	documentation/gettingstarted.html
	documentation/index.html
	documentation/legacy/messageevents.html
	smack-extensions/src/main/java/org/jivesoftware/smackx/address/MultipleRecipientManager.java
2014-08-16 00:30:28 +02:00
Florian Schmaus 344148eaed Convert html documentation to markdown 2014-08-16 00:11:14 +02:00
Florian Schmaus 3c88c2f705 Fix extensions/intro.html filetransfer link 2014-08-11 12:09:37 +02:00
Florian Schmaus 92a6d01507 Merge branch '4.0'
Also slightly improve OfflineMessageManager.getMessages()

Conflicts:
	build.gradle
	smack-extensions/src/main/java/org/jivesoftware/smackx/offline/OfflineMessageManager.java
2014-08-07 16:51:03 +02:00
Florian Schmaus 1935039432 Improve documentation (targetCompatibility, XPP3) 2014-08-01 19:19:17 +02:00
Florian Schmaus 97b17e83b4 Move "Message Events (XEP-22)" code to legacy
Fixes SMACK-569
2014-07-16 12:01:03 +02:00
Florian Schmaus 94a16ba41e Merge branch '4.0'
Conflicts:
	build.gradle
	documentation/connections.html
	documentation/gettingstarted.html
	smack-core/src/main/java/org/jivesoftware/smack/SmackException.java
	smack-core/src/test/java/org/jivesoftware/smack/parsing/ParsingExceptionTest.java
	smack-core/src/test/java/org/jivesoftware/smack/test/util/TestUtils.java
	smack-core/src/test/java/org/jivesoftware/smack/util/PacketParserUtilsTest.java
	smack-extensions/src/main/java/org/jivesoftware/smackx/caps/cache/SimpleDirectoryPersistentCache.java
	smack-extensions/src/main/java/org/jivesoftware/smackx/ping/PingManager.java
	smack-tcp/src/main/java/org/jivesoftware/smack/tcp/PacketReader.java
2014-07-05 14:37:22 +02:00
Florian Schmaus 4477561d4b Replace references to 'smack.jar'
Also don't mention the required JDK version in the README as such information
tends to become wrong easily.
2014-07-05 12:10:43 +02:00
Florian Schmaus 09425609af Refactor FileTransfer(Manager|Negotiator)
to use WeakHashMaps and extend Manager.

SMACK-579
2014-07-02 09:52:40 +02:00
Florian Schmaus 1fb8a50b79 Improve documentation
remove ambiguous part about smack-core being the only required
library. It's the only required library of *Smack*, but some user could
understand that Smack itself has no other dependencies. In order to
avoid such confusion, simply remove that part.
2014-06-27 12:22:39 +02:00
Florian Schmaus eec0df386c s/JEP/XEP/
also s;jabber.org/jeps;xmpp.org/extensions;
2014-06-14 11:48:46 +02:00
Florian Schmaus 3d926a034c Fix documentation to use correct XMPPConnection names
Some parts of the documentation still refer to

Connection connection = new XMPPConnection(…)

when it should be

XMPPConnection connection = new XMPPTCPConnection(…)

SMACK-574
2014-06-12 18:43:51 +02:00
Florian Schmaus beecb8a675 Make XMPPConnection an interface
create AbstractXMPPConnection.
2014-05-28 08:18:41 +02:00
Florian Schmaus 08cec251c7 Add missing HOXT entry in toc.html 2014-04-26 19:19:29 +02:00
Florian Schmaus 6e08a10186 Move Packet 'properties' from core to extensions
Code for Jive's packet properties should not be in 'core'. Also
de-serializing input from network causes some security implications, it
is therefore disabled as default.
2014-04-26 19:13:27 +02:00
Florian Schmaus 4cff008708 Return Collections (or sublcasses) instead of Iterators
This allows us to exploid Java 8 streams and Java 5 for-each
loops. The returned Collections are usually unmodifiable. We decided
against returning Iterable because this would mean determining the
size in O(n) compared to Collection.size() which is often faster
(e.g. O(1)).
2014-04-09 20:03:10 +02:00
atsykholyas 236ea71cee Added support for HOXT (XEP-0332)
This is initial impementation of XEP-0332 (SMACK-552) -
HTTP over XMPP transport.
Created extensions, providers and unit tests.
Two features are missing: jingle and sipub.
2014-03-20 12:36:04 +02:00
Florian Schmaus 6110872062 Cleanup of PrivacyList API
Use Type enum instead of String for PrivacyItem's constructor. Add
getName() to PrivacyList. Remove PrivacyRule, as it just adds unnecessary
complexity spliting PrivacyItem and PrivacyRule, they belong
together. Don't mix camel-case and c-style method names. Some minor
improvements. Add parser test.
2014-03-10 15:32:17 +01:00
Florian Schmaus 489816c61f Renamed Connection to XMPPConnection 2014-03-10 09:45:50 +01:00
Florian Schmaus 3093333533 Reworked Smack initialization
Move extension relevant configuration options from SmackConfiguration to
the extension. Introduced disabledSmackClasses that can be configured
via a system property or configuration file.
2014-02-23 17:48:07 +01:00
Florian Schmaus 3da34da5e7 Fix copy&paste error in intro.html 2014-02-15 22:36:52 +01:00
Florian Schmaus 38a3531ec6 Move privacy lists from core to extensions 2014-02-15 22:35:38 +01:00
Florian Schmaus b18a43920a Merge branch '3.4.0' into master
Conflicts:
	source/org/jivesoftware/smack/SmackConfiguration.java
2014-02-03 12:58:55 +01:00