Jingle: create output stream on demand
This commit is contained in:
parent
73db0bd19f
commit
396ad3361f
|
@ -5,6 +5,7 @@ import android.util.Log;
|
||||||
import android.util.Pair;
|
import android.util.Pair;
|
||||||
|
|
||||||
import java.io.FileNotFoundException;
|
import java.io.FileNotFoundException;
|
||||||
|
import java.io.IOException;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
import java.io.OutputStream;
|
import java.io.OutputStream;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
@ -154,7 +155,14 @@ public class JingleConnection implements Transferable {
|
||||||
return this.mFileInputStream;
|
return this.mFileInputStream;
|
||||||
}
|
}
|
||||||
|
|
||||||
public OutputStream getFileOutputStream() {
|
public OutputStream getFileOutputStream() throws IOException {
|
||||||
|
if (this.file == null) {
|
||||||
|
Log.d(Config.LOGTAG,"file object was not assigned");
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
this.file.getParentFile().mkdirs();
|
||||||
|
this.file.createNewFile();
|
||||||
|
this.mFileOutputStream = AbstractConnectionManager.createOutputStream(this.file,message.getEncryption() == Message.ENCRYPTION_AXOLOTL);
|
||||||
return this.mFileOutputStream;
|
return this.mFileOutputStream;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -459,7 +467,6 @@ public class JingleConnection implements Transferable {
|
||||||
this.file.setKeyAndIv(key);
|
this.file.setKeyAndIv(key);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
this.mFileOutputStream = AbstractConnectionManager.createOutputStream(this.file,message.getEncryption() == Message.ENCRYPTION_AXOLOTL);
|
|
||||||
this.file.setExpectedSize(size);
|
this.file.setExpectedSize(size);
|
||||||
message.resetFileParams();
|
message.resetFileParams();
|
||||||
Log.d(Config.LOGTAG, "receiving file: expecting size of " + this.file.getExpectedSize());
|
Log.d(Config.LOGTAG, "receiving file: expecting size of " + this.file.getExpectedSize());
|
||||||
|
|
|
@ -101,8 +101,6 @@ public class JingleInbandTransport extends JingleTransport {
|
||||||
try {
|
try {
|
||||||
this.digest = MessageDigest.getInstance("SHA-1");
|
this.digest = MessageDigest.getInstance("SHA-1");
|
||||||
digest.reset();
|
digest.reset();
|
||||||
file.getParentFile().mkdirs();
|
|
||||||
file.createNewFile();
|
|
||||||
this.fileOutputStream = connection.getFileOutputStream();
|
this.fileOutputStream = connection.getFileOutputStream();
|
||||||
if (this.fileOutputStream == null) {
|
if (this.fileOutputStream == null) {
|
||||||
Log.d(Config.LOGTAG,account.getJid().toBareJid()+": could not create output stream");
|
Log.d(Config.LOGTAG,account.getJid().toBareJid()+": could not create output stream");
|
||||||
|
|
|
@ -141,8 +141,6 @@ public class JingleSocks5Transport extends JingleTransport {
|
||||||
digest.reset();
|
digest.reset();
|
||||||
//inputStream.skip(45);
|
//inputStream.skip(45);
|
||||||
socket.setSoTimeout(30000);
|
socket.setSoTimeout(30000);
|
||||||
file.getParentFile().mkdirs();
|
|
||||||
file.createNewFile();
|
|
||||||
fileOutputStream = connection.getFileOutputStream();
|
fileOutputStream = connection.getFileOutputStream();
|
||||||
if (fileOutputStream == null) {
|
if (fileOutputStream == null) {
|
||||||
callback.onFileTransferAborted();
|
callback.onFileTransferAborted();
|
||||||
|
|
Loading…
Reference in New Issue