SLAM/mobile/src/main/java/de/vanitasvitae/slam/mvp/contracts/message/AbstractMessageContract.java

31 lines
806 B
Java

package de.vanitasvitae.slam.mvp.contracts.message;
/**
* Model-View-Presenter contract for an abstract message.
*/
public interface AbstractMessageContract {
interface View {
void setDirection(Direction direction);
void setStatusSending();
void setStatusSendingFailed();
void setStatusSent();
void setStatusRead();
void setSelected();
void displayMessageInformation();
void displayErrorMessage();
}
interface Presenter {
void onDeleteMessage();
void onReadMessage();
void onMessageClick();
void onMessageLongClick();
}
enum Direction {
sent, // We are the author (the message was sent from one of the users devices)
received, // We are not the author
}
}