blob: 40c6e1b2c040fb22745c97490239abf108cde553 [file] [log] [blame]
import com.opensymphony.xwork2.Preparable;
import java.util.LinkedHashMap;
import java.util.Map;
public class Subscribe extends MailReaderSupport
implements Preparable {
private Map types = null;
public Map getTypes() {
return types;
}
public void prepare() {
Map m = new LinkedHashMap();
m.put("imap", "IMAP Protocol");
m.put("pop3", "POP3 Protocol");
types = m;
setHost(getSubscriptionHost());
}
public String input() {
createInputSubscription();
setTask(CREATE);
return INPUT;
}
protected String find() {
org.apache.struts.apps.mailreader.dao.Subscription
sub = findSubscription();
if (sub == null) {
return ERROR;
}
setSubscription(sub);
return SUCCESS;
}
public String delete() {
setTask(DELETE);
return find();
}
public String edit() {
setTask(EDIT);
return find();
}
public String save() throws Exception {
if (DELETE.equals(getTask())) {
removeSubscription();
}
if (CREATE.equals(getTask())) {
copySubscription(getHost());
}
if (hasErrors()) return INPUT;
saveUser();
return SUCCESS;
}
}