aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/de/thedevstack/conversationsplus/services/FileTransferService.java
blob: d6ce47695c85f4c474368446c82c249ec15801ae (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
package de.thedevstack.conversationsplus.services;

import de.thedevstack.conversationsplus.entities.Account;
import de.thedevstack.conversationsplus.entities.Message;
import de.thedevstack.conversationsplus.entities.Transferable;

/**
 *
 */
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);
}