You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jclouds.apache.org by za...@apache.org on 2015/04/08 01:45:45 UTC

[2/3] jclouds-labs-openstack git commit: Remove promoted cloudfiles api and providers

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/e7d93f40/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/binders/BindCDNPurgeEmailAddressesToHeaders.java
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/binders/BindCDNPurgeEmailAddressesToHeaders.java b/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/binders/BindCDNPurgeEmailAddressesToHeaders.java
deleted file mode 100644
index a2cb5bd..0000000
--- a/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/binders/BindCDNPurgeEmailAddressesToHeaders.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.rackspace.cloudfiles.v1.binders;
-
-import static com.google.common.base.Preconditions.checkArgument;
-import static com.google.common.base.Preconditions.checkNotNull;
-
-import java.util.List;
-
-import javax.inject.Singleton;
-
-import org.jclouds.http.HttpRequest;
-import org.jclouds.rackspace.cloudfiles.v1.reference.CloudFilesHeaders;
-import org.jclouds.rest.Binder;
-
-import com.google.common.base.Joiner;
-import com.google.common.collect.ImmutableMultimap;
-
-/**
- * Binds a list of email addresses to request headers. 
- * 
- * @see {@link CDNApi#purgeObject(String, String, Iterable)}
- */
-@Singleton
-public class BindCDNPurgeEmailAddressesToHeaders implements Binder {
-   @SuppressWarnings("unchecked")
-   @Override
-   public <R extends HttpRequest> R bindToRequest(R request, Object input) {
-      checkArgument(checkNotNull(input, "input") instanceof Iterable<?>, "this binder is only valid for Iterable!");
-      checkNotNull(request, "request");
-
-      Iterable<String> emails = (Iterable<String>) input;
-      String emailCSV = Joiner.on(", ").join((List<String>) emails);
-      ImmutableMultimap<String, String> headers = 
-            ImmutableMultimap.<String, String> of(CloudFilesHeaders.CDN_PURGE_OBJECT_EMAIL, emailCSV);
-      
-      return (R) request.toBuilder().replaceHeaders(headers).build();
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/e7d93f40/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/config/CloudFilesHttpApiModule.java
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/config/CloudFilesHttpApiModule.java b/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/config/CloudFilesHttpApiModule.java
deleted file mode 100644
index 092fec9..0000000
--- a/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/config/CloudFilesHttpApiModule.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.rackspace.cloudfiles.v1.config;
-
-import org.jclouds.http.HttpErrorHandler;
-import org.jclouds.http.annotation.ClientError;
-import org.jclouds.http.annotation.Redirection;
-import org.jclouds.http.annotation.ServerError;
-import org.jclouds.openstack.swift.v1.SwiftApi;
-import org.jclouds.openstack.swift.v1.config.BaseSwiftHttpApiModule;
-import org.jclouds.rackspace.cloudfiles.v1.CloudFilesApi;
-import org.jclouds.rackspace.cloudfiles.v1.handlers.CloudFilesErrorHandler;
-import org.jclouds.rest.ConfiguresHttpApi;
-
-import com.google.inject.Scopes;
-
-@ConfiguresHttpApi
-public class CloudFilesHttpApiModule extends BaseSwiftHttpApiModule<CloudFilesApi> {
-
-   public CloudFilesHttpApiModule() {
-      super(CloudFilesApi.class);
-   }
-
-   @Override
-   protected void configure() {
-      super.configure();
-      bind(SwiftApi.class).to(CloudFilesApi.class).in(Scopes.SINGLETON);
-   }
-   
-   @Override
-   protected void bindErrorHandlers() {
-      bind(HttpErrorHandler.class).annotatedWith(Redirection.class).to(CloudFilesErrorHandler.class);
-      bind(HttpErrorHandler.class).annotatedWith(ClientError.class).to(CloudFilesErrorHandler.class);
-      bind(HttpErrorHandler.class).annotatedWith(ServerError.class).to(CloudFilesErrorHandler.class);
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/e7d93f40/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/domain/CDNContainer.java
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/domain/CDNContainer.java b/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/domain/CDNContainer.java
deleted file mode 100644
index d987f88..0000000
--- a/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/domain/CDNContainer.java
+++ /dev/null
@@ -1,262 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.rackspace.cloudfiles.v1.domain;
-
-import static com.google.common.base.Objects.toStringHelper;
-import static com.google.common.base.Preconditions.checkNotNull;
-
-import java.beans.ConstructorProperties;
-import java.net.URI;
-
-import javax.inject.Named;
-
-import com.google.common.base.Objects;
-import com.google.common.base.Objects.ToStringHelper;
-
-/**
- * Represents a CDN Container in Rackspace Cloud Files.
- */
-public class CDNContainer implements Comparable<CDNContainer> {
-
-   private String name;
-   @Named("cdn_enabled")
-   private boolean enabled;
-   @Named("log_retention")
-   private boolean logRetention;
-   private int ttl;
-   @Named("cdn_uri")
-   private URI uri;
-   @Named("cdn_ssl_uri")
-   private URI sslUri;
-   @Named("cdn_streaming_uri")
-   private URI streamingUri;
-   @Named("cdn_ios_uri")
-   private URI iosUri;
-
-   @ConstructorProperties({ "name", "cdn_enabled", "log_retention", "ttl", "cdn_uri", "cdn_ssl_uri", "cdn_streaming_uri", "cdn_ios_uri"})
-   public CDNContainer(String name, boolean enabled, boolean logRetention, int ttl, URI uri, URI sslUri, URI streamingUri, URI iosUri) {
-      this.name = checkNotNull(name, "name required");
-      this.enabled = enabled;
-      this.logRetention = logRetention;
-      this.ttl = ttl;
-      this.uri = checkNotNull(uri, "uri required");
-      this.sslUri = checkNotNull(sslUri, "sslUri required");
-      this.streamingUri = checkNotNull(streamingUri, "streamingUri required");
-      this.iosUri = checkNotNull(iosUri, "iosUri required");
-   }
-
-   /**
-    * <h3>NOTE</h3>
-    * The container name is not available from HEAD CDN responses and will be null.
-    *
-    * @return The name of this CDN container.
-    */
-   public String getName() {
-      return name;
-   }
-
-   /**
-    * @return {@code true} if the container is CDN enabled, {@code false} if not.
-    */
-   public boolean isEnabled() {
-      return enabled;
-   }
-
-   /**
-    * @return {@code true} if the logs will be retained for this CDN container, {@code false} if not.
-    */
-   public boolean isLogRetentionEnabled() {
-      return logRetention;
-   }
-
-   /**
-    * @return the TTL for this CDN container.
-    */
-   public int getTtl() {
-      return ttl;
-   }
-
-   /**
-    * @return the {@link URI} for this CDN container.
-    */
-   public URI getUri() {
-      return uri;
-   }
-
-   /**
-    * @return the SSL {@link URI} for this CDN container.
-    */
-   public URI getSslUri() {
-      return sslUri;
-   }
-
-   /**
-    * @return the streaming {@link URI} for this CDN container.
-    */
-   public URI getStreamingUri() {
-      return streamingUri;
-   }
-
-   /**
-    * @return the iOS {@link URI} for this CDN container.
-    */
-   public URI getIosUri() {
-      return iosUri;
-   }
-   
-   @Override
-   public boolean equals(Object obj) {
-      if (this == obj) return true;
-      if (obj == null || getClass() != obj.getClass()) return false;
-      CDNContainer that = CDNContainer.class.cast(obj);
-      return Objects.equal(this.name, that.name)
-               && Objects.equal(this.enabled, that.enabled)
-               && Objects.equal(this.logRetention, that.logRetention)
-               && Objects.equal(this.ttl, that.ttl)
-               && Objects.equal(this.uri, that.uri)
-               && Objects.equal(this.sslUri, that.sslUri)
-               && Objects.equal(this.streamingUri, that.streamingUri)
-               && Objects.equal(this.iosUri, that.iosUri);
-   }
-   
-
-   @Override
-   public int hashCode() {
-      return Objects.hashCode(getName(), isEnabled(), isLogRetentionEnabled(), getTtl(), getUri(), getSslUri(), getStreamingUri(), getIosUri());
-   }
-
-   @Override
-   public String toString() {
-      return string().toString();
-   }
-
-   protected ToStringHelper string() {
-      return toStringHelper("").omitNullValues()
-            .add("name", getName())
-            .add("enabled", isEnabled())
-            .add("logRetention", isLogRetentionEnabled())
-            .add("ttl", getTtl())
-            .add("uri", getUri())
-            .add("sslUri", getSslUri())
-            .add("streamingUri", getStreamingUri())
-            .add("iosUri", getIosUri());
-   }
-
-   @Override
-   public int compareTo(CDNContainer that) {
-      if (that == null)
-         return 1;
-      if (this == that)
-         return 0;
-      return this.getName().compareTo(that.getName());
-   }
-
-   public static Builder builder() {
-      return new Builder();
-   }
-
-   public static class Builder {
-      
-      private String name;
-      private boolean enabled;
-      private boolean logRetention;
-      private int ttl;
-      private URI uri;
-      private URI sslUri;
-      private URI streamingUri;
-      private URI iosUri;
-      
-      /**
-       * @see CDNContainer#getName()
-       */
-      public Builder name(String name) {
-         this.name = checkNotNull(name, "name");
-         return this;
-      }
-
-      /**
-       * @see CDNContainer#isEnabled()
-       */
-      public Builder enabled(boolean enabled) {
-         this.enabled = enabled;
-         return this;
-      }
-
-      /**
-       * @see CDNContainer#isLogRetentionEnabled()
-       */
-      public Builder logRetention(boolean logRetention) {
-         this.logRetention = logRetention;
-         return this;
-      }
-
-      /**
-       * @see CDNContainer#getTtl()
-       */
-      public Builder ttl(int ttl) {
-         this.ttl = ttl;
-         return this;
-      }
-
-      /**
-       * @see CDNContainer#getUri()
-       */
-      public Builder uri(URI uri) {
-         this.uri = uri;
-         return this;
-      }
-
-      /**
-       * @see CDNContainer#getSslUri()
-       */
-      public Builder sslUri(URI sslUri) {
-         this.sslUri = sslUri;
-         return this;
-      }
-
-      /**
-       * @see CDNContainer#getStreamingUri()
-       */
-      public Builder streamingUri(URI streamingUri) {
-         this.streamingUri = streamingUri;
-         return this;
-      }
-
-      /**
-       * @see CDNContainer#getIosUri()
-       */
-      public Builder iosUri(URI iosUri) {
-         this.iosUri = iosUri;
-         return this;
-      }
-
-      public CDNContainer build() {
-         return new CDNContainer(name, enabled, logRetention, ttl, uri, sslUri, streamingUri, iosUri);
-      }
-
-      public Builder fromContainer(CDNContainer from) {
-         return name(from.getName())
-               .enabled(from.isEnabled())
-               .logRetention(from.isLogRetentionEnabled())
-               .ttl(from.getTtl())
-               .uri(from.getUri())
-               .sslUri(from.getSslUri())
-               .streamingUri(from.getStreamingUri())
-               .iosUri(from.getIosUri());
-      }
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/e7d93f40/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/features/CDNApi.java
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/features/CDNApi.java b/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/features/CDNApi.java
deleted file mode 100644
index e88626f..0000000
--- a/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/features/CDNApi.java
+++ /dev/null
@@ -1,204 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.rackspace.cloudfiles.v1.features;
-
-import static javax.ws.rs.core.MediaType.APPLICATION_JSON;
-import static org.jclouds.rackspace.cloudfiles.v1.reference.CloudFilesHeaders.CDN_ENABLED;
-import static org.jclouds.rackspace.cloudfiles.v1.reference.CloudFilesHeaders.CDN_TTL;
-
-import java.io.Closeable;
-import java.net.URI;
-
-import javax.inject.Named;
-import javax.ws.rs.Consumes;
-import javax.ws.rs.DELETE;
-import javax.ws.rs.GET;
-import javax.ws.rs.HEAD;
-import javax.ws.rs.HeaderParam;
-import javax.ws.rs.POST;
-import javax.ws.rs.PUT;
-import javax.ws.rs.Path;
-import javax.ws.rs.PathParam;
-
-import org.jclouds.Fallbacks.EmptyFluentIterableOnNotFoundOr404;
-import org.jclouds.Fallbacks.FalseOnNotFoundOr404;
-import org.jclouds.Fallbacks.NullOnNotFoundOr404;
-import org.jclouds.javax.annotation.Nullable;
-import org.jclouds.openstack.keystone.v2_0.filters.AuthenticateRequest;
-import org.jclouds.rackspace.cloudfiles.v1.binders.BindCDNPurgeEmailAddressesToHeaders;
-import org.jclouds.rackspace.cloudfiles.v1.domain.CDNContainer;
-import org.jclouds.rackspace.cloudfiles.v1.functions.ParseCDNContainerFromHeaders;
-import org.jclouds.rackspace.cloudfiles.v1.functions.ParseCDNContainerURIFromHeaders;
-import org.jclouds.rackspace.cloudfiles.v1.options.ListCDNContainerOptions;
-import org.jclouds.rackspace.cloudfiles.v1.options.UpdateCDNContainerOptions;
-import org.jclouds.rackspace.cloudfiles.v1.reference.CloudFilesHeaders;
-import org.jclouds.rest.annotations.BinderParam;
-import org.jclouds.rest.annotations.Fallback;
-import org.jclouds.rest.annotations.Headers;
-import org.jclouds.rest.annotations.QueryParams;
-import org.jclouds.rest.annotations.RequestFilters;
-import org.jclouds.rest.annotations.ResponseParser;
-
-import com.google.common.annotations.Beta;
-import com.google.common.collect.FluentIterable;
-/**
- * Provides access to the Rackspace Cloud Files CDN API features.
- *
- * <h3>NOTE</h3>
- * Before a container can be CDN enabled, it must exist in the storage system.
- * To CDN enable the container, perform PUT request against it using the <code>publicURL</code>
- * noted in the service catalog for Cloud Files during Authentication and set the
- * <code>X-CDN-Enabled</code> header to <code>true</code>.
- *
- * @see {@link org.jclouds.rackspace.cloudfiles.v1.CloudFilesApi#getCDNApi(String)}
- */
-@Beta
-@RequestFilters(AuthenticateRequest.class)
-@Consumes(APPLICATION_JSON)
-public interface CDNApi extends Closeable {
-
-   /**
-    * Lists up to 10,000 CDN containers.
-    *
-    * @return a list of CDN enabled containers ordered by name.
-    */
-   @Named("cdn:list")
-   @GET
-   @QueryParams(keys = {"format", "enabled_only"}, values = {"json", "true"})
-   @Fallback(EmptyFluentIterableOnNotFoundOr404.class)
-   @Path("/")
-   FluentIterable<CDNContainer> list();
-
-   /**
-    * Lists CDN containers, with the given options.
-    *
-    * @param options
-    *           the options to control output.
-    *
-    * @return a list of CDN enabled containers ordered by name.
-    */
-   @Named("cdn:list")
-   @GET
-   @QueryParams(keys = {"format", "enabled_only"}, values = {"json", "true"})
-   @Fallback(EmptyFluentIterableOnNotFoundOr404.class)
-   @Path("/")
-   FluentIterable<CDNContainer> list(ListCDNContainerOptions options);
-
-   /**
-    * Gets the specified CDN Container.
-    *
-    * @param containerName
-    *           the name of the CDN Container
-    *
-    * @return the CDNContainer or null, if not found.
-    */
-   @Named("cdn:get")
-   @HEAD
-   @ResponseParser(ParseCDNContainerFromHeaders.class)
-   @Fallback(NullOnNotFoundOr404.class)
-   @Path("/{container}")
-   @Nullable
-   CDNContainer get(@PathParam("container") String containerName);
-
-   /**
-    * Enables the {@link CDNContainer}.
-    *
-    * @param containerName
-    *           corresponds to {@link CDNContainer#getName()}.
-    *
-    * @return the CDN container {@link URI} or {@code null}, if not found.
-    */
-   @Named("cdn:enable")
-   @PUT
-   @ResponseParser(ParseCDNContainerURIFromHeaders.class)
-   @Fallback(NullOnNotFoundOr404.class)
-   @Path("/{containerName}")
-   @Headers(keys = CDN_ENABLED, values = "true")
-   @Nullable
-   URI enable(@PathParam("containerName") String containerName);
-
-   /**
-    * Enables the {@link CDNContainer} with a TTL.
-    *
-    * @param containerName
-    *           corresponds to {@link CDNContainer#getName()}.
-    * @param ttl
-    *           the TTL for the CDN Container.
-    *
-    * @return the CDN container {@link URI} or {@code null}, if not found.
-    */
-   @Named("cdn:enable")
-   @PUT
-   @ResponseParser(ParseCDNContainerURIFromHeaders.class)
-   @Fallback(NullOnNotFoundOr404.class)
-   @Path("/{containerName}")
-   @Headers(keys = CDN_ENABLED, values = "true")
-   @Nullable
-   URI enable(@PathParam("containerName") String containerName,
-         @HeaderParam(CDN_TTL) int ttl);
-
-   /**
-    * Disables the {@link CDNContainer}.
-    *
-    * @param containerName
-    *           corresponds to {@link CDNContainer#getName()}.
-    *
-    * @return {@code true} if the container was disabled, {@code false} if not.
-    */
-   @Named("cdn:disable")
-   @PUT
-   @Fallback(FalseOnNotFoundOr404.class)
-   @Path("/{containerName}")
-   @Headers(keys = CDN_ENABLED, values = "False")
-   boolean disable(@PathParam("containerName") String containerName);
-
-   /**
-    * Purges an object from the CDN.
-    *
-    * @param containerName
-    *           corresponds to {@link CDNContainer#getName()}.
-    * @param objectName
-    *           the object in the {@link CDNContainer} to purge.
-    * @param emails
-    *           the email addresses to notify after purging.
-    *
-    * @return {@code true} if the object was successfully purged, {@code false} if not.
-    */
-   @Named("cdn:purge")
-   @DELETE
-   @Fallback(FalseOnNotFoundOr404.class)
-   @Path("/{containerName}/{objectName}")
-   @Headers(keys = CloudFilesHeaders.CDN_PURGE_OBJECT_EMAIL, values = "{email}")
-   boolean purgeObject(@PathParam("containerName") String containerName,
-         @PathParam("objectName") String objectName,
-         @BinderParam(BindCDNPurgeEmailAddressesToHeaders.class) Iterable<String> emails);
-
-   /**
-    * Updates a CDN container with the supplied {@link UpdateCDNContainerOptions} options.
-    *
-    * @param containerName
-    *           corresponds to {@link CDNContainer#getName()}.
-    *
-    * @param options
-    *           the {@link UpdateCDNContainerOptions} options.
-    */
-   @Named("cdn:update")
-   @POST
-   @Fallback(FalseOnNotFoundOr404.class)
-   @Path("/{containerName}")
-   boolean update(@PathParam("containerName") String containerName, UpdateCDNContainerOptions options);
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/e7d93f40/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/functions/ParseCDNContainerFromHeaders.java
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/functions/ParseCDNContainerFromHeaders.java b/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/functions/ParseCDNContainerFromHeaders.java
deleted file mode 100644
index 38430d6..0000000
--- a/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/functions/ParseCDNContainerFromHeaders.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.rackspace.cloudfiles.v1.functions;
-
-import static com.google.common.base.Preconditions.checkArgument;
-import static com.google.common.base.Preconditions.checkNotNull;
-import static com.google.common.collect.Lists.newArrayList;
-import static org.jclouds.rackspace.cloudfiles.v1.reference.CloudFilesHeaders.CDN_ENABLED;
-import static org.jclouds.rackspace.cloudfiles.v1.reference.CloudFilesHeaders.CDN_IOS_URI;
-import static org.jclouds.rackspace.cloudfiles.v1.reference.CloudFilesHeaders.CDN_LOG_RETENTION;
-import static org.jclouds.rackspace.cloudfiles.v1.reference.CloudFilesHeaders.CDN_SSL_URI;
-import static org.jclouds.rackspace.cloudfiles.v1.reference.CloudFilesHeaders.CDN_STREAMING_URI;
-import static org.jclouds.rackspace.cloudfiles.v1.reference.CloudFilesHeaders.CDN_TTL;
-import static org.jclouds.rackspace.cloudfiles.v1.reference.CloudFilesHeaders.CDN_URI;
-
-import java.net.URI;
-import java.util.List;
-
-import org.jclouds.http.HttpRequest;
-import org.jclouds.http.HttpResponse;
-import org.jclouds.rackspace.cloudfiles.v1.domain.CDNContainer;
-import org.jclouds.rest.InvocationContext;
-
-import com.google.common.base.Function;
-import com.google.common.base.Splitter;
-
-/**
- * Parses the {@link CDNContainer} from the response headers.
- */
-public class ParseCDNContainerFromHeaders implements Function<HttpResponse, CDNContainer>,
-      InvocationContext<ParseCDNContainerFromHeaders> {
-
-   private HttpRequest request;
-
-   /**
-    * parses the http response headers to create a new {@link CDNContainer} object.
-    */
-   public CDNContainer apply(final HttpResponse from) {
-      String uri = checkNotNull(from.getFirstHeaderOrNull(CDN_URI), CDN_URI);
-      String sslUri = checkNotNull(from.getFirstHeaderOrNull(CDN_SSL_URI), CDN_SSL_URI);
-      String streamingUri = checkNotNull(from.getFirstHeaderOrNull(CDN_STREAMING_URI), CDN_STREAMING_URI);
-      String iosUri = checkNotNull(from.getFirstHeaderOrNull(CDN_IOS_URI), CDN_IOS_URI);
-      String enabled = checkNotNull(from.getFirstHeaderOrNull(CDN_ENABLED), CDN_ENABLED);
-      String logRetention = checkNotNull(from.getFirstHeaderOrNull(CDN_LOG_RETENTION), CDN_LOG_RETENTION);
-      String ttl = checkNotNull(from.getFirstHeaderOrNull(CDN_TTL), CDN_TTL);
-
-      // just need the name from the path
-      List<String> parts = newArrayList(Splitter.on('/').split(request.getEndpoint().getPath()));
-      checkArgument(!parts.isEmpty());
-
-      return CDNContainer.builder().name(parts.get(parts.size() - 1))
-            .enabled(Boolean.parseBoolean(enabled))
-            .logRetention(Boolean.parseBoolean(logRetention))
-            .ttl(Integer.parseInt(ttl))
-            .uri(URI.create(uri))
-            .sslUri(URI.create(sslUri))
-            .streamingUri(URI.create(streamingUri))
-            .iosUri(URI.create(iosUri))
-            .build();
-   }
-
-   @Override
-   public ParseCDNContainerFromHeaders setContext(HttpRequest request) {
-      this.request = request;
-      return this;
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/e7d93f40/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/functions/ParseCDNContainerURIFromHeaders.java
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/functions/ParseCDNContainerURIFromHeaders.java b/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/functions/ParseCDNContainerURIFromHeaders.java
deleted file mode 100644
index 7bd3a52..0000000
--- a/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/functions/ParseCDNContainerURIFromHeaders.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.rackspace.cloudfiles.v1.functions;
-
-import static com.google.common.base.Preconditions.checkNotNull;
-
-import java.net.URI;
-
-import org.jclouds.http.HttpResponse;
-import org.jclouds.rackspace.cloudfiles.v1.reference.CloudFilesHeaders;
-
-import com.google.common.base.Function;
-
-/**
- * Parses the {@link CDNContainer} from the response headers.
- */
-public class ParseCDNContainerURIFromHeaders implements Function<HttpResponse, URI> {
-
-   /**
-    * parses the http response headers to provide the CDN URI string.
-    */
-   public URI apply(final HttpResponse from) {
-      String cdnUri = checkNotNull(from.getFirstHeaderOrNull(CloudFilesHeaders.CDN_URI),
-               CloudFilesHeaders.CDN_URI);
-      return URI.create(cdnUri);
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/e7d93f40/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/functions/RegionToCDNEndpoint.java
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/functions/RegionToCDNEndpoint.java b/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/functions/RegionToCDNEndpoint.java
deleted file mode 100644
index 07f6f25..0000000
--- a/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/functions/RegionToCDNEndpoint.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.rackspace.cloudfiles.v1.functions;
-
-import static com.google.common.base.Preconditions.checkArgument;
-import static com.google.common.base.Preconditions.checkState;
-
-import java.net.URI;
-import java.util.Map;
-
-import javax.inject.Inject;
-import javax.inject.Singleton;
-
-import org.jclouds.javax.annotation.Nullable;
-import org.jclouds.location.suppliers.RegionIdToURISupplier;
-import org.jclouds.rackspace.cloudidentity.v2_0.ServiceType;
-import org.jclouds.rest.annotations.ApiVersion;
-
-import com.google.common.base.Function;
-import com.google.common.base.Supplier;
-
-/**
- * This class ensures that the correct Cloud Files CDN endpoint is retrieved from the endpoint
- * supplier. The CDN API should never be instantiated directly, but rather accessed through the
- * {@link CloudFilesApi#cdnApiInRegion(String)} API.
- * <p/>
- * <h3>NOTE</h3>
- * The Cloud Files Service Type will always default to OpenStack Object Storage ("object-storage").
- * <p/>
- *
- *
- * @see CloudFilesApi#cdnApiInRegion(String)
- * @see CDNApi
- * @see RegionToEndpoint
- * @see org.jclouds.openstack.v2_0.ServiceType#OBJECT_STORE
- * @see org.jclouds.rackspace.cloudidentity.v2_0.ServiceType#OBJECT_CDN
- * @see <a
- *      href="http://docs.rackspace.com/files/api/v1/cf-devguide/content/Service-Access-Endpoints-d1e003.html">
- *      Service Access Endpoints</a>
- */
-@Singleton
-public class RegionToCDNEndpoint implements Function<Object, URI> {
-
-   private final Supplier<Map<String, Supplier<URI>>> endpointsSupplier;
-
-   @Inject
-   public RegionToCDNEndpoint(@ApiVersion final String apiVersion, final RegionIdToURISupplier.Factory factory) {
-      this.endpointsSupplier = factory.createForApiTypeAndVersion(ServiceType.OBJECT_CDN, apiVersion);
-   }
-
-   public URI apply(@Nullable Object from) {
-      checkArgument(from != null && from instanceof String, "you must specify a region, as a String argument");
-      Map<String, Supplier<URI>> regionToEndpoint = endpointsSupplier.get();
-      checkState(!regionToEndpoint.isEmpty(), "no region name to endpoint mappings configured!");
-      checkArgument(regionToEndpoint.containsKey(from),
-            "requested location %s, which is not in the configured locations: %s", from, regionToEndpoint);
-      return regionToEndpoint.get(from).get();
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/e7d93f40/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/handlers/CloudFilesErrorHandler.java
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/handlers/CloudFilesErrorHandler.java b/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/handlers/CloudFilesErrorHandler.java
deleted file mode 100644
index 1e69b23..0000000
--- a/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/handlers/CloudFilesErrorHandler.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.rackspace.cloudfiles.v1.handlers;
-
-import static org.jclouds.http.HttpUtils.closeClientButKeepContentStream;
-
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import org.jclouds.blobstore.ContainerNotFoundException;
-import org.jclouds.blobstore.KeyNotFoundException;
-import org.jclouds.http.HttpCommand;
-import org.jclouds.http.HttpErrorHandler;
-import org.jclouds.http.HttpResponse;
-import org.jclouds.http.HttpResponseException;
-import org.jclouds.openstack.swift.v1.CopyObjectException;
-import org.jclouds.openstack.swift.v1.reference.SwiftHeaders;
-import org.jclouds.rest.AuthorizationException;
-import org.jclouds.rest.InsufficientResourcesException;
-
-// TODO: is there error spec someplace? let's type errors, etc.
-public class CloudFilesErrorHandler implements HttpErrorHandler {
-   public static final String PREFIX = "^/v[0-9][^/]*/[a-zA-Z]+_[^/]+/";
-   public static final Pattern CONTAINER_PATH = Pattern.compile(PREFIX + "([^/]+)$");
-   public static final Pattern CONTAINER_KEY_PATH = Pattern.compile(PREFIX + "([^/]+)/(.*)");
-
-   public void handleError(HttpCommand command, HttpResponse response) {
-      // it is important to always read fully and close streams
-      byte[] data = closeClientButKeepContentStream(response);
-      String message = data != null ? new String(data) : null;
-
-      Exception exception = message != null ? new HttpResponseException(command, response, message)
-               : new HttpResponseException(command, response);
-      message = message != null ? message : String.format("%s -> %s", command.getCurrentRequest().getRequestLine(),
-               response.getStatusLine());
-      switch (response.getStatusCode()) {
-         case 401:
-            exception = new AuthorizationException(exception.getMessage(), exception);
-            break;
-         case 404:
-            Exception oldException = exception;
-            String sourcePath = command.getCurrentRequest().getFirstHeaderOrNull(SwiftHeaders.OBJECT_COPY_FROM);
-            if (sourcePath != null) {
-               // the path returned here is in the form "/v1/tenant-id/destContainer/destObject"
-               String path = command.getCurrentRequest().getEndpoint().getPath();
-               int startOfDestinationPath = path.lastIndexOf("/", path.lastIndexOf("/") - 1);
-               // get the "/destContainer/destObject" portion of the path
-               String destinationPath = path.substring(startOfDestinationPath);
-               
-               exception = new CopyObjectException(sourcePath, destinationPath, message);
-               exception.initCause(oldException);
-            } else if (!command.getCurrentRequest().getMethod().equals("DELETE")) {
-               String path = command.getCurrentRequest().getEndpoint().getPath();
-               Matcher matcher = CONTAINER_PATH.matcher(path);
-               
-               if (matcher.find()) {
-                  exception = new ContainerNotFoundException(matcher.group(1), message);
-                  exception.initCause(oldException);
-               } else {
-                  matcher = CONTAINER_KEY_PATH.matcher(path);
-                  if (matcher.find()) {
-                     exception = new KeyNotFoundException(matcher.group(1), matcher.group(2), message);
-                     exception.initCause(oldException);
-                  }
-               }
-            }
-            break;
-         case 409:
-            exception = new IllegalStateException(exception.getMessage(), exception);
-            break;
-         case 413:
-            exception = new InsufficientResourcesException(exception.getMessage(), exception);
-            break;
-      }
-      command.setException(exception);
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/e7d93f40/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/options/ListCDNContainerOptions.java
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/options/ListCDNContainerOptions.java b/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/options/ListCDNContainerOptions.java
deleted file mode 100644
index 35baa53..0000000
--- a/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/options/ListCDNContainerOptions.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.rackspace.cloudfiles.v1.options;
-
-import static com.google.common.base.Preconditions.checkNotNull;
-import static com.google.common.base.Preconditions.checkState;
-
-import org.jclouds.http.options.BaseHttpRequestOptions;
-
-/**
- * Options for listing containers. 
- * 
- * @see {@link org.jclouds.rackspace.cloudfiles.v1.features.CDNAp#list(ListCDNContainerOptions) CDNApi.list(ListCDNContainerOptions)}
- */
-public class ListCDNContainerOptions extends BaseHttpRequestOptions {
-
-   /** 
-    * For an integer value <i>n</i>, limits the number of results to <i>n</n>. 
-    */
-   public ListCDNContainerOptions limit(int limit) {
-      checkState(limit >= 0, "limit must be >= 0");
-      checkState(limit <= 10000, "limit must be <= 10000");
-      queryParameters.put("limit", Integer.toString(limit));
-      return this;
-   }
-
-   /** 
-    * Given a string value <i>x</i>, returns container names greater in value than the specified
-    * {@code marker}. Only strings using UTF-8 encoding are valid. Using {@code marker} provides
-    * a mechanism for iterating through the entire list of containers.
-    */
-   public ListCDNContainerOptions marker(String marker) {
-      queryParameters.put("marker", checkNotNull(marker, "marker"));
-      return this;
-   }
-
-   /** 
-    * Given a string value <i>x</i>, returns container names lesser in value than the specified 
-    * end marker. Only strings using UTF-8 encoding are valid.
-    */
-   public ListCDNContainerOptions endMarker(String endMarker) {
-      queryParameters.put("end_marker", checkNotNull(endMarker, "endMarker"));
-      return this;
-   }
-
-   public static class Builder {
-
-      /** 
-       * @see ListCDNContainerOptions#limit
-       */
-      public static ListCDNContainerOptions limit(int limit) {
-         ListCDNContainerOptions options = new ListCDNContainerOptions();
-         return options.limit(limit);
-      }
-
-      /** 
-       * @see ListCDNContainerOptions#marker
-       */
-      public static ListCDNContainerOptions marker(String marker) {
-         ListCDNContainerOptions options = new ListCDNContainerOptions();
-         return options.marker(marker);
-      }
-
-      /** 
-       * @see ListCDNContainerOptions#endMarker
-       */
-      public static ListCDNContainerOptions endMarker(String endMarker) {
-         ListCDNContainerOptions options = new ListCDNContainerOptions();
-         return options.endMarker(endMarker);
-      }
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/e7d93f40/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/options/UpdateCDNContainerOptions.java
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/options/UpdateCDNContainerOptions.java b/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/options/UpdateCDNContainerOptions.java
deleted file mode 100644
index bdc2ada..0000000
--- a/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/options/UpdateCDNContainerOptions.java
+++ /dev/null
@@ -1,177 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.rackspace.cloudfiles.v1.options;
-
-import static com.google.common.base.Preconditions.checkNotNull;
-import static com.google.common.base.Preconditions.checkState;
-import static org.jclouds.openstack.swift.v1.reference.SwiftHeaders.STATIC_WEB_DIRECTORY_TYPE;
-import static org.jclouds.openstack.swift.v1.reference.SwiftHeaders.STATIC_WEB_ERROR;
-import static org.jclouds.openstack.swift.v1.reference.SwiftHeaders.STATIC_WEB_INDEX;
-import static org.jclouds.openstack.swift.v1.reference.SwiftHeaders.STATIC_WEB_LISTINGS;
-import static org.jclouds.openstack.swift.v1.reference.SwiftHeaders.STATIC_WEB_LISTINGS_CSS;
-import static org.jclouds.rackspace.cloudfiles.v1.reference.CloudFilesConstants.CDN_TTL_MAX;
-import static org.jclouds.rackspace.cloudfiles.v1.reference.CloudFilesConstants.CDN_TTL_MIN;
-import static org.jclouds.rackspace.cloudfiles.v1.reference.CloudFilesHeaders.CDN_ENABLED;
-import static org.jclouds.rackspace.cloudfiles.v1.reference.CloudFilesHeaders.CDN_LOG_RETENTION;
-import static org.jclouds.rackspace.cloudfiles.v1.reference.CloudFilesHeaders.CDN_TTL;
-
-import org.jclouds.http.options.BaseHttpRequestOptions;
-
-import com.google.common.net.MediaType;
-
-/**
- * Options supported for updating CDN containers.
- */
-public class UpdateCDNContainerOptions extends BaseHttpRequestOptions {
-   public static final UpdateCDNContainerOptions NONE = new UpdateCDNContainerOptions();
-
-   /** 
-    * Updates TTL
-    */
-   public UpdateCDNContainerOptions ttl(int ttl) {
-      checkState(ttl >= Integer.valueOf(CDN_TTL_MIN), "ttl must be >= " + CDN_TTL_MIN);
-      checkState(ttl <= Integer.valueOf(CDN_TTL_MAX), "ttl must be <= " + CDN_TTL_MAX);
-      headers.put(CDN_TTL, Integer.toString(ttl));
-      return this;
-   }
-
-   /** 
-    * Enables or disables log retention
-    */
-   public UpdateCDNContainerOptions logRetention(boolean logRetention) {
-      headers.put(CDN_LOG_RETENTION, Boolean.toString(logRetention));
-      return this;
-   }
-
-   /** 
-    * Enables or disables the CDN Container
-    */
-   public UpdateCDNContainerOptions enabled(boolean enabled) {
-      headers.put(CDN_ENABLED, Boolean.toString(enabled));
-      return this;
-   }
-
-   /**
-    * Sets the directory marker type for the Static Website.
-    */
-   public UpdateCDNContainerOptions staticWebsiteDirectoryType(MediaType directoryType) {
-      checkNotNull(directoryType, "directoryType cannot be null");
-      headers.put(STATIC_WEB_DIRECTORY_TYPE, directoryType.toString());
-      return this;
-   }
-
-   /**
-    * Sets the error page for the Static Website.
-    */
-   public UpdateCDNContainerOptions staticWebsiteErrorPage(String errorPage) {
-      checkNotNull(errorPage, "error page cannot be null");
-      headers.put(STATIC_WEB_ERROR, errorPage);
-      return this;
-   }
-
-   /**
-    * Sets the index page for the Static Website.
-    */
-   public UpdateCDNContainerOptions staticWebsiteIndexPage(String indexPage) {
-      checkNotNull(indexPage, "index page cannot be null");
-      headers.put(STATIC_WEB_INDEX, indexPage);
-      return this;
-   }
-
-   /**
-    * Enables or disables listings for the Static Website.
-    */
-   public UpdateCDNContainerOptions staticWebsiteListings(boolean listings) {
-      headers.put(STATIC_WEB_LISTINGS, Boolean.toString(listings));
-      return this;
-   }
-
-   /**
-    * Sets the listings CSS page for the Static Website.
-    */
-   public UpdateCDNContainerOptions staticWebsiteListingsCSS(String listingsCSS) {
-      checkNotNull(listingsCSS, "listingsCSS page cannot be null");
-      headers.put(STATIC_WEB_LISTINGS_CSS, listingsCSS);
-      return this;
-   }
-
-   public static class Builder {
-      /**
-       * @see UpdateCDNContainerOptions#ttl
-       */
-      public static UpdateCDNContainerOptions ttl(int ttl) {
-         UpdateCDNContainerOptions options = new UpdateCDNContainerOptions();
-         return options.ttl(ttl);
-      }
-
-      /**
-       * @see UpdateCDNContainerOptions#logRetention
-       */
-      public static UpdateCDNContainerOptions logRetention(boolean logRetention) {
-         UpdateCDNContainerOptions options = new UpdateCDNContainerOptions();
-         return options.logRetention(logRetention);
-      }
-
-      /**
-       * @see UpdateCDNContainerOptions#enabled
-       */
-      public static UpdateCDNContainerOptions enabled(boolean enabled) {
-         UpdateCDNContainerOptions options = new UpdateCDNContainerOptions();
-         return options.enabled(enabled);
-      }
-
-      /**
-       * @see UpdateCDNContainerOptions#staticWebsiteDirectoryType
-       */
-      public static UpdateCDNContainerOptions staticWebsiteDirectoryType(MediaType directoryType) {
-         UpdateCDNContainerOptions options = new UpdateCDNContainerOptions();
-         return options.staticWebsiteDirectoryType(directoryType);
-      }
-
-      /**
-       * @see UpdateCDNContainerOptions#staticWebsiteErrorPage
-       */
-      public static UpdateCDNContainerOptions staticWebsiteErrorPage(String errorPage) {
-         UpdateCDNContainerOptions options = new UpdateCDNContainerOptions();
-         return options.staticWebsiteErrorPage(errorPage);
-      }
-
-      /**
-       * @see UpdateCDNContainerOptions#staticWebsiteIndexPage
-       */
-      public static UpdateCDNContainerOptions staticWebsiteIndexPage(String indexPage) {
-         UpdateCDNContainerOptions options = new UpdateCDNContainerOptions();
-         return options.staticWebsiteIndexPage(indexPage);
-      }
-
-      /**
-       * @see UpdateCDNContainerOptions#staticWebsiteListings
-       */
-      public static UpdateCDNContainerOptions staticWebsiteListings(boolean enabled) {
-         UpdateCDNContainerOptions options = new UpdateCDNContainerOptions();
-         return options.staticWebsiteListings(enabled);
-      }
-
-      /**
-       * @see UpdateCDNContainerOptions#staticWebsiteListingsCSS
-       */
-      public static UpdateCDNContainerOptions staticWebsiteListingsCSS(String cssPage) {
-         UpdateCDNContainerOptions options = new UpdateCDNContainerOptions();
-         return options.staticWebsiteListingsCSS(cssPage);
-      }
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/e7d93f40/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/reference/CloudFilesConstants.java
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/reference/CloudFilesConstants.java b/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/reference/CloudFilesConstants.java
deleted file mode 100644
index 57ff302..0000000
--- a/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/reference/CloudFilesConstants.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.rackspace.cloudfiles.v1.reference;
-
-
-/**
- * Constants specified by Rackspace Cloud Files.
- */
-public final class CloudFilesConstants {
-   public static final int CDN_TTL_MIN = 900;
-   public static final int CDN_TTL_MAX = 31536000;
-   public static final int CDN_TTL_DEFAULT = 259200;
-
-   private CloudFilesConstants() {
-      throw new AssertionError("intentionally unimplemented");
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/e7d93f40/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/reference/CloudFilesHeaders.java
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/reference/CloudFilesHeaders.java b/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/reference/CloudFilesHeaders.java
deleted file mode 100644
index 1563c61..0000000
--- a/rackspace-cloudfiles/src/main/java/org/jclouds/rackspace/cloudfiles/v1/reference/CloudFilesHeaders.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.rackspace.cloudfiles.v1.reference;
-
-import org.jclouds.openstack.swift.v1.reference.SwiftHeaders;
-
-/**
- * Additional headers specified by Rackspace Cloud Files.
- */
-public final class CloudFilesHeaders {
-   // Access logs
-   public static final String CONTAINER_ACCESS_LOG_DELIVERY = SwiftHeaders.CONTAINER_METADATA_PREFIX + "Access-Log-Delivery";
-
-   // Common CDN Headers
-   public static final String CDN_ENABLED = "X-Cdn-Enabled";
-   public static final String CDN_LOG_RETENTION = "X-Log-Retention";
-   public static final String CDN_TTL = "X-Ttl";
-   public static final String CDN_URI = "X-Cdn-Uri";
-   public static final String CDN_SSL_URI = "X-Cdn-Ssl-Uri";
-   public static final String CDN_STREAMING_URI = "X-Cdn-Streaming-Uri";
-   public static final String CDN_IOS_URI = "X-Cdn-Ios-Uri";
-
-   // CDN Purge
-   public static final String CDN_PURGE_OBJECT_EMAIL = "X-Purge-Email";
-   public static final String CDN_PURGE_OBJECT_FAILED = "X-Purge-Failed-Reason";
-
-   private CloudFilesHeaders() {
-      throw new AssertionError("intentionally unimplemented");
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/e7d93f40/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/CloudFilesApiLiveTest.java
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/CloudFilesApiLiveTest.java b/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/CloudFilesApiLiveTest.java
deleted file mode 100644
index 4a1ce4a..0000000
--- a/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/CloudFilesApiLiveTest.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.rackspace.cloudfiles.v1;
-
-import org.jclouds.rackspace.cloudfiles.v1.internal.BaseCloudFilesApiLiveTest;
-import org.testng.annotations.Test;
-
-/**
- * Tests live behavior of {@code CloudFilesApi}.
- */
-@Test(groups = "live", testName = "CloudFilesApiLiveTest")
-public class CloudFilesApiLiveTest extends BaseCloudFilesApiLiveTest {
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/e7d93f40/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/CloudFilesApiMetadataTest.java
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/CloudFilesApiMetadataTest.java b/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/CloudFilesApiMetadataTest.java
deleted file mode 100644
index 8584ca4..0000000
--- a/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/CloudFilesApiMetadataTest.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.rackspace.cloudfiles.v1;
-
-import org.jclouds.View;
-import org.jclouds.apis.internal.BaseApiMetadataTest;
-import org.testng.annotations.Test;
-
-import com.google.common.collect.ImmutableSet;
-import com.google.common.reflect.TypeToken;
-
-/**
- * Tests the behavior of {@link CloudFilesApiMetadata}.
- */
-@Test(groups = "unit", testName = "CloudFilesApiMetadataTest")
-public class CloudFilesApiMetadataTest extends BaseApiMetadataTest {
-   public CloudFilesApiMetadataTest() {
-      super(new CloudFilesApiMetadata(), ImmutableSet.<TypeToken<? extends View>> of());
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/e7d93f40/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/binders/BindCDNPurgeEmailAddressesToHeadersMockTest.java
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/binders/BindCDNPurgeEmailAddressesToHeadersMockTest.java b/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/binders/BindCDNPurgeEmailAddressesToHeadersMockTest.java
deleted file mode 100644
index 7c4c4de..0000000
--- a/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/binders/BindCDNPurgeEmailAddressesToHeadersMockTest.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.rackspace.cloudfiles.v1.binders;
-
-import static org.testng.Assert.assertEquals;
-
-import java.util.List;
-
-import org.jclouds.http.HttpRequest;
-import org.jclouds.openstack.v2_0.internal.BaseOpenStackMockTest;
-import org.jclouds.rackspace.cloudfiles.v1.CloudFilesApi;
-import org.jclouds.rackspace.cloudfiles.v1.reference.CloudFilesHeaders;
-import org.testng.annotations.Test;
-
-import com.google.common.collect.ImmutableList;
-
-/**
- * Tests the behavior of {@code BindCDNPurgeEmailAddressesToHeaders}.
- */
-@Test(groups = "unit", testName = "BindCDNPurgeEmailAddressesToHeadersMockTest")
-public class BindCDNPurgeEmailAddressesToHeadersMockTest extends BaseOpenStackMockTest<CloudFilesApi> {
-
-   BindCDNPurgeEmailAddressesToHeaders binder = new BindCDNPurgeEmailAddressesToHeaders();
-
-   public void testEmailBind() throws Exception {
-      List<String> emails = ImmutableList.of("foo@bar.com", "bar@foo.com");
-
-      HttpRequest request = purgeRequest();
-      
-      HttpRequest actualRequest = binder.bindToRequest(request, emails);
-      
-      HttpRequest expectedRequest = HttpRequest.builder()
-            .method("DELETE")
-            .endpoint("https://storage101.dfw1.clouddrive.com/v1/MossoCloudFS_XXXXXX/")
-            .addHeader(CloudFilesHeaders.CDN_PURGE_OBJECT_EMAIL, "foo@bar.com, bar@foo.com")
-            .build();
-      
-      assertEquals(actualRequest, expectedRequest);
-      
-   }
-
-   @Test(expectedExceptions = NullPointerException.class, expectedExceptionsMessageRegExp = "input")
-   public void testNullList() {
-      HttpRequest request = purgeRequest();
-      binder.bindToRequest(request, null);
-   }
-
-   @Test(expectedExceptions = NullPointerException.class, expectedExceptionsMessageRegExp = "request")
-   public void testNullRequest() {
-      List<String> emails = ImmutableList.of("foo@bar.com", "bar@foo.com");
-      binder.bindToRequest(null, emails);
-   }
-   
-   private static HttpRequest purgeRequest() {
-      return HttpRequest.builder()
-                .method("DELETE")
-                .endpoint("https://storage101.dfw1.clouddrive.com/v1/MossoCloudFS_XXXXXX/")
-                .build();
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/e7d93f40/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/CloudFilesRegionScopedBlobStoreContextLiveTest.java
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/CloudFilesRegionScopedBlobStoreContextLiveTest.java b/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/CloudFilesRegionScopedBlobStoreContextLiveTest.java
deleted file mode 100644
index 89d1499..0000000
--- a/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/CloudFilesRegionScopedBlobStoreContextLiveTest.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.rackspace.cloudfiles.v1.blobstore;
-
-import static org.jclouds.rackspace.cloudidentity.v2_0.config.CloudIdentityCredentialTypes.API_KEY_CREDENTIALS;
-
-import java.util.Properties;
-
-import org.jclouds.openstack.swift.v1.blobstore.RegionScopedBlobStoreContextLiveTest;
-import org.testng.annotations.Test;
-
-/**
- * Tests the live behavior of the {@link RegionScopedBlobStoreContext}.
- */
-@Test(groups = "live")
-public class CloudFilesRegionScopedBlobStoreContextLiveTest extends RegionScopedBlobStoreContextLiveTest {
-
-   public CloudFilesRegionScopedBlobStoreContextLiveTest() {
-      provider = "rackspace-cloudfiles";
-   }
-
-   @Override
-   protected Properties setupProperties() {
-      Properties props = super.setupProperties();
-      setIfTestSystemPropertyPresent(props, API_KEY_CREDENTIALS);
-      return props;
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/e7d93f40/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/integration/CloudFilesBlobIntegrationLiveTest.java
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/integration/CloudFilesBlobIntegrationLiveTest.java b/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/integration/CloudFilesBlobIntegrationLiveTest.java
deleted file mode 100644
index 58ed73b..0000000
--- a/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/integration/CloudFilesBlobIntegrationLiveTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.rackspace.cloudfiles.v1.blobstore.integration;
-
-import static org.jclouds.rackspace.cloudidentity.v2_0.config.CloudIdentityCredentialTypes.API_KEY_CREDENTIALS;
-
-import java.util.Properties;
-
-import org.jclouds.openstack.swift.v1.blobstore.integration.SwiftBlobIntegrationLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", testName = "CloudFilesBlobIntegrationLiveTest")
-public class CloudFilesBlobIntegrationLiveTest extends SwiftBlobIntegrationLiveTest {
-
-   public CloudFilesBlobIntegrationLiveTest() {
-      provider = "rackspace-cloudfiles";
-   }
-   
-   @Override
-   protected Properties setupProperties() {
-      Properties props = super.setupProperties();
-      setIfTestSystemPropertyPresent(props, API_KEY_CREDENTIALS);
-      return props;
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/e7d93f40/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/integration/CloudFilesBlobLiveTest.java
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/integration/CloudFilesBlobLiveTest.java b/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/integration/CloudFilesBlobLiveTest.java
deleted file mode 100644
index 87519d5..0000000
--- a/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/integration/CloudFilesBlobLiveTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.rackspace.cloudfiles.v1.blobstore.integration;
-
-import static org.jclouds.rackspace.cloudidentity.v2_0.config.CloudIdentityCredentialTypes.API_KEY_CREDENTIALS;
-
-import java.util.Properties;
-
-import org.jclouds.openstack.swift.v1.blobstore.integration.SwiftBlobLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", testName = "CloudFilesBlobLiveTest")
-public class CloudFilesBlobLiveTest extends SwiftBlobLiveTest {
-
-   public CloudFilesBlobLiveTest() {
-      provider = "rackspace-cloudfiles";
-   }
-
-   @Override
-   protected Properties setupProperties() {
-      Properties props = super.setupProperties();
-      setIfTestSystemPropertyPresent(props, API_KEY_CREDENTIALS);
-      return props;
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/e7d93f40/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/integration/CloudFilesBlobSignerLiveTest.java
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/integration/CloudFilesBlobSignerLiveTest.java b/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/integration/CloudFilesBlobSignerLiveTest.java
deleted file mode 100644
index dea68f2..0000000
--- a/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/integration/CloudFilesBlobSignerLiveTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.rackspace.cloudfiles.v1.blobstore.integration;
-
-import static org.jclouds.rackspace.cloudidentity.v2_0.config.CloudIdentityCredentialTypes.API_KEY_CREDENTIALS;
-
-import java.util.Properties;
-
-import org.jclouds.openstack.swift.v1.blobstore.integration.SwiftBlobSignerLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", testName = "CloudFilesBlobSignerLiveTest")
-public class CloudFilesBlobSignerLiveTest extends SwiftBlobSignerLiveTest {
-
-   public CloudFilesBlobSignerLiveTest() {
-      provider = "rackspace-cloudfiles";
-   }
-
-   @Override
-   protected Properties setupProperties() {
-      Properties props = super.setupProperties();
-      setIfTestSystemPropertyPresent(props, API_KEY_CREDENTIALS);
-      return props;
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/e7d93f40/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/integration/CloudFilesContainerIntegrationLiveTest.java
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/integration/CloudFilesContainerIntegrationLiveTest.java b/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/integration/CloudFilesContainerIntegrationLiveTest.java
deleted file mode 100644
index ba99a75..0000000
--- a/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/integration/CloudFilesContainerIntegrationLiveTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.rackspace.cloudfiles.v1.blobstore.integration;
-
-import static org.jclouds.rackspace.cloudidentity.v2_0.config.CloudIdentityCredentialTypes.API_KEY_CREDENTIALS;
-
-import java.util.Properties;
-
-import org.jclouds.openstack.swift.v1.blobstore.integration.SwiftContainerIntegrationLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", testName = "CloudFilesContainerIntegrationLiveTest")
-public class CloudFilesContainerIntegrationLiveTest extends SwiftContainerIntegrationLiveTest {
-
-   public CloudFilesContainerIntegrationLiveTest() {
-      provider = "rackspace-cloudfiles";
-   }
-
-   @Override
-   protected Properties setupProperties() {
-      Properties props = super.setupProperties();
-      setIfTestSystemPropertyPresent(props, API_KEY_CREDENTIALS);
-      return props;
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/e7d93f40/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/integration/CloudFilesContainerLiveTest.java
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/integration/CloudFilesContainerLiveTest.java b/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/integration/CloudFilesContainerLiveTest.java
deleted file mode 100644
index 98ab003..0000000
--- a/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/integration/CloudFilesContainerLiveTest.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.rackspace.cloudfiles.v1.blobstore.integration;
-
-import static org.jclouds.rackspace.cloudidentity.v2_0.config.CloudIdentityCredentialTypes.API_KEY_CREDENTIALS;
-
-import java.io.IOException;
-import java.net.MalformedURLException;
-import java.util.Properties;
-
-import org.jclouds.openstack.swift.v1.blobstore.integration.SwiftContainerLiveTest;
-import org.testng.SkipException;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", testName = "CloudFilesContainerLiveTest")
-public class CloudFilesContainerLiveTest extends SwiftContainerLiveTest {
-
-   public CloudFilesContainerLiveTest() {
-      provider = "rackspace-cloudfiles";
-   }
-
-   @Override
-   public void testPublicAccess() throws InterruptedException, MalformedURLException, IOException {
-      throw new SkipException("public access only supported through CDN");
-   }
-   
-   @Override
-   public void testPublicAccessInNonDefaultLocationWithBigBlob() throws InterruptedException, MalformedURLException, IOException {
-      throw new SkipException("public access only supported through CDN");
-   }
-   
-   public void testPublicAccessInNonDefaultLocation() throws InterruptedException, MalformedURLException, IOException {
-      throw new SkipException("public access only supported through CDN");
-   }
-   
-   @Override
-   protected Properties setupProperties() {
-      Properties props = super.setupProperties();
-      setIfTestSystemPropertyPresent(props, API_KEY_CREDENTIALS);
-      return props;
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/e7d93f40/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/integration/CloudFilesServiceIntegrationLiveTest.java
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/integration/CloudFilesServiceIntegrationLiveTest.java b/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/integration/CloudFilesServiceIntegrationLiveTest.java
deleted file mode 100644
index 66b4b64..0000000
--- a/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/blobstore/integration/CloudFilesServiceIntegrationLiveTest.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.rackspace.cloudfiles.v1.blobstore.integration;
-
-import static org.jclouds.rackspace.cloudidentity.v2_0.config.CloudIdentityCredentialTypes.API_KEY_CREDENTIALS;
-
-import java.util.Properties;
-
-import org.jclouds.openstack.swift.v1.blobstore.integration.SwiftServiceIntegrationLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", testName = "CloudFilesServiceIntegrationLiveTest")
-public class CloudFilesServiceIntegrationLiveTest extends SwiftServiceIntegrationLiveTest {
-
-   public CloudFilesServiceIntegrationLiveTest() {
-      provider = "rackspace-cloudfiles";
-   }
-
-   @Override
-   protected Properties setupProperties() {
-      Properties props = super.setupProperties();
-      setIfTestSystemPropertyPresent(props, API_KEY_CREDENTIALS);
-      return props;
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/e7d93f40/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/features/CloudFilesAccountApiLiveTest.java
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/features/CloudFilesAccountApiLiveTest.java b/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/features/CloudFilesAccountApiLiveTest.java
deleted file mode 100644
index 95de2b3..0000000
--- a/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/features/CloudFilesAccountApiLiveTest.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.rackspace.cloudfiles.v1.features;
-
-import static org.testng.Assert.assertTrue;
-
-import org.jclouds.openstack.swift.v1.domain.Account;
-import org.jclouds.openstack.swift.v1.features.AccountApi;
-import org.jclouds.openstack.swift.v1.features.AccountApiLiveTest;
-import org.jclouds.rackspace.cloudfiles.v1.CloudFilesApi;
-import org.testng.annotations.Test;
-
-/**
- * Tests the live behavior of the OpenStack Object Storage {@link AccountApi}
- * via the {@link CloudFilesApi}.
- */
-@Test(groups = "live", testName = "CloudFilesAccountApiLiveTest")
-public class CloudFilesAccountApiLiveTest extends AccountApiLiveTest {
-
-   public CloudFilesAccountApiLiveTest() {
-      provider = "rackspace-cloudfiles";
-   }
-
-   public void testUrlKeyExists() throws Exception {
-      for (String regionId : regions) {
-         Account account = api.getAccountApi(regionId).get();
-         assertTrue(account.getTemporaryUrlKey().isPresent());
-      }
-   }
-}

http://git-wip-us.apache.org/repos/asf/jclouds-labs-openstack/blob/e7d93f40/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/features/CloudFilesBulkApiLiveTest.java
----------------------------------------------------------------------
diff --git a/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/features/CloudFilesBulkApiLiveTest.java b/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/features/CloudFilesBulkApiLiveTest.java
deleted file mode 100644
index ba6c8b4..0000000
--- a/rackspace-cloudfiles/src/test/java/org/jclouds/rackspace/cloudfiles/v1/features/CloudFilesBulkApiLiveTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.rackspace.cloudfiles.v1.features;
-
-import org.jclouds.openstack.swift.v1.features.BulkApiLiveTest;
-import org.testng.annotations.Test;
-
-/**
- * Tests the live behavior of the OpenStack Object Storage {@link BulkApi}
- * via the {@link CloudFilesApi}.
- */
-@Test(groups = "live", testName = "CloudFilesBulkApiLiveTest")
-public class CloudFilesBulkApiLiveTest extends BulkApiLiveTest {
-   public CloudFilesBulkApiLiveTest() {
-      provider = "rackspace-cloudfiles";
-   }
-}