diff options
author | steckbrief <steckbrief@chefmail.de> | 2016-08-22 08:55:37 +0200 |
---|---|---|
committer | steckbrief <steckbrief@chefmail.de> | 2016-08-22 08:55:37 +0200 |
commit | 77d0c1110a8ae7a980f1c4420d719af803990da8 (patch) | |
tree | 20d3ce434f3c6d740141727d4c143ea5f027a646 /src/main/java/de/thedevstack/conversationsplus/services/FileTransferService.java | |
parent | 97100834a5bcb08f2fdf2eb6c580d3ceeb8b6b2f (diff) | |
parent | f45ad10b1baaf09fd4a40d6b63d1cd093623eedc (diff) |
Merge remote-tracking branch 'remotes/origin/filetransfer'
Diffstat (limited to 'src/main/java/de/thedevstack/conversationsplus/services/FileTransferService.java')
-rw-r--r-- | src/main/java/de/thedevstack/conversationsplus/services/FileTransferService.java | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/src/main/java/de/thedevstack/conversationsplus/services/FileTransferService.java b/src/main/java/de/thedevstack/conversationsplus/services/FileTransferService.java new file mode 100644 index 00000000..9fc35b2b --- /dev/null +++ b/src/main/java/de/thedevstack/conversationsplus/services/FileTransferService.java @@ -0,0 +1,36 @@ +package de.thedevstack.conversationsplus.services; + +import de.thedevstack.conversationsplus.entities.Message; +import de.thedevstack.conversationsplus.services.filetransfer.FileTransferStatusListener; + +/** + * An implementation of this class transfers a file to another entity or server. + */ +public interface FileTransferService { + /** + * Transfers a file for the corresponding message. + * @param message the message containing the file to transfer + * @return <code>true</code> if the file transfer was successful, <code>false</code> otherwise + */ + boolean transferFile(Message message); + /** + * Transfers a file for the corresponding message. + * @param message the message containing the file to transfer + * @param delay whether the message is delayed or not + * @return <code>true</code> if the file transfer was successful, <code>false</code> otherwise + */ + boolean transferFile(Message message, boolean delay); + + /** + * Checks whether a message can be sent using this service or not. + * @param message the message to be checked + * @return <code>true</code> if the message can be processed, <code>false</code> otherwise + */ + boolean accept(Message message); + + /** + * Adds one or more file transfer status listeners. + * @param listeners the listeners to add + */ + void addFileTransferStatusListener(FileTransferStatusListener... listeners); +} |