From 97320fcc001d429339a0c6f13f6cf12ac866f7b9 Mon Sep 17 00:00:00 2001 From: Andrew Donald Kennedy Date: Fri, 10 Feb 2012 13:12:18 +0000 Subject: [PATCH] No enum for media types, after all... --- .../v1_5/VCloudDirectorMediaType.java | 36 ++++++++++--------- .../vcloud/director/v1_5/domain/Error.java | 4 +++ .../vcloud/director/v1_5/domain/Metadata.java | 6 +++- .../director/v1_5/domain/MetadataEntry.java | 4 +++ .../vcloud/director/v1_5/domain/Org.java | 4 +++ .../vcloud/director/v1_5/domain/OrgList.java | 4 +++ .../vcloud/director/v1_5/domain/Session.java | 4 +++ .../vcloud/director/v1_5/domain/Task.java | 4 +++ .../director/v1_5/domain/TasksList.java | 4 +++ .../v1_5/features/TaskClientExpectTest.java | 10 +++--- ...aseVCloudDirectorRestClientExpectTest.java | 13 ++++--- .../v1_5/login/SessionClientExpectTest.java | 6 ++-- 12 files changed, 65 insertions(+), 34 deletions(-) diff --git a/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/VCloudDirectorMediaType.java b/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/VCloudDirectorMediaType.java index e103f2413d..2748cfa4a1 100644 --- a/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/VCloudDirectorMediaType.java +++ b/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/VCloudDirectorMediaType.java @@ -26,24 +26,26 @@ package org.jclouds.vcloud.director.v1_5; * * @see javax.ws.rs.core.MediaType; */ -public enum VCloudDirectorMediaType { - ANY("*/*"), - SESSION("application/vnd.vmware.vcloud.session+xml"), - ERROR("application/vnd.vmware.vcloud.error+xml"), - ORG_LIST("application/vnd.vmware.vcloud.orgList+xml"), - METADATA("application/vnd.vmware.vcloud.metadata+xml"), - METADATA_ENTRY("*/*"), // TODO - ORG("application/vnd.vmware.vcloud.org+xml"), - TASKS_LIST("application/vnd.vmware.vcloud.tasksList+xml"), - TASK("application/vnd.vmware.vcloud.task+xml"); +public class VCloudDirectorMediaType { - private final String mediaType; + public static final String ANY = "*/*"; - private VCloudDirectorMediaType(String mediaType) { - this.mediaType = mediaType; - } + public static final String SESSION = "application/vnd.vmware.vcloud.session+xml"; + + public static final String ERROR = "application/vnd.vmware.vcloud.error+xml"; + + public static final String ORG_LIST = "application/vnd.vmware.vcloud.orgList+xml"; + + public static final String METADATA = "application/vnd.vmware.vcloud.metadata+xml"; + + public static final String METADATA_ENTRY = "*/*"; // TODO + + public static final String ORG = "application/vnd.vmware.vcloud.org+xml"; + + public static final String TASKS_LIST = "application/vnd.vmware.vcloud.tasksList+xml"; + + public static final String TASK = "application/vnd.vmware.vcloud.task+xml"; + + public static final String ORG_NETWORK = "application/vnd.vmware.vcloud.orgNetwork+xml"; - public String getMediaType() { - return mediaType; - } } diff --git a/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/Error.java b/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/Error.java index 7bb5a94d8e..22b31a6cbf 100644 --- a/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/Error.java +++ b/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/Error.java @@ -27,6 +27,8 @@ import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlAttribute; import javax.xml.bind.annotation.XmlRootElement; +import org.jclouds.vcloud.director.v1_5.VCloudDirectorMediaType; + import com.google.common.base.Objects; /** @@ -41,6 +43,8 @@ import com.google.common.base.Objects; @XmlRootElement(namespace = XMLNS, name = "Error") @XmlAccessorType(XmlAccessType.FIELD) public class Error { + + public static final String MEDIA_TYPE = VCloudDirectorMediaType.ERROR; public static Builder builder() { return new Builder(); diff --git a/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/Metadata.java b/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/Metadata.java index 913cc8f165..90b38cd312 100644 --- a/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/Metadata.java +++ b/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/Metadata.java @@ -28,6 +28,8 @@ import java.util.Set; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; +import org.jclouds.vcloud.director.v1_5.VCloudDirectorMediaType; + import com.google.common.base.Objects; import com.google.common.base.Objects.ToStringHelper; import com.google.common.collect.ImmutableSet; @@ -43,7 +45,9 @@ import com.google.common.collect.Sets; * @author danikov */ @XmlRootElement(namespace = XMLNS, name = "Metadata") -public class Metadata extends ResourceType{ +public class Metadata extends ResourceType { + + public static final String MEDIA_TYPE = VCloudDirectorMediaType.METADATA; @SuppressWarnings("unchecked") public static Builder builder() { diff --git a/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/MetadataEntry.java b/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/MetadataEntry.java index 3c798eb179..d46e5d26c4 100644 --- a/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/MetadataEntry.java +++ b/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/MetadataEntry.java @@ -28,6 +28,8 @@ import java.util.Set; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; +import org.jclouds.vcloud.director.v1_5.VCloudDirectorMediaType; + import com.google.common.base.Objects; import com.google.common.base.Objects.ToStringHelper; import com.google.common.collect.Sets; @@ -43,6 +45,8 @@ import com.google.common.collect.Sets; */ @XmlRootElement(namespace = XMLNS, name = "MetadataEntry") public class MetadataEntry extends ResourceType { + + public static final String MEDIA_TYPE = VCloudDirectorMediaType.METADATA_ENTRY; @SuppressWarnings("unchecked") public static Builder builder() { diff --git a/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/Org.java b/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/Org.java index d86e10a573..ff7f257071 100644 --- a/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/Org.java +++ b/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/Org.java @@ -28,6 +28,8 @@ import java.util.Set; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; +import org.jclouds.vcloud.director.v1_5.VCloudDirectorMediaType; + import com.google.common.base.Objects; import com.google.common.base.Objects.ToStringHelper; import com.google.common.collect.Sets; @@ -45,6 +47,8 @@ import com.google.common.collect.Sets; */ @XmlRootElement(namespace = XMLNS, name = "Org") public class Org extends EntityType { + + public static final String MEDIA_TYPE = VCloudDirectorMediaType.ORG; @SuppressWarnings("unchecked") public static Builder builder() { diff --git a/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/OrgList.java b/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/OrgList.java index bd407f0ebb..20492aca2b 100644 --- a/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/OrgList.java +++ b/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/OrgList.java @@ -27,6 +27,8 @@ import java.util.Set; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; +import org.jclouds.vcloud.director.v1_5.VCloudDirectorMediaType; + import com.google.common.base.Objects; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Sets; @@ -38,6 +40,8 @@ import com.google.common.collect.Sets; */ @XmlRootElement(namespace = XMLNS, name = "OrgList") public class OrgList { + + public static final String MEDIA_TYPE = VCloudDirectorMediaType.ORG_LIST; public static Builder builder() { return new Builder(); diff --git a/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/Session.java b/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/Session.java index 42dc3ef44f..1ec2a852fb 100644 --- a/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/Session.java +++ b/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/Session.java @@ -31,6 +31,8 @@ import javax.xml.bind.annotation.XmlAttribute; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; +import org.jclouds.vcloud.director.v1_5.VCloudDirectorMediaType; + import com.google.common.base.Objects; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Sets; @@ -45,6 +47,8 @@ import com.google.common.collect.Sets; @XmlRootElement(namespace = XMLNS, name = "Session") @XmlAccessorType(XmlAccessType.FIELD) public class Session { + + public static final String MEDIA_TYPE = VCloudDirectorMediaType.SESSION; public static Builder builder() { return new Builder(); diff --git a/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/Task.java b/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/Task.java index 5b4bee8ed8..e2b246616d 100644 --- a/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/Task.java +++ b/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/Task.java @@ -30,6 +30,8 @@ import javax.xml.bind.annotation.XmlAttribute; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; +import org.jclouds.vcloud.director.v1_5.VCloudDirectorMediaType; + import com.google.common.base.Objects; import com.google.common.base.Objects.ToStringHelper; import com.google.common.collect.Sets; @@ -45,6 +47,8 @@ import com.google.common.collect.Sets; */ @XmlRootElement(namespace = XMLNS, name = "Task") public class Task extends EntityType { + + public static final String MEDIA_TYPE = VCloudDirectorMediaType.TASK; @SuppressWarnings("unchecked") public static Builder builder() { diff --git a/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/TasksList.java b/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/TasksList.java index a34ca958bc..5ae39756cf 100644 --- a/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/TasksList.java +++ b/labs/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/domain/TasksList.java @@ -28,6 +28,8 @@ import java.util.Set; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; +import org.jclouds.vcloud.director.v1_5.VCloudDirectorMediaType; + import com.google.common.base.Objects; import com.google.common.base.Objects.ToStringHelper; import com.google.common.collect.ImmutableSet; @@ -40,6 +42,8 @@ import com.google.common.collect.Sets; */ @XmlRootElement(namespace = XMLNS, name = "TasksList") public class TasksList extends EntityType { + + public static final String MEDIA_TYPE = VCloudDirectorMediaType.TASKS_LIST; @SuppressWarnings("unchecked") public static Builder builder() { diff --git a/labs/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/TaskClientExpectTest.java b/labs/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/TaskClientExpectTest.java index de37593c98..2082fa2651 100644 --- a/labs/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/TaskClientExpectTest.java +++ b/labs/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/features/TaskClientExpectTest.java @@ -57,7 +57,7 @@ public class TaskClientExpectTest extends BaseVCloudDirectorRestClientExpectTest HttpResponse taskResponse = HttpResponse.builder() .statusCode(200) - .payload(payloadFromResourceWithContentType("/task/taskslist.xml", VCloudDirectorMediaType.TASKS_LIST.getMediaType() + ";version=1.5")) + .payload(payloadFromResourceWithContentType("/task/taskslist.xml", VCloudDirectorMediaType.TASKS_LIST + ";version=1.5")) .build(); VCloudDirectorClient client = requestsSendResponses(loginRequest, sessionResponse, taskRequest, taskResponse); @@ -135,7 +135,7 @@ public class TaskClientExpectTest extends BaseVCloudDirectorRestClientExpectTest HttpResponse taskResponse = HttpResponse.builder() .statusCode(400) - .payload(payloadFromResourceWithContentType("/task/error400.xml", VCloudDirectorMediaType.ERROR.getMediaType() + ";version=1.5")) + .payload(payloadFromResourceWithContentType("/task/error400.xml", VCloudDirectorMediaType.ERROR + ";version=1.5")) .build(); VCloudDirectorClient client = requestsSendResponses(loginRequest, sessionResponse, taskRequest, taskResponse); @@ -170,7 +170,7 @@ public class TaskClientExpectTest extends BaseVCloudDirectorRestClientExpectTest HttpResponse taskResponse = HttpResponse.builder() .statusCode(403) - .payload(payloadFromResourceWithContentType("/task/error403.xml", VCloudDirectorMediaType.ERROR.getMediaType() + ";version=1.5")) + .payload(payloadFromResourceWithContentType("/task/error403.xml", VCloudDirectorMediaType.ERROR + ";version=1.5")) .build(); VCloudDirectorClient client = requestsSendResponses(loginRequest, sessionResponse, taskRequest, taskResponse); @@ -206,7 +206,7 @@ public class TaskClientExpectTest extends BaseVCloudDirectorRestClientExpectTest HttpResponse taskResponse = HttpResponse.builder() .statusCode(200) - .payload(payloadFromResourceWithContentType("/task/task.xml", VCloudDirectorMediaType.TASK.getMediaType() + ";version=1.5")) + .payload(payloadFromResourceWithContentType("/task/task.xml", VCloudDirectorMediaType.TASK + ";version=1.5")) .build(); VCloudDirectorClient client = requestsSendResponses(loginRequest, sessionResponse, taskRequest, taskResponse); @@ -257,7 +257,7 @@ public class TaskClientExpectTest extends BaseVCloudDirectorRestClientExpectTest HttpResponse taskResponse = HttpResponse.builder() .statusCode(200) - .payload(payloadFromResourceWithContentType("/task/task.xml", VCloudDirectorMediaType.TASK.getMediaType() + ";version=1.5")) + .payload(payloadFromResourceWithContentType("/task/task.xml", VCloudDirectorMediaType.TASK + ";version=1.5")) .build(); VCloudDirectorClient client = requestsSendResponses(loginRequest, sessionResponse, taskRequest, taskResponse); diff --git a/labs/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/internal/BaseVCloudDirectorRestClientExpectTest.java b/labs/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/internal/BaseVCloudDirectorRestClientExpectTest.java index 55a21c418d..560d348311 100644 --- a/labs/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/internal/BaseVCloudDirectorRestClientExpectTest.java +++ b/labs/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/internal/BaseVCloudDirectorRestClientExpectTest.java @@ -28,7 +28,6 @@ import org.jclouds.vcloud.director.v1_5.VCloudDirectorClient; import org.jclouds.vcloud.director.v1_5.VCloudDirectorMediaType; import org.jclouds.vcloud.director.v1_5.domain.ReferenceType; import org.testng.annotations.BeforeClass; -import org.testng.annotations.BeforeTest; import com.google.common.base.Function; import com.google.common.base.Splitter; @@ -80,7 +79,7 @@ public class BaseVCloudDirectorRestClientExpectTest extends BaseRestClientExpect .put("x-vcloud-authorization", token) .put("Set-Cookie", String.format("vcloud-token=%s; Secure; Path=/", token)) .build()) - .payload(payloadFromResourceWithContentType("/session.xml", VCloudDirectorMediaType.SESSION.getMediaType() + ";version=1.5")) + .payload(payloadFromResourceWithContentType("/session.xml", VCloudDirectorMediaType.SESSION + ";version=1.5")) .build(); public BaseVCloudDirectorRestClientExpectTest() { @@ -97,24 +96,24 @@ public class BaseVCloudDirectorRestClientExpectTest extends BaseRestClientExpect return getStandardRequest(method, uri, VCloudDirectorMediaType.ANY); } - protected HttpRequest getStandardRequest(String method, URI uri, VCloudDirectorMediaType mediaType) { + protected HttpRequest getStandardRequest(String method, URI uri, String mediaType) { return HttpRequest.builder() .method(method) .endpoint(uri) .headers(ImmutableMultimap. builder() - .put("Accept", mediaType.getMediaType()) + .put("Accept", mediaType) .put("x-vcloud-authorization", token) .build()) .build(); } - protected HttpResponse getStandardPayloadResponse(String relativeFilePath, VCloudDirectorMediaType mediaType) { + protected HttpResponse getStandardPayloadResponse(String relativeFilePath, String mediaType) { return getStandardPayloadResponse(200, relativeFilePath, mediaType); } - protected HttpResponse getStandardPayloadResponse(int statusCode, String relativeFilePath, VCloudDirectorMediaType mediaType) { + protected HttpResponse getStandardPayloadResponse(int statusCode, String relativeFilePath, String mediaType) { return HttpResponse.builder() .statusCode(statusCode) - .payload(payloadFromResourceWithContentType(relativeFilePath, mediaType.getMediaType()+";version=1.5")).build(); + .payload(payloadFromResourceWithContentType(relativeFilePath, mediaType + ";version=1.5")).build(); } } diff --git a/labs/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/login/SessionClientExpectTest.java b/labs/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/login/SessionClientExpectTest.java index 3f82809586..89055a05f5 100644 --- a/labs/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/login/SessionClientExpectTest.java +++ b/labs/vcloud-director/src/test/java/org/jclouds/vcloud/director/v1_5/login/SessionClientExpectTest.java @@ -72,8 +72,7 @@ public class SessionClientExpectTest extends BaseRestClientExpectTest builder().put("x-vcloud-authorization", token).put("Set-Cookie", String.format("vcloud-token=%s; Secure; Path=/", token)).build()) .payload( - payloadFromResourceWithContentType("/session.xml", VCloudDirectorMediaType.SESSION.getMediaType() - + ";version=1.5")).build() + payloadFromResourceWithContentType("/session.xml", VCloudDirectorMediaType.SESSION + ";version=1.5")).build() ); @@ -97,8 +96,7 @@ public class SessionClientExpectTest extends BaseRestClientExpectTest