diff --git a/vcloud/core/src/main/java/domain/VCloudLoginAsyncClient.java b/vcloud/core/src/main/java/domain/VCloudLoginAsyncClient.java
index fbd3d86c98..0e7401ddb6 100644
--- a/vcloud/core/src/main/java/domain/VCloudLoginAsyncClient.java
+++ b/vcloud/core/src/main/java/domain/VCloudLoginAsyncClient.java
@@ -44,7 +44,7 @@ import com.google.common.util.concurrent.ListenableFuture;
public interface VCloudLoginAsyncClient {
/**
- * This request returns a token to use in subsequent requests. After ten minutes of inactivity,
+ * This request returns a token to use in subsequent requests. After 30 minutes of inactivity,
* the token expires and you have to request a new token with this call.
*/
@POST
diff --git a/vcloud/core/src/main/java/org/jclouds/vcloud/VCloudAsyncClient.java b/vcloud/core/src/main/java/org/jclouds/vcloud/VCloudAsyncClient.java
index 6bb34b7983..1e0fc1adfd 100644
--- a/vcloud/core/src/main/java/org/jclouds/vcloud/VCloudAsyncClient.java
+++ b/vcloud/core/src/main/java/org/jclouds/vcloud/VCloudAsyncClient.java
@@ -27,6 +27,7 @@ import static org.jclouds.vcloud.VCloudMediaType.VAPP_XML;
import static org.jclouds.vcloud.VCloudMediaType.VM_XML;
import java.net.URI;
+import java.util.Map;
import javax.annotation.Nullable;
import javax.ws.rs.Consumes;
@@ -38,6 +39,7 @@ import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import org.jclouds.predicates.validators.DnsNameValidator;
+import org.jclouds.rest.annotations.Endpoint;
import org.jclouds.rest.annotations.EndpointParam;
import org.jclouds.rest.annotations.ExceptionParser;
import org.jclouds.rest.annotations.MapBinder;
@@ -52,16 +54,19 @@ import org.jclouds.vcloud.binders.BindCloneVAppParamsToXmlPayload;
import org.jclouds.vcloud.binders.BindDeployVAppParamsToXmlPayload;
import org.jclouds.vcloud.binders.BindInstantiateVAppTemplateParamsToXmlPayload;
import org.jclouds.vcloud.binders.BindUndeployVAppParamsToXmlPayload;
+import org.jclouds.vcloud.domain.ReferenceType;
import org.jclouds.vcloud.domain.Task;
import org.jclouds.vcloud.domain.VApp;
import org.jclouds.vcloud.domain.VAppTemplate;
import org.jclouds.vcloud.domain.Vm;
import org.jclouds.vcloud.domain.ovf.OvfEnvelope;
+import org.jclouds.vcloud.endpoints.OrgList;
import org.jclouds.vcloud.filters.SetVCloudTokenCookie;
import org.jclouds.vcloud.functions.OrgNameCatalogNameVAppTemplateNameToEndpoint;
import org.jclouds.vcloud.functions.OrgNameVDCNameResourceEntityNameToEndpoint;
import org.jclouds.vcloud.options.CloneVAppOptions;
import org.jclouds.vcloud.options.InstantiateVAppTemplateOptions;
+import org.jclouds.vcloud.xml.OrgListHandler;
import org.jclouds.vcloud.xml.TaskHandler;
import org.jclouds.vcloud.xml.VAppHandler;
import org.jclouds.vcloud.xml.VAppTemplateHandler;
@@ -74,11 +79,21 @@ import com.google.common.util.concurrent.ListenableFuture;
* Provides access to VCloud resources via their REST API.
*
*
- * @see
+ * @see
* @author Adrian Cole
*/
@RequestFilters(SetVCloudTokenCookie.class)
public interface VCloudAsyncClient extends CommonVCloudAsyncClient {
+ /**
+ *
+ * @see VCloudClient#listOrgs
+ */
+ @GET
+ @Endpoint(OrgList.class)
+ @XMLResponseParser(OrgListHandler.class)
+ @Consumes(VCloudMediaType.ORGLIST_XML)
+ ListenableFuture