summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlex Clayton <alex.clayton@isode.com>2016-03-16 15:45:11 (GMT)
committerAlex Clayton <alex.clayton@isode.com>2016-03-16 15:57:40 (GMT)
commitf693c8e0fa9c6a051cdf6260f131db3d9355b49f (patch)
tree10ca50f0c3494566e005f9c202f7d3b6c6d036f9 /src/com/isode/stroke/filetransfer/DummyFileTransferTransporterFactory.java
parent8b9891afc85d114ff1e9c9a0291a4aaee8baeb09 (diff)
downloadstroke-f693c8e0fa9c6a051cdf6260f131db3d9355b49f.zip
stroke-f693c8e0fa9c6a051cdf6260f131db3d9355b49f.tar.bz2
Support early IBB use in Jingle File Transfer
As per swiften patch of the same name (75703db2de5bbfb6622286600362016edb42dfb0). Previously Jingle File Transfer in Stroke only used IBB transport as fallback mechanism. With this patch Stroke will use IBB transport candidates directly in the first session-initate/session-accept message if the other party only supports IBB. Test-information: Unit tests all pass. Change-Id: Ice73a6028f10c63490bdb775a0a407fad48f587a
Diffstat (limited to 'src/com/isode/stroke/filetransfer/DummyFileTransferTransporterFactory.java')
-rw-r--r--src/com/isode/stroke/filetransfer/DummyFileTransferTransporterFactory.java12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/com/isode/stroke/filetransfer/DummyFileTransferTransporterFactory.java b/src/com/isode/stroke/filetransfer/DummyFileTransferTransporterFactory.java
index 10b630d..1904944 100644
--- a/src/com/isode/stroke/filetransfer/DummyFileTransferTransporterFactory.java
+++ b/src/com/isode/stroke/filetransfer/DummyFileTransferTransporterFactory.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2015 Isode Limited.
+ * Copyright (c) 2015-2016 Isode Limited.
* All rights reserved.
* See the COPYING file for more information.
*/
@@ -51,13 +51,14 @@ class DummyFileTransferTransporter extends FileTransferTransporter {
TimerFactory timer,
CryptoProvider cryptoProvider,
IQRouter iqRouter,
- final FileTransferOptions option) {
+ final FileTransferOptions ftOptions) {
initiator_ = initiator;
responder_ = responder;
role_ = role;
s5bRegistry_ = s5bRegistry;
crypto_ = cryptoProvider;
iqRouter_ = iqRouter;
+ ftOptions_ = new FileTransferOptions(ftOptions);
}
public void initialize() {
@@ -66,6 +67,12 @@ class DummyFileTransferTransporter extends FileTransferTransporter {
public void startGeneratingLocalCandidates() {
Vector<JingleS5BTransportPayload.Candidate> candidates = new Vector<JingleS5BTransportPayload.Candidate>();
+ if (ftOptions_.isDirectAllowed()) {
+ JingleS5BTransportPayload.Candidate candidate = new JingleS5BTransportPayload.Candidate();
+ candidate.cid = "123";
+ candidate.priority = 1235;
+ candidates.add(candidate);
+ }
onLocalCandidatesGenerated.emit(s5bSessionID_, candidates, getSOCKS5DstAddr());
}
@@ -147,6 +154,7 @@ class DummyFileTransferTransporter extends FileTransferTransporter {
private CryptoProvider crypto_;
private String s5bSessionID_;
private IQRouter iqRouter_;
+ private final FileTransferOptions ftOptions_;
};
public class DummyFileTransferTransporterFactory implements FileTransferTransporterFactory {