blob: 9fc35b2bb5e32d30ccec10e6e65e1abebf9c2c65 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
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);
}
|