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 true if the file transfer was successful, false 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 true if the file transfer was successful, false 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 true if the message can be processed, false otherwise */ boolean accept(Message message); }