package com.sun.enterprise.admin.mbeanapi.deployment; import java.util.Map; import java.util.HashMap; import com.sun.appserv.management.config.MailResourceConfig; import com.sun.appserv.management.config.MailResourceConfigKeys; /** */ public class MailResourceTest extends BaseTest { private final Cmd target; static final String kJNDIName = "myMailResource"; static final String kHost = "mailHost"; static final String kUser = "abc"; static final String kFrom = "abc@sun.com"; static final String kObjectType = "user"; static final Boolean kDebug = new Boolean(true); static final String kStoreProtocol = "imap"; static final String kStoreProtocolClass = "com.sun.mail.imap.IMAPStore"; static final String kTransportProtocol = "smtp"; static final String kTransportProtocolClass = "com.sun.mail.smtp.SMTPTransport"; public MailResourceTest(final String user, final String password, final String host, final int port, final String jndiName, final String rHost, final String rUser, final String rFrom) { final CmdFactory cmdFactory = getCmdFactory(); final ConnectCmd connectCmd = cmdFactory.createConnectCmd( user, password, host, port); final CreateMailResourceCmd createCmd = cmdFactory.createCreateMailResourceCmd(jndiName, rHost, rUser, rFrom, getOptional()); final DeleteMailResourceCmd deleteCmd = cmdFactory.createDeleteMailResourceCmd(jndiName); final PipeCmd p1 = new PipeCmd(connectCmd, createCmd); final PipeCmd p2 = new PipeCmd(p1, new VerifyCreateCmd()); final PipeCmd p3 = new PipeCmd(connectCmd, deleteCmd); final CmdChainCmd chainCmd = new CmdChainCmd(); chainCmd.addCmd(p2); chainCmd.addCmd(p3); target = chainCmd; } protected void runInternal() throws Exception { target.execute(); } public static void main(String[] args) throws Exception { new MailResourceTest( "admin", "password", "localhost", 8686, kJNDIName, kHost, kUser, kFrom).run(); } private Map getOptional() { final Map optional = new HashMap(); //optional.put(CreateResourceKeys.RESOURCE_OBJECT_TYPE_KEY, //kObjectType); optional.put(MailResourceConfigKeys.DEBUG_KEY, kDebug); return optional; } private final class VerifyCreateCmd implements Cmd, SinkCmd { private MailResourceConfig res; private VerifyCreateCmd() { } public void setPipedData(Object o) { res = (MailResourceConfig)o; } public Object execute() throws Exception { System.out.println("JNDIName="+res.getJNDIName()); System.out.println("Debug="+res.getDebug()); System.out.println("ObjectType="+res.getObjectType()); System.out.println("Host="+res.getHost()); System.out.println("User="+res.getUser()); System.out.println("From="+res.getFrom()); System.out.println("StoreProtocol="+res.getStoreProtocol()); System.out.println("StoreProtocolClass="+res.getStoreProtocolClass()); System.out.println("TransportProtocol="+res.getTransportProtocol()); System.out.println("TransportProtocolClass="+res.getTransportProtocolClass()); return new Integer(0); } } }