diff options
Diffstat (limited to 'src/com/isode/stroke/session')
-rw-r--r-- | src/com/isode/stroke/session/BasicSessionStream.java | 12 | ||||
-rw-r--r-- | src/com/isode/stroke/session/SessionStream.java | 7 |
2 files changed, 13 insertions, 6 deletions
diff --git a/src/com/isode/stroke/session/BasicSessionStream.java b/src/com/isode/stroke/session/BasicSessionStream.java index 4f0e75b..9ba862d 100644 --- a/src/com/isode/stroke/session/BasicSessionStream.java +++ b/src/com/isode/stroke/session/BasicSessionStream.java @@ -175,6 +175,10 @@ public class BasicSessionStream extends SessionStream { return tlsLayer.getContext().getFinishMessage(); } + public boolean supportsZLibCompression() { + return true; + } + public void addZLibCompression() { compressionLayer = new CompressionLayer(); streamStack.addLayer(compressionLayer); @@ -232,12 +236,12 @@ public class BasicSessionStream extends SessionStream { } } - private void handleDataRead(ByteArray data) { - onDataRead.emit(data.toString()); + private void handleDataRead(SafeByteArray data) { + onDataRead.emit(data); } - private void handleDataWritten(ByteArray data) { - onDataWritten.emit(data.toString()); + private void handleDataWritten(SafeByteArray data) { + onDataWritten.emit(data); } @Override public String toString() { diff --git a/src/com/isode/stroke/session/SessionStream.java b/src/com/isode/stroke/session/SessionStream.java index 2b9932b..3171ec0 100644 --- a/src/com/isode/stroke/session/SessionStream.java +++ b/src/com/isode/stroke/session/SessionStream.java @@ -10,6 +10,7 @@ package com.isode.stroke.session; import java.util.List; +import com.isode.stroke.base.SafeByteArray; import com.isode.stroke.base.ByteArray; import com.isode.stroke.elements.Element; import com.isode.stroke.elements.ProtocolHeader; @@ -50,6 +51,8 @@ public abstract class SessionStream { public abstract void writeData(String data); + public abstract boolean supportsZLibCompression(); + public abstract void addZLibCompression(); public abstract boolean supportsTLSEncryption(); @@ -81,8 +84,8 @@ public abstract class SessionStream { public final Signal1<Element> onElementReceived = new Signal1<Element>(); public final Signal1<Error> onClosed = new Signal1<Error>(); public final Signal onTLSEncrypted = new Signal(); - public final Signal1<String> onDataRead = new Signal1<String>(); - public final Signal1<String> onDataWritten = new Signal1<String>(); + public final Signal1<SafeByteArray> onDataRead = new Signal1<SafeByteArray>(); + public final Signal1<SafeByteArray> onDataWritten = new Signal1<SafeByteArray>(); protected CertificateWithKey getTLSCertificate() { return certificate; } |