diff options
author | steckbrief <steckbrief@chefmail.de> | 2017-02-06 10:01:13 +0100 |
---|---|---|
committer | steckbrief <steckbrief@chefmail.de> | 2017-02-06 10:01:13 +0100 |
commit | 754de6bb0449a577d2bb9c28cca6adf0ef9554f6 (patch) | |
tree | 279b405d94e0d86d10ed94bd34d919457944ead6 /src/main/java/de/thedevstack/conversationsplus/services/filetransfer/http/upload/HttpFileTransferEntity.java | |
parent | cd633f13b8d7327e47994bb5a000f0c0b7089e7f (diff) |
relates FS#241: Implementation of http download based on okhttp
Diffstat (limited to 'src/main/java/de/thedevstack/conversationsplus/services/filetransfer/http/upload/HttpFileTransferEntity.java')
-rw-r--r-- | src/main/java/de/thedevstack/conversationsplus/services/filetransfer/http/upload/HttpFileTransferEntity.java | 96 |
1 files changed, 0 insertions, 96 deletions
diff --git a/src/main/java/de/thedevstack/conversationsplus/services/filetransfer/http/upload/HttpFileTransferEntity.java b/src/main/java/de/thedevstack/conversationsplus/services/filetransfer/http/upload/HttpFileTransferEntity.java deleted file mode 100644 index 985dafcb..00000000 --- a/src/main/java/de/thedevstack/conversationsplus/services/filetransfer/http/upload/HttpFileTransferEntity.java +++ /dev/null @@ -1,96 +0,0 @@ -package de.thedevstack.conversationsplus.services.filetransfer.http.upload; - -import java.net.MalformedURLException; -import java.net.URL; - -import de.thedevstack.android.logcat.Logging; -import de.thedevstack.conversationsplus.Config; -import de.thedevstack.conversationsplus.ConversationsPlusApplication; -import de.thedevstack.conversationsplus.entities.FileParams; -import de.thedevstack.conversationsplus.entities.Message; -import de.thedevstack.conversationsplus.enums.FileStatus; -import de.thedevstack.conversationsplus.services.filetransfer.FileTransferEntity; -import de.thedevstack.conversationsplus.services.filetransfer.FileTransferFailureReason; -import de.thedevstack.conversationsplus.utils.CryptoHelper; -import de.thedevstack.conversationsplus.utils.MessageUtil; -import de.thedevstack.conversationsplus.xmpp.filetransfer.http.upload.HttpUploadSlot; - -/** - * - */ -public class HttpFileTransferEntity extends FileTransferEntity { - private HttpUploadSlot slot; - private final byte[] key; - private final boolean delayed; - - public HttpFileTransferEntity(Message message, boolean delayed) { - super(message); - this.getMessage().setHttpUploaded(true); - this.getMessage().setNoDownloadable(); // TODO Set rmeote file status to uploaded - FileParams fileParams = this.getMessage().getFileParams(); - if (null == fileParams) { - fileParams = new FileParams(); - this.getMessage().setFileParams(fileParams); - } - fileParams.setFileStatus(FileStatus.NEEDS_UPLOAD); - if (Config.ENCRYPT_ON_HTTP_UPLOADED - || message.getEncryption() == Message.ENCRYPTION_AXOLOTL - || message.getEncryption() == Message.ENCRYPTION_OTR) { - this.key = new byte[48]; - ConversationsPlusApplication.getSecureRandom().nextBytes(this.key); - this.getFile().setKeyAndIv(this.key); - } else { - this.key = null; - } - this.delayed = delayed; - } - - public void setSlot(HttpUploadSlot slot) { - this.slot = slot; - } - - public String getGetUrl() { - return this.slot.getGetUrl(); - } - - public String getPutUrl() { - return this.slot.getPutUrl(); - } - - public byte[] getKey() { - return key; - } - - public boolean isDelayed() { - return this.delayed; - } - - @Override - public void fail(FileTransferFailureReason failureReason) { - this.getMessage().setHttpUploaded(false); - super.fail(failureReason); - } - - @Override - public void cancel() { - this.getMessage().setHttpUploaded(false); - super.cancel(); - } - - @Override - public void transferred() { - try { - URL getUrl = new URL(this.getGetUrl()); - if (this.getKey() != null) { - getUrl = new URL(getUrl.toString() + "#" + CryptoHelper.bytesToHex(this.getKey())); - } - - this.getMessage().getFileParams().setFileStatus(FileStatus.UPLOADED); - MessageUtil.updateFileParams(this.getMessage(), getUrl); - } catch (MalformedURLException e) { - Logging.e("httpupload", "Not a valid get url"); - } - - super.transferred(); - } -} |