Author: adietish
Date: 2011-10-03 04:12:32 -0400 (Mon, 03 Oct 2011)
New Revision: 35267
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/IDomain.java
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/OpenshiftService.java
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/Domain.java
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/InternalUser.java
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/response/unmarshalling/DomainResponseUnmarshaller.java
trunk/as/tests/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/test/internal/core/DomainIntegrationTest.java
trunk/as/tests/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/test/internal/core/DomainTest.java
Log:
[JBIDE-9813] implemented and tested IDomain#setNamespace
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/IDomain.java
===================================================================
---
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/IDomain.java 2011-10-03
07:14:19 UTC (rev 35266)
+++
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/IDomain.java 2011-10-03
08:12:32 UTC (rev 35267)
@@ -15,8 +15,10 @@
*/
public interface IDomain {
- public abstract String getNamespace() throws OpenshiftException;
+ public abstract void setNamespace(String namespace) throws OpenshiftException;
+ public abstract String getNamespace();
+
public abstract String getRhcDomain() throws OpenshiftException;
}
\ No newline at end of file
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/OpenshiftService.java
===================================================================
---
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/OpenshiftService.java 2011-10-03
07:14:19 UTC (rev 35266)
+++
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/OpenshiftService.java 2011-10-03
08:12:32 UTC (rev 35267)
@@ -144,7 +144,7 @@
String responseString = createHttpClient(url).post(requestString);
responseString = JsonSanitizer.sanitize(responseString);
OpenshiftResponse<IDomain> response =
- new DomainResponseUnmarshaller(request.getName(), user).unmarshall(responseString);
+ new DomainResponseUnmarshaller(request.getName(), user,
this).unmarshall(responseString);
return response.getOpenshiftObject();
} catch (MalformedURLException e) {
throw new OpenshiftEndpointException(url, e, "Could reach openshift platform at
\"{0}\"", url);
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/Domain.java
===================================================================
---
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/Domain.java 2011-10-03
07:14:19 UTC (rev 35266)
+++
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/Domain.java 2011-10-03
08:12:32 UTC (rev 35267)
@@ -11,6 +11,7 @@
package org.jboss.ide.eclipse.as.openshift.core.internal;
import org.jboss.ide.eclipse.as.openshift.core.IDomain;
+import org.jboss.ide.eclipse.as.openshift.core.IOpenshiftService;
import org.jboss.ide.eclipse.as.openshift.core.OpenshiftException;
@@ -20,18 +21,20 @@
public class Domain extends UserInfoAware implements IDomain {
private String namespace;
+ private IOpenshiftService service;
- public Domain(String namespace, InternalUser user) {
- this(namespace, null, user);
+ public Domain(String namespace, InternalUser user, IOpenshiftService service) {
+ this(namespace, null, user, service);
}
- public Domain(String namespace, String rhcDomain, InternalUser user) {
+ public Domain(String namespace, String rhcDomain, InternalUser user, IOpenshiftService
service) {
super(user);
this.namespace = namespace;
+ this.service = service;
}
@Override
- public String getNamespace() throws OpenshiftException {
+ public String getNamespace() {
return namespace;
}
@@ -39,4 +42,15 @@
public String getRhcDomain() throws OpenshiftException {
return getUserInfo().getRhcDomain();
}
+
+ @Override
+ public void setNamespace(String namespace) throws OpenshiftException {
+ InternalUser user = getUser();
+ IDomain domain = service.changeDomain(namespace, user.getSshKey(), user);
+ update(domain);
+ }
+
+ private void update(IDomain domain) {
+ this.namespace = domain.getNamespace();
+ }
}
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/InternalUser.java
===================================================================
---
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/InternalUser.java 2011-10-03
07:14:19 UTC (rev 35266)
+++
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/InternalUser.java 2011-10-03
08:12:32 UTC (rev 35267)
@@ -80,7 +80,9 @@
if (domain == null) {
this.domain = new Domain(
getUserInfo().getNamespace()
- , getUserInfo().getRhcDomain(), this);
+ , getUserInfo().getRhcDomain()
+ , this
+ , service);
}
return domain;
}
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/response/unmarshalling/DomainResponseUnmarshaller.java
===================================================================
---
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/response/unmarshalling/DomainResponseUnmarshaller.java 2011-10-03
07:14:19 UTC (rev 35266)
+++
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/internal/response/unmarshalling/DomainResponseUnmarshaller.java 2011-10-03
08:12:32 UTC (rev 35267)
@@ -12,6 +12,7 @@
import org.jboss.dmr.ModelNode;
import org.jboss.ide.eclipse.as.openshift.core.IDomain;
+import org.jboss.ide.eclipse.as.openshift.core.IOpenshiftService;
import org.jboss.ide.eclipse.as.openshift.core.internal.Domain;
import org.jboss.ide.eclipse.as.openshift.core.internal.InternalUser;
@@ -22,14 +23,16 @@
private String domainName;
private InternalUser user;
+ private IOpenshiftService service;
- public DomainResponseUnmarshaller(String domainName, InternalUser user) {
+ public DomainResponseUnmarshaller(String domainName, InternalUser user,
IOpenshiftService service) {
this.domainName = domainName;
this.user = user;
+ this.service = service;
}
@Override
protected IDomain createOpenshiftObject(ModelNode node) {
- return new Domain(domainName, user);
+ return new Domain(domainName, user, service);
}
}
Modified:
trunk/as/tests/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/test/internal/core/DomainIntegrationTest.java
===================================================================
---
trunk/as/tests/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/test/internal/core/DomainIntegrationTest.java 2011-10-03
07:14:19 UTC (rev 35266)
+++
trunk/as/tests/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/test/internal/core/DomainIntegrationTest.java 2011-10-03
08:12:32 UTC (rev 35267)
@@ -19,6 +19,7 @@
import org.jboss.ide.eclipse.as.openshift.test.internal.core.fakes.TestSSHKey;
import org.jboss.ide.eclipse.as.openshift.test.internal.core.fakes.TestUser;
import org.junit.Before;
+import org.junit.Ignore;
import org.junit.Test;
public class DomainIntegrationTest {
@@ -32,6 +33,7 @@
this.user = new TestUser();
}
+ @Ignore
@Test
public void canCreateDomain() throws Exception {
@@ -43,6 +45,7 @@
assertEquals(domainName, domain.getNamespace());
}
+ @Ignore
@Test
public void canChangeDomain() throws Exception {
@@ -54,6 +57,15 @@
assertEquals(domainName, domain.getNamespace());
}
+ @Test
+ public void canSetNamespaceOnDomain() throws Exception {
+ IDomain domain = user.getDomain();
+ assertNotNull(domain);
+ String newDomainName = createRandomString();
+ domain.setNamespace(newDomainName);
+ assertEquals(newDomainName, domain.getNamespace());
+ }
+
private String createRandomString() {
return String.valueOf(System.currentTimeMillis());
}
Modified:
trunk/as/tests/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/test/internal/core/DomainTest.java
===================================================================
---
trunk/as/tests/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/test/internal/core/DomainTest.java 2011-10-03
07:14:19 UTC (rev 35266)
+++
trunk/as/tests/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/test/internal/core/DomainTest.java 2011-10-03
08:12:32 UTC (rev 35267)
@@ -18,6 +18,7 @@
import java.net.URLEncoder;
import org.jboss.ide.eclipse.as.openshift.core.IDomain;
+import org.jboss.ide.eclipse.as.openshift.core.IOpenshiftService;
import org.jboss.ide.eclipse.as.openshift.core.OpenshiftException;
import org.jboss.ide.eclipse.as.openshift.core.SSHKeyPair;
import org.jboss.ide.eclipse.as.openshift.core.internal.InternalUser;
@@ -62,8 +63,9 @@
String responseString = createDomainResponseString(RHLOGIN, UUID);
responseString = JsonSanitizer.sanitize(responseString);
- InternalUser user = new InternalUser(RHLOGIN, PASSWORD, new
NoopOpenshiftServiceFake());
- OpenshiftResponse<IDomain> response = new DomainResponseUnmarshaller(domainName,
user).unmarshall(responseString);
+ IOpenshiftService service = new NoopOpenshiftServiceFake();
+ InternalUser user = new InternalUser(RHLOGIN, PASSWORD, service);
+ OpenshiftResponse<IDomain> response = new DomainResponseUnmarshaller(domainName,
user, service).unmarshall(responseString);
assertNotNull(response);
IDomain domain = response.getOpenshiftObject();