Commit Graph

2221 Commits

Author SHA1 Message Date
Florian Schmaus f282323eec Extend RoomInfo to contain more meta-data
found in the extended disco info result form. See also
http://xmpp.org/extensions/xep-0045.html#disco-roominfo

Fixes SMACK-542

Also change getShortDescription() to getName()
2014-08-25 11:39:57 +02:00
Florian Schmaus 6a43fc7c36 Add shortDescription to RoomInfo
which is obtained from the disco#info result's identity. Fixes
SMACK-600.

Also make fields in RoomInfo final.
2014-08-24 20:00:35 +02:00
Florian Schmaus e19cfa4d83 Introduce MUCRole and MUCAffiliation enums
Also rework MUCItem and parseItem to follow current coding guidelines.
2014-08-24 18:30:18 +02:00
Florian Schmaus 754bdada18 MultiUserChat grant/revoke Admin must use #admin namepsace
SMACK-371
2014-08-24 17:49:08 +02:00
Luke GB 659714c2be Set jid to passed parameter, not null
Setting `jid` to `null` was probably not the intended behaviour of this constructor and means that the `IQReplyFilter` will later reject responses that it shouldn't, because the `AbstractXmppConnection` will automatically construct a JID based on the authenticated username.

In particular, this breaks attempting to connect to the PVP.net XMPP server.
2014-08-23 18:41:35 +02:00
Florian Schmaus 229e526f6d Make AbstractDelayInformationProvider handle empty string as reason 2014-08-21 19:47:31 +02:00
Florian Schmaus 28629e0e7f Fix wrong boolean condition in async API
inverse boolean condition, correct is: "if packetListener has been
removed, then we received no response" and add check for
exceptionCallback being null.
2014-08-21 12:02:32 +02:00
Florian Schmaus 76f8895ae3 Remove Pong class, add NAMESPACE to Ping
The Pong class was harmful, as people could try to use it with
PacketTypeFilter, which wouldn't work, a Pong is just a plain IQ result
without child XML.
2014-08-21 10:55:33 +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
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 eeea0e34ca Add '::1' to the loopbackAddresses 2014-08-20 18:12:48 +02:00
Florian Schmaus 47ffcd8b6d Merge branch '4.0' 2014-08-20 15:29:29 +02:00
Florian Schmaus 1e5f0eb749 Make parseElementText handle empty string elements
ie. elements which only content is the empty string, for example
<body></body>.

Fixes SMACK-598
2014-08-20 15:23:52 +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 b9b43ad5d7 Make the next server ping code easier to read 2014-08-20 10:44:02 +02:00
Florian Schmaus e16997eb9d Fix PingServerRunnable scheduling
should be nextPingIn and not pingInterval.
2014-08-20 10:35:45 +02:00
Florian Schmaus 64e49cb934 Add getLastStanzaReceived() to XMPPConnection
also remove faulty PongFilter from PingManager. It never matched any
stanzas, since a Pong is just a plain result IQ that is not qualified by
any XMPP Ping namespace.

Fixes SMACK-597
2014-08-20 10:35:17 +02:00
Florian Schmaus f65c0d5528 Renamed smack-jingle to smack-jingle-old
Also renamed package name from

org.jivesoftware.smackx.jingle

to

org.jivesoftware.smackx.jingleold
2014-08-20 00:26:02 +02:00
Florian Schmaus 6ab2bf9fe0 Also log the exception in parsePresence()
when parsing packet extensions.
2014-08-19 22:14:47 +02:00
Florian Schmaus 62893376dd Cleanup Bytestream and Streamhost
remove unnecessary setPort() setter.
2014-08-19 19:24:57 +02:00
Florian Schmaus b468a29881 Improve Socks5 Bytestreams
- determine all local IPv4 and IPv6 addresses
- prevent loopback addresses from appearing as streamhost

Some unit tests where changed because they assumed that a host only has
one local address. But nowadays hosts often have more, at least because
they are IPv4 and IPv6 multi-homed.
2014-08-19 19:00:43 +02:00
Florian Schmaus 650da55b23 Improve XmlStringBuilder usage in Bytestream 2014-08-19 12:43:21 +02:00
Florian Schmaus 6021f8a8ce Fix Bytestream.getChildElementXML returning invalid XML 2014-08-19 12:42:23 +02:00
Florian Schmaus 24f7de8d54 Merge branch '4.0'
Conflicts:
	build.gradle
