1
0
Fork 0
mirror of https://github.com/vanitasvitae/Smack.git synced 2024-11-18 10:02:05 +01:00
Commit graph

151 commits

Author SHA1 Message Date
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
Florian Schmaus
f546d28ad8 Xlint all the things
and fix all warnings.
2015-03-23 09:28:49 +01:00
Florian Schmaus
7c5428ab0e Javadoc improvements 2015-03-21 18:59:12 +01:00
Florian Schmaus
b8f046706b Add Integration Test Framework
and resurrect a few integration tests.
2015-03-18 11:09:56 +01:00
Florian Schmaus
4e6fbe7293 Merge branch '4.1'
Conflicts:
	build.gradle
	version.gradle
2015-03-18 08:35:08 +01:00
Florian Schmaus
4d9bd6f216 Add jacocoRootReport task to build.gradle
with the correct parameters to collect the jacocoReports from all
subprojects and put the jacocoTestReport.xml in the right place, so that
the coveralls plugin is able to find it.
2015-03-12 20:14:31 +01:00
Florian Schmaus
03206fcbf6 Add jacoco and coveralls gradle plugins 2015-03-12 17:22:23 +01:00
Florian Schmaus
79e59028ac Bump gradle-clirr-plugin to 0.2.0 2015-03-12 13:38:15 +01:00
Florian Schmaus
745d67a676 Update markdown-gradle-plugin to 1.0.0
and rename documentation links from .html to .md, since
markdown-gradle-plugin will now automatically transfer the links .md to
.html.

Now users can broswe the documentation in their markdown form (e.g. via
github) and via html.

Also add a symlink from README.md to index.md in documentation/.
2015-03-07 21:08:53 +01:00
Florian Schmaus
0279677883 Add support for clirr to the build system 2015-03-03 15:07:33 +01:00
Florian Schmaus
7ebea7ce94 Add StanzaIdFilter, deprecate PacketIDFilter 2015-02-19 16:07:42 +01:00
Florian Schmaus
616768a5a9 Add smack-bosh to Android Projects
Replace SaslException with SmackException in XMPPBOSHConnection, that is
the exception which is used in XMPPTCPConnection for the same purpose.

Also make androidProjects a multi-line list.
2015-01-26 07:54:12 +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
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
7bf3c3ea5d Move jxmppVersion and smackMinAndroidSdk to version.gradle 2014-12-09 13:54:12 +01:00
Florian Schmaus
b9167c5fe2 Add version.gradle 2014-11-04 14:43:41 +01:00
Florian Schmaus
775477dcc7 Smack 4.1.0-alpha6-SNAPSHOT 2014-11-02 12:21:15 +01:00
Florian Schmaus
aecb3cc861 Smack 4.1.0-alpha5 2014-11-02 12:13:21 +01:00
Florian Schmaus
c351382c73 Require jxmpp 0.4.0 2014-11-02 11:24:28 +01:00
Florian Schmaus
177ab983d4 Merge branch '4.0'
Conflicts:
	build.gradle
	smack-tcp/src/main/java/org/jivesoftware/smack/tcp/PacketReader.java
2014-10-22 22:25:20 +02:00
Florian Schmaus
04446e54db Smack 4.0.5 2014-10-22 22:11:07 +02:00
Florian Schmaus
994e45acae Smack 4.1.0-alpha5-SNAPSHOT 2014-10-18 01:47:54 +02:00
Florian Schmaus
2172fb7126 Smack 4.1.0-alpha4 2014-10-18 01:42:06 +02:00
Florian Schmaus
ccdd94c997 Add check if ANDROID_HOME is set to build.gradle 2014-10-05 12:40:33 +02:00
Florian Schmaus
0fea113c8f Smack 4.1.0-alpha4-SNAPSHOT 2014-10-05 12:04:45 +02:00
Florian Schmaus
dd39f5643d Smack 4.1.0-alpha3 2014-10-04 18:28:24 +02:00
Florian Schmaus
50e068b6a7 Merge branch '4.0'
Conflicts:
	build.gradle
2014-09-29 14:00:48 +02:00
Florian Schmaus
aa90cfadc5 Smack 4.1.0-alpha3-SNAPSHOT 2014-09-27 20:09:58 +02:00
Florian Schmaus
4d7b1cd53b Smack 4.1.0-alpha2 2014-09-27 19:50:02 +02:00
Florian Schmaus
bfebf6a4a5 Add ServerPingWithAlarmManager to smack-android 2014-09-22 10:13:33 +02:00
Florian Schmaus
37eeb07376 Add smack-java7 declarative service
So that everything is correctly initialized. Otherwise we get an NPE
like:

