1
0
Fork 0
mirror of https://github.com/vanitasvitae/Smack.git synced 2025-09-09 00:59:39 +02:00

SmackReactor/NIO, Java8/Android19, Pretty print XML, FSM connections

This commit adds
- SmackReactor / NIO
- a framework for finite state machine connections
- support for Java 8
- pretty printed XML debug output

It also
- reworks the integration test framework
- raises the minimum Android API level to 19
- introduces XmppNioTcpConnection

Furthermore fixes SMACK-801 (at least partly). Java 8 language
features are available, but not all runtime library methods. For that
we would need to raise the Android API level to 24 or higher.
This commit is contained in:
Florian Schmaus 2019-02-04 08:59:39 +01:00
parent dba12919d0
commit e98d42790a
144 changed files with 8692 additions and 1455 deletions

View file

@ -17,8 +17,6 @@
package org.jivesoftware.smackx.debugger.slf4j;
import java.io.Reader;
import java.io.Writer;
import java.util.concurrent.atomic.AtomicBoolean;
import org.jivesoftware.smack.AbstractXMPPConnection;
@ -88,19 +86,13 @@ public class SLF4JSmackDebugger extends SmackDebugger {
}
@Override
public Reader newConnectionReader(Reader newReader) {
reader.removeReaderListener(slf4JRawXmlListener);
reader = new ObservableReader(newReader);
reader.addReaderListener(slf4JRawXmlListener);
return reader;
public void outgoingStreamSink(CharSequence outgoingCharSequence) {
slf4JRawXmlListener.write(outgoingCharSequence.toString());
}
@Override
public Writer newConnectionWriter(Writer newWriter) {
writer.removeWriterListener(slf4JRawXmlListener);
writer = new ObservableWriter(newWriter);
writer.addWriterListener(slf4JRawXmlListener);
return writer;
public void incomingStreamSink(CharSequence incomingCharSequence) {
slf4JRawXmlListener.read(incomingCharSequence.toString());
}
@Override