2014-08-19 11:32:57 +02:00
Florian Schmaus a49eac7c00 Ensure javac uses uft8 as encoding 2014-08-19 11:32:40 +02:00
Florian Schmaus 9eb5c2a49d Load roster before sending the initial presence
SMACK-596
2014-08-19 11:31:47 +02:00
Vyacheslav Blinov 342ab65138 SmackDebugger initialization moved to dedicated factory.
You can set your custom debugger class as before, by using clear api
method ReflectionDebuggerFactory.setDebuggerClass, or you can set custom
debugger factory using SmackConfiguration.setDebuggerFactory if it's not
enough flexible for your needs
2014-08-18 12:03:54 +02:00
Florian Schmaus c84419a55e Create org.jivesoftware.smack.rosterstore package
and move RosterStore and DirectoryRosterStore into it.
2014-08-16 15:37:16 +02:00
Florian Schmaus e32a437c49 Add SASL PLAIN implementation to smack-sasl-provided 2014-08-16 09:29:32 +02:00
Florian Schmaus fe9606adb2 Wait for Socks5TestProxy initialization
to prevent

org.jivesoftware.smackx.bytestreams.socks5.Socks5ClientForInitiatorTest
  > shouldSuccessfullyEstablishConnectionAndActivateSocks5Proxy
    FAILED
    java.lang.NullPointerException at Socks5ClientForInitiatorTest.java:292
2014-08-16 08:51:13 +02:00
Vyacheslav Blinov 52673bad3c SLF4J Smack Debugging Logger 2014-08-16 08:22:57 +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 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 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 18a958e442 Fix faulty string comparison in SubscriptionProvider
'!=' tests for reference inequality, must use '!String.equals(String)'
instead.
2014-08-15 23:22:59 +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
Vyacheslav Blinov 522d0f30ff Generify Packet class returned by PackageCollector everywhere
This will help to get rid of repetitive class casts, and make
PacketCollector api more inline with itself (since some methods
are already generic return methods).
2014-08-15 12:14:19 +02:00
Florian Schmaus 450015bf40 Make Bookmarks.toXML() return valid XML again
Fixes SMACK-594
2014-08-14 22:25:52 +02:00
Florian Schmaus b3b0e02ae1 Add StanzaIdTest 2014-08-13 13:56:23 +02:00
Florian Schmaus bd333bd1ac Add Enable/Disable Carbon IQs 2014-08-13 13:48:15 +02:00
Daniele Ricci b60107db08 Add SASL EXTERNAL mechanism
Signed-off-by: Daniele Ricci <daniele.athome@gmail.com>
2014-08-12 22:15:32 +02:00
Daniele Ricci 613da7b9ff Allow null username (mainly for SASL EXTERNAL)
Signed-off-by: Daniele Ricci <daniele.athome@gmail.com>
2014-08-12 22:04:37 +02:00
Florian Schmaus 7436a16d09 Create Jar artifact with test code 2014-08-12 22:01:26 +02:00
Florian Schmaus 47a59ad7b3 Move toBytes() into SASLMechanism
as it's a often needed transformation in the SASL world.
2014-08-12 22:00:09 +02:00
Florian Schmaus da7f4495dc Remove smack-core sasl configuration
bring every class of smack-core and its dependencies in
scope of smack-sasl-(javax|provided).
2014-08-12 21:54:22 +02:00
Florian Schmaus f37682d980 Make SASLMechanism.getAuthenticationText() return byte[]
every SASL Mechanism is designed as a byte array based protocol. XMPP
adds the constraint that the challenges and responses are send base64
encoded. It's therefore better API design to let getAuthenticationText()
return byte[] instead of String.
2014-08-12 21:52:56 +02:00
Florian Schmaus c5b7f14527 Don't use IQReplyFilter in AccountManager
This is a follow up on 6caf2cbdb5 where IQReplyFilter was changed so
that getUser() must not return null. But this is the case in
AccountManager where no resource binding has taken place and the user is
therefore not set.

The fix is the same as in 6caf2cbdb5, instead of IQReplyFilter we
simply use a PacketIDFilter.
2014-08-11 21:09:26 +02:00