02:55:01 PM SENT (242792115): <auth xmlns='urn:ietf:params:xml:ns:xmpp-sasl' mechanism='DIGEST-MD5'>=</auth>
02:55:01 PM RCV  (242792115): <challenge xmlns="urn:ietf:params:xml:ns:xmpp-sasl">cmVhbG09ImVjLXhtcHAiLG5vbmNlPSJyWWpCYj Znc1I4WUVKZXNZUXV2bXBFQWNoRVVGRGowTnJnUFcxRjFmIixxb3A9ImF1dGgiLGNoYXJzZXQ9dXRmLT gsYWxnb3JpdGhtPW1kNS1zZXNz</challenge>
org.jivesoftware.smack.SmackException$NoResponseException
    at org.jivesoftware.smack.SASLAuthentication.authenticate(SASLAuthentication.java: 247)
    at org.jivesoftware.smack.tcp.XMPPTCPConnection.login(XMPPTCPConnection.java:374)
    ...
    at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.ja va:932)
    at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.ja va:1)
    at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256)
    at org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:183)
    at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:317)
    at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:261)
    at com.foobar.mgmt.tree.xmpp.skeleton.impl.activator.Activator.start(Activator.ja va:33)
    at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextI mpl.java:711)
    at java.security.AccessController.doPrivileged(Native Method)
    at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(Bundl eContextImpl.java:702)
    at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextI mpl.java:683)
    at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java :381)
    at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.j ava:390)
    at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java: 1176)
    at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartL evelManager.java:559)
    at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartL evelManager.java:544)
    at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelMa nager.java:457)
    at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(Star tLevelManager.java:243)
    at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartL evelManager.java:438)
    at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartL evelManager.java:1)
    at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.jav a:230)
    at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.j ava:340)
Sep 18, 2014 2:55:06 PM org.jivesoftware.smack.AbstractXMPPConnection callConnectionClosedOnErrorListener
Warnung: Connection closed with error
java.lang.NullPointerException
    at org.jivesoftware.smack.util.stringencoder.Base64.decode(Base64.java:87)
    at org.jivesoftware.smack.sasl.SASLMechanism.challengeReceived(SASLMechanism.java: 206)
    at org.jivesoftware.smack.SASLAuthentication.challengeReceived(SASLAuthentication. java:325)
    at org.jivesoftware.smack.SASLAuthentication.challengeReceived(SASLAuthentication. java:310)
    at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.parsePackets(XMPPTCPC onnection.java:1105)
    at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.access$200(XMPPTCPCon nection.java:969)
    at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader$1.run(XMPPTCPConnecti on.java:988)

SMACK-343
2014-09-19 09:48:28 +02:00
Florian Schmaus
c7a162f316 Smack 4.1.0-alpha2-SNAPSHOT 2014-09-12 10:17:53 +02:00
Florian Schmaus
3c7d17f648 Smack 4.1.0-alpha1 2014-09-12 10:08:53 +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
bf99227296 Smack 4.0.5-SNAPSHOT 2014-09-05 21:59:52 +02:00
Florian Schmaus
7bf31bc2e4 Smack 4.0.4 2014-09-05 21:59:35 +02:00
Florian Schmaus
066a4d6c9e Add maybeCheckForSnapshotDependencies to build.gradle
to check for Snapshot dependencies in release builds.
2014-08-20 20:53:17 +02:00
Florian Schmaus
a49eac7c00 Ensure javac uses uft8 as encoding 2014-08-19 11:32:40 +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
f9542c1be3 Smack 4.0.4-SNAPSHOT 2014-08-16 00:19:14 +02:00
Florian Schmaus
3743236710 Smack 4.0.3 2014-08-16 00:18:54 +02:00
Florian Schmaus
344148eaed Convert html documentation to markdown 2014-08-16 00:11:14 +02:00
Florian Schmaus
7436a16d09 Create Jar artifact with test code 2014-08-12 22:01:26 +02:00
Florian Schmaus
0c0737942c Make resolver-dnsjava, -minidns initializer
and OSGi components.

There is really no need to treat them different then
resolver-javax. This also allows the removal of the DNSUtil.init() method.
2014-08-11 19:39:31 +02:00
Florian Schmaus
3bbe9bef71 s/buildDate/builtDate/ 2014-08-08 16:23:12 +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
89dc3a0e85 Add smack-android and redesign SASL authentication
This commit marks an important milestone with the addition of the
smack-android subproject. Smack is now able to run native on Android
without requiring any modifications, which makes the aSmack build
environment obsolete.

