package hudson.plugins.deploy.glassfish; import hudson.plugins.deploy.PasswordProtectedAdapterCargo; import org.codehaus.cargo.container.Container; import org.codehaus.cargo.container.ContainerType; import org.codehaus.cargo.container.configuration.Configuration; import org.codehaus.cargo.container.configuration.ConfigurationType; import org.codehaus.cargo.container.glassfish.GlassFishPropertySet; import org.codehaus.cargo.generic.ContainerFactory; import org.codehaus.cargo.generic.configuration.ConfigurationFactory; public abstract class GlassFishAdapter extends PasswordProtectedAdapterCargo { public final String home; @Property(GlassFishPropertySet.ADMIN_PORT) public final Integer adminPort; protected GlassFishAdapter(String home, String password, String userName, Integer adminPort) { super(userName, password); this.home = home; this.adminPort = adminPort; } @Override protected Container getContainer(ConfigurationFactory configFactory, ContainerFactory containerFactory, String id) { Configuration config = configFactory.createConfiguration(id, ContainerType.INSTALLED, ConfigurationType.STANDALONE, home); configure(config); return containerFactory.createContainer(id, ContainerType.INSTALLED, config); } }