Author: adietish
Date: 2011-09-06 08:29:10 -0400 (Tue, 06 Sep 2011)
New Revision: 34539
Added:
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/internal/test/core/OpenshiftIntegrationTest.java
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/Openshift.java
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/AbstractOpenshiftRequest.java
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/ApplicationRequest.java
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/ListCartridgesRequest.java
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/UserInfoRequest.java
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/internal/test/core/OpenshiftTest.java
Log:
[JBIDE-9591] added list cartridges request
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/Openshift.java
===================================================================
---
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/Openshift.java 2011-09-06
12:02:24 UTC (rev 34538)
+++
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/Openshift.java 2011-09-06
12:29:10 UTC (rev 34539)
@@ -7,16 +7,14 @@
*
* Contributors:
* Red Hat, Inc. - initial API and implementation
- ******************************************************************************/
+ ******************************************************************************/
package org.jboss.ide.eclipse.as.openshift.core;
import java.net.MalformedURLException;
import java.net.URL;
-import java.util.ArrayList;
import java.util.List;
import org.eclipse.osgi.util.NLS;
-import org.jboss.dmr.ModelNode;
import
org.jboss.ide.eclipse.as.openshift.core.internal.marshalling.ListCartridgesRequestJsonMarshaller;
import
org.jboss.ide.eclipse.as.openshift.core.internal.marshalling.OpenshiftJsonRequestFactory;
import
org.jboss.ide.eclipse.as.openshift.core.internal.marshalling.UserInfoRequestJsonMarshaller;
@@ -26,7 +24,6 @@
import org.jboss.ide.eclipse.as.openshift.internal.core.UserInfo;
import org.jboss.ide.eclipse.as.openshift.internal.core.request.ListCartridgesRequest;
import org.jboss.ide.eclipse.as.openshift.internal.core.request.UserInfoRequest;
-import org.jboss.ide.eclipse.as.openshift.internal.core.utils.UrlBuilder;
/**
* @author André Dietisheim
@@ -44,55 +41,48 @@
}
public UserInfo getUserInfo() throws OpenshiftException {
- UrlBuilder userInfoUrlBuilder = new UrlBuilder(BASE_URL).path("userinfo");
+ UserInfoRequest userInfoRequest = new UserInfoRequest(username, true);
try {
- String userInfoRequest = new UserInfoRequestJsonMarshaller().marshall(new
UserInfoRequest(username, true));
- String request = new OpenshiftJsonRequestFactory(password, userInfoRequest).create();
- String userInfoResponse = createHttpClient(userInfoUrlBuilder.toUrl()).post(request);
- ModelNode userInfoReponse = ModelNode.fromJSONString(userInfoResponse);
- return new UserInfo(
- userInfoReponse.get("rhlogin").asString(),
- userInfoReponse.get("uuid").asString(),
- userInfoReponse.get("ssh_key").asString(),
- userInfoReponse.get("rhc_domain").asString(),
- userInfoReponse.get("namespace").asString());
+ String userInfoRequestString = new
UserInfoRequestJsonMarshaller().marshall(userInfoRequest);
+ String request = new OpenshiftJsonRequestFactory(password,
userInfoRequestString).create();
+ String userInfoResponse =
createHttpClient(userInfoRequest.getUrl(BASE_URL)).post(request);
+ throw new UnsupportedOperationException();
} catch (MalformedURLException e) {
throw new OpenshiftException(
NLS.bind("Could not get user info for user \"{0}\" at
\"{1}\"", username,
- userInfoUrlBuilder.toString()), e);
+ userInfoRequest.getUrlString(BASE_URL)), e);
} catch (HttpClientException e) {
throw new OpenshiftException(
NLS.bind("Could not get user info for user \"{0}\" at
\"{1}\"", username,
- userInfoUrlBuilder.toString()), e);
+ userInfoRequest.getUrlString(BASE_URL)), e);
}
}
public UserInfo createApplication(String name) throws OpenshiftException {
throw new UnsupportedOperationException();
}
-
+
private IHttpClient createHttpClient(URL url) {
return new UrlConnectionHttpClient(url);
}
@Override
public List<Cartridge> getCartridges() throws OpenshiftException {
- UrlBuilder userInfoUrlBuilder = new UrlBuilder(BASE_URL).path("userinfo");
+ ListCartridgesRequest listCartridgesRequest = new ListCartridgesRequest(username,
true);
try {
- String listCartridgesRequest = new ListCartridgesRequestJsonMarshaller().marshall(new
ListCartridgesRequest(username, true));
- String request = new OpenshiftJsonRequestFactory(password,
listCartridgesRequest).create();
- String listCatridgesReponse =
createHttpClient(userInfoUrlBuilder.toUrl()).post(request);
- ModelNode userInfoReponse = ModelNode.fromJSONString(listCatridgesReponse);
- List<Cartridge> cartridges = new ArrayList<Cartridge>();
- return cartridges;
+ String listCartridgesRequestString =
+ new ListCartridgesRequestJsonMarshaller().marshall(listCartridgesRequest);
+ String request = new OpenshiftJsonRequestFactory(password,
listCartridgesRequestString).create();
+ String listCatridgesReponse =
createHttpClient(listCartridgesRequest.getUrl(BASE_URL)).post(request);
+ throw new UnsupportedOperationException();
} catch (MalformedURLException e) {
throw new OpenshiftException(
- NLS.bind("Could not get user info for user \"{0}\" at
\"{1}\"", username,
- userInfoUrlBuilder.toString()), e);
+ NLS.bind("Could not list available cartridges at \"{0}\"",
+ listCartridgesRequest.getUrlString(BASE_URL)), e);
} catch (HttpClientException e) {
throw new OpenshiftException(
- NLS.bind("Could not get user info for user \"{0}\" at
\"{1}\"", username,
- userInfoUrlBuilder.toString()), e);
+ NLS.bind("Could not list available cartridges at \"{0}\"",
+ listCartridgesRequest.getUrlString(BASE_URL)), e);
}
}
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/AbstractOpenshiftRequest.java
===================================================================
---
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/AbstractOpenshiftRequest.java 2011-09-06
12:02:24 UTC (rev 34538)
+++
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/AbstractOpenshiftRequest.java 2011-09-06
12:29:10 UTC (rev 34539)
@@ -10,12 +10,16 @@
******************************************************************************/
package org.jboss.ide.eclipse.as.openshift.internal.core.request;
+import java.net.MalformedURLException;
+import java.net.URL;
+
import org.jboss.ide.eclipse.as.openshift.core.internal.marshalling.IOpenshiftRequest;
+import org.jboss.ide.eclipse.as.openshift.internal.core.utils.UrlBuilder;
/**
* @author André Dietisheim
*/
-public class AbstractOpenshiftRequest implements IOpenshiftRequest {
+public abstract class AbstractOpenshiftRequest implements IOpenshiftRequest {
private String rhlogin;
private boolean debug;
@@ -37,4 +41,14 @@
return debug;
}
+ public URL getUrl(String baseUrl) throws MalformedURLException {
+ return new UrlBuilder(baseUrl).path(getResourcePath()).toUrl();
+ }
+
+ public String getUrlString(String baseUrl) {
+ return new UrlBuilder(baseUrl).path(getResourcePath()).toString();
+ }
+
+ protected abstract String getResourcePath();
+
}
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/ApplicationRequest.java
===================================================================
---
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/ApplicationRequest.java 2011-09-06
12:02:24 UTC (rev 34538)
+++
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/ApplicationRequest.java 2011-09-06
12:29:10 UTC (rev 34539)
@@ -37,4 +37,9 @@
protected Cartridge getCartridge() {
return cartridge;
}
+
+ @Override
+ protected String getResourcePath() {
+ return "cartridge";
+ }
}
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/ListCartridgesRequest.java
===================================================================
---
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/ListCartridgesRequest.java 2011-09-06
12:02:24 UTC (rev 34538)
+++
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/ListCartridgesRequest.java 2011-09-06
12:29:10 UTC (rev 34539)
@@ -29,4 +29,10 @@
public String getCartType() {
return CART_TYPE_STANDALONE;
}
+
+ @Override
+ protected String getResourcePath() {
+ return "cartlist";
+ }
+
}
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/UserInfoRequest.java
===================================================================
---
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/UserInfoRequest.java 2011-09-06
12:02:24 UTC (rev 34538)
+++
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/internal/core/request/UserInfoRequest.java 2011-09-06
12:29:10 UTC (rev 34539)
@@ -23,4 +23,9 @@
public UserInfoRequest(String username, boolean debug) {
super(username, debug);
}
+
+ @Override
+ protected String getResourcePath() {
+ return "userinfo";
+ }
}
Added:
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/internal/test/core/OpenshiftIntegrationTest.java
===================================================================
---
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/internal/test/core/OpenshiftIntegrationTest.java
(rev 0)
+++
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/internal/test/core/OpenshiftIntegrationTest.java 2011-09-06
12:29:10 UTC (rev 34539)
@@ -0,0 +1,41 @@
+package org.jboss.ide.eclipse.as.openshift.internal.test.core;
+
+import static org.junit.Assert.assertEquals;
+
+import java.net.URLEncoder;
+
+import org.jboss.ide.eclipse.as.openshift.core.Openshift;
+import org.jboss.ide.eclipse.as.openshift.core.OpenshiftException;
+import
org.jboss.ide.eclipse.as.openshift.core.internal.marshalling.ListCartridgesRequestJsonMarshaller;
+import
org.jboss.ide.eclipse.as.openshift.core.internal.marshalling.OpenshiftJsonRequestFactory;
+import
org.jboss.ide.eclipse.as.openshift.core.internal.marshalling.UserInfoRequestJsonMarshaller;
+import org.jboss.ide.eclipse.as.openshift.internal.core.request.ListCartridgesRequest;
+import org.jboss.ide.eclipse.as.openshift.internal.core.request.UserInfoRequest;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+
+public class OpenshiftIntegrationTest {
+
+ private Openshift openshift;
+
+ private static final String USERNAME = "toolsjboss(a)gmail.com";
+ private static final String PASSWORD = "1q3e5t7u";
+
+ @Before
+ public void setUp() {
+ this.openshift = new Openshift(USERNAME, PASSWORD);
+ }
+
+ @Test(expected=OpenshiftException.class)
+ public void cannotGetUserInfoIfNotAppNorDomainCreated() throws OpenshiftException {
+ openshift.getUserInfo();
+ }
+
+ @Test
+ public void canRequestListCartridges() throws Exception {
+ openshift.getCartridges();
+ }
+
+
+}
Property changes on:
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/internal/test/core/OpenshiftIntegrationTest.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/internal/test/core/OpenshiftTest.java
===================================================================
---
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/internal/test/core/OpenshiftTest.java 2011-09-06
12:02:24 UTC (rev 34538)
+++
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/internal/test/core/OpenshiftTest.java 2011-09-06
12:29:10 UTC (rev 34539)
@@ -5,58 +5,44 @@
import java.net.URLEncoder;
import org.jboss.ide.eclipse.as.openshift.core.Openshift;
-import org.jboss.ide.eclipse.as.openshift.core.OpenshiftException;
import
org.jboss.ide.eclipse.as.openshift.core.internal.marshalling.ListCartridgesRequestJsonMarshaller;
import
org.jboss.ide.eclipse.as.openshift.core.internal.marshalling.OpenshiftJsonRequestFactory;
import
org.jboss.ide.eclipse.as.openshift.core.internal.marshalling.UserInfoRequestJsonMarshaller;
import org.jboss.ide.eclipse.as.openshift.internal.core.request.ListCartridgesRequest;
import org.jboss.ide.eclipse.as.openshift.internal.core.request.UserInfoRequest;
-import org.junit.After;
-import org.junit.Before;
import org.junit.Test;
public class OpenshiftTest {
- private Openshift openshift;
-
private static final String USERNAME = "toolsjboss(a)gmail.com";
private static final String PASSWORD = "1q3e5t7u";
- @Before
- public void setUp() {
- this.openshift = new Openshift(USERNAME, PASSWORD);
- }
-
- @After
- public void tearDown() {
-
- }
-
@Test
public void canMarshallUserInfoRequest() throws Exception {
- String expectedRequestString = "password=" + PASSWORD +
"&json_data=%7B%22rhlogin%22+%3A+%22" + URLEncoder.encode(USERNAME,
"UTF-8") + "%22%2C+%22debug%22+%3A+%22true%22%7D";
-
+ String expectedRequestString =
+ "password=" + PASSWORD
+ + "&json_data=%7B"
+ + "%22rhlogin%22+%3A+%22" + URLEncoder.encode(USERNAME,
"UTF-8") + "%22%2C+"
+ + "%22debug%22+%3A+%22true%22"
+ + "%7D";
+
String userInfoRequest = new UserInfoRequestJsonMarshaller().marshall(new
UserInfoRequest(USERNAME, true));
String effectiveRequest = new OpenshiftJsonRequestFactory(PASSWORD,
userInfoRequest).create();
assertEquals(expectedRequestString, effectiveRequest);
}
-
- @Test(expected=OpenshiftException.class)
- public void cannotGetUserInfoIfNotAppNorDomainCreated() throws OpenshiftException {
- openshift.getUserInfo();
- }
@Test
public void canMarshallListCartridgesRequest() throws Exception {
- String expectedRequestString = "password=" + PASSWORD +
"&json_data=%7B%22rhlogin%22+%3A+%22" + URLEncoder.encode(USERNAME,
"UTF-8") +
"%22%2C+%22debug%22+%3A+%22true%22%2C+%22cart_type%22+%3A+%22standalone%22%7D";
+ String expectedRequestString = "password=" + PASSWORD +
"&json_data=%7B%22rhlogin%22+%3A+%22"
+ + URLEncoder.encode(USERNAME, "UTF-8")
+ +
"%22%2C+%22debug%22+%3A+%22true%22%2C+%22cart_type%22+%3A+%22standalone%22%7D";
- String listCartridgeRequest = new ListCartridgesRequestJsonMarshaller().marshall(new
ListCartridgesRequest(USERNAME, true));
+ String listCartridgeRequest = new ListCartridgesRequestJsonMarshaller().marshall(new
ListCartridgesRequest(
+ USERNAME, true));
String effectiveRequest = new OpenshiftJsonRequestFactory(PASSWORD,
listCartridgeRequest).create();
assertEquals(expectedRequestString, effectiveRequest);
-
-
}
-
+
}