package org.jboss.tools.teiid.reddeer.condition; import org.jboss.reddeer.common.condition.AbstractWaitCondition; import org.jboss.reddeer.common.logging.Logger; import org.jboss.reddeer.eclipse.wst.server.ui.view.Server; import org.jboss.reddeer.eclipse.wst.server.ui.view.ServersView; import org.jboss.reddeer.eclipse.wst.server.ui.view.ServersViewEnums.ServerState; /** * Condition that specifies if a server has state either 'Stopped' or 'Started' * * @author apodhrad * */ public class ServerHasState extends AbstractWaitCondition { protected Logger log = Logger.getLogger(this.getClass()); private String serverName; private ServerState state; public ServerHasState(String serverName) { this.serverName = serverName; } @Override public boolean test() { ServersView view = new ServersView(); view.open(); Server server = view.getServer(serverName); state = server.getLabel().getState(); System.out.println("Server's state: " + state); return state.equals(ServerState.STARTED) || state.equals(ServerState.STOPPED); } @Override public String description() { return "Server has state '" + state + "'"; } }