[jbosstools-commits] JBoss Tools SVN: r30869 - in trunk/as: tests/org.jboss.ide.eclipse.as.management.as7.tests/src/org/jboss/ide/eclipse/as/management/as7/tests and 1 other directory.
jbosstools-commits at lists.jboss.org
jbosstools-commits at lists.jboss.org
Wed Apr 27 07:49:58 EDT 2011
Author: adietish
Date: 2011-04-27 07:49:58 -0400 (Wed, 27 Apr 2011)
New Revision: 30869
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.management.as7/src/org/jboss/ide/eclipse/as/management/as7/deployment/AS7Manager.java
trunk/as/plugins/org.jboss.ide.eclipse.as.management.as7/src/org/jboss/ide/eclipse/as/management/as7/deployment/AS7ManagerUtil.java
trunk/as/tests/org.jboss.ide.eclipse.as.management.as7.tests/src/org/jboss/ide/eclipse/as/management/as7/tests/AS7ManagerIntegrationTest.java
trunk/as/tests/org.jboss.ide.eclipse.as.management.as7.tests/src/org/jboss/ide/eclipse/as/management/as7/tests/AS7ManagerTestUtils.java
Log:
[JBIDE-8793] added #shutdown to AS7Manager
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.management.as7/src/org/jboss/ide/eclipse/as/management/as7/deployment/AS7Manager.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.management.as7/src/org/jboss/ide/eclipse/as/management/as7/deployment/AS7Manager.java 2011-04-27 11:25:41 UTC (rev 30868)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.management.as7/src/org/jboss/ide/eclipse/as/management/as7/deployment/AS7Manager.java 2011-04-27 11:49:58 UTC (rev 30869)
@@ -17,6 +17,7 @@
import static org.jboss.ide.eclipse.as.management.as7.deployment.ModelDescriptionConstants.OP;
import static org.jboss.ide.eclipse.as.management.as7.deployment.ModelDescriptionConstants.READ_RESOURCE_OPERATION;
import static org.jboss.ide.eclipse.as.management.as7.deployment.ModelDescriptionConstants.RESULT;
+import static org.jboss.ide.eclipse.as.management.as7.deployment.ModelDescriptionConstants.SHUTDOWN;
import java.io.File;
import java.io.IOException;
@@ -131,9 +132,19 @@
} else {
return JBoss7DeploymentState.STOPPED;
}
+ }
+ /**
+ * Shuts the server down.
+ *
+ * @throws JBoss7ManangerException
+ */
+ public void shutdown() throws JBoss7ManangerException {
+ ModelNode request = new ModelNode();
+ request.get(OP).set(SHUTDOWN);
+ quietlyExecute(request);
}
-
+
public void dispose() {
StreamUtils.safeClose(client);
}
@@ -155,6 +166,16 @@
}
}
+ public void quietlyExecute(ModelNode node) throws JBoss7ManangerException {
+ try {
+ client.execute(node);
+ } catch(IOException e) {
+ // ignore
+ } catch (Exception e) {
+ throw new JBoss7ManangerException(e);
+ }
+ }
+
private IJBoss7DeploymentResult execute(DeploymentPlanBuilder builder) throws JBoss7ManangerException {
try {
DeploymentAction action = builder.getLastAction();
@@ -164,4 +185,4 @@
throw new JBoss7ManangerException(e);
}
}
-}
+}
\ No newline at end of file
Modified: trunk/as/plugins/org.jboss.ide.eclipse.as.management.as7/src/org/jboss/ide/eclipse/as/management/as7/deployment/AS7ManagerUtil.java
===================================================================
--- trunk/as/plugins/org.jboss.ide.eclipse.as.management.as7/src/org/jboss/ide/eclipse/as/management/as7/deployment/AS7ManagerUtil.java 2011-04-27 11:25:41 UTC (rev 30868)
+++ trunk/as/plugins/org.jboss.ide.eclipse.as.management.as7/src/org/jboss/ide/eclipse/as/management/as7/deployment/AS7ManagerUtil.java 2011-04-27 11:49:58 UTC (rev 30869)
@@ -11,6 +11,7 @@
package org.jboss.ide.eclipse.as.management.as7.deployment;
import static org.jboss.ide.eclipse.as.management.as7.deployment.ModelDescriptionConstants.CHILD_TYPE;
+import static org.jboss.ide.eclipse.as.management.as7.deployment.ModelDescriptionConstants.DEPLOYMENT;
import static org.jboss.ide.eclipse.as.management.as7.deployment.ModelDescriptionConstants.FAILURE_DESCRIPTION;
import static org.jboss.ide.eclipse.as.management.as7.deployment.ModelDescriptionConstants.OUTCOME;
import static org.jboss.ide.eclipse.as.management.as7.deployment.ModelDescriptionConstants.READ_CHILDREN_NAMES_OPERATION;
@@ -107,7 +108,7 @@
final ModelNode request;
try {
builder.operationName(READ_CHILDREN_NAMES_OPERATION);
- builder.addProperty(CHILD_TYPE, ModelDescriptionConstants.DEPLOYMENT);
+ builder.addProperty(CHILD_TYPE, DEPLOYMENT);
request = builder.buildRequest();
} catch (OperationFormatException e) {
throw new IllegalStateException(AS7Messages.FailedToBuildOperation, e);
@@ -158,4 +159,4 @@
throw new JBoss7ManangerException(e);
}
}
-}
+}
\ No newline at end of file
Modified: trunk/as/tests/org.jboss.ide.eclipse.as.management.as7.tests/src/org/jboss/ide/eclipse/as/management/as7/tests/AS7ManagerIntegrationTest.java
===================================================================
--- trunk/as/tests/org.jboss.ide.eclipse.as.management.as7.tests/src/org/jboss/ide/eclipse/as/management/as7/tests/AS7ManagerIntegrationTest.java 2011-04-27 11:25:41 UTC (rev 30868)
+++ trunk/as/tests/org.jboss.ide.eclipse.as.management.as7.tests/src/org/jboss/ide/eclipse/as/management/as7/tests/AS7ManagerIntegrationTest.java 2011-04-27 11:49:58 UTC (rev 30869)
@@ -7,11 +7,12 @@
*
* Contributors:
* Red Hat, Inc. - initial API and implementation
- ******************************************************************************/
+ ******************************************************************************/
package org.jboss.ide.eclipse.as.management.as7.tests;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.equalTo;
+import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
@@ -38,7 +39,10 @@
private AS7Manager manager;
@Before
- public void setUp() throws UnknownHostException {
+ public void setUp() throws IOException {
+ assertTrue("There is no server at " + AS7ManagerTestUtils.HOST +
+ " that listens on port " + AS7ManagerTestUtils.MGMT_PORT,
+ AS7ManagerTestUtils.isListening(AS7ManagerTestUtils.HOST, AS7ManagerTestUtils.MGMT_PORT));
this.manager = new AS7Manager(AS7ManagerTestUtils.HOST, AS7ManagerTestUtils.MGMT_PORT);
}
@@ -131,7 +135,8 @@
}
@Test
- public void getDisabledStateIfDeploymentIsOnlyAdded() throws URISyntaxException, IOException, JBoss7ManangerException {
+ public void getDisabledStateIfDeploymentIsOnlyAdded() throws URISyntaxException, IOException,
+ JBoss7ManangerException {
String deploymentName = "testDeployment";
File warFile = AS7ManagerTestUtils.getWarFile(AS7ManagerTestUtils.MINIMALISTIC_WAR);
try {
@@ -153,4 +158,11 @@
AS7ManagerTestUtils.quietlyUndeploy(deploymentName, manager);
}
}
-}
+
+ @Test
+ public void canShutdown() throws JBoss7ManangerException, UnknownHostException, IOException {
+ assertTrue(AS7ManagerTestUtils.isListening(AS7ManagerTestUtils.HOST, AS7ManagerTestUtils.MGMT_PORT));
+ manager.shutdown();
+ assertFalse(AS7ManagerTestUtils.isListening(AS7ManagerTestUtils.HOST, AS7ManagerTestUtils.MGMT_PORT));
+ }
+}
\ No newline at end of file
Modified: trunk/as/tests/org.jboss.ide.eclipse.as.management.as7.tests/src/org/jboss/ide/eclipse/as/management/as7/tests/AS7ManagerTestUtils.java
===================================================================
--- trunk/as/tests/org.jboss.ide.eclipse.as.management.as7.tests/src/org/jboss/ide/eclipse/as/management/as7/tests/AS7ManagerTestUtils.java 2011-04-27 11:25:41 UTC (rev 30868)
+++ trunk/as/tests/org.jboss.ide.eclipse.as.management.as7.tests/src/org/jboss/ide/eclipse/as/management/as7/tests/AS7ManagerTestUtils.java 2011-04-27 11:49:58 UTC (rev 30869)
@@ -7,7 +7,7 @@
*
* Contributors:
* Red Hat, Inc. - initial API and implementation
- ******************************************************************************/
+ ******************************************************************************/
package org.jboss.ide.eclipse.as.management.as7.tests;
import java.io.BufferedInputStream;
@@ -16,14 +16,17 @@
import java.io.IOException;
import java.io.InputStream;
import java.io.StringWriter;
+import java.net.ConnectException;
import java.net.HttpURLConnection;
+import java.net.Socket;
import java.net.URISyntaxException;
import java.net.URL;
+import java.net.UnknownHostException;
import org.eclipse.core.runtime.FileLocator;
import org.eclipse.core.runtime.Platform;
+import org.jboss.ide.eclipse.as.core.server.internal.v7.IJBoss7DeploymentResult;
import org.jboss.ide.eclipse.as.core.server.internal.v7.JBoss7ManangerException;
-import org.jboss.ide.eclipse.as.core.server.internal.v7.IJBoss7DeploymentResult;
import org.jboss.ide.eclipse.as.management.as7.deployment.AS7Manager;
import org.osgi.framework.Bundle;
@@ -62,7 +65,8 @@
public static void quietlyUndeploy(String name, AS7Manager manager) {
try {
- // DetypedDeployer.undeploy(name, AS7ManagerTestUtils.HOST, AS7ManagerTestUtils.MGMT_PORT);
+ // DetypedDeployer.undeploy(name, AS7ManagerTestUtils.HOST,
+ // AS7ManagerTestUtils.MGMT_PORT);
waitUntilFinished(manager.undeploy(name));
} catch (Exception e) {
// ignore
@@ -71,7 +75,8 @@
public static void quietlyRemove(String name, AS7Manager manager) {
try {
- //DetypedDeployer.remove(name, AS7ManagerTestUtils.HOST, AS7ManagerTestUtils.MGMT_PORT);
+ // DetypedDeployer.remove(name, AS7ManagerTestUtils.HOST,
+ // AS7ManagerTestUtils.MGMT_PORT);
waitUntilFinished(manager.remove(name));
} catch (Exception e) {
// ignore
@@ -82,7 +87,6 @@
result.getStatus(); // wait for operation to finish
}
-
public static String getResponse(String name, String host, int port) throws IOException {
URL url = new URL("http://" + host + ":" + port + "/" + name);
HttpURLConnection connection = connect(url);
@@ -127,4 +131,18 @@
}
return writer.toString();
}
-}
+
+ public static boolean isListening(String host, int port) throws UnknownHostException, IOException {
+ Socket socket = null;
+ try {
+ socket = new Socket(host, port);
+ return socket.isConnected();
+ } catch (ConnectException e) {
+ return false;
+ } finally {
+ if (socket != null) {
+ socket.close();
+ }
+ }
+ }
+}
\ No newline at end of file
More information about the jbosstools-commits
mailing list