package thaw.plugins.miniFrost.interfaces;
import java.util.Vector;
import thaw.plugins.signatures.Identity;
public interface Draft {
public String getSubject();
/**
* Returned result may contains $sender$, $dateAndTime$.
* They will be replaced.
* @return a default value if setText() was never called
*/
public String getText();
/**
* @return can return null if unknown
*/
public String getAuthorNick();
/**
* @return can return null if unknown
*/
public Identity getAuthorIdentity();
/**
* @param id null for anybody
*/
public void setRecipient(Identity id);
public Identity getRecipient();
public boolean allowUnsignedPost();
public void setSubject(String txt);
public void setText(String txt);
/**
* @param identity if null, unsigned post
*/
public void setAuthor(String nick, Identity identity);
/**
* @param date the date provided is already GMT-ized
*/
public void setDate(java.util.Date date);
public java.util.Date getDate();
/**
* @param i specify the position of the id line in the text
*/
public void setIdLinePos(int i);
/**
* @param i specify the length of the id line in the text
*/
public void setIdLineLen(int i);
public boolean addAttachment(java.io.File file);
public boolean addAttachment(Board board);
public boolean addAttachment(thaw.plugins.index.Index index);
public boolean removeAttachment(Attachment attachment);
/**
* @return can return null if none
*/
public Vector getAttachments();
/**
* must notify thaw.plugins.MiniFrostPanel at each change
*/
public void post(thaw.fcp.FCPQueueManager queueManager);
public boolean isWaiting();
public boolean isPosting();
public Board getBoard();
}