It was necessary to redesign the code for SASL authentication to achieve
this. Smack now comes with smack-sasl-provided for SASL implementations
that do not rely on additional APIs like javax for platforms where those
APIs are not available like Android.
2014-08-01 10:34:47 +02:00
Florian Schmaus
34b195397f Add '--always' to 'git describe' 2014-07-28 16:12:57 +02:00
Florian Schmaus
6bf0678db6 Merge branch '4.0'
Conflicts:
	build.gradle
	smack-core/src/main/java/org/jivesoftware/smack/ConnectionConfiguration.java
	smack-tcp/src/main/java/org/jivesoftware/smack/tcp/XMPPTCPConnection.java
2014-07-28 00:05:02 +02:00
Florian Schmaus
5ead24e416 Smack 4.0.3-SNAPSHOT 2014-07-27 23:59:48 +02:00
Florian Schmaus
a0564f2694 Smack 4.0.2 2014-07-27 23:59:48 +02:00
Florian Schmaus
16ea073f4d Fix OSGi component definition for smack-resolver-javax
The Service Component definition for resolver-javax is in
org.jivesofware.samck and not org.jivesoftware.smack*x*.

SMACK-576
2014-07-27 23:59:47 +02:00
Florian Schmaus
6b7fa4a788 Only call SimpleDataFormat once in build.gradle
re-use ext.buildDate
2014-07-25 19:48:54 +02:00
Florian Schmaus
3634587933 Support building with Java8 2014-07-25 10:38:27 +02:00
Florian Schmaus
d06d5b7c69 Merge branch '4.0'
Conflicts:
	build.gradle
2014-07-20 14:19:59 +02:00
Florian Schmaus
2ca92ef601 Smack 4.0.2-SNAPSHOT 2014-07-20 13:33:50 +02:00
Florian Schmaus
d56252f9fb Smack 4.0.1 2014-07-20 12:59:01 +02:00
Florian Schmaus
494f7d5b34 Add getDatestamp() to build.gradle 2014-07-20 12:59:01 +02:00
Florian Schmaus
46a54bcd7d Use jxmpp 0.2.0
this also changes jxmpp's group from org.jivesoftware.jxmpp to org.jxmpp
2014-07-15 23:32:19 +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
08a232bff3 Only include the jars of the actual version in distirbutionZip
in order to avoid that other artifactss from previous builds slip in
the distribution zip.
2014-06-27 13:38:47 +02:00
Florian Schmaus
0f7365bc8a Use jxmpp 0.1.0 (non-SNAPSHOT) 2014-06-26 22:58:47 +02:00
Florian Schmaus
f39519dbbe Disable uploadArchives for the root project 2014-06-26 22:44:31 +02:00
Florian Schmaus
73c64dc06a Record some more useful attributes in manifest 2014-06-25 08:28:26 +02:00
Florian Schmaus
609c225865 Add smack-resolver-minidns 2014-06-25 08:27:20 +02:00
Florian Schmaus
1d21285d24 Update JIRA URL 2014-06-22 22:44:00 +02:00
Florian Schmaus
298822eaef Make smack-resolver-javax an OSGi ServiceComponent
Fixes SMACK-576
2014-06-17 18:01:36 +02:00
Florian Schmaus
a77adc018b Enable linkSource, use and JavaSE javadoc for javadocAll 2014-06-17 13:17:20 +02:00
Florian Schmaus
3367105552 Smack 4.0.1-SNAPSHOT 2014-06-12 18:43:50 +02:00
Florian Schmaus
3e18a23e47 Merge branch '4.0'
Conflicts:
	build.gradle
	smack-extensions/src/main/java/org/jivesoftware/smackx/muc/MultiUserChat.java
2014-06-07 12:24:51 +02:00
Florian Schmaus
120be69a30 Smack 4.0.0 2014-06-07 12:18:59 +02:00
Florian Schmaus
f67d655fe7 Use jxmpp-core (0.1.0-alpha1-SNAPSHOT)
fixes also SMACK-570, since jxmpp-core's XmppStringUtil contains the fix
for SMACK-570.
2014-06-01 12:24:30 +02:00
Florian Schmaus
f05f6bf901 Fix lost sharedManfiest configuration in build.xml
The configuration of ext.sharedManifest was no longer included (since
39c837190d).
2014-05-30 22:35:18 +02:00
Florian Schmaus
e9b47d4164 Smack 4.0.0-rc3-SNAPSHOT 2014-05-29 17:49:52 +02:00
Florian Schmaus
f69e81d7ea Smack 4.1.0-alpha1-SNAPSHOT 2014-05-24 16:02:28 +02:00
Florian Schmaus
183ecb5542 Smack 4.0.0-rc2 2014-05-24 11:45:02 +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
de6eb4b21c Tell Gradle to download javadoc
when creating the classpath for eclipse.
2014-05-11 09:38:13 +02:00
Florian Schmaus
0111be1a04 Fix description of subprojects POMs file
by adding evaluationDependsOnChildren() on the root project. Thanks to
Peter Niederwieser for the hint.
2014-05-10 21:00:40 +02:00
Florian Schmaus
39c837190d Don't make non-core packages a fragment bundle
as there exists no longer a dependency from smack (now smack-core) to
smackx (now mostly smack-extensions). Therefore this approach is no
longer needed.

SMACK-343
2014-05-05 19:26:45 +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
Florian Schmaus
5a19668544 Add Eclipse-(PatchFragment|ExtensibleAPI) manifest data
to the jar manifests. Thanks to Jens Offenbach for reporting.
2014-04-28 17:42:23 +02:00
Florian Schmaus
06c6546d2e Strip 'smack-' prefix from artifacts
This was causing some trouble, e.g. the maven plugin resolved the
dependency only to artifactId 'core', when it should be
'smack-core'. It was previously working, but likely broke when the
configuration of the subprojects was put into their own build.gradle
files.

SMACK-265
2014-04-28 17:35:59 +02:00
Florian Schmaus
858492b177 Fix OSGi Bundle-Version
Bundle-Version's forth field, the qualifier, must be separated from
the 'micro' version with a dot.
2014-04-28 11:22:42 +02:00
Florian Schmaus
b4c338b6e5 Smack 4.0.0-rc2-SNAPSHOT 2014-04-22 21:35:54 +02:00
Florian Schmaus
9e79fa4d12 Smack 4.0.0-rc1 2014-04-17 13:47:19 +02:00
Florian Schmaus
4483e2bbd0 Make gradle use the local maven cache 2014-04-17 13:43:36 +02:00
Florian Schmaus
649f7af276 Move gradle signing code out of allprojects
because it caused asking for the key passphrase multiple times, i.e. for
every subproject.
2014-04-17 12:53:39 +02:00
Florian Schmaus
cc026a7e85 Raise source compatibility to 1.7 (Java7)
Now that Java 8 is released, it's time to raise Smack's source
compatibility. Let's also use some of the "new" Java 7 features like
"catch multiple".
2014-03-24 19:23:06 +01:00
Florian Schmaus
93eea8ab8d Move gradle subproject configuration into the subproject 2014-03-09 14:59:45 +01:00
Florian Schmaus
a3e64bab18 Created 'tcp' subproject for TCPConnection
Renamed XMPPConnection to TCPConnection, since the other connection type
is also called BOSHConnection.
2014-03-01 14:31:34 +01:00
Florian Schmaus
4db0b101c2 Raise jbosh version to 0.7.0 2014-02-20 13:11:10 +01:00
Florian Schmaus
b4d735e862 Cleanup of build.gradle
- Moved helper code at the end
- Add description to the POM
2014-02-19 23:26:56 +01:00
Florian Schmaus
1a94812660 Add BOSH subproject (SMACK-187) 2014-02-19 22:41:31 +01:00
Florian Schmaus
602a8fc812 Activate the jingle subproject and move integration tests
The jingle subproject builds now. This doesn't change that the code is
outdated with regard to the specification and unmaintained for
years. But hopefully this is the first step to change that. :)

The integration tests have been moved into SourceSets of 'core' and
'extensions'.
2014-02-19 10:38:30 +01:00
Florian Schmaus
e6d5385129 Add more pom metadata 2014-02-18 10:51:24 +01:00
Florian Schmaus
1e57f1c659 Activate checkstyle and add missing license headers
Delete also all "All rights reserved" statements, as they are
unnecessary and conflict with checkstyle's header check. Delete unused
imports.
2014-02-17 20:09:55 +01:00
Florian Schmaus
6dd64da930 Create new subproject 'legacy', move workgroup API into it 2014-02-17 08:24:10 +01:00
Florian Schmaus
2ad517b6dd Add initializer tests and move classpath files
The initializer tests verify that every non-optional initializer, this
includes Providers, is loadable.

Creating files under META-INF is not considered best practice. Smack's
configuration and provider files reside now in classpath directory
qualified by Smack's package namespace.
2014-02-15 22:12:12 +01:00