You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jclouds.apache.org by ad...@apache.org on 2013/05/17 00:12:18 UTC

[1/5] JCLOUDS-54. remove historical demos, archetypes and assemblies modules

Updated Branches:
  refs/heads/master 7cf8d611a -> f22731d90


http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/speedtest-azurequeue/src/main/java/org/jclouds/azure/azurequeue/SpeedTest.java
----------------------------------------------------------------------
diff --git a/demos/speedtest-azurequeue/src/main/java/org/jclouds/azure/azurequeue/SpeedTest.java b/demos/speedtest-azurequeue/src/main/java/org/jclouds/azure/azurequeue/SpeedTest.java
deleted file mode 100644
index e5b3b7c..0000000
--- a/demos/speedtest-azurequeue/src/main/java/org/jclouds/azure/azurequeue/SpeedTest.java
+++ /dev/null
@@ -1,171 +0,0 @@
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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.azure.azurequeue;
-
-import static org.jclouds.concurrent.FutureIterables.awaitCompletion;
-
-import java.util.Map;
-import java.util.Set;
-import java.util.SortedSet;
-import java.util.concurrent.Future;
-
-import org.jclouds.azure.storage.options.ListOptions;
-import org.jclouds.azure.storage.queue.AzureQueueAsyncClient;
-import org.jclouds.azure.storage.queue.AzureQueueClient;
-import org.jclouds.azure.storage.queue.domain.QueueMetadata;
-import org.jclouds.concurrent.MoreExecutors;
-import org.jclouds.enterprise.config.EnterpriseConfigurationModule;
-import org.jclouds.logging.ConsoleLogger;
-import org.jclouds.logging.Logger;
-import org.jclouds.logging.config.NullLoggingModule;
-import org.jclouds.rest.RestContext;
-import org.jclouds.rest.RestContextFactory;
-
-import com.google.common.collect.ImmutableSet;
-import com.google.common.collect.Maps;
-import com.google.common.collect.Sets;
-import com.google.inject.Module;
-
-/**
- * This the Main class of an Application that tests your response time to amazon AzureQueue.
- * 
- * Usage is: java org.jclouds.aws.sqs.SpeedTest \"account\" \"encodedKey\" \"queueName\"
- * \"messageCount\"
- * 
- * @author Adrian Cole
- */
-public class SpeedTest {
-
-   public static int PARAMETERS = 4;
-   public static String INVALID_SYNTAX = "Invalid number of parameters. Syntax is: \"account\" \"encodedKey\"  \"queueName\" \"messageCount\" ";
-   private static final Logger logger = Logger.CONSOLE;
-
-   private static final Logger traceLogger = new ConsoleLogger() {
-
-      @Override
-      public boolean isTraceEnabled() {
-         return true;
-      }
-
-      @Override
-      public void trace(String message, Object... args) {
-         super.info(message, args);
-      }
-
-   };
-
-   public static void main(String[] args) throws InterruptedException {
-
-      if (args.length < PARAMETERS)
-         throw new IllegalArgumentException(INVALID_SYNTAX);
-
-      boolean isEnterprise = System.getProperties().containsKey("jclouds.enterprise");
-      // Args
-      String account = args[0];
-      String encodedKey = args[1];
-      String queueName = args[2];
-      int messageCount = Integer.parseInt(args[3]);
-
-      Set<Module> modules = isEnterprise ? ImmutableSet.<Module> of(new NullLoggingModule(),
-               new EnterpriseConfigurationModule()) : ImmutableSet
-               .<Module> of(new NullLoggingModule());
-
-      RestContext<AzureQueueClient, AzureQueueAsyncClient> context = new RestContextFactory()
-               .createContext("azurequeue", account, encodedKey, modules);
-
-      try {
-         if (purgeQueues(queueName, context)) {
-            logger.info("pausing 60 seconds before recreating queues");
-            Thread.sleep(60 * 1000);
-         }
-         createQueue(queueName, context);
-         runTests(queueName, messageCount, isEnterprise ? "enterprise" : "default", context);
-      } finally {
-         purgeQueues(queueName, context);
-         // Close connections
-         context.close();
-         System.exit(0);
-      }
-
-   }
-
-   private static class QueueMessage {
-      final String queue;
-      final String message;
-
-      QueueMessage(String queue, String message) {
-         this.queue = queue;
-         this.message = message;
-      }
-
-      @Override
-      public String toString() {
-         return "[queue=" + queue + ", message=" + message + "]";
-      }
-   }
-
-   private static void runTests(String queueName, int messageCount, String contextName,
-            RestContext<AzureQueueClient, AzureQueueAsyncClient> context)
-            throws InterruptedException {
-      String message = "1";
-      long timeOut = messageCount * 200; // minimum rate should be at least 5/second
-
-      logger.info("context: %s, queueName: %s", contextName, queueName);
-
-      // fire off all the messages for the test
-      Map<QueueMessage, Future<Void>> responses = Maps.newHashMap();
-      for (int i = 0; i < messageCount; i++) {
-         responses.put(new QueueMessage(queueName, message), context.getAsyncApi().putMessage(
-                  queueName, message));
-      }
-
-      Map<QueueMessage, Exception> exceptions = awaitCompletion(responses, MoreExecutors.sameThreadExecutor(),
-               timeOut, traceLogger, String.format("context: %s", contextName));
-
-      if (exceptions.size() > 0)
-         logger.error("problems in context: %s: %s", contextName, exceptions);
-
-      System.gc();
-      logger.info("pausing 5 seconds before the next run");
-      Thread.sleep(5000);// let the network quiet down
-   }
-
-   private static void createQueue(String queueName,
-            RestContext<AzureQueueClient, AzureQueueAsyncClient> nullLoggingDefaultContext) {
-      logger.info("creating queue: %s", queueName);
-      nullLoggingDefaultContext.getApi().createQueue(queueName);
-   }
-
-   private static boolean purgeQueues(String queueName,
-            RestContext<AzureQueueClient, AzureQueueAsyncClient> nullLoggingDefaultContext) {
-      boolean deleted = false;
-      try {
-         SortedSet<QueueMetadata> result = Sets.newTreeSet(nullLoggingDefaultContext.getApi()
-                  .listQueues(ListOptions.Builder.prefix(queueName)));
-         if (result.size() >= 1) {
-            nullLoggingDefaultContext.getApi().deleteQueue(result.last().getName());
-            System.out.printf("deleted queue: %s%n", queueName);
-            deleted = true;
-         }
-      } catch (Exception e) {
-
-      }
-      return deleted;
-   }
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/speedtest-sqs/README.txt
----------------------------------------------------------------------
diff --git a/demos/speedtest-sqs/README.txt b/demos/speedtest-sqs/README.txt
deleted file mode 100644
index c290b98..0000000
--- a/demos/speedtest-sqs/README.txt
+++ /dev/null
@@ -1,25 +0,0 @@
-====
-    Licensed to jclouds, Inc. (jclouds) under one or more
-    contributor license agreements.  See the NOTICE file
-    distributed with this work for additional information
-    regarding copyright ownership.  jclouds 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.
-====
-
-#
-# this is a simple example command line client that creates a queue in all regions, then tracks performance of it
-# 1. execute 'mvn install' to build the sample
-# 2. invoke the jar, passing your aws credentials and the bucket you wish to create
-# ex.
-# java -jar target/jclouds-speedtest-sqs-jar-with-dependencies.jar $AWS_USER $AWS_PWD testqueue 1000

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/speedtest-sqs/pom.xml
----------------------------------------------------------------------
diff --git a/demos/speedtest-sqs/pom.xml b/demos/speedtest-sqs/pom.xml
deleted file mode 100644
index 13f5270..0000000
--- a/demos/speedtest-sqs/pom.xml
+++ /dev/null
@@ -1,84 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-Licensed to jclouds, Inc. (jclouds) under one or more
-contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  jclouds 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.
-
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>org.apache.jclouds</groupId>
-    <artifactId>jclouds-demos-project</artifactId>
-    <version>1.7.0-SNAPSHOT</version>
-  </parent>
-  <artifactId>jclouds-demo-speedtest-sqs</artifactId>
-  <name>Speed tests of SQS across regions</name>
-  <description>Creates a queue in all amazon regions and then tests performance against it</description>
-
-  <dependencies>
-    <dependency>
-      <groupId>org.apache.jclouds.api</groupId>
-      <artifactId>sqs</artifactId>
-      <version>${project.version}</version>
-    </dependency> 
-    <dependency>
-      <groupId>org.apache.jclouds.driver</groupId>
-      <artifactId>jclouds-enterprise</artifactId>
-      <version>${project.version}</version>
-    </dependency> 
-  </dependencies>
-
-  <build>
-    <finalName>${project.artifactId}</finalName>
-    <plugins>
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-jar-plugin</artifactId>
-        <configuration>
-          <archive>
-            <manifest>
-              <mainClass>org.jclouds.aws.sqs.SpeedTest</mainClass>
-            </manifest>
-          </archive>
-        </configuration>
-      </plugin>
-      <plugin>
-        <artifactId>maven-assembly-plugin</artifactId>
-        <configuration>
-          <descriptorRefs>
-            <descriptorRef>jar-with-dependencies</descriptorRef>
-          </descriptorRefs>
-          <archive>
-            <manifest>
-              <mainClass>org.jclouds.aws.sqs.SpeedTest</mainClass>
-            </manifest>
-          </archive>
-        </configuration>
-        <executions>
-          <execution>
-            <id>make-assembly</id>
-            <phase>package</phase>
-            <goals>
-              <goal>single</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-    </plugins>
-  </build>
-</project>

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/speedtest-sqs/src/main/java/org/jclouds/aws/sqs/SpeedTest.java
----------------------------------------------------------------------
diff --git a/demos/speedtest-sqs/src/main/java/org/jclouds/aws/sqs/SpeedTest.java b/demos/speedtest-sqs/src/main/java/org/jclouds/aws/sqs/SpeedTest.java
deleted file mode 100644
index 019c3bd..0000000
--- a/demos/speedtest-sqs/src/main/java/org/jclouds/aws/sqs/SpeedTest.java
+++ /dev/null
@@ -1,177 +0,0 @@
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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.aws.sqs;
-
-import static org.jclouds.concurrent.FutureIterables.awaitCompletion;
-import static org.jclouds.sqs.options.ListQueuesOptions.Builder.queuePrefix;
-
-import java.util.Map;
-import java.util.Set;
-import java.util.SortedSet;
-import java.util.concurrent.Future;
-
-import org.jclouds.aws.domain.Region;
-import org.jclouds.concurrent.MoreExecutors;
-import org.jclouds.enterprise.config.EnterpriseConfigurationModule;
-import org.jclouds.logging.ConsoleLogger;
-import org.jclouds.logging.Logger;
-import org.jclouds.logging.config.NullLoggingModule;
-import org.jclouds.rest.RestContext;
-import org.jclouds.rest.RestContextFactory;
-import org.jclouds.sqs.SQSAsyncClient;
-import org.jclouds.sqs.SQSClient;
-import org.jclouds.sqs.domain.Queue;
-
-import com.google.common.collect.ImmutableSet;
-import com.google.common.collect.Maps;
-import com.google.common.collect.Sets;
-import com.google.inject.Module;
-
-/**
- * This the Main class of an Application that tests your response time to amazon SQS.
- * 
- * Usage is: java org.jclouds.aws.sqs.SpeedTest \"accesskeyid\" \"secretkey\" \"queueName\"
- * \"messageCount\"
- * 
- * @author Adrian Cole
- */
-public class SpeedTest {
-   private static final ImmutableSet<String> REGIONS = ImmutableSet.of(Region.EU_WEST_1, Region.US_EAST_1,
-            Region.US_WEST_1, Region.AP_SOUTHEAST_1);
-   public static final int PARAMETERS = 4;
-   public static final String INVALID_SYNTAX = "Invalid number of parameters. Syntax is: \"accesskeyid\" \"secretkey\"  \"queueName\" \"messageCount\" ";
-
-   private static final Logger logger = Logger.CONSOLE;
-
-   private static final Logger traceLogger = new ConsoleLogger() {
-
-      @Override
-      public boolean isTraceEnabled() {
-         return true;
-      }
-
-      @Override
-      public void trace(String message, Object... args) {
-         super.info(message, args);
-      }
-
-   };
-
-   public static void main(String[] args) throws InterruptedException {
-
-      if (args.length < PARAMETERS)
-         throw new IllegalArgumentException(INVALID_SYNTAX);
-
-      boolean isEnterprise = System.getProperties().containsKey("jclouds.enterprise");
-      // Args
-      String accesskeyid = args[0];
-      String secretkey = args[1];
-      String queueName = args[2];
-      int messageCount = Integer.parseInt(args[3]);
-
-      Set<Module> modules = isEnterprise ? ImmutableSet.<Module> of(new NullLoggingModule(),
-               new EnterpriseConfigurationModule()) : ImmutableSet.<Module> of(new NullLoggingModule());
-
-      RestContext<SQSClient, SQSAsyncClient> context = new RestContextFactory().createContext("sqs", accesskeyid,
-               secretkey, modules);
-
-      try {
-         Set<Queue> queues = Sets.newHashSet();
-         if (purgeQueues(queueName, context)) {
-            logger.info("pausing 60 seconds before recreating queues");
-            Thread.sleep(60 * 1000);
-         }
-         createQueues(queueName, context, queues);
-         runTests(messageCount, isEnterprise ? "enterprise" : "default", context, queues);
-      } finally {
-         purgeQueues(queueName, context);
-         // Close connections
-         context.close();
-         System.exit(0);
-      }
-
-   }
-
-   private static class QueueMessage {
-      final Queue queue;
-      final String message;
-
-      QueueMessage(Queue queue, String message) {
-         this.queue = queue;
-         this.message = message;
-      }
-
-      @Override
-      public String toString() {
-         return "[queue=" + queue + ", message=" + message + "]";
-      }
-   }
-
-   private static void runTests(int messageCount, String contextName, RestContext<SQSClient, SQSAsyncClient> context,
-            Set<Queue> queues) throws InterruptedException {
-      String message = "1";
-      long timeOut = messageCount * 200; // minimum rate should be at least 5/second
-
-      for (Queue queue : queues) {
-         logger.info("context: %s, region: %s, queueName: %s", contextName, queue.getRegion(), queue.getName());
-
-         // fire off all the messages for the test
-         Map<QueueMessage, Future<byte[]>> responses = Maps.newHashMap();
-         for (int i = 0; i < messageCount; i++) {
-            responses.put(new QueueMessage(queue, message), context.getAsyncApi().sendMessage(queue, message));
-         }
-
-         Map<QueueMessage, Exception> exceptions = awaitCompletion(responses, MoreExecutors.sameThreadExecutor(),
-                  timeOut, traceLogger, String.format("context: %s, region: %s", contextName, queue.getRegion()));
-
-         if (exceptions.size() > 0)
-            logger.error("problems in context: %s, region: %s: %s", contextName, queue.getRegion(), exceptions);
-
-         System.gc();
-         logger.info("pausing 5 seconds before the next run");
-         Thread.sleep(5000);// let the network quiet down
-      }
-   }
-
-   private static void createQueues(String queueName, RestContext<SQSClient, SQSAsyncClient> nullLoggingDefaultContext,
-            Set<Queue> queues) {
-      for (String region : REGIONS) {
-         logger.info("creating queue: %s in region %s", queueName, region);
-         queues.add(nullLoggingDefaultContext.getApi().createQueueInRegion(region, queueName));
-      }
-   }
-
-   private static boolean purgeQueues(String queueName, RestContext<SQSClient, SQSAsyncClient> nullLoggingDefaultContext) {
-      boolean deleted = false;
-      for (String region : REGIONS) {
-         try {
-            SortedSet<Queue> result = Sets.newTreeSet(nullLoggingDefaultContext.getApi().listQueuesInRegion(region,
-                     queuePrefix(queueName)));
-            if (result.size() >= 1) {
-               nullLoggingDefaultContext.getApi().deleteQueue(result.last());
-               logger.info("deleted queue: %s in region %s", queueName, region);
-               deleted = true;
-            }
-         } catch (Exception e) {
-
-         }
-      }
-      return deleted;
-   }
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index ce3a4b8..988c961 100644
--- a/pom.xml
+++ b/pom.xml
@@ -33,8 +33,6 @@ under the License.
   <modules>
     <module>project</module>
     <module>resources</module>
-    <module>assemblies</module>
-    <module>archetypes</module>
     <module>core</module>
     <module>common</module>
     <module>compute</module>


[4/5] JCLOUDS-54. remove historical demos, archetypes and assemblies modules

Posted by ad...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/features/KeyApiExpectTest.java
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/features/KeyApiExpectTest.java b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/features/KeyApiExpectTest.java
deleted file mode 100644
index a90de7e..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/features/KeyApiExpectTest.java
+++ /dev/null
@@ -1,86 +0,0 @@
-#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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 ${package}.features;
-
-import static org.testng.Assert.assertEquals;
-
-import org.jclouds.http.HttpRequest;
-import org.jclouds.http.HttpResponse;
-import ${package}.${providerName}Api;
-import ${package}.internal.Base${providerName}ApiExpectTest;
-import ${package}.parse.ParseKeyListTest;
-import ${package}.parse.ParseKeyTest;
-import org.testng.annotations.Test;
-
-import com.google.common.collect.ImmutableSet;
-
-/**
- * @author ${author}
- */
-@Test(groups = "unit", testName = "KeyApiExpectTest")
-public class KeyApiExpectTest extends Base${providerName}ApiExpectTest {
-   public HttpRequest list = HttpRequest.builder().method("GET")
-                                        .endpoint("${providerEndpoint}/my/keys")
-                                        .addHeader("X-Api-Version", "${providerApiVersion}")
-                                        .addHeader("Accept", "application/json")
-                                        .addHeader("Authorization", "Basic aWRlbnRpdHk6Y3JlZGVudGlhbA==").build();
-   
-   public HttpResponse listResponse = HttpResponse.builder().statusCode(200).payload(
-            payloadFromResource("/key_list.json")).build();
-
-   public void testListKeysWhenResponseIs2xx() {
-
-      ${providerName}Api apiWhenKeysExists = requestSendsResponse(list, listResponse);
-
-      assertEquals(apiWhenKeysExists.getKeyApi().list(), new ParseKeyListTest().expected());
-   }
-
-   public void testListKeysWhenResponseIs404() {
-      HttpResponse listResponse = HttpResponse.builder().statusCode(404).build();
-
-      ${providerName}Api listWhenNone = requestSendsResponse(list, listResponse);
-
-      assertEquals(listWhenNone.getKeyApi().list(), ImmutableSet.of());
-   }
-
-   public void testCreateKeyWhenResponseIs202() throws Exception {
-      HttpRequest create = HttpRequest.builder()
-               .method("POST")
-               .endpoint("${providerEndpoint}/my/keys")
-               .addHeader("X-Api-Version", "${providerApiVersion}")
-               .addHeader("Accept", "application/json")
-               .addHeader("Authorization", "Basic aWRlbnRpdHk6Y3JlZGVudGlhbA==")
-               .payload(
-                     payloadFromStringWithContentType(
-                           "{\"name\":\"rsa\",\"key\":\"ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA0A5Pf5Cq...\"}",
-                           "application/json")).build();
-
-      HttpResponse createResponse = HttpResponse.builder().statusCode(202).message("HTTP/1.1 202 Accepted")
-               .payload(payloadFromResourceWithContentType("/key.json", "application/json; charset=UTF-8"))
-               .build();
-
-      ${providerName}Api apiWithNewKey = requestSendsResponse(create, createResponse);
-
-      assertEquals(apiWithNewKey.getKeyApi().create(new ParseKeyTest().expected())
-            .toString(), new ParseKeyTest().expected().toString());
-   }
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/features/KeyApiLiveTest.java
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/features/KeyApiLiveTest.java b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/features/KeyApiLiveTest.java
deleted file mode 100644
index 0bb913f..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/features/KeyApiLiveTest.java
+++ /dev/null
@@ -1,90 +0,0 @@
-#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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 ${package}.features;
-
-import static org.testng.Assert.assertEquals;
-
-import java.util.Set;
-
-import org.jclouds.crypto.SshKeys;
-import ${package}.domain.Key;
-import ${package}.features.KeyApi;
-import ${package}.internal.Base${providerName}ApiLiveTest;
-import org.testng.annotations.BeforeTest;
-import org.testng.annotations.Test;
-
-/**
- * @author ${author}
- */
-@Test(groups = "live", singleThreaded = true, testName = "KeyApiLiveTest")
-public class KeyApiLiveTest extends Base${providerName}ApiLiveTest {
-
-   @Test
-   public void testListAndGetKeys() throws Exception {
-      KeyApi api = context.getApi().getKeyApi();
-      Set<Key> response = api.list();
-      assert null != response;
-      for (Key key : response) {
-         Key newDetails = api.get(key.getName());
-         assertEquals(newDetails.getName(), key.getName());
-         assertEquals(newDetails.get(), key.get());
-         assertEquals(newDetails.getCreated(), key.getCreated());
-      }
-
-   }
-   
-   private String keyText;
-   private String fingerprint;
-
-   @BeforeTest
-   public void initKeys() {
-      keyText = SshKeys.generate().get("public");
-      fingerprint = SshKeys.fingerprintPublicKey(keyText);
-   }
-
-   public void testCreateKey() {
-      KeyApi api = context.getApi().getKeyApi();
-
-      Key newKey = api.create(Key.builder().name(fingerprint).key(keyText).build());
-      assertEquals(newKey.getName(), fingerprint);
-      assertEquals(newKey.get(), keyText);
-
-      newKey = api.get(fingerprint);
-      assertEquals(newKey.getName(), fingerprint);
-      assertEquals(newKey.get(), keyText);
-   }
-
-   @Test(dependsOnMethods = "testCreateKey", expectedExceptions = IllegalStateException.class)
-   public void testDuplicateKey() {
-      KeyApi api = context.getApi().getKeyApi();
-      api.create(Key.builder().name(fingerprint).key(keyText).build());
-   }
-
-   @Test(dependsOnMethods = "testDuplicateKey")
-   public void testDestroyKey() {
-      final KeyApi api = context.getApi().getKeyApi();
-      api.delete(fingerprint);
-      // not that eventhough the key is destroyed it is visible via GET for at
-      // least 45 seconds. This may be a cache issue on the server
-   }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/handlers/__providerName__ErrorHandlerTest.java
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/handlers/__providerName__ErrorHandlerTest.java b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/handlers/__providerName__ErrorHandlerTest.java
deleted file mode 100644
index 9b79f80..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/handlers/__providerName__ErrorHandlerTest.java
+++ /dev/null
@@ -1,100 +0,0 @@
-#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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 ${package}.handlers;
-
-import static org.easymock.EasyMock.createMock;
-import static org.easymock.EasyMock.expect;
-import static org.easymock.EasyMock.replay;
-import static org.easymock.EasyMock.reportMatcher;
-import static org.easymock.EasyMock.verify;
-
-import java.net.URI;
-
-import org.easymock.IArgumentMatcher;
-import org.jclouds.http.HttpCommand;
-import org.jclouds.http.HttpRequest;
-import org.jclouds.http.HttpResponse;
-import org.testng.annotations.Test;
-
-/**
- * 
- * @author ${author}
- */
-@Test(groups = "unit", testName = "${providerName}ErrorHandlerTest")
-public class ${providerName}ErrorHandlerTest {
-   
-   @Test
-   public void test409MakesIllegalStateException() {
-      assertCodeMakes(
-               "POST",
-               URI.create("${providerEndpoint}"),
-               409,
-               "HTTP/1.1 409 Conflict",
-               "\"{\"code\":\"InvalidState\",\"message\":\"An incompatible transition has already been queued for this resource\"}\"",
-               IllegalStateException.class);
-   }
-
-   private void assertCodeMakes(String method, URI uri, int statusCode, String message, String content,
-         Class<? extends Exception> expected) {
-      assertCodeMakes(method, uri, statusCode, message, "application/json", content, expected);
-   }
-
-   private void assertCodeMakes(String method, URI uri, int statusCode, String message, String contentType,
-         String content, Class<? extends Exception> expected) {
-
-      ${providerName}ErrorHandler function = new ${providerName}ErrorHandler();
-
-      HttpCommand command = createMock(HttpCommand.class);
-      HttpRequest request = HttpRequest.builder().method(method).endpoint(uri).build();
-      HttpResponse response = HttpResponse.builder().statusCode(statusCode).message(message).payload(content).build();
-      response.getPayload().getContentMetadata().setContentType(contentType);
-
-      expect(command.getCurrentRequest()).andReturn(request).atLeastOnce();
-      command.setException(classEq(expected));
-
-      replay(command);
-
-      function.handleError(command, response);
-
-      verify(command);
-   }
-
-   public static Exception classEq(final Class<? extends Exception> in) {
-      reportMatcher(new IArgumentMatcher() {
-
-         @Override
-         public void appendTo(StringBuffer buffer) {
-            buffer.append("classEq(");
-            buffer.append(in);
-            buffer.append(")");
-         }
-
-         @Override
-         public boolean matches(Object arg) {
-            return arg.getClass() == in;
-         }
-
-      });
-      return null;
-   }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/internal/Base__providerName__ApiExpectTest.java
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/internal/Base__providerName__ApiExpectTest.java b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/internal/Base__providerName__ApiExpectTest.java
deleted file mode 100644
index 3b08f9b..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/internal/Base__providerName__ApiExpectTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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 ${package}.internal;
-
-import ${package}.${providerName}Api;
-
-/**
- * @author ${author}
- */
-public class Base${providerName}ApiExpectTest extends Base${providerName}ExpectTest<${providerName}Api> {
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/internal/Base__providerName__ApiLiveTest.java
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/internal/Base__providerName__ApiLiveTest.java b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/internal/Base__providerName__ApiLiveTest.java
deleted file mode 100644
index 1314c00..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/internal/Base__providerName__ApiLiveTest.java
+++ /dev/null
@@ -1,49 +0,0 @@
-#set( $lcaseProviderName = ${providerName.toLowerCase()} )
-#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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 ${package}.internal;
-
-import org.jclouds.apis.BaseContextLiveTest;
-import ${package}.${providerName}ApiMetadata;
-import ${package}.${providerName}AsyncApi;
-import ${package}.${providerName}Api;
-import org.jclouds.rest.RestContext;
-
-import com.google.common.reflect.TypeToken;
-
-
-/**
- * @author ${author}
- */
-public class Base${providerName}ApiLiveTest extends BaseContextLiveTest<RestContext<${providerName}Api, ${providerName}AsyncApi>> {
-
-   public Base${providerName}ApiLiveTest() {
-      provider = "${lcaseProviderName}";
-   }
-   
-   @Override
-   protected TypeToken<RestContext<${providerName}Api, ${providerName}AsyncApi>> contextType() {
-      return ${providerName}ApiMetadata.CONTEXT_TOKEN;
-   }
-
-}
-

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/internal/Base__providerName__AsyncApiExpectTest.java
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/internal/Base__providerName__AsyncApiExpectTest.java b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/internal/Base__providerName__AsyncApiExpectTest.java
deleted file mode 100644
index 2fde98b..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/internal/Base__providerName__AsyncApiExpectTest.java
+++ /dev/null
@@ -1,40 +0,0 @@
-#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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 ${package}.internal;
-
-import java.util.Properties;
-
-import org.jclouds.http.HttpRequest;
-import org.jclouds.http.HttpResponse;
-import ${package}.${providerName}AsyncApi;
-
-import com.google.common.base.Function;
-import com.google.inject.Module;
-
-/**
- * @author ${author}
- */
-public class Base${providerName}AsyncApiExpectTest extends Base${providerName}ExpectTest<${providerName}AsyncApi> {
-   public ${providerName}AsyncApi createClient(Function<HttpRequest, HttpResponse> fn, Module module, Properties props) {
-      return createInjector(fn, module, props).getInstance(${providerName}AsyncApi.class);
-   }
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/internal/Base__providerName__ExpectTest.java
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/internal/Base__providerName__ExpectTest.java b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/internal/Base__providerName__ExpectTest.java
deleted file mode 100644
index 71c8126..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/internal/Base__providerName__ExpectTest.java
+++ /dev/null
@@ -1,35 +0,0 @@
-#set( $lcaseProviderName = ${providerName.toLowerCase()} )
-#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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 ${package}.internal;
-
-import org.jclouds.rest.internal.BaseRestApiExpectTest;
-
-/**
- * @author ${author}
- */
-public class Base${providerName}ExpectTest<T> extends BaseRestApiExpectTest<T> {
-
-   public Base${providerName}ExpectTest() {
-      provider = "${lcaseProviderName}";
-   }
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/parse/ParseKeyListTest.java
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/parse/ParseKeyListTest.java b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/parse/ParseKeyListTest.java
deleted file mode 100644
index c0a5f75..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/parse/ParseKeyListTest.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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 ${package}.parse;
-
-import java.util.Set;
-
-import javax.ws.rs.Consumes;
-import javax.ws.rs.core.MediaType;
-
-import org.jclouds.date.internal.SimpleDateFormatDateService;
-import ${package}.domain.Key;
-import org.jclouds.json.BaseSetParserTest;
-import org.jclouds.json.config.GsonModule;
-import org.testng.annotations.Test;
-
-import com.google.common.collect.ImmutableSet;
-import com.google.inject.Guice;
-import com.google.inject.Injector;
-
-/**
- * @author ${author}
- */
-@Test(groups = "unit", testName = "ParseKeyListTest")
-public class ParseKeyListTest extends BaseSetParserTest<Key> {
-
-   @Override
-   public String resource() {
-      return "/key_list.json";
-   }
-
-   @Override
-   @Consumes(MediaType.APPLICATION_JSON)
-   public Set<Key> expected() {
-      return ImmutableSet.of(
-            Key.builder()
-               .name("rsa")
-               .key("ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA0A5Pf5Cq...")
-               .created(new SimpleDateFormatDateService().iso8601SecondsDateParse("2011-04-13T22:14:46+00:00"))
-               .build()
-      );
-   }
-
-   protected Injector injector() {
-      return Guice.createInjector(new GsonModule() {
-
-         @Override
-         protected void configure() {
-            bind(DateAdapter.class).to(Iso8601DateAdapter.class);
-            super.configure();
-         }
-
-      });
-   }
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/parse/ParseKeyTest.java
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/parse/ParseKeyTest.java b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/parse/ParseKeyTest.java
deleted file mode 100644
index 8ab13d0..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/parse/ParseKeyTest.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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 ${package}.parse;
-
-import javax.ws.rs.Consumes;
-import javax.ws.rs.core.MediaType;
-
-import org.jclouds.date.internal.SimpleDateFormatDateService;
-import ${package}.domain.Key;
-import org.jclouds.json.BaseItemParserTest;
-import org.jclouds.json.config.GsonModule;
-import org.testng.annotations.Test;
-
-import com.google.inject.Guice;
-import com.google.inject.Injector;
-
-/**
- * @author ${author}
- */
-@Test(groups = "unit", testName = "ParseKeyTest")
-public class ParseKeyTest extends BaseItemParserTest<Key> {
-
-   @Override
-   public String resource() {
-      return "/key.json";
-   }
-
-   @Override
-   @Consumes(MediaType.APPLICATION_JSON)
-   public Key expected() {
-      return Key.builder()
-                .name("rsa")
-                .key("ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA0A5Pf5Cq...")
-                .created(new SimpleDateFormatDateService().iso8601SecondsDateParse("2011-04-13T22:14:46+00:00"))
-                .build();
-   }
-   
-   protected Injector injector() {
-      return Guice.createInjector(new GsonModule() {
-
-         @Override
-         protected void configure() {
-            bind(DateAdapter.class).to(Iso8601DateAdapter.class);
-            super.configure();
-         }
-
-      });
-   }
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/resources/key.json
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/resources/key.json b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/resources/key.json
deleted file mode 100644
index 5957f79..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/resources/key.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-  "name": "rsa",
-  "key": "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA0A5Pf5Cq...",
-  "created": "2011-04-13T22:14:46+00:00"
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/resources/key_list.json
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/resources/key_list.json b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/resources/key_list.json
deleted file mode 100644
index 503dd9c..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/resources/key_list.json
+++ /dev/null
@@ -1,7 +0,0 @@
-[
-  {
-    "name": "rsa",
-    "key": "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA0A5Pf5Cq...",
-    "created": "2011-04-13T22:14:46+00:00"
-  }
-]
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/resources/logback.xml
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/resources/logback.xml b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/resources/logback.xml
deleted file mode 100644
index 9679b2e..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/resources/logback.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0"?>
-<configuration scan="false">
-    <appender name="FILE" class="ch.qos.logback.core.FileAppender">
-        <file>target/test-data/jclouds.log</file>
-
-        <encoder>
-            <Pattern>%d %-5p [%c] [%thread] %m%n</Pattern>
-        </encoder>
-    </appender>
-
-    <appender name="WIREFILE" class="ch.qos.logback.core.FileAppender">
-        <file>target/test-data/jclouds-wire.log</file>
-
-        <encoder>
-            <Pattern>%d %-5p [%c] [%thread] %m%n</Pattern>
-        </encoder>
-    </appender>
-    
-    <root>
-        <level value="warn" />
-    </root>
-
-    <logger name="org.jclouds">
-        <level value="DEBUG" />
-        <appender-ref ref="FILE" />
-    </logger>
-
-    <logger name="jclouds.wire">
-        <level value="DEBUG" />
-        <appender-ref ref="WIREFILE" />
-    </logger>
-
-    <logger name="jclouds.headers">
-        <level value="DEBUG" />
-        <appender-ref ref="WIREFILE" />
-    </logger>
-
-</configuration>

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/assemblies/pom.xml
----------------------------------------------------------------------
diff --git a/assemblies/pom.xml b/assemblies/pom.xml
deleted file mode 100644
index 2305f33..0000000
--- a/assemblies/pom.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-Licensed to jclouds, Inc. (jclouds) under one or more
-contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  jclouds 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.
-
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <artifactId>jclouds-project</artifactId>
-    <groupId>org.apache.jclouds</groupId>
-    <version>1.7.0-SNAPSHOT</version>
-    <relativePath>../project/pom.xml</relativePath>
-  </parent>    
-  <artifactId>jclouds-assemblies</artifactId>
-  <name>jclouds shared Maven assembly descriptors</name>
-
-  <!-- Cannot be run with '-Pdistribution' on a clean repo, because of a
-       self-dependency. Install into the local repo with 'mvn clean install' first. -->
-</project>

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/assemblies/src/main/resources/assemblies/jar-with-dependencies-descriptor.xml
----------------------------------------------------------------------
diff --git a/assemblies/src/main/resources/assemblies/jar-with-dependencies-descriptor.xml b/assemblies/src/main/resources/assemblies/jar-with-dependencies-descriptor.xml
deleted file mode 100644
index cfb3a07..0000000
--- a/assemblies/src/main/resources/assemblies/jar-with-dependencies-descriptor.xml
+++ /dev/null
@@ -1,40 +0,0 @@
-<!--
-
-Licensed to jclouds, Inc. (jclouds) under one or more
-contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  jclouds 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.
-
--->
-<?xml version="1.0" encoding="UTF-8"?>
-<assembly>
-    <id>jar-with-dependencies</id>
-    <formats>
-        <format>jar</format>
-    </formats>
-    <includeBaseDirectory>false</includeBaseDirectory>
-    <dependencySets>
-        <dependencySet>
-            <unpack>true</unpack>
-            <scope>runtime</scope>
-        </dependencySet>
-    </dependencySets>
-    <fileSets>
-        <fileSet>
-            <directory>${project.build.outputDirectory}</directory>
-            <outputDirectory />
-        </fileSet>
-    </fileSets>
-</assembly>

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/assemblies/src/main/resources/assemblies/jar-with-dependencies-no-core-no-apis-descriptor.xml
----------------------------------------------------------------------
diff --git a/assemblies/src/main/resources/assemblies/jar-with-dependencies-no-core-no-apis-descriptor.xml b/assemblies/src/main/resources/assemblies/jar-with-dependencies-no-core-no-apis-descriptor.xml
deleted file mode 100644
index 1528967..0000000
--- a/assemblies/src/main/resources/assemblies/jar-with-dependencies-no-core-no-apis-descriptor.xml
+++ /dev/null
@@ -1,60 +0,0 @@
-<!--
-
-Licensed to jclouds, Inc. (jclouds) under one or more
-contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  jclouds 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.
-
--->
-<?xml version="1.0" encoding="UTF-8"?>
-<assembly>
-    <id>jar-with-dependencies</id>
-    <formats>
-        <format>jar</format>
-    </formats>
-    <includeBaseDirectory>false</includeBaseDirectory>
-    <dependencySets>
-        <dependencySet>
-            <unpack>true</unpack>
-            <scope>runtime</scope>
-            <excludes>
-                <exclude>org.jclouds:jclouds-core</exclude>
-                <exclude>org.jclouds:jclouds-blobstore</exclude>
-                <exclude>org.jclouds:jclouds-compute</exclude>
-                <exclude>org.jclouds:jclouds-loadbalancer</exclude>
-                <exclude>org.jclouds.api:*</exclude>
-                <!-- excluding optional Clojure dependencies -->
-                <exclude>org.clojure:clojure*</exclude>
-            </excludes>
-            <!-- exclude all transitive dependencies of core too -->
-            <useTransitiveFiltering>true</useTransitiveFiltering>
-            <useProjectArtifact>false</useProjectArtifact>
-        </dependencySet>
-    </dependencySets>
-    <fileSets>
-        <fileSet>
-            <directory>${project.build.outputDirectory}</directory>
-            <outputDirectory />
-        </fileSet>
-        <!-- Hack to get Maven assembly to build even if there are no files to include.
-          See http://jira.codehaus.org/browse/MASSEMBLY-457. -->
-        <fileSet>
-            <includes>
-                <include>pom.xml</include>
-            </includes>
-            <outputDirectory>META-INF/maven/${project.groupId}/${project.artifactId}</outputDirectory>
-        </fileSet>
-    </fileSets>
-</assembly>


[5/5] git commit: JCLOUDS-54. remove historical demos, archetypes and assemblies modules

Posted by ad...@apache.org.
JCLOUDS-54. remove historical demos, archetypes and assemblies modules


Project: http://git-wip-us.apache.org/repos/asf/incubator-jclouds/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-jclouds/commit/f22731d9
Tree: http://git-wip-us.apache.org/repos/asf/incubator-jclouds/tree/f22731d9
Diff: http://git-wip-us.apache.org/repos/asf/incubator-jclouds/diff/f22731d9

Branch: refs/heads/master
Commit: f22731d9086be304ebb0b5154f2726d7617e8dae
Parents: 7cf8d61
Author: adriancole <ad...@gmail.com>
Authored: Thu May 16 13:33:03 2013 -0700
Committer: adriancole <ad...@gmail.com>
Committed: Thu May 16 15:02:22 2013 -0700

----------------------------------------------------------------------
 archetypes/compute-service-archetype/pom.xml       |   55 -
 .../META-INF/maven/archetype-metadata.xml          |   64 -
 .../src/main/resources/archetype-resources/pom.xml |  100 -
 .../main/java/__providerName__ContextBuilder.java  |   58 -
 .../main/java/__providerName__ContextFactory.java  |   71 -
 ..._providerName__ComputeServiceContextModule.java |  255 ---
 .../__providerName__ComputeServiceLiveTest.java    |   70 -
 .../src/test/resources/log4j.xml                   |  125 --
 archetypes/pom.xml                                 |   38 -
 archetypes/rest-client-archetype/pom.xml           |   57 -
 .../META-INF/maven/archetype-metadata.xml          |   69 -
 .../main/resources/archetype-resources/.gitignore  |    9 -
 .../main/resources/archetype-resources/README.txt  |    8 -
 .../src/main/resources/archetype-resources/pom.xml |  122 --
 .../src/main/java/__providerName__Api.java         |   43 -
 .../src/main/java/__providerName__ApiMetadata.java |   97 -
 .../src/main/java/__providerName__AsyncApi.java    |   43 -
 .../src/main/java/__providerName__AsyncClient.java |   82 -
 .../src/main/java/__providerName__Client.java      |   48 -
 .../config/__providerName__RestClientModule.java   |   70 -
 .../src/main/java/domain/Key.java                  |  151 --
 .../src/main/java/features/KeyApi.java             |   56 -
 .../src/main/java/features/KeyAsyncApi.java        |   90 -
 .../handlers/__providerName__ErrorHandler.java     |   70 -
 .../META-INF/services/org.jclouds.apis.ApiMetadata |    1 -
 .../test/java/__providerName__ApiMetadataTest.java |   45 -
 .../src/test/java/features/KeyApiExpectTest.java   |   86 -
 .../src/test/java/features/KeyApiLiveTest.java     |   90 -
 .../handlers/__providerName__ErrorHandlerTest.java |  100 -
 .../Base__providerName__ApiExpectTest.java         |   31 -
 .../internal/Base__providerName__ApiLiveTest.java  |   49 -
 .../Base__providerName__AsyncApiExpectTest.java    |   40 -
 .../internal/Base__providerName__ExpectTest.java   |   35 -
 .../src/test/java/parse/ParseKeyListTest.java      |   70 -
 .../src/test/java/parse/ParseKeyTest.java          |   65 -
 .../src/test/resources/key.json                    |    5 -
 .../src/test/resources/key_list.json               |    7 -
 .../src/test/resources/logback.xml                 |   38 -
 assemblies/pom.xml                                 |   35 -
 .../jar-with-dependencies-descriptor.xml           |   40 -
 ...ith-dependencies-no-core-no-apis-descriptor.xml |   60 -
 .../resources/assemblies/package-descriptor.xml    | 1442 ---------------
 .../provided-dependencies-descriptor.xml           |   44 -
 .../main/resources/assemblies/src-descriptor.xml   |   41 -
 demos/antjruby/build.xml                           |  109 --
 demos/getpath/README.txt                           |   25 -
 demos/getpath/pom.xml                              |  118 --
 .../main/java/org/jclouds/blobstore/GetPath.java   |  110 --
 .../org/jclouds/blobstore/GetPathLiveTest.java     |  169 --
 demos/getpath/src/test/resources/log4j.xml         |    1 -
 demos/googleappengine/README.md                    |   28 -
 demos/googleappengine/pom.xml                      |  396 ----
 .../src/main/appengine/appengine-web.xml           |   30 -
 .../src/main/appengine/logging.properties          |   37 -
 .../googleappengine/GetAllResourcesController.java |  169 --
 .../googleappengine/config/GuiceServletConfig.java |  167 --
 .../googleappengine/domain/ResourceResult.java     |  128 --
 .../BlobStoreContextToAsyncResources.java          |   45 -
 .../ComputeServiceContextToAsyncResources.java     |   69 -
 .../ResourceMetadataToResourceResult.java          |   54 -
 .../functions/ViewToAsyncResources.java            |   59 -
 .../googleappengine/functions/ViewToId.java        |   31 -
 .../src/main/webapp/WEB-INF/jsp/resources.jsp      |  104 --
 .../src/main/webapp/WEB-INF/web.xml                |   47 -
 demos/googleappengine/src/main/webapp/index.jsp    |   30 -
 .../functest/GoogleAppEngineLiveTest.java          |  109 --
 .../googleappengine/functest/GoogleDevServer.java  |   76 -
 demos/pom.xml                                      |   60 -
 demos/simpledb/README.txt                          |   29 -
 demos/simpledb/pom.xml                             |   79 -
 .../java/org/jclouds/simpledb/samples/MainApp.java |   79 -
 demos/speedtest-azurequeue/README.txt              |   25 -
 demos/speedtest-azurequeue/pom.xml                 |   83 -
 .../org/jclouds/azure/azurequeue/SpeedTest.java    |  171 --
 demos/speedtest-sqs/README.txt                     |   25 -
 demos/speedtest-sqs/pom.xml                        |   84 -
 .../main/java/org/jclouds/aws/sqs/SpeedTest.java   |  177 --
 pom.xml                                            |    2 -
 78 files changed, 0 insertions(+), 7100 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/compute-service-archetype/pom.xml
----------------------------------------------------------------------
diff --git a/archetypes/compute-service-archetype/pom.xml b/archetypes/compute-service-archetype/pom.xml
deleted file mode 100644
index c90230f..0000000
--- a/archetypes/compute-service-archetype/pom.xml
+++ /dev/null
@@ -1,55 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-Licensed to jclouds, Inc. (jclouds) under one or more
-contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  jclouds 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.
-
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>org.apache.jclouds</groupId>
-    <artifactId>jclouds-project</artifactId>
-    <version>1.7.0-SNAPSHOT</version>
-    <relativePath>../../project/pom.xml</relativePath>
-  </parent>
-  <artifactId>jclouds-compute-service-archetype</artifactId>
-  <name>jclouds Compute service archetype</name>
-  <description>Maven archetype for a provider of a Compute service</description>
-  <packaging>maven-archetype</packaging>
-  
-  <build>
-    <plugins>
-      <plugin>
-        <artifactId>maven-archetype-plugin</artifactId>
-        <extensions>true</extensions>
-      </plugin>
-      <plugin>
-        <artifactId>maven-resources-plugin</artifactId>
-        <configuration>
-          <encoding>UTF-8</encoding>
-        </configuration>
-      </plugin> 
-    </plugins>
-    <extensions>
-      <extension>
-        <groupId>org.apache.maven.archetype</groupId>
-        <artifactId>archetype-packaging</artifactId>
-      </extension>
-    </extensions>   
-  </build>
-</project>

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/compute-service-archetype/src/main/resources/META-INF/maven/archetype-metadata.xml
----------------------------------------------------------------------
diff --git a/archetypes/compute-service-archetype/src/main/resources/META-INF/maven/archetype-metadata.xml b/archetypes/compute-service-archetype/src/main/resources/META-INF/maven/archetype-metadata.xml
deleted file mode 100644
index fb3dbc8..0000000
--- a/archetypes/compute-service-archetype/src/main/resources/META-INF/maven/archetype-metadata.xml
+++ /dev/null
@@ -1,64 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-Licensed to jclouds, Inc. (jclouds) under one or more
-contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  jclouds 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.
-
--->
-<archetype-descriptor name="jclouds-compute-service-archetype" partial="true">
-  <requiredProperties>
-    <requiredProperty key="groupId">
-      <defaultValue>org.jclouds</defaultValue>
-    </requiredProperty>
-    <requiredProperty key="package" >
-     <defaultValue>${groupId}.${artifactId}</defaultValue>
-    </requiredProperty>
-    <requiredProperty key="author">
-      <defaultValue>Adrian Cole</defaultValue>
-    </requiredProperty>
-    <requiredProperty key="providerName" />
-    <requiredProperty key="providerEndpoint" />
-    <requiredProperty key="providerIdentity" />
-    <requiredProperty key="providerCredential" />  
-  </requiredProperties>
-  <fileSets>
-    <fileSet filtered="true" packaged="true" encoding="UTF-8">
-      <directory>src/main/java</directory>
-      <includes>
-        <include>**/*.java</include>
-      </includes>
-    </fileSet>
-    <fileSet filtered="true" packaged="true" encoding="UTF-8">
-      <directory>src/test/java</directory>
-      <includes>
-        <include>**/*.java</include>
-      </includes>
-    </fileSet>
-    <fileSet encoding="UTF-8">
-      <directory>src/test/resources</directory>
-      <includes>
-        <include>**/*.xml</include>
-      </includes>
-    </fileSet>
-    <fileSet filtered="true" encoding="UTF-8">
-      <directory />
-      <includes>
-        <include>.gitignore</include>
-      </includes>
-    </fileSet>    
-  </fileSets>
-</archetype-descriptor>

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/compute-service-archetype/src/main/resources/archetype-resources/pom.xml
----------------------------------------------------------------------
diff --git a/archetypes/compute-service-archetype/src/main/resources/archetype-resources/pom.xml b/archetypes/compute-service-archetype/src/main/resources/archetype-resources/pom.xml
deleted file mode 100644
index 5cb09e4..0000000
--- a/archetypes/compute-service-archetype/src/main/resources/archetype-resources/pom.xml
+++ /dev/null
@@ -1,100 +0,0 @@
-#set( $lcaseProviderName = ${providerName.toLowerCase()} )
-#set( $symbol_dollar = '$' )
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-Licensed to jclouds, Inc. (jclouds) under one or more
-contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  jclouds 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.
-
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>org.apache.jclouds</groupId>
-    <artifactId>jclouds-project</artifactId>
-    <version>1.0-SNAPSHOT</version>
-    <relativePath>../project/pom.xml</relativePath>
-  </parent>
-  <groupId>${groupId}</groupId>
-  <artifactId>jclouds-${artifactId}</artifactId>
-  <name>jclouds ${providerName} compute service</name>
-  <description>jclouds components to access ${providerName}</description>
-
-  <scm>
-    <connection>scm:svn:http://jclouds.googlecode.com/svn/trunk/${lcaseProviderName}</connection>
-    <developerConnection>scm:svn:https://jclouds.googlecode.com/svn/trunk/${lcaseProviderName}</developerConnection>
-    <url>http://jclouds.googlecode.com/svn/trunk/${lcaseProviderName}</url>
-  </scm>
-  
-  <!-- bootstrapping: need to fetch the project POM -->
-  <repositories>
-    <repository>
-      <id>sonatype-nexus-snapshots</id>
-      <url>https://oss.sonatype.org/content/repositories/snapshots</url>
-      <releases>
-        <enabled>false</enabled>
-      </releases>
-      <snapshots>
-        <enabled>true</enabled>
-      </snapshots>
-    </repository>    
-  </repositories>
-  
-  <properties>
-    <test.identity>${providerUser}</test.identity>
-    <test.credential>${providerPassword}</test.credential>
-    <test.endpoint>${providerEndpoint}</test.endpoint>        
-  </properties>
-  <dependencies>
-    <dependency>
-      <groupId>org.apache.jclouds</groupId>
-      <artifactId>jclouds-compute</artifactId>
-      <version>${symbol_dollar}{project.version}</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.jclouds</groupId>
-      <artifactId>jclouds-compute</artifactId>
-      <version>${symbol_dollar}{project.version}</version>
-      <type>test-jar</type>
-      <scope>test</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.jclouds</groupId>
-      <artifactId>jclouds-core</artifactId>
-      <version>${symbol_dollar}{project.version}</version>
-      <type>test-jar</type>
-      <scope>test</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.jclouds.driver</groupId>
-      <artifactId>jclouds-jsch</artifactId>
-      <version>${symbol_dollar}{project.version}</version>
-      <scope>test</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.jclouds.driver</groupId>
-      <artifactId>jclouds-log4j</artifactId>
-      <version>${symbol_dollar}{project.version}</version>
-      <scope>test</scope>
-    </dependency>
-    <dependency>
-      <groupId>log4j</groupId>
-      <artifactId>log4j</artifactId>
-      <scope>test</scope>
-    </dependency>
-  </dependencies>
-</project>

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/compute-service-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__ContextBuilder.java
----------------------------------------------------------------------
diff --git a/archetypes/compute-service-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__ContextBuilder.java b/archetypes/compute-service-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__ContextBuilder.java
deleted file mode 100644
index 401f04c..0000000
--- a/archetypes/compute-service-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__ContextBuilder.java
+++ /dev/null
@@ -1,58 +0,0 @@
-#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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 ${package};
-
-
-import java.util.List;
-import java.util.Properties;
-
-import com.google.inject.Key;
-import org.jclouds.compute.ComputeServiceContext;
-import org.jclouds.compute.ComputeServiceContextBuilder;
-import org.jclouds.compute.internal.ComputeServiceContextImpl;
-import ${package}.compute.config.${providerName}ComputeServiceContextModule;
-import ${package}.config.${providerName}RestClientModule;
-
-import com.google.inject.Module;
-import com.google.inject.TypeLiteral;
-
-/**
- * @author ${author}
- */
-public class ${providerName}ContextBuilder extends ComputeServiceContextBuilder<${providerName}Client, ${providerName}AsyncClient> {
-
-    public ${providerName}ContextBuilder(String providerName, Properties props) {
-        super(providerName, new TypeLiteral<${providerName}AsyncClient>() {}, 
-                new TypeLiteral<${providerName}Client>() {}, 
-                props);
-    }
-
-    protected void addClientModule(List<Module> modules) {
-        modules.add(new ${providerName}RestClientModule());
-    }
-
-    @Override
-    protected void addContextModule(String providerName, List<Module> modules) {
-        modules.add(new ${providerName}ComputeServiceContextModule(providerName));
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/compute-service-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__ContextFactory.java
----------------------------------------------------------------------
diff --git a/archetypes/compute-service-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__ContextFactory.java b/archetypes/compute-service-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__ContextFactory.java
deleted file mode 100644
index eb4c3cc..0000000
--- a/archetypes/compute-service-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__ContextFactory.java
+++ /dev/null
@@ -1,71 +0,0 @@
-#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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.
- */
-import java.net.URI;
-import java.util.Properties;
-
-import org.jclouds.compute.ComputeServiceContext;
-import org.jclouds.http.config.JavaUrlHttpCommandExecutorServiceModule;
-import org.jclouds.logging.jdk.config.JDKLoggingModule;
-
-import com.google.inject.Module;
-
-/**
- * Creates {@link ComputeServiceContext} instances based on the most commonly
- * requested arguments.
- * <p/>
- * Note that Threadsafe objects will be bound as singletons to the Injector or Context provided.
- * <p/>
- * <p/>
- * If no <code>Module</code>s are specified, the default {@link JDKLoggingModule logging} and
- * {@link JavaUrlHttpCommandExecutorServiceModule http transports} will be installed.
- * 
- * @author ${author}
- * @see ComputeServiceContext
- */
-public class ${providerName}ContextFactory {
-   public static ComputeServiceContext createContext(Properties properties, Module... modules) {
-      return new ${providerName}ContextBuilder("${artifactId}",
-               new ${providerName}PropertiesBuilder(properties).build()).withModules(modules)
-               .buildComputeServiceContext();
-   }
-
-   public static ComputeServiceContext createContext(String user, String key,
-            Module... modules) {
-      return new ${providerName}ContextBuilder("${artifactId}",
-               new ${providerName}PropertiesBuilder(user, key).build())
-               .withModules(modules).buildComputeServiceContext();
-   }
-   
-   public static ComputeServiceContext createContext(Properties properties, String user,
-            String key, Module... modules) {
-      return new ${providerName}ContextBuilder("${artifactId}",
-               new ${providerName}PropertiesBuilder(properties).withCredentials(user, key)
-                        .build()).withModules(modules).buildComputeServiceContext();
-   }
-
-   public static ComputeServiceContext createContext(URI endpoint, String user, String key,
-            Module... modules) {
-      return new ${providerName}ContextBuilder("${artifactId}",
-               new ${providerName}PropertiesBuilder(user, key).withEndpoint(endpoint).build())
-               .withModules(modules).buildComputeServiceContext();
-   }
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/compute-service-archetype/src/main/resources/archetype-resources/src/main/java/compute/config/__providerName__ComputeServiceContextModule.java
----------------------------------------------------------------------
diff --git a/archetypes/compute-service-archetype/src/main/resources/archetype-resources/src/main/java/compute/config/__providerName__ComputeServiceContextModule.java b/archetypes/compute-service-archetype/src/main/resources/archetype-resources/src/main/java/compute/config/__providerName__ComputeServiceContextModule.java
deleted file mode 100644
index 939c292..0000000
--- a/archetypes/compute-service-archetype/src/main/resources/archetype-resources/src/main/java/compute/config/__providerName__ComputeServiceContextModule.java
+++ /dev/null
@@ -1,255 +0,0 @@
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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.
- */
-import static org.jclouds.compute.domain.OsFamily.UBUNTU;
-
-import java.util.Set;
-import javax.annotation.Resource;
-import javax.inject.Inject;
-import javax.inject.Named;
-import javax.inject.Singleton;
-
-import ${package}.${providerName}Client;
-import ${package}.${providerName}AsyncClient;
-import ${package}.config.${providerName}ContextModule;
-
-import org.jclouds.compute.ComputeServiceContext;
-import org.jclouds.compute.LoadBalancerService;
-import org.jclouds.compute.config.ComputeServiceTimeoutsModule;
-import org.jclouds.compute.domain.ComputeMetadata;
-import org.jclouds.compute.domain.Image;
-import org.jclouds.compute.domain.NodeMetadata;
-import org.jclouds.compute.domain.Size;
-import org.jclouds.compute.domain.Template;
-import org.jclouds.compute.domain.TemplateBuilder;
-import org.jclouds.compute.internal.ComputeServiceContextImpl;
-import org.jclouds.compute.predicates.ScriptStatusReturnsZero;
-import org.jclouds.compute.predicates.ScriptStatusReturnsZero.CommandUsingClient;
-import org.jclouds.compute.reference.ComputeServiceConstants;
-import org.jclouds.compute.strategy.AddNodeWithTagStrategy;
-import org.jclouds.compute.strategy.DestroyNodeStrategy;
-import org.jclouds.compute.strategy.GetNodeMetadataStrategy;
-import org.jclouds.compute.strategy.ListNodesStrategy;
-import org.jclouds.compute.strategy.RebootNodeStrategy;
-import org.jclouds.domain.Location;
-import org.jclouds.domain.LocationScope;
-import org.jclouds.domain.internal.LocationImpl;
-import org.jclouds.logging.Logger;
-import org.jclouds.net.IPSocket;
-import org.jclouds.predicates.RetryablePredicate;
-import org.jclouds.predicates.SocketOpen;
-
-import com.google.common.base.Predicate;
-import com.google.common.base.Predicates;
-import com.google.common.collect.Sets;
-import com.google.inject.Provides;
-import com.google.inject.Scopes;
-import com.google.inject.TypeLiteral;
-import com.google.inject.util.Providers;
-
-/**
- * @author ${author}
- */
-public class ${providerName}ComputeServiceContextModule extends ${providerName}ContextModule {
-
-   private final String providerName;
-   
-   public ${providerName}ComputeServiceContextModule(String providerName){
-      super(providerName);
-      this.providerName=providerName;
-   }
-   
-   @Override
-   protected void configure() {
-      super.configure();
-      install(new ComputeServiceTimeoutsModule());
-      bind(new TypeLiteral<ComputeServiceContext>() {
-      })
-               .to(
-                        new TypeLiteral<ComputeServiceContextImpl<${providerName}Client, ${providerName}AsyncClient>>() {
-                        }).in(Scopes.SINGLETON);
-      bind(AddNodeWithTagStrategy.class).to(${providerName}AddNodeWithTagStrategy.class);
-      bind(ListNodesStrategy.class).to(${providerName}ListNodesStrategy.class);
-      bind(GetNodeMetadataStrategy.class).to(${providerName}GetNodeMetadataStrategy.class);
-      bind(RebootNodeStrategy.class).to(${providerName}RebootNodeStrategy.class);
-      bind(DestroyNodeStrategy.class).to(${providerName}DestroyNodeStrategy.class);
-      bind(LoadBalancerService.class).toProvider(Providers.<LoadBalancerService> of(null));
-   }
-   
-   /**
-    * tested known configuration
-    */
-   @Provides
-   @Named("DEFAULT")
-   protected TemplateBuilder provideTemplate(TemplateBuilder template) {
-      return template.osFamily(UBUNTU);
-   }
-
-   @Singleton
-   public static class ${providerName}AddNodeWithTagStrategy implements AddNodeWithTagStrategy {
-
-      @Inject
-      protected ${providerName}AddNodeWithTagStrategy() {
-      }
-
-      @Override
-      public NodeMetadata execute(String tag, String name, Template template) {
-          /*
-           * TODO: implement
-           */
-          return null;
-      }
-   }
-
-   @Singleton
-   public static class ${providerName}RebootNodeStrategy implements RebootNodeStrategy {
-
-      @Inject
-      protected ${providerName}RebootNodeStrategy() {
-      }
-
-      @Override
-      public boolean execute(String id) {
-          /*
-           * TODO: implement
-           */
-          return false;
-      }
-   }
-
-   @Singleton
-   public static class ${providerName}ListNodesStrategy implements ListNodesStrategy {
-
-      @Inject
-      protected ${providerName}ListNodesStrategy() {
-      }
-
-      @Override
-      public Iterable<? extends ComputeMetadata> list() {
-         /*
-          * TODO: implement
-          */return null;
-      }
-
-      @Override
-      public Iterable<? extends NodeMetadata> listDetailsOnNodesMatching(
-               Predicate<ComputeMetadata> filter) {
-         /*
-          * TODO: implement
-          */
-         return null;
-      }
-
-   }
-
-   @Singleton
-   public static class ${providerName}GetNodeMetadataStrategy implements GetNodeMetadataStrategy {
-
-      @Inject
-      protected ${providerName}GetNodeMetadataStrategy() {
-      }
-
-      @Override
-      public NodeMetadata execute(String id) {
-          /*
-           * TODO: implement
-           */
-          return null;
-      }
-   }
-
-   @Singleton
-   public static class ${providerName}DestroyNodeStrategy implements DestroyNodeStrategy {
-
-      @Inject
-      protected ${providerName}DestroyNodeStrategy() {
-      }
-
-      @Override
-      public boolean execute(String id) {
-          /*
-           * TODO: implement
-           */
-          return false;
-      }
-
-   }
-   
-   @Provides
-   @Singleton
-   Location getDefaultLocation(Set<? extends Location> locations) {
-
-      /*
-       * TODO: implement
-       */
-      
-      return null;
-   }
-
-   @Provides
-   @Singleton
-   Set<? extends Location> getAssignableLocations(${providerName}Client sync, LogHolder holder ) {
-      final Set<Location> assignableLocations = Sets.newHashSet();
-      holder.logger.debug(">> providing locations");
-      Location parent = new LocationImpl(LocationScope.PROVIDER, providerName, providerName, null);
-      /*
-       * TODO: add children with parent to locations.  Note do not add parent to assignablelocations 
-       * directly
-       */
-      
-      holder.logger.debug("<< locations(%d)", assignableLocations.size());
-      return assignableLocations;
-   }
-
-   @Provides
-   @Singleton
-   protected Set<? extends Size> provideSizes(${providerName}Client sync,
-            Set<? extends Image> images, LogHolder holder) {
-      final Set<Size> sizes = Sets.newHashSet();
-      holder.logger.debug(">> providing sizes");
-
-      /*
-       * TODO: implement
-       */
-      
-      holder.logger.debug("<< sizes(%d)", sizes.size());
-      return sizes;
-   }
-
-   @Provides
-   @Singleton
-   protected Set<? extends Image> provideImages(final ${providerName}Client sync, LogHolder holder,
-            Location location) {
-      final Set<Image> images = Sets.newHashSet();
-      holder.logger.debug(">> providing images");
-
-      /*
-       * TODO: implement
-       */
-
-      holder.logger.debug("<< images(%d)", images.size());
-      return images;
-   }
-
-   @Singleton
-   private static class LogHolder {
-       @Resource
-       @Named(ComputeServiceConstants.COMPUTE_LOGGER)
-       protected Logger logger = Logger.NULL;
-   }
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/compute-service-archetype/src/main/resources/archetype-resources/src/test/java/compute/__providerName__ComputeServiceLiveTest.java
----------------------------------------------------------------------
diff --git a/archetypes/compute-service-archetype/src/main/resources/archetype-resources/src/test/java/compute/__providerName__ComputeServiceLiveTest.java b/archetypes/compute-service-archetype/src/main/resources/archetype-resources/src/test/java/compute/__providerName__ComputeServiceLiveTest.java
deleted file mode 100644
index e75ab7f..0000000
--- a/archetypes/compute-service-archetype/src/main/resources/archetype-resources/src/test/java/compute/__providerName__ComputeServiceLiveTest.java
+++ /dev/null
@@ -1,70 +0,0 @@
-#set( $lcaseProviderName = ${providerName.toLowerCase()} )
-#set( $camelCaseProviderName = "${providerName.substring(0, 1).toLowerCase()}${providerName.substring(1)}" )
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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 ${package}.compute;
-
-import static org.testng.Assert.assertEquals;
-
-import ${package}.${providerName}AsyncClient;
-import ${package}.${providerName}Client;
-import org.jclouds.compute.BaseComputeServiceLiveTest;
-import org.jclouds.compute.ComputeServiceContextFactory;
-import org.jclouds.compute.domain.Architecture;
-import org.jclouds.compute.domain.OsFamily;
-import org.jclouds.compute.domain.Template;
-import org.jclouds.rest.RestContext;
-import org.jclouds.ssh.jsch.config.JschSshClientModule;
-import org.testng.annotations.BeforeClass;
-import org.testng.annotations.Test;
-
-
-/**
- * @author ${author}
- */
-@Test(groups = "live", enabled = true, sequential = true, testName = "${lcaseProviderName}.${providerName}ComputeServiceLiveTest")
-public class ${providerName}ComputeServiceLiveTest extends BaseComputeServiceLiveTest {
-
-       @BeforeClass
-       @Override
-       public void setServiceDefaults() {
-          provider = "${lcaseProviderName}";
-       }
-
-       @Test
-       public void testTemplateBuilder() {
-          Template defaultTemplate = client.templateBuilder().build();
-          assertEquals(defaultTemplate.getImage().getArchitecture(), Architecture.X86_64);
-          assertEquals(defaultTemplate.getImage().getOperatingSystem().getFamily(), OsFamily.UBUNTU);
-          assertEquals(defaultTemplate.getLocation().getId(), "DFW1");
-          assertEquals(defaultTemplate.getSize().getCores(), 1.0d);
-       }
-
-       @Override
-       protected JschSshClientModule getSshModule() {
-          return new JschSshClientModule();
-       }
-
-       public void testAssignability() throws Exception {
-          @SuppressWarnings("unused")
-          RestContext<${providerName}Client, ${providerName}AsyncClient> tmContext = new ComputeServiceContextFactory()
-                   .createContext(provider, user, password).getProviderSpecificContext();
-       }
-
-    }

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/compute-service-archetype/src/main/resources/archetype-resources/src/test/resources/log4j.xml
----------------------------------------------------------------------
diff --git a/archetypes/compute-service-archetype/src/main/resources/archetype-resources/src/test/resources/log4j.xml b/archetypes/compute-service-archetype/src/main/resources/archetype-resources/src/test/resources/log4j.xml
deleted file mode 100644
index f1afd2e..0000000
--- a/archetypes/compute-service-archetype/src/main/resources/archetype-resources/src/test/resources/log4j.xml
+++ /dev/null
@@ -1,125 +0,0 @@
-#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
-
-	<!--
-		For more configuration infromation and examples see the Apache Log4j
-		website: http://logging.apache.org/log4j/
-	-->
-<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"
-	debug="false">
-
-    <!-- A time/date based rolling appender -->
-    <appender name="COMPUTEFILE" class="org.apache.log4j.DailyRollingFileAppender">
-        <param name="File" value="target/test-data/jclouds-compute.log" />
-        <param name="Append" value="true" />
-
-        <!-- Rollover at midnight each day -->
-        <param name="DatePattern" value="'.'yyyy-MM-dd" />
-
-        <param name="Threshold" value="TRACE" />
-
-        <layout class="org.apache.log4j.PatternLayout">
-            <!-- The default pattern: Date Priority [Category] Message${symbol_escape}n -->
-            <param name="ConversionPattern" value="%d %-5p [%c] (%t) %m%n" />
-
-            <!--
-                The full pattern: Date MS Priority [Category]
-                (Thread:NDC) Message${symbol_escape}n <param name="ConversionPattern"
-                value="%d %-5r %-5p [%c] (%t:%x) %m%n"/>
-            -->
-        </layout>
-    </appender>
-    
-    <appender name="ASYNCCOMPUTE" class="org.apache.log4j.AsyncAppender">
-        <appender-ref ref="COMPUTEFILE" />
-    </appender>
-
-    <!-- A time/date based rolling appender -->
-    <appender name="WIREFILE" class="org.apache.log4j.DailyRollingFileAppender">
-        <param name="File" value="target/test-data/jclouds-wire.log" />
-        <param name="Append" value="true" />
-
-        <!-- Rollover at midnight each day -->
-        <param name="DatePattern" value="'.'yyyy-MM-dd" />
-
-        <param name="Threshold" value="TRACE" />
-
-        <layout class="org.apache.log4j.PatternLayout">
-            <!-- The default pattern: Date Priority [Category] Message${symbol_dollar}{symbol_escape}n -->
-            <param name="ConversionPattern" value="%d %-5p [%c] (%t) %m%n" />
-
-            <!--
-                The full pattern: Date MS Priority [Category] (Thread:NDC) Message${symbol_dollar}{symbol_escape}n
-                <param name="ConversionPattern" value="%d %-5r %-5p [%c] (%t:%x)
-                %m%n"/>
-            -->
-        </layout>
-    </appender>
-
-  	<!-- A time/date based rolling appender -->
-  	<appender name="FILE" class="org.apache.log4j.DailyRollingFileAppender">
-    		<param name="File" value="target/test-data/jclouds.log" />
-    		<param name="Append" value="true" />
-    
-    		<!-- Rollover at midnight each day -->
-    		<param name="DatePattern" value="'.'yyyy-MM-dd" />
-    
-    		<param name="Threshold" value="TRACE" />
-    
-    		<layout class="org.apache.log4j.PatternLayout">
-      			<!-- The default pattern: Date Priority [Category] Message${symbol_dollar}{symbol_escape}n -->
-      			<param name="ConversionPattern" value="%d %-5p [%c] (%t) %m%n" />
-      
-      			<!--
-      				The full pattern: Date MS Priority [Category] (Thread:NDC) Message${symbol_dollar}{symbol_escape}n
-      				<param name="ConversionPattern" value="%d %-5r %-5p [%c] (%t:%x)
-      				%m%n"/>
-      			-->
-    		</layout>
-  	</appender>
-	
-  	<appender name="ASYNC" class="org.apache.log4j.AsyncAppender">
-    		<appender-ref ref="FILE" />
-  	</appender>
-
-    <appender name="ASYNCWIRE" class="org.apache.log4j.AsyncAppender">
-        <appender-ref ref="WIREFILE" />
-    </appender>	
-    
-  	<!-- ================ -->
-  	<!-- Limit categories -->
-  	<!-- ================ -->
-  
-  	<category name="org.jclouds">
-    		<priority value="DEBUG" />
-        <appender-ref ref="ASYNC" />
-   	</category>
-    
-    <category name="jclouds.headers">
-        <priority value="DEBUG" />
-        <appender-ref ref="ASYNCWIRE" />
-    </category>
-
-    <category name="jclouds.wire">
-        <priority value="DEBUG" />
-        <appender-ref ref="ASYNCWIRE" />
-    </category>
-
-    <category name="jclouds.compute">
-        <priority value="TRACE" />
-        <appender-ref ref="ASYNCCOMPUTE" />
-    </category>
-
-    
-    <!-- ======================= -->
-  	<!-- Setup the Root category -->
-  	<!-- ======================= -->
-
-  	<root>
-    		<priority value="WARN" />
-  	</root>
-
-</log4j:configuration>

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/pom.xml
----------------------------------------------------------------------
diff --git a/archetypes/pom.xml b/archetypes/pom.xml
deleted file mode 100644
index aa1b2c4..0000000
--- a/archetypes/pom.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-Licensed to jclouds, Inc. (jclouds) under one or more
-contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  jclouds 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.
-
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <artifactId>jclouds-project</artifactId>
-    <groupId>org.apache.jclouds</groupId>
-    <version>1.7.0-SNAPSHOT</version>
-    <relativePath>../project/pom.xml</relativePath>
-  </parent>
-  <artifactId>jclouds-archetypes</artifactId>
-  <packaging>pom</packaging>
-  <name>jclouds Maven archetypes</name>
-
-  <modules>
-    <module>rest-client-archetype</module>
-    <module>compute-service-archetype</module>
-  </modules>
-</project>

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/pom.xml
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/pom.xml b/archetypes/rest-client-archetype/pom.xml
deleted file mode 100644
index 983e667..0000000
--- a/archetypes/rest-client-archetype/pom.xml
+++ /dev/null
@@ -1,57 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-Licensed to jclouds, Inc. (jclouds) under one or more
-contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  jclouds 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.
-
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>org.apache.jclouds</groupId>
-    <artifactId>jclouds-project</artifactId>
-    <version>1.7.0-SNAPSHOT</version>
-    <relativePath>../../project/pom.xml</relativePath>
-  </parent>
-  <artifactId>jclouds-rest-client-archetype</artifactId>
-  <name>jclouds rest client archetype</name>
-  <description>Maven archetype for a provider of a rest-speaking service</description>
-  <packaging>maven-archetype</packaging>
-  
-  <build>
-    <plugins>
-      <plugin>
-        <artifactId>maven-archetype-plugin</artifactId>
-        <version>2.2</version>
-        <extensions>true</extensions>
-      </plugin>
-      <plugin>
-        <artifactId>maven-resources-plugin</artifactId>
-        <configuration>
-          <encoding>UTF-8</encoding>
-        </configuration>
-      </plugin>
-    </plugins>
-    <extensions>
-      <extension>
-        <groupId>org.apache.maven.archetype</groupId>
-        <artifactId>archetype-packaging</artifactId>
-        <version>2.2</version>
-      </extension>
-    </extensions>
-  </build>
-</project>

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/META-INF/maven/archetype-metadata.xml
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/META-INF/maven/archetype-metadata.xml b/archetypes/rest-client-archetype/src/main/resources/META-INF/maven/archetype-metadata.xml
deleted file mode 100644
index 0862c72..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/META-INF/maven/archetype-metadata.xml
+++ /dev/null
@@ -1,69 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-Licensed to jclouds, Inc. (jclouds) under one or more
-contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  jclouds 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.
-
--->
-<archetype-descriptor name="jclouds-rest-client-archetype">
-  <requiredProperties>
-    <requiredProperty key="groupId">
-      <defaultValue>org.jclouds.labs</defaultValue>
-    </requiredProperty>
-    <requiredProperty key="package" >
-     <defaultValue>org.jclouds.${artifactId}</defaultValue>
-    </requiredProperty>
-    <requiredProperty key="author">
-      <defaultValue>Adrian Cole</defaultValue>
-    </requiredProperty>
-    <requiredProperty key="providerName" />
-    <requiredProperty key="providerEndpoint" />
-    <requiredProperty key="providerIdentity" />
-    <requiredProperty key="providerApiVersion" />
-    <requiredProperty key="providerCredential" />    
-  </requiredProperties>
-  <fileSets>
-    <fileSet filtered="true" packaged="true" encoding="UTF-8">
-      <directory>src/main/java</directory>
-      <includes>
-        <include>**/*.java</include>
-      </includes>
-    </fileSet>
-    <fileSet filtered="true" encoding="UTF-8">
-      <directory>src/main/resources</directory>
-    </fileSet>
-    <fileSet filtered="true" packaged="true" encoding="UTF-8">
-      <directory>src/test/java</directory>
-      <includes>
-        <include>**/*.java</include>
-      </includes>
-    </fileSet>
-    <fileSet encoding="UTF-8">
-      <directory>src/test/resources</directory>
-      <includes>
-        <include>**/*.json</include>
-        <include>logback.xml</include>
-      </includes>
-    </fileSet>
-    <fileSet filtered="true" encoding="UTF-8">
-      <directory />
-      <includes>
-        <include>.gitignore</include>
-      </includes>
-    </fileSet>    
-  </fileSets>
-</archetype-descriptor>

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/.gitignore
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/.gitignore b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/.gitignore
deleted file mode 100644
index 6173a03..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/.gitignore
+++ /dev/null
@@ -1,9 +0,0 @@
-# use glob syntax.
-syntax: glob
-target
-.settings
-.classpath
-.project
-jclouds-${artifactId}.iml
-jclouds-${artifactId}.ipr
-jclouds-${artifactId}.iws
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/README.txt
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/README.txt b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/README.txt
deleted file mode 100644
index 5827754..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/README.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-In this module, you can run just unit tests, or run tests that connect directly to the service.  To run against the service, you'll need to specify the maven profile live.
-When live is enabled, any tests that have "LiveTest" suffix will be run during the integration-test phase.  In order for this to operate, you must specify the following 
-properties:
-   * test.${lcaseProviderName}.identity
-   * test.${lcaseProviderName}.credential
-
-Note that this module is intentionally incomplete.  You should global replace and create your own client from this example.  Make sure that you use tests propertly.  For
-example, tests ending in *ExpectTest will help ensure that your annotations parse in the way you expect.

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/pom.xml
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/pom.xml b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/pom.xml
deleted file mode 100644
index 315922d..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/pom.xml
+++ /dev/null
@@ -1,122 +0,0 @@
-#set( $lcaseProviderName = ${providerName.toLowerCase()} )
-#set(
-$symbol_dollar = '$' )
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-Licensed to jclouds, Inc. (jclouds) under one or more
-contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  jclouds 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.
-
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>org.apache.jclouds</groupId>
-    <artifactId>jclouds-project</artifactId>
-    <version>1.7.0-SNAPSHOT</version>
-    <relativePath>../../project/pom.xml</relativePath>
-  </parent>
-  <groupId>${groupId}</groupId>
-  <artifactId>${artifactId}</artifactId>
-  <name>jclouds ${providerName} core</name>
-  <description>jclouds components to access ${providerName}</description>
-
-  <scm>
-    <connection>scm:git:git@github.com:jclouds/jclouds.git</connection>
-    <developerConnection>scm:git:git@github.com:jclouds/jclouds.git</developerConnection>
-    <url>http://github.com/jclouds/jclouds/tree/master/labs/${lcaseProviderName}</url>
-  </scm>
-
-  <!-- bootstrapping: need to fetch the project POM -->
-  <repositories>
-    <repository>
-      <id>sonatype-nexus-snapshots</id>
-      <url>https://oss.sonatype.org/content/repositories/snapshots</url>
-      <releases>
-        <enabled>false</enabled>
-      </releases>
-      <snapshots>
-        <enabled>true</enabled>
-      </snapshots>
-    </repository>
-  </repositories>
-
-  <properties>
-    <jclouds.version>1.7.0-SNAPSHOT</jclouds.version>
-    <test.${lcaseProviderName}.identity>${providerIdentity}</test.${lcaseProviderName}.identity>
-    <test.${lcaseProviderName}.credential>${providerCredential}</test.${lcaseProviderName}.credential>
-    <test.${lcaseProviderName}.api-version>${providerApiVersion}</test.${lcaseProviderName}.api-version>
-    <test.${lcaseProviderName}.build-version></test.${lcaseProviderName}.build-version>
-    <test.${lcaseProviderName}.endpoint>${providerEndpoint}</test.${lcaseProviderName}.endpoint>
-  </properties>
-  <dependencies>
-    <dependency>
-      <groupId>org.apache.jclouds</groupId>
-      <artifactId>jclouds-core</artifactId>
-      <version>${symbol_dollar}{jclouds.version}</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.jclouds</groupId>
-      <artifactId>jclouds-core</artifactId>
-      <version>${symbol_dollar}{jclouds.version}</version>
-      <type>test-jar</type>
-      <scope>test</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.jclouds.driver</groupId>
-      <artifactId>jclouds-slf4j</artifactId>
-      <version>${symbol_dollar}{jclouds.version}</version>
-      <scope>test</scope>
-    </dependency>
-    <dependency>
-      <groupId>ch.qos.logback</groupId>
-      <artifactId>logback-classic</artifactId>
-      <scope>test</scope>
-    </dependency>    
-  </dependencies>
-  <profiles>
-    <profile>
-      <id>live</id>
-      <build>
-        <plugins>
-          <plugin>
-            <groupId>org.apache.maven.plugins</groupId>
-            <artifactId>maven-surefire-plugin</artifactId>
-            <executions>
-              <execution>
-                <id>integration</id>
-                <phase>integration-test</phase>
-                <goals>
-                  <goal>test</goal>
-                </goals>
-                <configuration>
-                  <systemPropertyVariables>
-                    <test.${lcaseProviderName}.identity>\$\{test.${lcaseProviderName}.identity\}</test.${lcaseProviderName}.identity>
-                    <test.${lcaseProviderName}.credential>\$\{test.${lcaseProviderName}.credential\}</test.${lcaseProviderName}.credential>
-                    <test.${lcaseProviderName}.endpoint>\$\{test.${lcaseProviderName}.endpoint\}</test.${lcaseProviderName}.endpoint>
-                    <test.${lcaseProviderName}.api-version>\$\{test.${lcaseProviderName}.api-version\}</test.${lcaseProviderName}.api-version>
-                    <test.${lcaseProviderName}.build-version>\$\{test.${lcaseProviderName}.build-version\}</test.${lcaseProviderName}.build-version>
-                  </systemPropertyVariables>
-                </configuration>
-              </execution>
-            </executions>
-          </plugin>
-        </plugins>
-      </build>
-    </profile>
-  </profiles>
-</project>

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__Api.java
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__Api.java b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__Api.java
deleted file mode 100644
index 4ad338b..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__Api.java
+++ /dev/null
@@ -1,43 +0,0 @@
-#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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 ${package};
-
-import ${package}.features.KeyApi;
-import org.jclouds.rest.annotations.Delegate;
-
-/**
- * Provides synchronous access to ${providerName}.
- * <p/>
- * 
- * @see ${providerName}AsyncApi
- * @see <a href="TODO: docs!">api doc</a>
- * @author ${author}
- */
-public interface ${providerName}Api {
-
-   /**
-    * Provides synchronous access to Key features.
-    */
-   @Delegate
-   KeyApi getKeyApi();
-   
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__ApiMetadata.java
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__ApiMetadata.java b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__ApiMetadata.java
deleted file mode 100644
index a2f83f7..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__ApiMetadata.java
+++ /dev/null
@@ -1,97 +0,0 @@
-#set( $lcaseProviderName = ${providerName.toLowerCase()} )
-#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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 ${package};
-
-import static java.util.concurrent.TimeUnit.SECONDS;
-import static org.jclouds.Constants.PROPERTY_TIMEOUTS_PREFIX;
-
-import java.net.URI;
-import java.util.Properties;
-
-import org.jclouds.apis.ApiMetadata;
-import ${package}.config.${providerName}RestClientModule;
-import org.jclouds.rest.RestContext;
-import org.jclouds.rest.internal.BaseRestApiMetadata;
-
-import com.google.common.collect.ImmutableSet;
-import com.google.common.reflect.TypeToken;
-import com.google.inject.Module;
-
-/**
- * Implementation of {@link ApiMetadata} for ${providerName} ${providerApiVersion} API
- * 
- * @author ${author}
- */
-public class ${providerName}ApiMetadata extends BaseRestApiMetadata {
-
-   public static final TypeToken<RestContext<${providerName}Api, ${providerName}AsyncApi>> CONTEXT_TOKEN = new TypeToken<RestContext<${providerName}Api, ${providerName}AsyncApi>>() {
-   };
-
-   @Override
-   public Builder toBuilder() {
-      return new Builder().fromApiMetadata(this);
-   }
-
-   public ${providerName}ApiMetadata() {
-      this(new Builder());
-   }
-
-   protected ${providerName}ApiMetadata(Builder builder) {
-      super(builder);
-   }
-
-   public static Properties defaultProperties() {
-      Properties properties = BaseRestApiMetadata.defaultProperties();
-      properties.setProperty(PROPERTY_TIMEOUTS_PREFIX + "default", SECONDS.toMillis(30) + "");
-      return properties;
-   }
-
-   public static class Builder extends BaseRestApiMetadata.Builder {
-
-      protected Builder() {
-         super(${providerName}Api.class, ${providerName}AsyncApi.class);
-         id("${lcaseProviderName}")
-         .name("${providerName} API")
-         .identityName("${providerIdentity}")
-         .credentialName("${providerCredential}")
-         .documentation(URI.create("TODO"))
-         .version("${providerApiVersion}")
-         .defaultEndpoint("${providerEndpoint}")
-         .defaultProperties(${providerName}ApiMetadata.defaultProperties())
-         .defaultModules(ImmutableSet.<Class<? extends Module>> of(${providerName}RestClientModule.class));
-      }
-
-      @Override
-      public ${providerName}ApiMetadata build() {
-         return new ${providerName}ApiMetadata(this);
-      }
-
-      @Override
-      public Builder fromApiMetadata(ApiMetadata in) {
-         super.fromApiMetadata(in);
-         return this;
-      }
-
-   }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__AsyncApi.java
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__AsyncApi.java b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__AsyncApi.java
deleted file mode 100644
index f235c1c..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__AsyncApi.java
+++ /dev/null
@@ -1,43 +0,0 @@
-#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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 ${package};
-
-import ${package}.features.KeyAsyncApi;
-import org.jclouds.rest.annotations.Delegate;
-
-/**
- * Provides asynchronous access to ${providerName} via their REST API.
- * <p/>
- * 
- * @see ${providerName}Api
- * @see <a href="TODO: docs!">api doc</a>
- * @author ${author}
- */
-public interface ${providerName}AsyncApi {
-   
-   /**
-    * Provides asynchronous access to Key features.
-    */
-   @Delegate
-   KeyAsyncApi getKeyApi();
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__AsyncClient.java
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__AsyncClient.java b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__AsyncClient.java
deleted file mode 100644
index 8a0774c..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__AsyncClient.java
+++ /dev/null
@@ -1,82 +0,0 @@
-#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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 ${package};
-
-import javax.ws.rs.Consumes;
-import javax.ws.rs.DELETE;
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
-import javax.ws.rs.PathParam;
-import javax.ws.rs.core.MediaType;
-
-import org.jclouds.http.filters.BasicAuthentication;
-import ${package}.${providerName}Client;
-import org.jclouds.rest.annotations.ExceptionParser;
-import org.jclouds.rest.annotations.RequestFilters;
-import org.jclouds.rest.functions.ReturnEmptySetOnNotFoundOr404;
-import org.jclouds.rest.functions.NullOnNotFoundOr404;
-import org.jclouds.rest.functions.ReturnVoidOnNotFoundOr404;
-
-import com.google.common.util.concurrent.ListenableFuture;
-
-/**
- * Provides asynchronous access to ${providerName} via their REST API.
- * <p/>
- *
- * @see ${providerName}Client
- * @see <a href="TODO: insert URL of provider documentation" />
- * @author ${author}
- */
-@RequestFilters(BasicAuthentication.class)
-public interface ${providerName}AsyncClient {
-   public static final String API_VERSION = "${providerApiVersion}";
-
-   /*
-    * TODO: define interface methods for ${providerName} 
-    */
-   
-   /**
-    * @see ${providerName}Client#list()
-    */
-   @GET
-   @Path("/items")
-   @Consumes(MediaType.TEXT_PLAIN)
-   @Fallback(EmptySetOnNotFoundOr404.class)
-   ListenableFuture<String> list();
-   
-   /**
-    * @see ${providerName}Client#get(long)
-    */
-   @GET
-   @Fallback(NullOnNotFoundOr404.class)
-   @Consumes(MediaType.TEXT_PLAIN)
-   @Path("/items/{itemId}")
-   ListenableFuture<String> get(@PathParam("itemId") long id);
-   
-   /**
-    * @see ${providerName}Client#delete
-    */
-   @DELETE
-   @Path("/items/{itemId}")
-   @Fallback(VoidOnNotFoundOr404.class)
-   ListenableFuture<Void> delete(@PathParam("itemId") long id);
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__Client.java
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__Client.java b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__Client.java
deleted file mode 100644
index 14b10b0..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/__providerName__Client.java
+++ /dev/null
@@ -1,48 +0,0 @@
-#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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 ${package};
-
-/**
- * Provides synchronous access to ${providerName}.
- * <p/>
- * 
- * @see ${providerName}AsyncClient
- * @see <a href="TODO: insert URL of ${providerName} documentation" />
- * @author ${author}
- */
-public interface ${providerName}Client {
-   /*
-    * Note all these delegate to methods in ${providerName}AsyncClient with a specified or inherited timeout.
-    *   The signatures should match those of ${providerName}AsyncClient, except the returnvals should not be
-    *   wrapped in a Future 
-    */
-   
-   String list();
-   
-   /**
-    * @return null, if not found
-    */
-   String get(long id);
-   
-   void delete(long id);
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/config/__providerName__RestClientModule.java
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/config/__providerName__RestClientModule.java b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/config/__providerName__RestClientModule.java
deleted file mode 100644
index 4730d05..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/config/__providerName__RestClientModule.java
+++ /dev/null
@@ -1,70 +0,0 @@
-#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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 ${package}.config;
-
-import java.util.Map;
-
-import org.jclouds.http.HttpErrorHandler;
-import org.jclouds.http.annotation.ClientError;
-import org.jclouds.http.annotation.Redirection;
-import org.jclouds.http.annotation.ServerError;
-import ${package}.${providerName}AsyncApi;
-import ${package}.${providerName}Api;
-import ${package}.features.KeyAsyncApi;
-import ${package}.features.KeyApi;
-import ${package}.handlers.${providerName}ErrorHandler;
-import org.jclouds.json.config.GsonModule.DateAdapter;
-import org.jclouds.json.config.GsonModule.Iso8601DateAdapter;
-import org.jclouds.rest.ConfiguresRestClient;
-import org.jclouds.rest.config.RestClientModule;
-
-import com.google.common.collect.ImmutableMap;
-
-/**
- * Configures the ${providerName} connection.
- * 
- * @author ${author}
- */
-@ConfiguresRestClient
-public class ${providerName}RestClientModule extends RestClientModule<${providerName}Api, ${providerName}AsyncApi> {
-   public static final Map<Class<?>, Class<?>> DELEGATE_MAP = ImmutableMap.<Class<?>, Class<?>> builder()
-         .put(KeyApi.class, KeyAsyncApi.class)
-         .build();
-
-   public ${providerName}RestClientModule() {
-      super(DELEGATE_MAP);
-   }
-
-   @Override
-   protected void configure() {
-      bind(DateAdapter.class).to(Iso8601DateAdapter.class);
-      super.configure();
-   }
-
-   @Override
-   protected void bindErrorHandlers() {
-      bind(HttpErrorHandler.class).annotatedWith(Redirection.class).to(${providerName}ErrorHandler.class);
-      bind(HttpErrorHandler.class).annotatedWith(ClientError.class).to(${providerName}ErrorHandler.class);
-      bind(HttpErrorHandler.class).annotatedWith(ServerError.class).to(${providerName}ErrorHandler.class);
-   }
-   
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/domain/Key.java
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/domain/Key.java b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/domain/Key.java
deleted file mode 100644
index 3c4e8c9..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/domain/Key.java
+++ /dev/null
@@ -1,151 +0,0 @@
-#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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 ${package}.domain;
-
-import static com.google.common.base.Preconditions.checkNotNull;
-
-import java.beans.ConstructorProperties;
-import java.util.Date;
-
-import com.google.common.base.Objects;
-import com.google.common.collect.ComparisonChain;
-
-/**
- * Example
- * 
- * @author ${author}
- * @see <a href="TODO!">api doc</a>
- */
-public class Key implements Comparable<Key> {
-
-   public static Builder builder() {
-      return new Builder();
-   }
-
-   public Builder toBuilder() {
-      return builder().fromKey(this);
-   }
-   
-   public static class Builder {
-      private String name;
-      private String key;
-      private Date created = new Date();
-
-      /**
-       * @see Key#getName()
-       */
-      public Builder name(String name) {
-         this.name = name;
-         return this;
-      }
-
-      /**
-       * @see Key#get()
-       */
-      public Builder key(String key) {
-         this.key = key;
-         return this;
-      }
-
-      /**
-       * @see Key#getCreated()
-       */
-      public Builder created(Date created) {
-         this.created = created;
-         return this;
-      }
-
-      public Key build() {
-         return new Key(name, key, created);
-      }
-
-      public Builder fromKey(Key in) {
-         return name(in.getName()).key(in.get()).created(in.getCreated());
-      }
-   }
-
-   protected final String name;
-   protected final String key;
-   // don't include created in the http request
-   transient protected final Date created;
-   
-   @ConstructorProperties({ "name", "key", "created" })
-   public Key(String name, String key, Date created) {
-      this.name = checkNotNull(name, "name");
-      this.key = checkNotNull(key, "key: OpenSSH formatted public key of key(%s)", name);
-      this.created = checkNotNull(created, "created date of key(%s)", name);
-   }
-
-   /**
-    * Name for this key
-    */
-   public String getName() {
-      return name;
-   }
-
-   /**
-    * OpenSSH formatted public key
-    */
-   public String get() {
-      return key;
-   }
-   
-   /**
-    * Date the key was created
-    */
-   public Date getCreated() {
-      return created;
-   }
-
-   @Override
-   public boolean equals(Object object) {
-      if (this == object) {
-         return true;
-      }
-      if (object instanceof Key) {
-         Key that = Key.class.cast(object);
-         return Objects.equal(name, that.name);
-      } else {
-         return false;
-      }
-   }
-
-   @Override
-   public int hashCode() {
-      return Objects.hashCode(name);
-   }
-
-   @Override
-   public String toString() {
-      return Objects.toStringHelper("").omitNullValues()
-                    .add("name", name)
-                    .add("key", key)
-                    .add("created", created).toString();
-   }
-   
-   @Override
-   public int compareTo(Key that) {
-      return ComparisonChain.start()
-                            .compare(this.name, that.name)
-                            .compare(this.created, that.created).result();
-   }
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/features/KeyApi.java
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/features/KeyApi.java b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/features/KeyApi.java
deleted file mode 100644
index 2a4aba6..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/features/KeyApi.java
+++ /dev/null
@@ -1,56 +0,0 @@
-#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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 ${package}.features;
-
-import java.util.Set;
-import ${package}.domain.Key;
-
-/**
- * Description here
- * 
- * @author ${author}
- * @see KeyAsyncApi
- * @see <a href="TODO!">api doc</a>
- */
-public interface KeyApi {
-
-   /**
-    * Lists all public keys we have on record for the specified account.
-    */
-   Set<Key> list();
-
-   /**
-    * Retrieves an individual key record.
-    */
-   Key get(String name);
-
-   /**
-    * Uploads a new OpenSSH key to SmartDataCenter for use in SSH and HTTP
-    * signing.
-    */
-   Key create(Key key);
-
-   /**
-    * Deletes an SSH key by name.
-    */
-   void delete(String name);
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/features/KeyAsyncApi.java
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/features/KeyAsyncApi.java b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/features/KeyAsyncApi.java
deleted file mode 100644
index e6f532d..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/features/KeyAsyncApi.java
+++ /dev/null
@@ -1,90 +0,0 @@
-#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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 ${package}.features;
-
-import java.util.Set;
-
-import javax.ws.rs.Consumes;
-import javax.ws.rs.DELETE;
-import javax.ws.rs.GET;
-import javax.ws.rs.POST;
-import javax.ws.rs.Path;
-import javax.ws.rs.PathParam;
-import javax.ws.rs.core.MediaType;
-
-import org.jclouds.http.filters.BasicAuthentication;
-import ${package}.domain.Key;
-import org.jclouds.rest.annotations.BinderParam;
-import org.jclouds.rest.annotations.ExceptionParser;
-import org.jclouds.rest.annotations.Headers;
-import org.jclouds.rest.annotations.RequestFilters;
-import org.jclouds.rest.binders.BindToJsonPayload;
-import org.jclouds.rest.functions.ReturnEmptySetOnNotFoundOr404;
-import org.jclouds.rest.functions.NullOnNotFoundOr404;
-import org.jclouds.rest.functions.ReturnVoidOnNotFoundOr404;
-
-import com.google.common.util.concurrent.ListenableFuture;
-
-/**
- * @author ${author}
- * @see KeyApi
- * @see <a href="TODO!">api doc</a>
- */
-@Headers(keys = "X-Api-Version", values = "{jclouds.api-version}")
-@RequestFilters(BasicAuthentication.class)
-public interface KeyAsyncApi {
-   /**
-    * @see KeyApi#list
-    */
-   @GET
-   @Path("/my/keys")
-   @Consumes(MediaType.APPLICATION_JSON)
-   @Fallback(EmptySetOnNotFoundOr404.class)
-   ListenableFuture<Set<Key>> list();
-
-   /**
-    * @see KeyApi#get
-    */
-   @GET
-   @Path("/my/keys/{name}")
-   @Consumes(MediaType.APPLICATION_JSON)
-   @Fallback(NullOnNotFoundOr404.class)
-   ListenableFuture<Key> get(@PathParam("name") String name);
-   
-   /**
-    * @see KeyApi#create
-    */
-   @POST
-   @Path("/my/keys")
-   @Consumes(MediaType.APPLICATION_JSON)
-   ListenableFuture<Key> create(@BinderParam(BindToJsonPayload.class) Key key);
-   
-   /**
-    * @see KeyApi#delete
-    */
-   @DELETE
-   @Consumes(MediaType.APPLICATION_JSON)
-   @Path("/my/keys/{name}")
-   @Fallback(VoidOnNotFoundOr404.class)
-   ListenableFuture<Void> delete(@PathParam("name") String name);
-   
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/handlers/__providerName__ErrorHandler.java
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/handlers/__providerName__ErrorHandler.java b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/handlers/__providerName__ErrorHandler.java
deleted file mode 100644
index 98041b2..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/java/handlers/__providerName__ErrorHandler.java
+++ /dev/null
@@ -1,70 +0,0 @@
-#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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 ${package}.handlers;
-
-import static org.jclouds.http.HttpUtils.closeClientButKeepContentStream;
-
-import javax.inject.Singleton;
-
-import org.jclouds.http.HttpCommand;
-import org.jclouds.http.HttpErrorHandler;
-import org.jclouds.http.HttpResponse;
-import org.jclouds.http.HttpResponseException;
-import org.jclouds.rest.AuthorizationException;
-import org.jclouds.rest.ResourceNotFoundException;
-
-/**
- * This will parse and set an appropriate exception on the command object.
- * 
- * @author ${author}
- * 
- */
-@Singleton
-public class ${providerName}ErrorHandler implements HttpErrorHandler {
-   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 400:
-            break;
-         case 401:
-         case 403:
-            exception = new AuthorizationException(message, exception);
-            break;
-         case 404:
-            if (!command.getCurrentRequest().getMethod().equals("DELETE")) {
-               exception = new ResourceNotFoundException(message, exception);
-            }
-            break;
-         case 409:
-            exception = new IllegalStateException(message, exception);
-            break;
-      }
-      command.setException(exception);
-   }
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata
deleted file mode 100644
index 7f02add..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata
+++ /dev/null
@@ -1 +0,0 @@
-${package}.${providerName}ApiMetadata

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/__providerName__ApiMetadataTest.java
----------------------------------------------------------------------
diff --git a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/__providerName__ApiMetadataTest.java b/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/__providerName__ApiMetadataTest.java
deleted file mode 100644
index 0d8b469..0000000
--- a/archetypes/rest-client-archetype/src/main/resources/archetype-resources/src/test/java/__providerName__ApiMetadataTest.java
+++ /dev/null
@@ -1,45 +0,0 @@
-#set( $symbol_pound = '#' )
-#set( $symbol_dollar = '$' )
-#set( $symbol_escape = '\' )
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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 ${package};
-
-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 that ${providerName}ApiMetadata is properly registered in ServiceLoader
- * 
- * <pre>
- * META-INF/services/org.jclouds.apis.ApiMetadata
- * </pre>
- * 
- * @author ${author}
- */
-@Test(groups = "unit", testName = "${providerName}ApiMetadataTest")
-public class ${providerName}ApiMetadataTest extends BaseApiMetadataTest {
-   public ${providerName}ApiMetadataTest() {
-      super(new ${providerName}ApiMetadata(), ImmutableSet.<TypeToken<? extends View>> of());
-   }
-}


[2/5] JCLOUDS-54. remove historical demos, archetypes and assemblies modules

Posted by ad...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/googleappengine/README.md
----------------------------------------------------------------------
diff --git a/demos/googleappengine/README.md b/demos/googleappengine/README.md
deleted file mode 100644
index bed7264..0000000
--- a/demos/googleappengine/README.md
+++ /dev/null
@@ -1,28 +0,0 @@
-# googleappengine
-This example will list the current instances and buckets in your Amazon account, using portable apis.  This example runs inside Google AppEngine as a war file.
-
-## Prepare
-
-Please unzip http://googleappengine.googlecode.com/files/appengine-java-sdk-1.4.0.zip and export the system variable APPENGINE_HOME accordingly.
-
-## Build
-
-To install your test on your remote appengine application, first prepare locally via the below instructions:
-mvn -Dappengine.applicationid=YOUR_APPLICATION -Dtest.aws.identity=YOUR_ACCESS_KEY_ID -Dtest.aws.credential=YOUR_SECRET_KEY -Plive install
-
-## Deploy
-
-then, you can upload this to google appengine like below:
-appcfg.sh -e YOUR_EMAIL update target//jclouds-googleappengine-example
-
-## Test
-
-finally, you can verify with a web url:
-http://YOUR_APPLICATION_ID.appspot.com/guice/status.check
-
-## License
-
-Copyright (C) 2009-2011 jclouds, Inc.
-
-Licensed under the Apache License, Version 2.0 
-

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/googleappengine/pom.xml
----------------------------------------------------------------------
diff --git a/demos/googleappengine/pom.xml b/demos/googleappengine/pom.xml
deleted file mode 100644
index e0b8116..0000000
--- a/demos/googleappengine/pom.xml
+++ /dev/null
@@ -1,396 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-Licensed to jclouds, Inc. (jclouds) under one or more
-contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  jclouds 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.
-
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>org.apache.jclouds</groupId>
-    <artifactId>jclouds-demos-project</artifactId>
-    <version>1.7.0-SNAPSHOT</version>
-  </parent>
-  <artifactId>jclouds-demo-googleappengine</artifactId>
-  <packaging>war</packaging>
-  <name>JClouds Sample for Google App Engine</name>
-  <description>JClouds Sample for Google App Engine</description>
-
-  <properties>
-    <!--
-        note you must set the property ${appengine.sdk.root} to a valid
-        extraction of appengine-java-sdk
-    -->
-    <appengine.applicationid>jclouds-hpcloud-demo</appengine.applicationid>
-    <appengine.sdk.version>1.6.5</appengine.sdk.version>
-    <devappserver.address>localhost</devappserver.address>
-    <devappserver.port>8088</devappserver.port>
-  </properties>
-
-  <dependencies>
-    <dependency>
-      <groupId>org.apache.jclouds</groupId>
-      <artifactId>jclouds-blobstore</artifactId>
-      <version>${project.version}</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.jclouds</groupId>
-      <artifactId>jclouds-compute</artifactId>
-      <version>${project.version}</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.jclouds.provider</groupId>
-      <artifactId>hpcloud-objectstorage</artifactId>
-      <version>${project.version}</version>
-      <scope>runtime</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.jclouds.driver</groupId>
-      <artifactId>jclouds-gae</artifactId>
-      <version>${project.version}</version>
-    </dependency>
-    <dependency>
-      <groupId>com.google.inject.extensions</groupId>
-      <artifactId>guice-servlet</artifactId>
-      <version>3.0</version>
-    </dependency>
-
-    <!-- Google App Engine API -->
-    <dependency>
-      <groupId>com.google.appengine</groupId>
-      <artifactId>appengine-api-1.0-sdk</artifactId>
-      <version>${appengine.sdk.version}</version>
-    </dependency>
-    <dependency>
-      <groupId>com.google.appengine</groupId>
-      <artifactId>appengine-tools-sdk</artifactId>
-      <version>${appengine.sdk.version}</version>
-      <scope>test</scope>
-    </dependency>
-
-    <!-- WAR Dependencies: need to be validated -->
-    <dependency>
-      <groupId>displaytag</groupId>
-      <artifactId>displaytag</artifactId>
-      <version>1.2</version>
-      <scope>runtime</scope>
-      <exclusions>
-        <exclusion>
-          <groupId>org.slf4j</groupId>
-          <artifactId>slf4j-log4j12</artifactId>
-        </exclusion>
-      </exclusions>
-    </dependency>
-    <dependency>
-      <groupId>org.slf4j</groupId>
-      <artifactId>slf4j-jdk14</artifactId>
-      <version>1.5.6</version>
-      <scope>runtime</scope>
-    </dependency>
-    <dependency>
-      <artifactId>jstl</artifactId>
-      <groupId>javax.servlet</groupId>
-      <version>1.1.2</version>
-      <scope>runtime</scope>
-    </dependency>
-    <dependency>
-      <artifactId>standard</artifactId>
-      <groupId>taglibs</groupId>
-      <version>1.1.2</version>
-      <scope>runtime</scope>
-    </dependency>
-    <dependency>
-      <groupId>javax.servlet</groupId>
-      <artifactId>servlet-api</artifactId>
-      <version>2.5</version>
-      <scope>provided</scope>
-    </dependency>
-  </dependencies>
-  <build>
-    <finalName>${project.artifactId}</finalName>
-    <plugins>
-      <plugin>      
-        <artifactId>maven-remote-resources-plugin</artifactId>
-        <configuration>
-          <!-- prevents the maven-war-plugin from including the resources in WEB-INF/classes -->
-          <attached>false</attached>
-        </configuration>
-      </plugin>
-      <plugin>
-        <artifactId>maven-war-plugin</artifactId>
-        <version>2.1.1</version>
-        <configuration>
-          <!-- see http://jira.codehaus.org/browse/MWAR-248 -->
-          <packagingExcludes>WEB-INF/web.xml</packagingExcludes>
-          <webResources>
-            <resource>
-              <directory>src/main/appengine</directory>
-              <targetPath>WEB-INF</targetPath>
-              <filtering>true</filtering>
-              <excludes>
-                <exclude>.gitignore</exclude>
-              </excludes>
-            </resource>
-          </webResources>
-        </configuration>
-      </plugin>
-      <plugin>
-        <groupId>com.ning.maven.plugins</groupId>
-        <artifactId>maven-duplicate-finder-plugin</artifactId>
-        <version>1.0.3</version>
-        <configuration>
-          <exceptions>
-            <exception>
-              <!-- Google App Engine Deps, some google classes are duplicated between packages -->
-              <conflictingDependencies>
-                <dependency>
-                  <groupId>com.google.appengine</groupId>
-                  <artifactId>appengine-api-1.0-sdk</artifactId>
-                  <version>1.6.5</version>
-                </dependency>
-                <dependency>
-                  <groupId>com.google.appengine</groupId>
-                  <artifactId>appengine-tools-sdk</artifactId>
-                  <version>1.6.5</version>
-                  <scope>test</scope>
-                </dependency>
-              </conflictingDependencies>
-              <packages>
-                <package>com.google</package>
-              </packages>
-            </exception>
-            <exception>
-              <!-- Tomcat bundles the JSR250 annotations too -->
-              <conflictingDependencies>
-                <dependency>
-                  <groupId>javax.annotation</groupId>
-                  <artifactId>jsr250-api</artifactId>
-                  <version>1.0</version>
-                  <scope>runtime</scope>
-                </dependency>
-                <dependency>
-                  <groupId>org.apache.tomcat</groupId>
-                  <artifactId>annotations-api</artifactId>
-                  <version>6.0.32</version>
-                  <scope>test</scope>
-                </dependency>
-              </conflictingDependencies>
-              <packages>
-                <package>javax.annotation</package>
-              </packages>
-            </exception>
-            <exception>
-              <!-- commons-beanutils and commons-collections duplicate classes -->
-              <conflictingDependencies>
-                <dependency>
-                  <groupId>commons-beanutils</groupId>
-                  <artifactId>commons-beanutils</artifactId>
-                  <version>1.7.0</version>
-                  <scope>runtime</scope>
-                </dependency>
-                <dependency>
-                  <groupId>commons-collections</groupId>
-                  <artifactId>commons-collections</artifactId>
-                  <version>3.1</version>
-                  <scope>runtime</scope>
-                </dependency>
-              </conflictingDependencies>
-              <packages>
-                <package>org.apache.commons.collections</package>
-              </packages>
-            </exception>
-            <exception>
-              <!-- javax.servlet is included in the appengine-tools-sdk, with Tomcat and Jetty -->
-              <conflictingDependencies>
-                <dependency>
-                  <groupId>javax.servlet</groupId>
-                  <artifactId>servlet-api</artifactId>
-                  <version>2.5</version>
-                  <scope>provided</scope>
-                </dependency>
-                <dependency>
-                  <groupId>com.google.appengine</groupId>
-                  <artifactId>appengine-tools-sdk</artifactId>
-                  <version>1.6.5</version>
-                  <scope>test</scope>
-                </dependency>
-                <dependency>
-                  <groupId>org.apache.tomcat</groupId>
-                  <artifactId>servlet-api</artifactId>
-                  <version>6.0.32</version>
-                  <scope>test</scope>
-                </dependency>
-                <dependency>
-                  <groupId>org.mortbay.jetty</groupId>
-                  <artifactId>jetty-runner</artifactId>
-                  <version>7.5.4.v20111024</version>
-                  <scope>test</scope>
-                </dependency>
-              </conflictingDependencies>
-              <packages>
-                <package>javax.servlet</package>
-              </packages>
-              <resources>
-                <!-- javax.servlet is included in the appengine-tools-sdk and Tomcat -->
-                <resource>javax/servlet/resources/XMLSchema.dtd</resource>
-                <resource>javax/servlet/resources/datatypes.dtd</resource>
-                <resource>javax/servlet/resources/j2ee_1_4.xsd</resource>
-                <resource>javax/servlet/resources/j2ee_web_services_client_1_1.xsd</resource>
-                <resource>javax/servlet/resources/javaee_5.xsd</resource>
-                <resource>javax/servlet/resources/javaee_web_services_client_1_2.xsd</resource>
-                <resource>javax/servlet/resources/jsp_2_0.xsd</resource>
-                <resource>javax/servlet/resources/jsp_2_1.xsd</resource>
-                <resource>javax/servlet/resources/web-app_2_2.dtd</resource>
-                <resource>javax/servlet/resources/web-app_2_3.dtd</resource>
-                <resource>javax/servlet/resources/web-app_2_4.xsd</resource>
-                <resource>javax/servlet/resources/web-app_2_5.xsd</resource>
-                <resource>javax/servlet/resources/xml.xsd</resource>
-                <resource>javax/servlet/LocalStrings.properties</resource>
-                <resource>javax/servlet/LocalStrings_fr.properties</resource>
-                <resource>javax/servlet/LocalStrings_ja.properties</resource>
-                <resource>javax/servlet/http/LocalStrings.properties</resource>
-                <resource>javax/servlet/http/LocalStrings_es.properties</resource>
-                <resource>javax/servlet/http/LocalStrings_fr.properties</resource>
-                <resource>javax/servlet/http/LocalStrings_ja.properties</resource>
-              </resources>
-            </exception>
-            <exception>
-              <!-- Jasper and Catalina duplicate some classes -->
-              <conflictingDependencies>
-                <dependency>
-                  <groupId>org.apache.tomcat</groupId>
-                  <artifactId>catalina</artifactId>
-                  <version>6.0.32</version>
-                  <scope>test</scope>
-                </dependency>
-                <dependency>
-                  <groupId>org.apache.tomcat</groupId>
-                  <artifactId>jasper</artifactId>
-                  <version>6.0.32</version>
-                  <scope>test</scope>
-                </dependency>
-              </conflictingDependencies>
-              <classes>
-                <class>org.apache.AnnotationProcessor</class>
-                <class>org.apache.PeriodicEventListener</class>
-              </classes>
-            </exception>
-            <exception>
-              <!-- Jetty Runner includes taglibs and jstl -->
-              <conflictingDependencies>
-                <dependency>
-                  <groupId>javax.servlet</groupId>
-                  <artifactId>jstl</artifactId>
-                  <version>1.1.2</version>
-                  <scope>runtime</scope>
-                </dependency>
-                <dependency>
-                  <groupId>taglibs</groupId>
-                  <artifactId>standard</artifactId>
-                  <version>1.1.2</version>
-                  <scope>runtime</scope>
-                </dependency>
-                <dependency>
-                  <groupId>org.mortbay.jetty</groupId>
-                  <artifactId>jetty-runner</artifactId>
-                  <version>7.5.4.v20111024</version>
-                  <scope>test</scope>
-                </dependency>
-              </conflictingDependencies>
-              <packages>
-                <package>javax.servlet.jsp.jstl</package>
-                <package>org.apache.taglibs</package>
-              </packages>
-              <resources>
-                <resource>META-INF/c-1_0-rt.tld</resource>
-                <resource>META-INF/c-1_0.tld</resource>
-                <resource>META-INF/c.tld</resource>
-                <resource>META-INF/fmt-1_0-rt.tld</resource>
-                <resource>META-INF/fmt-1_0.tld</resource>
-                <resource>META-INF/fmt.tld</resource>
-                <resource>META-INF/fn.tld</resource>
-                <resource>META-INF/permittedTaglibs.tld</resource>
-                <resource>META-INF/scriptfree.tld</resource>
-                <resource>META-INF/sql-1_0-rt.tld</resource>
-                <resource>META-INF/sql-1_0.tld</resource>
-                <resource>META-INF/sql.tld</resource>
-                <resource>META-INF/x-1_0-rt.tld</resource>
-                <resource>META-INF/x-1_0.tld</resource>
-                <resource>META-INF/x.tld</resource>
-                <resource>org/apache/taglibs/standard/lang/jstl/Resources.properties</resource>
-                <resource>org/apache/taglibs/standard/lang/jstl/Resources_ja.properties</resource>
-                <resource>org/apache/taglibs/standard/resources/Resources.properties</resource>
-                <resource>org/apache/taglibs/standard/resources/Resources_ja.properties</resource>
-              </resources>
-            </exception>
-          </exceptions>
-        </configuration>
-      </plugin>
-    </plugins>
-  </build>
-
-  <profiles>
-    <profile>
-      <id>live</id>
-      <build>
-        <plugins>
-          <plugin>
-            <artifactId>maven-surefire-plugin</artifactId>
-            <executions>
-              <execution>
-                <id>integration</id>
-                <phase>integration-test</phase>
-                <goals>
-                  <goal>test</goal>
-                </goals>
-                <configuration>
-                  <systemPropertyVariables>
-                    <!-- note you can add support for new clouds by adding more entries here
-                         after adding maven dependency  -->
-                    <test.hpcloud-objectstorage.identity>${test.hpcloud-objectstorage.identity}</test.hpcloud-objectstorage.identity>
-                    <test.hpcloud-objectstorage.credential>${test.hpcloud-objectstorage.credential}</test.hpcloud-objectstorage.credential>
-                    <appengine.sdk.root>${appengine.sdk.root}</appengine.sdk.root>
-                    <devappserver.address>${devappserver.address}</devappserver.address>
-                    <devappserver.port>${devappserver.port}</devappserver.port>
-                    <warfile>${project.build.directory}/${project.artifactId}</warfile>
-                  </systemPropertyVariables>
-                </configuration>
-              </execution>
-            </executions>
-          </plugin>
-        </plugins>
-      </build>
-    </profile>
-    <profile>
-      <id>deploy</id>
-      <build>
-        <plugins>
-          <plugin>
-            <groupId>net.kindleit</groupId>
-            <artifactId>maven-gae-plugin</artifactId>
-            <version>0.9.2</version>
-            <configuration>
-              <serverId>google-appengine</serverId>
-              <sdkDir>${appengine.sdk.root}</sdkDir>
-            </configuration>
-          </plugin>
-        </plugins>
-      </build>
-    </profile>
-  </profiles>
-</project>

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/googleappengine/src/main/appengine/appengine-web.xml
----------------------------------------------------------------------
diff --git a/demos/googleappengine/src/main/appengine/appengine-web.xml b/demos/googleappengine/src/main/appengine/appengine-web.xml
deleted file mode 100644
index e2440d8..0000000
--- a/demos/googleappengine/src/main/appengine/appengine-web.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-    Licensed to jclouds, Inc. (jclouds) under one or more
-    contributor license agreements.  See the NOTICE file
-    distributed with this work for additional information
-    regarding copyright ownership.  jclouds 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.
-
--->
-<appengine-web-app xmlns="http://appengine.google.com/ns/1.0">
-	<application>${appengine.applicationid}</application>
-	<version>1</version>
-	<system-properties>
-		<property name="java.util.logging.config.file" value="WEB-INF/logging.properties" />
-	</system-properties>
-	<!-- potential race condition in GuiceServletConfig -->
-    <threadsafe>false</threadsafe>
-</appengine-web-app>

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/googleappengine/src/main/appengine/logging.properties
----------------------------------------------------------------------
diff --git a/demos/googleappengine/src/main/appengine/logging.properties b/demos/googleappengine/src/main/appengine/logging.properties
deleted file mode 100644
index 61936d0..0000000
--- a/demos/googleappengine/src/main/appengine/logging.properties
+++ /dev/null
@@ -1,37 +0,0 @@
-#
-# Licensed to jclouds, Inc. (jclouds) under one or more
-# contributor license agreements.  See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership.  jclouds 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.
-#
-
-# Set the default logging level for all loggers to WARNING
-.level = INFO
-
-# Set the default logging level for ORM, specifically, to WARNING
-org.jclouds.level=INFO
-DataNucleus.JDO.level=WARNING
-DataNucleus.Persistence.level=WARNING
-DataNucleus.Cache.level=WARNING
-DataNucleus.MetaData.level=WARNING
-DataNucleus.General.level=WARNING
-DataNucleus.Utility.level=WARNING
-DataNucleus.Transaction.level=WARNING
-DataNucleus.Datastore.level=WARNING
-DataNucleus.ClassLoading.level=WARNING
-DataNucleus.Plugin.level=WARNING
-DataNucleus.ValueGeneration.level=WARNING
-DataNucleus.Enhancer.level=WARNING
-DataNucleus.SchemaTool.level=WARNING
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/GetAllResourcesController.java
----------------------------------------------------------------------
diff --git a/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/GetAllResourcesController.java b/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/GetAllResourcesController.java
deleted file mode 100644
index 4b238ce..0000000
--- a/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/GetAllResourcesController.java
+++ /dev/null
@@ -1,169 +0,0 @@
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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.samples.googleappengine;
-
-import static com.google.common.collect.Iterables.concat;
-import static com.google.common.collect.Iterables.size;
-import static com.google.common.collect.Iterables.transform;
-
-import java.io.IOException;
-import java.util.Set;
-import java.util.concurrent.CancellationException;
-import java.util.concurrent.TimeUnit;
-
-import javax.annotation.Resource;
-import javax.inject.Inject;
-import javax.inject.Provider;
-import javax.inject.Singleton;
-import javax.servlet.RequestDispatcher;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
-import org.jclouds.View;
-import org.jclouds.domain.ResourceMetadata;
-import org.jclouds.logging.Logger;
-import org.jclouds.samples.googleappengine.domain.ResourceResult;
-import org.jclouds.samples.googleappengine.functions.ResourceMetadataToResourceResult;
-import org.jclouds.samples.googleappengine.functions.ViewToAsyncResources;
-import org.jclouds.samples.googleappengine.functions.ViewToId;
-
-import com.google.common.base.Stopwatch;
-import com.google.common.collect.FluentIterable;
-import com.google.common.collect.ImmutableSet;
-import com.google.common.collect.ImmutableSet.Builder;
-import com.google.common.util.concurrent.FutureCallback;
-import com.google.common.util.concurrent.Futures;
-import com.google.common.util.concurrent.ListenableFuture;
-import com.google.common.util.concurrent.ListeningExecutorService;
-
-/**
- * Shows an example of how to list all resources from all views!
- * 
- * @author Adrian Cole
- */
-@Singleton
-public class GetAllResourcesController extends HttpServlet {
-
-   private final ListeningExecutorService currentRequestExecutorService;
-   private final Iterable<View> views;
-   private final ViewToAsyncResources viewToAsyncResources;
-   private final ResourceMetadataToResourceResult resourceMetadataToStatusResult;
-   private final Provider<Long> remainingMillis;
-
-   @Resource
-   protected Logger logger = Logger.NULL;
-
-   @Inject
-   GetAllResourcesController(ListeningExecutorService currentRequestExecutorService, Iterable<View> views,
-         ViewToAsyncResources viewToAsyncResources, ResourceMetadataToResourceResult resourceMetadataToStatusResult,
-         Provider<Long> remainingMillis) {
-      this.currentRequestExecutorService = currentRequestExecutorService;
-      this.views = views;
-      this.viewToAsyncResources = viewToAsyncResources;
-      this.resourceMetadataToStatusResult = resourceMetadataToStatusResult;
-      this.remainingMillis = remainingMillis;
-   }
-
-   @Override
-   protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
-      try {
-         addResourcesToRequest(request);
-         RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/WEB-INF/jsp/resources.jsp");
-         dispatcher.forward(request, response);
-      } catch (Exception e) {
-         logger.error(e, "Error listing resources");
-         throw new ServletException(e);
-      }
-   }
-
-   private void addResourcesToRequest(HttpServletRequest request) {
-      Stopwatch watch = new Stopwatch().start();
-      logger.info("ready to list views: %s", transform(views, ViewToId.INSTANCE));
-      Iterable<ListenableFuture<? extends Iterable<? extends ResourceMetadata<?>>>> asyncResources = transform(views,
-            viewToAsyncResources);
-      logger.info("launched %s tasks with %sms remaining", size(asyncResources), remainingMillis.get());
-
-      Set<Iterable<? extends ResourceMetadata<?>>> done = allResourcesWithinDeadline(asyncResources);
-      logger.info("%s tasks completed in %sms with %sms remaining", size(done), watch.stop().elapsedMillis(),
-            remainingMillis.get());
-
-      Iterable<ResourceMetadata<?>> flattened = concat(done);
-
-      Set<ResourceResult> results = FluentIterable.from(flattened).transform(resourceMetadataToStatusResult)
-            .toImmutableSet();
-
-      request.setAttribute("resources", results);
-   }
-
-   private <T> Set<T> allResourcesWithinDeadline(Iterable<ListenableFuture<? extends T>> asyncResources) {
-      Builder<T> resourcesWeCanList = addToBuilderOnComplete(asyncResources);
-
-      // only serve resources that made it by the timeout
-      blockUntilAllDoneOrCancelOnTimeout(asyncResources);
-
-      return resourcesWeCanList.build();
-   }
-
-   private <T> Builder<T> addToBuilderOnComplete(Iterable<ListenableFuture<? extends T>> asyncResources) {
-
-      final Builder<T> resourcesWeCanList = ImmutableSet.<T> builder();
-
-      for (final ListenableFuture<? extends T> asyncResource : asyncResources) {
-         Futures.addCallback(asyncResource, new FutureCallback<T>() {
-            public void onSuccess(T result) {
-               if (result != null)
-                  resourcesWeCanList.add(result);
-            }
-
-            public void onFailure(Throwable t) {
-               if (!(t instanceof CancellationException))
-                  logger.error(t, "exception getting resource %s: %s", asyncResource, t.getMessage());
-            }
-         }, currentRequestExecutorService);
-
-      }
-      return resourcesWeCanList;
-   }
-
-   // ensure we don't violate our request timeouts.
-   private void blockUntilAllDoneOrCancelOnTimeout(Iterable<? extends ListenableFuture<?>> asyncResources) {
-      try {
-         for (ListenableFuture<?> asyncResource : asyncResources) {
-            if (remainingMillis.get() > 0) {
-               try {
-                  asyncResource.get(remainingMillis.get(), TimeUnit.MILLISECONDS);
-               } catch (Exception e) {
-                  logger.info("exception getting resource %s: %s", asyncResource, e.getMessage());
-               }
-            }
-         }
-      } finally {
-         if (remainingMillis.get() < 0) {
-            for (ListenableFuture<?> asyncResource : asyncResources) {
-               if (!asyncResource.isDone())
-                  asyncResource.cancel(true);
-            }
-         }
-      }
-
-   }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/config/GuiceServletConfig.java
----------------------------------------------------------------------
diff --git a/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/config/GuiceServletConfig.java b/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/config/GuiceServletConfig.java
deleted file mode 100644
index 7cd421b..0000000
--- a/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/config/GuiceServletConfig.java
+++ /dev/null
@@ -1,167 +0,0 @@
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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.samples.googleappengine.config;
-
-import static com.google.common.base.Preconditions.checkNotNull;
-import static com.google.common.collect.Iterables.filter;
-import static com.google.common.collect.Iterables.get;
-import static com.google.common.collect.Iterables.transform;
-import static com.google.common.io.Closeables.closeQuietly;
-import static org.jclouds.compute.config.ComputeServiceProperties.TIMEOUT_NODE_RUNNING;
-import static org.jclouds.compute.config.ComputeServiceProperties.TIMEOUT_NODE_TERMINATED;
-import static org.jclouds.compute.config.ComputeServiceProperties.TIMEOUT_PORT_OPEN;
-import static org.jclouds.compute.config.ComputeServiceProperties.TIMEOUT_SCRIPT_COMPLETE;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.Properties;
-import java.util.concurrent.Executors;
-import java.util.concurrent.ThreadFactory;
-
-import javax.inject.Singleton;
-import javax.servlet.ServletContextEvent;
-
-import org.jclouds.ContextBuilder;
-import org.jclouds.View;
-import org.jclouds.gae.config.AsyncGoogleAppEngineConfigurationModule;
-import org.jclouds.logging.jdk.config.JDKLoggingModule;
-import org.jclouds.providers.ProviderMetadata;
-import org.jclouds.providers.Providers;
-import org.jclouds.samples.googleappengine.GetAllResourcesController;
-
-import com.google.appengine.api.ThreadManager;
-import com.google.apphosting.api.ApiProxy;
-import com.google.common.base.Function;
-import com.google.common.base.Predicate;
-import com.google.common.collect.ImmutableSet;
-import com.google.common.reflect.TypeToken;
-import com.google.common.util.concurrent.ListeningExecutorService;
-import com.google.common.util.concurrent.MoreExecutors;
-import com.google.inject.Guice;
-import com.google.inject.Injector;
-import com.google.inject.Module;
-import com.google.inject.Provides;
-import com.google.inject.TypeLiteral;
-import com.google.inject.servlet.GuiceServletContextListener;
-import com.google.inject.servlet.ServletModule;
-
-/**
- * Setup Logging and create {@link Injector} for use in testing Views
- * 
- * @author Adrian Cole
- */
-public class GuiceServletConfig extends GuiceServletContextListener {
-
-   private Iterable<View> views;
-
-   @Override
-   public void contextInitialized(ServletContextEvent servletContextEvent) {
-      final Properties overrides = loadJCloudsProperties(servletContextEvent);
-      // until there's a global skip image parse option
-      overrides.setProperty("jclouds.ec2.ami-query", "");
-      overrides.setProperty("jclouds.ec2.cc-ami-query", "");
-
-      // ensure requests don't take longer than GAE timeout
-      overrides.setProperty(TIMEOUT_NODE_TERMINATED, "25000");
-      overrides.setProperty(TIMEOUT_NODE_RUNNING, "25000");
-      overrides.setProperty(TIMEOUT_SCRIPT_COMPLETE, "25000");
-      overrides.setProperty(TIMEOUT_PORT_OPEN, "25000");
-
-      // correct the classloader so that extensions can be found
-      Thread.currentThread().setContextClassLoader(Providers.class.getClassLoader());
-
-      Iterable<ProviderMetadata> identityInProperties = providersWeHaveIdentitiesFor(overrides);
-
-      final ImmutableSet<Module> modules = ImmutableSet.<Module> of(new AsyncGoogleAppEngineConfigurationModule());
-      views = transform(identityInProperties, new Function<ProviderMetadata, View>() {
-
-         @Override
-         public View apply(ProviderMetadata input) {
-            TypeToken<? extends View> defaultView = get(input.getApiMetadata().getViews(), 0);
-            return ContextBuilder.newBuilder(input).modules(modules).overrides(overrides).buildView(defaultView);
-         }
-
-      });
-
-      super.contextInitialized(servletContextEvent);
-   }
-
-   protected Iterable<ProviderMetadata> providersWeHaveIdentitiesFor(final Properties overrides) {
-      // there's a chance serviceloader is being lazy, and we don't want
-      // ConcurrentModificationException, so copy into a set.
-      return ImmutableSet.copyOf(filter(Providers.all(), new Predicate<ProviderMetadata>() {
-
-         @Override
-         public boolean apply(ProviderMetadata input) {
-            return overrides.containsKey(input.getId() + ".identity");
-         }
-
-      }));
-   }
-
-   private Properties loadJCloudsProperties(ServletContextEvent servletContextEvent) {
-      InputStream input = servletContextEvent.getServletContext().getResourceAsStream("/WEB-INF/jclouds.properties");
-      Properties props = new Properties();
-      try {
-         props.load(input);
-      } catch (IOException e) {
-         throw new RuntimeException(e);
-      } finally {
-         closeQuietly(input);
-      }
-      return props;
-   }
-
-   @Override
-   protected Injector getInjector() {
-      return Guice.createInjector(new JDKLoggingModule(), new ServletModule() {
-         @Override
-         protected void configureServlets() {
-            bind(new TypeLiteral<Iterable<View>>() {
-            }).toInstance(GuiceServletConfig.this.views);
-            serve("*.check").with(GetAllResourcesController.class);
-            requestInjection(this);
-         }
-
-         @SuppressWarnings("unused")
-         @Provides
-         long remainingMillis() {
-            // leave 100ms for any post processing
-            return ApiProxy.getCurrentEnvironment().getRemainingMillis() - 100;
-         }
-
-         @SuppressWarnings("unused")
-         @Provides
-         @Singleton
-         ListeningExecutorService currentRequestExecutorService() {
-            ThreadFactory factory = checkNotNull(ThreadManager.currentRequestThreadFactory(),
-                  "ThreadManager.currentRequestThreadFactory()");
-            return MoreExecutors.listeningDecorator(Executors.newCachedThreadPool(factory));
-         }
-      });
-   }
-
-   @Override
-   public void contextDestroyed(ServletContextEvent servletContextEvent) {
-      for (View view : views) {
-         view.unwrap().close();
-      }
-      super.contextDestroyed(servletContextEvent);
-   }
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/domain/ResourceResult.java
----------------------------------------------------------------------
diff --git a/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/domain/ResourceResult.java b/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/domain/ResourceResult.java
deleted file mode 100644
index 4e62ec7..0000000
--- a/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/domain/ResourceResult.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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.samples.googleappengine.domain;
-
-import static com.google.common.base.Objects.equal;
-
-import com.google.common.base.Objects;
-
-/**
- * 
- * @author Adrian Cole
- */
-public class ResourceResult {
-
-   public static Builder builder() {
-      return new Builder();
-   }
-
-   public static class Builder {
-      protected String provider;
-      protected String location;
-      protected String type;
-      protected String id;
-      protected String name;
-
-      public Builder provider(String provider) {
-         this.provider = provider;
-         return this;
-      }
-
-      public Builder location(String location) {
-         this.location = location;
-         return this;
-      }
-
-      public Builder type(String type) {
-         this.type = type;
-         return this;
-      }
-
-      public Builder id(String id) {
-         this.id = id;
-         return this;
-      }
-
-      public Builder name(String name) {
-         this.name = name;
-         return this;
-      }
-
-      public ResourceResult build() {
-         return new ResourceResult(provider, location, type, id, name);
-      }
-
-   }
-
-   private final String provider;
-   private final String location;
-   private final String type;
-   private final String id;
-   private final String name;
-
-   protected ResourceResult(String provider, String location, String type, String id, String name) {
-      this.provider = provider;
-      this.type = type;
-      this.location = location;
-      this.id = id;
-      this.name = name;
-   }
-
-   public String getProvider() {
-      return provider;
-   }
-
-   public String getLocation() {
-      return location;
-   }
-
-   public String getType() {
-      return type;
-   }
-
-   public String getId() {
-      return id;
-   }
-
-   public String getName() {
-      return name;
-   }
-
-   @Override
-   public boolean equals(Object o) {
-      if (this == o)
-         return true;
-      if (o == null || getClass() != o.getClass())
-         return false;
-      ResourceResult that = ResourceResult.class.cast(o);
-      return equal(this.provider, that.provider) && equal(this.location, that.location) && equal(this.type, that.type)
-            && equal(this.id, that.id) && equal(this.name, that.name);
-   }
-
-   @Override
-   public int hashCode() {
-      return Objects.hashCode(provider, location, type, id, name);
-   }
-
-   @Override
-   public String toString() {
-      return Objects.toStringHelper("").add("provider", provider).add("location", location).add("type", type)
-            .add("id", id).add("name", name).toString();
-   }
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/functions/BlobStoreContextToAsyncResources.java
----------------------------------------------------------------------
diff --git a/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/functions/BlobStoreContextToAsyncResources.java b/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/functions/BlobStoreContextToAsyncResources.java
deleted file mode 100644
index 2e7343e..0000000
--- a/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/functions/BlobStoreContextToAsyncResources.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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.samples.googleappengine.functions;
-
-import javax.annotation.Resource;
-import javax.inject.Singleton;
-
-import org.jclouds.blobstore.BlobStoreContext;
-import org.jclouds.domain.ResourceMetadata;
-import org.jclouds.logging.Logger;
-
-import com.google.common.base.Function;
-import com.google.common.util.concurrent.ListenableFuture;
-
-/**
- * 
- * @author Adrian Cole
- */
-@Singleton
-public class BlobStoreContextToAsyncResources implements
-      Function<BlobStoreContext, ListenableFuture<? extends Iterable<? extends ResourceMetadata<?>>>> {
-   @Resource
-   protected Logger logger = Logger.NULL;
-
-   public ListenableFuture<? extends Iterable<? extends ResourceMetadata<?>>> apply(BlobStoreContext in) {
-      logger.info("listing containers on %s: ", in.unwrap().getId());
-      return in.getAsyncBlobStore().list();
-   }
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/functions/ComputeServiceContextToAsyncResources.java
----------------------------------------------------------------------
diff --git a/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/functions/ComputeServiceContextToAsyncResources.java b/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/functions/ComputeServiceContextToAsyncResources.java
deleted file mode 100644
index 152149b..0000000
--- a/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/functions/ComputeServiceContextToAsyncResources.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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.samples.googleappengine.functions;
-
-import java.util.concurrent.Callable;
-
-import javax.annotation.Resource;
-import javax.inject.Singleton;
-
-import org.jclouds.compute.ComputeServiceContext;
-import org.jclouds.domain.ResourceMetadata;
-import org.jclouds.logging.Logger;
-
-import com.google.common.base.Function;
-import com.google.common.util.concurrent.ListenableFuture;
-import com.google.common.util.concurrent.ListeningExecutorService;
-import com.google.inject.Inject;
-
-/**
- * ComputeService doesn't currently have an Async counterpart
- * 
- * @author Adrian Cole
- */
-@Singleton
-public class ComputeServiceContextToAsyncResources implements
-      Function<ComputeServiceContext, ListenableFuture<? extends Iterable<? extends ResourceMetadata<?>>>> {
-
-   @Resource
-   protected Logger logger = Logger.NULL;
-
-   private final ListeningExecutorService currentRequestExecutorService;
-
-   @Inject
-   public ComputeServiceContextToAsyncResources(ListeningExecutorService currentRequestExecutorService) {
-      this.currentRequestExecutorService = currentRequestExecutorService;
-   }
-
-   public ListenableFuture<? extends Iterable<? extends ResourceMetadata<?>>> apply(final ComputeServiceContext in) {
-      return currentRequestExecutorService.submit(new Callable<Iterable<? extends ResourceMetadata<?>>>() {
-
-         @Override
-         public Iterable<? extends ResourceMetadata<?>> call() throws Exception {
-            logger.info("listing nodes on %s: ", in.unwrap().getId());
-            return in.getComputeService().listNodes();
-         }
-
-         @Override
-         public String toString() {
-            return in.toString();
-         }
-      });
-   }
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/functions/ResourceMetadataToResourceResult.java
----------------------------------------------------------------------
diff --git a/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/functions/ResourceMetadataToResourceResult.java b/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/functions/ResourceMetadataToResourceResult.java
deleted file mode 100644
index 08601a5..0000000
--- a/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/functions/ResourceMetadataToResourceResult.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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.samples.googleappengine.functions;
-
-import javax.annotation.Resource;
-import javax.inject.Singleton;
-
-import org.jclouds.domain.Location;
-import org.jclouds.domain.ResourceMetadata;
-import org.jclouds.logging.Logger;
-import org.jclouds.samples.googleappengine.domain.ResourceResult;
-import org.jclouds.samples.googleappengine.domain.ResourceResult.Builder;
-
-import com.google.common.base.Function;
-
-/**
- * 
- * @author Adrian Cole
- */
-@Singleton
-public class ResourceMetadataToResourceResult implements Function<ResourceMetadata<?>, ResourceResult> {
-
-   @Resource
-   protected Logger logger = Logger.NULL;
-
-   public ResourceResult apply(ResourceMetadata<?> in) {
-      Builder builder = ResourceResult.builder();
-      Location provider = in.getLocation();
-      while (provider.getParent() != null)
-         provider = provider.getParent();
-      builder.provider(provider.getId());
-      builder.location(in.getLocation().getId());
-      builder.type(in.getType().toString().toLowerCase());
-      builder.id(in.getProviderId());
-      builder.name(in.getName());
-      return builder.build();
-   }
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/functions/ViewToAsyncResources.java
----------------------------------------------------------------------
diff --git a/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/functions/ViewToAsyncResources.java b/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/functions/ViewToAsyncResources.java
deleted file mode 100644
index 42a8d0b..0000000
--- a/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/functions/ViewToAsyncResources.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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.samples.googleappengine.functions;
-
-import javax.inject.Inject;
-import javax.inject.Singleton;
-
-import org.jclouds.View;
-import org.jclouds.blobstore.BlobStoreContext;
-import org.jclouds.compute.ComputeServiceContext;
-import org.jclouds.domain.ResourceMetadata;
-
-import com.google.common.base.Function;
-import com.google.common.util.concurrent.ListenableFuture;
-
-/**
- * 
- * @author Adrian Cole
- */
-@Singleton
-public class ViewToAsyncResources implements Function<View, ListenableFuture<? extends Iterable<? extends ResourceMetadata<?>>>> {
-   private final BlobStoreContextToAsyncResources blobStoreContextToAsyncResources;
-   private final ComputeServiceContextToAsyncResources computeServiceContextToAsyncResources;
-
-   @Inject
-   public ViewToAsyncResources(BlobStoreContextToAsyncResources blobStoreContextToAsyncResources,
-         ComputeServiceContextToAsyncResources computeServiceContextToAsyncResources) {
-      this.blobStoreContextToAsyncResources = blobStoreContextToAsyncResources;
-      this.computeServiceContextToAsyncResources = computeServiceContextToAsyncResources;
-   }
-
-
-   @Override
-   public ListenableFuture<? extends Iterable<? extends ResourceMetadata<?>>> apply(View input) {
-      if (input instanceof BlobStoreContext) {
-         return blobStoreContextToAsyncResources.apply(BlobStoreContext.class.cast(input));
-      } else if (input instanceof ComputeServiceContext) {
-         return computeServiceContextToAsyncResources.apply(ComputeServiceContext.class.cast(input));
-      }
-      throw new UnsupportedOperationException("unknown view type: " + input);
-   }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/functions/ViewToId.java
----------------------------------------------------------------------
diff --git a/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/functions/ViewToId.java b/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/functions/ViewToId.java
deleted file mode 100644
index 6e2f440..0000000
--- a/demos/googleappengine/src/main/java/org/jclouds/samples/googleappengine/functions/ViewToId.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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.samples.googleappengine.functions;
-
-import org.jclouds.View;
-
-import com.google.common.base.Function;
-
-public enum ViewToId implements Function<View, String> {
-   INSTANCE;
-   @Override
-   public String apply(View input) {
-      return input.unwrap().getId();
-   }
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/googleappengine/src/main/webapp/WEB-INF/jsp/resources.jsp
----------------------------------------------------------------------
diff --git a/demos/googleappengine/src/main/webapp/WEB-INF/jsp/resources.jsp b/demos/googleappengine/src/main/webapp/WEB-INF/jsp/resources.jsp
deleted file mode 100644
index 1a8a21b..0000000
--- a/demos/googleappengine/src/main/webapp/WEB-INF/jsp/resources.jsp
+++ /dev/null
@@ -1,104 +0,0 @@
-<%--
-
-    Licensed to jclouds, Inc. (jclouds) under one or more
-    contributor license agreements.  See the NOTICE file
-    distributed with this work for additional information
-    regarding copyright ownership.  jclouds 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.
-
---%>
-<%@ page buffer="100kb"%>
-<%@ taglib uri="http://displaytag.sf.net" prefix="display"%>
-<html>
-<head>
-<title>jclouds: multi-cloud library</title>
-<style type="text/css">
-<!--
-table.staticheader {
-text-decoration: none;
-border: 1px solid #CCC;
-width: 98%;
-}
-
-table.staticheader th {
-padding: 3px 3px 3px 3px !important;
-text-align:center;
-}
-
-table.staticheader td {
-padding: 3px 3px 3px 3px !important;
-}
-
-table.staticheader thead tr {
-position: relative;
-height: 10px;
-background-color: #D7E5F3;
-}
-
-table.staticheader tbody {
-height:800px;
-overflow-x:hidden;
-overflow-y: auto; 
-overflow:scroll;
-}
-
-table.staticheader tbody tr {
-height: auto;
-white-space: nowrap;
-}
-
-table.staticheader tbody tr.odd {
-        background-color: #eee
-}
-
-table.staticheader tbody tr.tableRowEven,tr.even {
-        background-color: #ddd
-}
-
-table.staticheader tbody tr td:last-child {
-padding-right: 20px;
-}
-
-table.staticheader tbody td {
-padding: 2px 4px 2px 4px !important;
-                
-}
-
-div.TableContainer {
-height: 800px; 
-overflow-x:hidden; 
-overflow-y:auto;
-}
--->
-</style>
-</head>
-<body>
-<h2>Resource List</h2>
-<table width="100%" border="0">
-<tr>
-  <td>
-  <div class="TableContainer">
-  <display:table name="resources" defaultsort="1" cellpadding="5" cellspacing="1" class="staticheader">
-	<display:column property="provider"  title="Provider" />
-	<display:column property="location"  title="Location" />
-	<display:column property="type"  title="Type" />
-	<display:column property="id"  title="Id" />
-	<display:column property="name"  title="Name" />
-  </display:table>
-  </div>
-  </td>
-</tr>
-</table>
-</body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/googleappengine/src/main/webapp/WEB-INF/web.xml
----------------------------------------------------------------------
diff --git a/demos/googleappengine/src/main/webapp/WEB-INF/web.xml b/demos/googleappengine/src/main/webapp/WEB-INF/web.xml
deleted file mode 100644
index 05b164d..0000000
--- a/demos/googleappengine/src/main/webapp/WEB-INF/web.xml
+++ /dev/null
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-    Licensed to jclouds, Inc. (jclouds) under one or more
-    contributor license agreements.  See the NOTICE file
-    distributed with this work for additional information
-    regarding copyright ownership.  jclouds 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.
-
--->
-<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_5.xsd"
-    version="2.5">
-	<display-name>jclouds-aws-demo-googleappengine</display-name>
-
-	<!-- Servlets -->
-	<filter>
-		<filter-name>guiceFilter</filter-name>
-		<filter-class>com.google.inject.servlet.GuiceFilter</filter-class>
-	</filter>
-
-	<filter-mapping>
-		<filter-name>guiceFilter</filter-name>
-		<url-pattern>/guice/*</url-pattern>
-	</filter-mapping>
-
-
-	<listener>
-		<listener-class>org.jclouds.samples.googleappengine.config.GuiceServletConfig</listener-class>
-	</listener>
-
-	<welcome-file-list>
-		<welcome-file>index.jsp</welcome-file>
-	</welcome-file-list>
-
-</web-app>

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/googleappengine/src/main/webapp/index.jsp
----------------------------------------------------------------------
diff --git a/demos/googleappengine/src/main/webapp/index.jsp b/demos/googleappengine/src/main/webapp/index.jsp
deleted file mode 100644
index 38308a0..0000000
--- a/demos/googleappengine/src/main/webapp/index.jsp
+++ /dev/null
@@ -1,30 +0,0 @@
-<%--
-
-    Licensed to jclouds, Inc. (jclouds) under one or more
-    contributor license agreements.  See the NOTICE file
-    distributed with this work for additional information
-    regarding copyright ownership.  jclouds 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.
-
---%>
-<html>
-<head>
-<title>jclouds: multi-cloud framework</title>
-</head>
-<body>
-<h2>Welcome!</h2>
-Click
-<a href="/guice/resources.check">here</a> to list all your cloud resources!
-</body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/googleappengine/src/test/java/org/jclouds/samples/googleappengine/functest/GoogleAppEngineLiveTest.java
----------------------------------------------------------------------
diff --git a/demos/googleappengine/src/test/java/org/jclouds/samples/googleappengine/functest/GoogleAppEngineLiveTest.java b/demos/googleappengine/src/test/java/org/jclouds/samples/googleappengine/functest/GoogleAppEngineLiveTest.java
deleted file mode 100644
index c23e14d..0000000
--- a/demos/googleappengine/src/test/java/org/jclouds/samples/googleappengine/functest/GoogleAppEngineLiveTest.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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.samples.googleappengine.functest;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.URL;
-import java.util.Map;
-import java.util.Properties;
-
-import org.jclouds.blobstore.BlobStore;
-import org.jclouds.compute.ComputeService;
-import org.jclouds.util.Maps2;
-import org.jclouds.util.Strings2;
-import org.testng.annotations.BeforeTest;
-import org.testng.annotations.Parameters;
-import org.testng.annotations.Test;
-
-import com.google.common.base.Function;
-import com.google.common.base.Predicate;
-import com.google.common.collect.Maps;
-
-/**
- * Starts up the Google App Engine for Java Development environment and deploys an application which
- * tests {@link ComputeService} and {@link BlobStore}.
- * 
- * @author Adrian Cole
- */
-@Test(groups = "live", singleThreaded = true)
-public class GoogleAppEngineLiveTest {
-
-   GoogleDevServer server;
-   private URL url;
-
-   @BeforeTest
-   @Parameters( { "warfile", "devappserver.address", "devappserver.port" })
-   public void startDevAppServer(final String warfile, final String address, final String port)
-            throws Exception {
-      url = new URL(String.format("http://%s:%s", address, port));
-      
-      Properties props = new Properties();
-      props.putAll(stripTestPrefix(selectPropertiesForIdentityAndCredential()));
-      server = new GoogleDevServer();
-      server.writePropertiesAndStartServer(address, port, warfile, props);
-   }
-
-   Map<String, String> stripTestPrefix(Map<String, String> identityCrendential) {
-      return Maps2.transformKeys(identityCrendential, new Function<String, String>() {
-
-         @Override
-         public String apply(String arg0) {
-            return arg0.replace("test.", "");
-         }
-
-      });
-   }
-
-   @SuppressWarnings({ "unchecked", "rawtypes" })
-   Map<String, String> selectPropertiesForIdentityAndCredential() {
-      return Maps.filterKeys((Map) System.getProperties(), new Predicate<String>() {
-
-         @Override
-         public boolean apply(String input) {
-            // TODO Auto-generated method stub
-            return input.matches("^test\\.[a-z0-9-]+\\.(identity|credential)$");
-         }
-
-      });
-   }
-
-   @Test
-   public void shouldPass() throws InterruptedException, IOException {
-      InputStream i = url.openStream();
-      String string = Strings2.toStringAndClose(i);
-      assert string.indexOf("Welcome") >= 0 : string;
-   }
-
-   @Test(invocationCount = 5, enabled = true)
-   public void testGuiceJCloudsSerial() throws InterruptedException, IOException {
-      URL gurl = new URL(url, "/guice/resources.check");
-      InputStream i = gurl.openStream();
-      String string = Strings2.toStringAndClose(i);
-      assert string.indexOf("List") >= 0 : string;
-   }
-
-   @Test(invocationCount = 10, enabled = false, threadPoolSize = 3)
-   public void testGuiceJCloudsParallel() throws InterruptedException, IOException {
-      URL gurl = new URL(url, "/guice/resources.check");
-      InputStream i = gurl.openStream();
-      String string = Strings2.toStringAndClose(i);
-      assert string.indexOf("List") >= 0 : string;
-   }
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/googleappengine/src/test/java/org/jclouds/samples/googleappengine/functest/GoogleDevServer.java
----------------------------------------------------------------------
diff --git a/demos/googleappengine/src/test/java/org/jclouds/samples/googleappengine/functest/GoogleDevServer.java b/demos/googleappengine/src/test/java/org/jclouds/samples/googleappengine/functest/GoogleDevServer.java
deleted file mode 100644
index b8fb7d6..0000000
--- a/demos/googleappengine/src/test/java/org/jclouds/samples/googleappengine/functest/GoogleDevServer.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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.samples.googleappengine.functest;
-
-import static com.google.common.base.Preconditions.checkNotNull;
-import static java.lang.String.format;
-
-import java.io.File;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.util.Properties;
-import java.util.concurrent.TimeUnit;
-
-import com.google.appengine.tools.KickStart;
-import com.google.appengine.tools.info.SdkInfo;
-
-/**
- * Basic functionality to start a local google app engine instance.
- * 
- * @author Adrian Cole
- */
-public class GoogleDevServer {
-
-    Thread server;
-
-    public void writePropertiesAndStartServer(final String address,
-            final String port, final String warfile, Properties props)
-            throws IOException, InterruptedException {
-        String filename = String.format("%1$s/WEB-INF/jclouds.properties", warfile);
-        System.err.println("file: " + filename);
-        props.store(new FileOutputStream(filename), "test");
-        assert new File(filename).exists();
-        this.server = new Thread(new Runnable() {
-            public void run() {
-                String sdkRoot = checkNotNull(System.getProperty(SdkInfo.SDK_ROOT_PROPERTY), SdkInfo.SDK_ROOT_PROPERTY);
-                KickStart.main(new String[] {
-                        KickStarter.systemProperty("java.util.logging.config.file",
-                                format("%s/WEB-INF/logging.properties", warfile)),
-                        KickStarter.systemProperty(SdkInfo.SDK_ROOT_PROPERTY, sdkRoot),
-                        "com.google.appengine.tools.development.DevAppServerMain",
-                        "--disable_update_check",
-                        format("--sdk_root=%s", sdkRoot), 
-                        "-a", address, "-p", port, warfile });
-            }
-        });
-        server.start();
-        TimeUnit.SECONDS.sleep(30);
-    }
-
-    public void stop() throws Exception {
-        // KickStart.main opens a process and calls process.waitFor(), which is interruptable
-        server.interrupt();
-    }
-
-    private static class KickStarter {
-        private static String systemProperty(String key, String value) {
-            return format("--jvm_flag=-D%s=%s", key, value);
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/pom.xml
----------------------------------------------------------------------
diff --git a/demos/pom.xml b/demos/pom.xml
deleted file mode 100644
index 80049f6..0000000
--- a/demos/pom.xml
+++ /dev/null
@@ -1,60 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-Licensed to jclouds, Inc. (jclouds) under one or more
-contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  jclouds 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.
-
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-  <parent>
-    <artifactId>jclouds-project</artifactId>
-    <groupId>org.apache.jclouds</groupId>
-    <version>1.7.0-SNAPSHOT</version>
-    <relativePath>../project/pom.xml</relativePath>
-  </parent>
-  <modelVersion>4.0.0</modelVersion>
-  <artifactId>jclouds-demos-project</artifactId>
-  <packaging>pom</packaging>
-  <name>jclouds demos project</name>
-  <modules>
-    <module>getpath</module>
-    <module>googleappengine</module>
-    <module>speedtest-azurequeue</module>
-    <module>speedtest-sqs</module>
-    <module>simpledb</module>
-  </modules>
-  <dependencies>
-    <dependency>
-      <groupId>${project.groupId}</groupId>
-      <artifactId>jclouds-core</artifactId>
-      <version>${project.version}</version>
-      <type>test-jar</type>
-      <scope>test</scope>
-    </dependency>
-    <dependency>
-      <groupId>log4j</groupId>
-      <artifactId>log4j</artifactId>
-      <scope>test</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.jclouds.driver</groupId>
-      <artifactId>jclouds-log4j</artifactId>
-      <version>${project.version}</version>
-      <scope>test</scope>
-    </dependency>
-  </dependencies>
-</project>

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/simpledb/README.txt
----------------------------------------------------------------------
diff --git a/demos/simpledb/README.txt b/demos/simpledb/README.txt
deleted file mode 100644
index 4574175..0000000
--- a/demos/simpledb/README.txt
+++ /dev/null
@@ -1,29 +0,0 @@
-====
-    Licensed to jclouds, Inc. (jclouds) under one or more
-    contributor license agreements.  See the NOTICE file
-    distributed with this work for additional information
-    regarding copyright ownership.  jclouds 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.
-====
-
-#
-# this is a simple example command line client to test usage of simpledb
-# functions like putAttribute is tested and then it select and retrieve results.
-# 1. execute 'mvn install' to build the sample
-# 2. invoke the jar, passing your aws credentials and the bucket you wish to create
-# ex.
-#  java -jar target/jclouds-aws-demo-simpledb-jar-with-dependencies.jar  $AWS_USER $AWS_PWD simpledbtest
-
-
-# Further information: Luís A. astião Silva bastiao@ua.pt>

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/simpledb/pom.xml
----------------------------------------------------------------------
diff --git a/demos/simpledb/pom.xml b/demos/simpledb/pom.xml
deleted file mode 100644
index 3617793..0000000
--- a/demos/simpledb/pom.xml
+++ /dev/null
@@ -1,79 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-Licensed to jclouds, Inc. (jclouds) under one or more
-contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  jclouds 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.
-
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>org.apache.jclouds</groupId>
-    <artifactId>jclouds-demos-project</artifactId>
-    <version>1.7.0-SNAPSHOT</version>
-  </parent>
-  <artifactId>jclouds-demo-simpledb</artifactId>
-  <name>jclouds simpledb sample that putAttributes and select it</name>
-  <description>jclouds simpledb sample that putAttributes and select it</description>
-  
-  <dependencies>
-    <dependency>
-      <groupId>org.apache.jclouds.provider</groupId>
-      <artifactId>aws-simpledb</artifactId>
-      <version>${project.version}</version>
-    </dependency>
-  </dependencies>
-
-  <build>
-    <finalName>${project.artifactId}</finalName>
-    <plugins>
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-jar-plugin</artifactId>
-        <configuration>
-          <archive>
-            <manifest>
-              <mainClass>org.jclouds.simpledb.samples.MainApp</mainClass>
-            </manifest>
-          </archive>
-        </configuration>
-      </plugin>
-      <plugin>
-        <artifactId>maven-assembly-plugin</artifactId>
-        <configuration>
-          <descriptorRefs>
-            <descriptorRef>jar-with-dependencies</descriptorRef>
-          </descriptorRefs>
-          <archive>
-            <manifest>
-              <mainClass>org.jclouds.simpledb.samples.MainApp</mainClass>
-            </manifest>
-          </archive>
-        </configuration>
-        <executions>
-          <execution>
-            <id>make-assembly</id>
-            <phase>package</phase>
-            <goals>
-              <goal>single</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-    </plugins>
-  </build>
-</project>

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/simpledb/src/main/java/org/jclouds/simpledb/samples/MainApp.java
----------------------------------------------------------------------
diff --git a/demos/simpledb/src/main/java/org/jclouds/simpledb/samples/MainApp.java b/demos/simpledb/src/main/java/org/jclouds/simpledb/samples/MainApp.java
deleted file mode 100644
index c1aeeee..0000000
--- a/demos/simpledb/src/main/java/org/jclouds/simpledb/samples/MainApp.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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.simpledb.samples;
-
-import java.io.IOException;
-import java.util.Map;
-import java.util.Properties;
-
-import org.jclouds.aws.domain.Region;
-import org.jclouds.rest.RestContext;
-import org.jclouds.rest.RestContextFactory;
-import org.jclouds.simpledb.SimpleDBAsyncClient;
-import org.jclouds.simpledb.SimpleDBClient;
-import org.jclouds.simpledb.domain.AttributePair;
-import org.jclouds.simpledb.domain.Item;
-import org.jclouds.simpledb.options.ListDomainsOptions;
-
-import com.google.common.collect.LinkedHashMultimap;
-import com.google.common.collect.Multimap;
-
-
-/**
- * This the Main class of an Application that demonstrates the use of the simpledb.
- * 
- * Usage is: java MainApp \"accesskeyid\" \"secretkey\" 
- * 
- * @author Luís A. Bastião Silva <ba...@ua.pt>
- * 
- */
-public class MainApp 
-{
-
-   public static int PARAMETERS = 3;
-   public static String INVALID_SYNTAX = "Invalid number of parameters. Syntax is: \"accesskeyid\" \"secretkey\" \"bucketName\" ";
-
-   public static void main(String[] args) throws IOException {
-
-
-      // Args
-      String accesskeyid = args[0];
-      String secretkey = args[1];
-      Properties properties = new Properties();
-      properties.setProperty("simpledb.identity", accesskeyid);
-      properties.setProperty("simpledb.credential", secretkey);
-
-      
-      RestContext<SimpleDBClient, SimpleDBAsyncClient> context = new RestContextFactory().createContext("simpledb", "AKIAJODKICBEKG7MM4XA", "FfqiNSiC88B6tJPDIOKUWUJGY68BQaQpkNz6Fsgq", new Properties());
-      AttributePair p = new AttributePair("AccessNumber", "1213123", true);
-      Multimap<String,AttributePair> m =LinkedHashMultimap.create();
-      m.put("AccessNumber", p);
-      Item attributes = new Item(m);
-      
-      // Use Provider API
-      context.getApi().putAttributes(Region.EU_WEST_1, "tse", "AccessNumber", attributes );   
-      //context.getApi().createDomainInRegion(Region.EU_WEST_1, "tse");
-      Map<String, Item> results = context.getApi().select(Region.EU_WEST_1, "select * from tse");
-      System.out.println(results);
-      ListDomainsOptions [] list = new  ListDomainsOptions[100]; 
-      //context.getApi().listDomainsInRegion(Region.EU_WEST_1, list);
-      System.out.println(list[0]);
-      context.close();
-   }
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/speedtest-azurequeue/README.txt
----------------------------------------------------------------------
diff --git a/demos/speedtest-azurequeue/README.txt b/demos/speedtest-azurequeue/README.txt
deleted file mode 100644
index 7eea7f1..0000000
--- a/demos/speedtest-azurequeue/README.txt
+++ /dev/null
@@ -1,25 +0,0 @@
-====
-    Licensed to jclouds, Inc. (jclouds) under one or more
-    contributor license agreements.  See the NOTICE file
-    distributed with this work for additional information
-    regarding copyright ownership.  jclouds 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.
-====
-
-#
-# this is a simple example command line client that creates a queue, then tracks performance of it
-# 1. execute 'mvn install' to build the sample
-# 2. invoke the jar, passing your azure credentials and the bucket you wish to create
-# ex.
-#  java -jar target/jclouds-demo-speedtest-azurequeue-jar-with-dependencies.jar $AZURE_USER $AZURE_PWD testqueue 1000

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/speedtest-azurequeue/pom.xml
----------------------------------------------------------------------
diff --git a/demos/speedtest-azurequeue/pom.xml b/demos/speedtest-azurequeue/pom.xml
deleted file mode 100644
index 12c1267..0000000
--- a/demos/speedtest-azurequeue/pom.xml
+++ /dev/null
@@ -1,83 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-Licensed to jclouds, Inc. (jclouds) under one or more
-contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  jclouds 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.
-
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>org.apache.jclouds</groupId>
-    <artifactId>jclouds-demos-project</artifactId>
-    <version>1.7.0-SNAPSHOT</version>
-  </parent>
-  <artifactId>jclouds-demo-speedtest-azurequeue</artifactId>
-  <name>Speed tests of Azure's queue offering</name>
-  <description>Creates a queue and then tests performance against it</description>
-  
-  <dependencies>
-    <dependency>
-      <groupId>org.apache.jclouds.driver</groupId>
-      <artifactId>jclouds-enterprise</artifactId>
-      <version>${project.version}</version>
-    </dependency> 
-    <dependency>
-      <groupId>org.apache.jclouds.provider</groupId>
-      <artifactId>azurequeue</artifactId>
-      <version>${project.version}</version>
-    </dependency>
-  </dependencies>
-
-  <build>
-    <finalName>${project.artifactId}</finalName>
-    <plugins>
-      <plugin>
-        <artifactId>maven-jar-plugin</artifactId>
-        <configuration>
-          <archive>
-            <manifest>
-              <mainClass>org.jclouds.azure.azurequeue.SpeedTest</mainClass>
-            </manifest>
-          </archive>
-        </configuration>
-      </plugin>
-      <plugin>
-        <artifactId>maven-assembly-plugin</artifactId>
-        <configuration>
-          <descriptorRefs>
-            <descriptorRef>jar-with-dependencies</descriptorRef>
-          </descriptorRefs>
-          <archive>
-            <manifest>
-              <mainClass>org.jclouds.azure.azurequeue.SpeedTest</mainClass>
-            </manifest>
-          </archive>
-        </configuration>
-        <executions>
-          <execution>
-            <id>make-assembly</id>
-            <phase>package</phase>
-            <goals>
-              <goal>single</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-    </plugins>
-  </build>
-</project>


[3/5] JCLOUDS-54. remove historical demos, archetypes and assemblies modules

Posted by ad...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/assemblies/src/main/resources/assemblies/package-descriptor.xml
----------------------------------------------------------------------
diff --git a/assemblies/src/main/resources/assemblies/package-descriptor.xml b/assemblies/src/main/resources/assemblies/package-descriptor.xml
deleted file mode 100644
index fa540cb..0000000
--- a/assemblies/src/main/resources/assemblies/package-descriptor.xml
+++ /dev/null
@@ -1,1442 +0,0 @@
-<!--
-
-Licensed to jclouds, Inc. (jclouds) under one or more
-contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  jclouds 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.
-
--->
-<?xml version="1.0" encoding="UTF-8"?>
-<assembly>
-    <id>package</id>
-    <formats>
-        <format>zip</format>
-    </formats>
-    <!-- 
-      LICENSE.txt
-      README.txt
-      core
-         + lib <- core, blobstore, compute (w/scriptbuilder) and loadbalancer JARs and dependencies for core
-         + docs <- javadoc for core, blobstore, compute and loadbalancer         
-         + src <- expanded or source jar for core, blobstore, compute and loadbalancer
-      drivers
-         + log4j
-            + README.txt <- how to use the driver
-            + lib <- excl. core
-            + docs <- excl. core
-            + src <- excl. core
-      apis
-         + s3
-            + README.txt <- status of this API
-            + lib <- excl. core
-            + docs <- excl. core
-            + src <- excl. core            
-      providers
-         + trmk-vcloudexpress
-            + README.txt <- status of this provider (what is implemented/not implemented) 
-            + lib <- excl. core and implemented API(s)
-            + docs <- excl. core and implemented API(s)
-            + src <- excl. core and implemented API(s)
-        
-      see http://code.google.com/p/jclouds/issues/detail?id=458
-    -->
-    <fileSets>
-        <!-- "loose" files -->
-        <fileSet>
-            <directory />
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <filtered>true</filtered>
-        </fileSet>
-        <fileSet>
-            <directory>project</directory>
-            <includes>
-                <include>LICENSE.txt</include>
-            </includes>
-            <filtered>true</filtered>
-            <outputDirectory />
-        </fileSet>    
-          
-        <!-- core -->
-        <fileSet>
-            <directory>core/target</directory>
-            <includes>
-                <include>jclouds-core-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>core/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>blobstore/target</directory>
-            <includes>
-                <include>jclouds-blobstore-${project.version}.jar</include>
-            </includes>
-            <outputDirectory>core/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>scriptbuilder/target</directory>
-            <includes>
-                <include>jclouds-scriptbuilder-${project.version}.jar</include>
-            </includes>
-            <outputDirectory>core/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>compute/target</directory>
-            <includes>
-                <include>jclouds-compute-${project.version}.jar</include>
-            </includes>
-            <outputDirectory>core/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>loadbalancer/target</directory>
-            <includes>
-                <include>jclouds-loadbalancer-${project.version}.jar</include>
-            </includes>
-            <outputDirectory>core/lib</outputDirectory>
-        </fileSet>        
-        <fileSet>
-            <directory>core/target</directory>
-            <includes>
-                <include>jclouds-core-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>core/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>blobstore/target</directory>
-            <includes>
-                <include>jclouds-blobstore-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>core/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>scriptbuilder/target</directory>
-            <includes>
-                <include>jclouds-scriptbuilder-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>core/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>compute/target</directory>
-            <includes>
-                <include>jclouds-compute-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>core/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>loadbalancer/target</directory>
-            <includes>
-                <include>jclouds-loadbalancer-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>core/src</outputDirectory>
-        </fileSet>        
-        <fileSet>
-            <directory>core/target/apidocs</directory>
-            <outputDirectory>core/docs</outputDirectory>            
-        </fileSet>    
-        <fileSet>
-            <directory>blobstore/target/apidocs</directory>
-            <outputDirectory>core/docs</outputDirectory>            
-        </fileSet>    
-        <fileSet>
-            <directory>scriptbuilder/target/apidocs</directory>
-            <outputDirectory>core/docs</outputDirectory>            
-        </fileSet>    
-        <fileSet>
-            <directory>compute/target/apidocs</directory>
-            <outputDirectory>core/docs</outputDirectory>            
-        </fileSet>    
-        <fileSet>
-            <directory>loadbalancer/target/apidocs</directory>
-            <outputDirectory>core/docs</outputDirectory>            
-        </fileSet>
-        
-        <!-- drivers: apachehc -->
-        <fileSet>
-            <directory>drivers/apachehc/target</directory>
-            <includes>
-                <include>jclouds-apachehc-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>drivers/apachehc/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>drivers/apachehc/target/jclouds-apachehc-${project.version}-provided-dependencies</directory>
-            <includes>
-                <include>*.jar</include>
-            </includes>
-            <outputDirectory>drivers/apachehc/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>drivers/apachehc/target</directory>
-            <includes>
-                <include>jclouds-apachehc-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>drivers/apachehc/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>drivers/apachehc/target/apidocs</directory>
-            <outputDirectory>drivers/apachehc/docs</outputDirectory>            
-        </fileSet>
-        <fileSet>
-            <directory>drivers/apachehc</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>drivers/apachehc</outputDirectory>            
-        </fileSet>        
-        
-        <!-- drivers: bouncycastle -->
-        <fileSet>
-            <directory>drivers/bouncycastle/target</directory>
-            <includes>
-                <include>jclouds-bouncycastle-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>drivers/bouncycastle/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>drivers/bouncycastle/target/jclouds-bouncycastle-${project.version}-provided-dependencies</directory>
-            <includes>
-                <include>*.jar</include>
-            </includes>
-            <outputDirectory>drivers/bouncycastle/lib</outputDirectory>
-        </fileSet>        
-        <fileSet>
-            <directory>drivers/bouncycastle/target</directory>
-            <includes>
-                <include>jclouds-bouncycastle-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>drivers/bouncycastle/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>drivers/bouncycastle/target/apidocs</directory>
-            <outputDirectory>drivers/bouncycastle/docs</outputDirectory>            
-        </fileSet>
-        <fileSet>
-            <directory>drivers/bouncycastle</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>drivers/bouncycastle</outputDirectory>            
-        </fileSet>
-        
-        <!-- drivers: enterprise -->
-        <fileSet>
-            <directory>drivers/enterprise/target</directory>
-            <includes>
-                <include>jclouds-enterprise-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>drivers/enterprise/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>drivers/enterprise/target</directory>
-            <includes>
-                <include>jclouds-enterprise-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>drivers/enterprise/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>drivers/enterprise/target/apidocs</directory>
-            <outputDirectory>drivers/enterprise/docs</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>drivers/enterprise</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>drivers/enterprise</outputDirectory>
-        </fileSet>
-
-        <!-- drivers: gae -->
-        <fileSet>
-            <directory>drivers/gae/target</directory>
-            <includes>
-                <include>jclouds-gae-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>drivers/gae/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>drivers/gae/target</directory>
-            <includes>
-                <include>jclouds-gae-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>drivers/gae/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>drivers/gae/target/apidocs</directory>
-            <outputDirectory>drivers/gae/docs</outputDirectory>            
-        </fileSet>
-        <fileSet>
-            <directory>drivers/gae</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>drivers/gae</outputDirectory>            
-        </fileSet>
-
-        <!-- drivers: joda -->
-        <fileSet>
-            <directory>drivers/joda/target</directory>
-            <includes>
-                <include>jclouds-joda-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>drivers/joda/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>drivers/joda/target/jclouds-joda-${project.version}-provided-dependencies</directory>
-            <includes>
-                <include>*.jar</include>
-            </includes>
-            <outputDirectory>drivers/joda/lib</outputDirectory>
-        </fileSet>        
-        <fileSet>
-            <directory>drivers/joda/target</directory>
-            <includes>
-                <include>jclouds-joda-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>drivers/joda/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>drivers/joda/target/apidocs</directory>
-            <outputDirectory>drivers/joda/docs</outputDirectory>            
-        </fileSet>
-        <fileSet>
-            <directory>drivers/joda</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>drivers/joda</outputDirectory>            
-        </fileSet>
-        
-        <!-- drivers: jsch -->
-        <fileSet>
-            <directory>drivers/jsch/target</directory>
-            <includes>
-                <include>jclouds-jsch-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>drivers/jsch/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>drivers/jsch/target/jclouds-jsch-${project.version}-provided-dependencies</directory>
-            <includes>
-                <include>*.jar</include>
-            </includes>
-            <outputDirectory>drivers/jsch/lib</outputDirectory>
-        </fileSet>        
-        <fileSet>
-            <directory>drivers/jsch/target</directory>
-            <includes>
-                <include>jclouds-jsch-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>drivers/jsch/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>drivers/jsch/target/apidocs</directory>
-            <outputDirectory>drivers/jsch/docs</outputDirectory>            
-        </fileSet>
-        <fileSet>
-            <directory>drivers/jsch</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>drivers/jsch</outputDirectory>            
-        </fileSet>
-        
-        <!-- drivers: log4j -->
-        <fileSet>
-            <directory>drivers/log4j/target</directory>
-            <includes>
-                <include>jclouds-log4j-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>drivers/log4j/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>drivers/log4j/target/jclouds-log4j-${project.version}-provided-dependencies</directory>
-            <includes>
-                <include>*.jar</include>
-            </includes>
-            <outputDirectory>drivers/log4j/lib</outputDirectory>
-        </fileSet>        
-        <fileSet>
-            <directory>drivers/log4j/target</directory>
-            <includes>
-                <include>jclouds-log4j-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>drivers/log4j/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>drivers/log4j/target/apidocs</directory>
-            <outputDirectory>drivers/log4j/docs</outputDirectory>            
-        </fileSet>
-        <fileSet>
-            <directory>drivers/log4j</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>drivers/log4j</outputDirectory>            
-        </fileSet>
-                
-        <!-- APIs: atmos -->
-        <fileSet>
-            <directory>apis/atmos/target</directory>
-            <includes>
-                <include>atmos-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>apis/atmos/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>apis/atmos/target</directory>
-            <includes>
-                <include>atmos-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>apis/atmos/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>apis/atmos/target/apidocs</directory>
-            <outputDirectory>apis/atmos/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>apis/atmos</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>apis/atmos</outputDirectory>            
-        </fileSet>
-        
-        <!-- APIs: byon -->
-        <fileSet>
-            <directory>apis/byon/target</directory>
-            <includes>
-                <include>byon-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>apis/byon/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>apis/byon/target</directory>
-            <includes>
-                <include>byon-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>apis/byon/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>apis/byon/target/apidocs</directory>
-            <outputDirectory>apis/byon/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>apis/byon</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>apis/byon</outputDirectory>            
-        </fileSet>
-        
-        <!-- APIs: cloudfiles -->
-        <fileSet>
-            <directory>apis/cloudfiles/target</directory>
-            <includes>
-                <include>cloudfiles-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>apis/cloudfiles/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>apis/cloudfiles/target</directory>
-            <includes>
-                <include>cloudfiles-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>apis/cloudfiles/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>apis/cloudfiles/target/apidocs</directory>
-            <outputDirectory>apis/cloudfiles/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>apis/cloudfiles</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>apis/cloudfiles</outputDirectory>            
-        </fileSet>
-        
-        <!-- APIs: cloudservers -->
-        <fileSet>
-            <directory>apis/cloudservers/target</directory>
-            <includes>
-                <include>cloudservers-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>apis/cloudservers/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>apis/cloudservers/target</directory>
-            <includes>
-                <include>cloudservers-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>apis/cloudservers/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>apis/cloudservers/target/apidocs</directory>
-            <outputDirectory>apis/cloudservers/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>apis/cloudservers</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>apis/cloudservers</outputDirectory>            
-        </fileSet>
-        
-        <!-- APIs: ec2 -->
-        <fileSet>
-            <directory>apis/ec2/target</directory>
-            <includes>
-                <include>ec2-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>apis/ec2/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>apis/ec2/target</directory>
-            <includes>
-                <include>ec2-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>apis/ec2/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>apis/ec2/target/apidocs</directory>
-            <outputDirectory>apis/ec2/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>apis/ec2</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>apis/ec2</outputDirectory>            
-        </fileSet>
-        
-        <!-- APIs: elasticstack -->
-        <fileSet>
-            <directory>elasticstack/target</directory>
-            <includes>
-                <include>elasticstack-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>apis/elasticstack/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>elasticstack/target</directory>
-            <includes>
-                <include>elasticstack-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>apis/elasticstack/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>elasticstack/target/apidocs</directory>
-            <outputDirectory>apis/elasticstack/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>elasticstack</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>apis/elasticstack</outputDirectory>            
-        </fileSet>
-
-        <!-- APIs: elb -->
-        <fileSet>
-            <directory>apis/elb/target</directory>
-            <includes>
-                <include>elb-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>apis/elb/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>apis/elb/target</directory>
-            <includes>
-                <include>elb-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>apis/elb/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>apis/elb/target/apidocs</directory>
-            <outputDirectory>apis/elb/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>apis/elb</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>apis/elb</outputDirectory>            
-        </fileSet>
-        
-        <!-- APIs: eucalyptus -->
-        <fileSet>
-            <directory>apis/eucalyptus/target</directory>
-            <includes>
-                <include>eucalyptus-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>apis/eucalyptus/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>apis/eucalyptus/target</directory>
-            <includes>
-                <include>eucalyptus-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>apis/eucalyptus/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>apis/eucalyptus/target/apidocs</directory>
-            <outputDirectory>apis/eucalyptus/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>apis/eucalyptus</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>apis/eucalyptus</outputDirectory>            
-        </fileSet>
-        
-        <!-- APIs: filesystem -->
-        <fileSet>
-            <directory>apis/filesystem/target</directory>
-            <includes>
-                <include>filesystem-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>apis/filesystem/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>apis/filesystem/target</directory>
-            <includes>
-                <include>filesystem-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>apis/filesystem/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>apis/filesystem/target/apidocs</directory>
-            <outputDirectory>apis/filesystem/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>apis/filesystem</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>apis/filesystem</outputDirectory>            
-        </fileSet>        
-        
-        <!-- APIs: s3 -->
-        <fileSet>
-            <directory>apis/s3/target</directory>
-            <includes>
-                <include>s3-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>apis/s3/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>apis/s3/target</directory>
-            <includes>
-                <include>s3-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>apis/s3/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>apis/s3/target/apidocs</directory>
-            <outputDirectory>apis/s3/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>apis/s3</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>apis/s3</outputDirectory>            
-        </fileSet>
-        
-        <!-- APIs: swift -->
-        <fileSet>
-            <directory>apis/swift/target</directory>
-            <includes>
-                <include>swift-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>apis/swift/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>apis/swift/target</directory>
-            <includes>
-                <include>swift-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>apis/swift/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>apis/swift/target/apidocs</directory>
-            <outputDirectory>apis/swift/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>apis/swift</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>apis/swift</outputDirectory>            
-        </fileSet>
-        
-        <!-- APIs: vcloud -->
-        <fileSet>
-            <directory>apis/vcloud/target</directory>
-            <includes>
-                <include>vcloud-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>apis/vcloud/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>apis/vcloud/target</directory>
-            <includes>
-                <include>vcloud-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>apis/vcloud/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>apis/vcloud/target/apidocs</directory>
-            <outputDirectory>apis/vcloud/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>apis/vcloud</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>apis/vcloud</outputDirectory>            
-        </fileSet>
-        
-        <!-- APIs: vcloudexpress -->
-        <fileSet>
-            <directory>apis/vcloudexpress/target</directory>
-            <includes>
-                <include>vcloudexpress-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>apis/vcloudexpress/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>apis/vcloudexpress/target</directory>
-            <includes>
-                <include>vcloudexpress-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>apis/vcloudexpress/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>apis/vcloudexpress/target/apidocs</directory>
-            <outputDirectory>apis/vcloudexpress/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>apis/vcloudexpress</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>apis/vcloudexpress</outputDirectory>            
-        </fileSet>
-        
-        <!-- APIs: walrus -->
-        <fileSet>
-            <directory>apis/walrus/target</directory>
-            <includes>
-                <include>walrus-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>apis/walrus/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>apis/walrus/target</directory>
-            <includes>
-                <include>walrus-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>apis/walrus/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>apis/walrus/target/apidocs</directory>
-            <outputDirectory>apis/walrus/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>apis/walrus</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>apis/walrus</outputDirectory>            
-        </fileSet>
-        
-        <!-- providers: aws-ec2 -->
-        <fileSet>
-            <directory>providers/aws-ec2/target</directory>
-            <includes>
-                <include>aws-ec2-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>providers/aws-ec2/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/aws-ec2/target</directory>
-            <includes>
-                <include>aws-ec2-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>providers/aws-ec2/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/aws-ec2/target/apidocs</directory>
-            <outputDirectory>providers/aws-ec2/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>providers/aws-ec2</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>providers/aws-ec2</outputDirectory>            
-        </fileSet>
-        
-        <!-- providers: aws-elb -->
-        <fileSet>
-            <directory>providers/aws-elb/target</directory>
-            <includes>
-                <include>aws-elb-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>providers/aws-elb/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/aws-elb/target</directory>
-            <includes>
-                <include>aws-elb-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>providers/aws-elb/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/aws-elb/target/apidocs</directory>
-            <outputDirectory>providers/aws-elb/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>providers/aws-elb</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>providers/aws-elb</outputDirectory>            
-        </fileSet>     
-        
-        <!-- providers: aws-s3 -->
-        <fileSet>
-            <directory>providers/aws-s3/target</directory>
-            <includes>
-                <include>aws-s3-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>providers/aws-s3/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/aws-s3/target</directory>
-            <includes>
-                <include>aws-s3-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>providers/aws-s3/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/aws-s3/target/apidocs</directory>
-            <outputDirectory>providers/aws-s3/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>providers/aws-s3</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>providers/aws-s3</outputDirectory>            
-        </fileSet>     
-        
-        <!-- providers: azureblob -->
-        <fileSet>
-            <directory>providers/azureblob/target</directory>
-            <includes>
-                <include>azureblob-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>providers/azureblob/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/azureblob/target</directory>
-            <includes>
-                <include>azureblob-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>providers/azureblob/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/azureblob/target/apidocs</directory>
-            <outputDirectory>providers/azureblob/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>providers/azureblob</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>providers/azureblob</outputDirectory>            
-        </fileSet>     
-        
-        <!-- providers: bluelock-vcdirector -->
-        <fileSet>
-            <directory>providers/bluelock-vcdirector/target</directory>
-            <includes>
-                <include>bluelock-vcdirector-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>providers/bluelock-vcdirector/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/bluelock-vcdirector/target</directory>
-            <includes>
-                <include>bluelock-vcdirector-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>providers/bluelock-vcdirector/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/bluelock-vcdirector/target/apidocs</directory>
-            <outputDirectory>providers/bluelock-vcdirector/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>providers/bluelock-vcdirector</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>providers/bluelock-vcdirector</outputDirectory>            
-        </fileSet>     
-        
-        <!-- providers: cloudfiles-uk -->
-        <fileSet>
-            <directory>providers/cloudfiles-uk/target</directory>
-            <includes>
-                <include>cloudfiles-uk-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>providers/cloudfiles-uk/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/cloudfiles-uk/target</directory>
-            <includes>
-                <include>cloudfiles-uk-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>providers/cloudfiles-uk/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/cloudfiles-uk/target/apidocs</directory>
-            <outputDirectory>providers/cloudfiles-uk/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>providers/cloudfiles-uk</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>providers/cloudfiles-uk</outputDirectory>            
-        </fileSet>     
-        
-        <!-- providers: cloudfiles-us -->
-        <fileSet>
-            <directory>providers/cloudfiles-us/target</directory>
-            <includes>
-                <include>cloudfiles-us-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>providers/cloudfiles-us/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/cloudfiles-us/target</directory>
-            <includes>
-                <include>cloudfiles-us-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>providers/cloudfiles-us/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/cloudfiles-us/target/apidocs</directory>
-            <outputDirectory>providers/cloudfiles-us/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>providers/cloudfiles-us</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>providers/cloudfiles-us</outputDirectory>            
-        </fileSet>     
-        
-        <!-- providers: cloudonestorage -->
-        <fileSet>
-            <directory>providers/cloudonestorage/target</directory>
-            <includes>
-                <include>cloudonestorage-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>providers/cloudonestorage/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/cloudonestorage/target</directory>
-            <includes>
-                <include>cloudonestorage-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>providers/cloudonestorage/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/cloudonestorage/target/apidocs</directory>
-            <outputDirectory>providers/cloudonestorage/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>providers/cloudonestorage</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>providers/cloudonestorage</outputDirectory>            
-        </fileSet>     
-        
-        <!-- providers: cloudservers-uk -->
-        <fileSet>
-            <directory>providers/cloudservers-uk/target</directory>
-            <includes>
-                <include>cloudservers-uk-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>providers/cloudservers-uk/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/cloudservers-uk/target</directory>
-            <includes>
-                <include>cloudservers-uk-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>providers/cloudservers-uk/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/cloudservers-uk/target/apidocs</directory>
-            <outputDirectory>providers/cloudservers-uk/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>providers/cloudservers-uk</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>providers/cloudservers-uk</outputDirectory>            
-        </fileSet>     
-        
-        <!-- providers: cloudservers-us -->
-        <fileSet>
-            <directory>providers/cloudservers-us/target</directory>
-            <includes>
-                <include>cloudservers-us-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>providers/cloudservers-us/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/cloudservers-us/target</directory>
-            <includes>
-                <include>cloudservers-us-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>providers/cloudservers-us/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/cloudservers-us/target/apidocs</directory>
-            <outputDirectory>providers/cloudservers-us/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>providers/cloudservers-us</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>providers/cloudservers-us</outputDirectory>            
-        </fileSet>     
-        
-        <!-- providers: cloudsigma-zrh -->
-        <fileSet>
-            <directory>providers/cloudsigma-zrh/target</directory>
-            <includes>
-                <include>cloudsigma-zrh-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>providers/cloudsigma-zrh/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/cloudsigma-zrh/target</directory>
-            <includes>
-                <include>cloudsigma-zrh-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>providers/cloudsigma-zrh/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/cloudsigma-zrh/target/apidocs</directory>
-            <outputDirectory>providers/cloudsigma-zrh/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>providers/cloudsigma-zrh</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>providers/cloudsigma-zrh</outputDirectory>            
-        </fileSet>   
-        
-        <!-- providers: elastichosts-lon-b -->
-        <fileSet>
-            <directory>providers/elastichosts-lon-b/target</directory>
-            <includes>
-                <include>elastichosts-lon-b-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>providers/elastichosts-lon-b/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/elastichosts-lon-b/target</directory>
-            <includes>
-                <include>elastichosts-lon-b-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>providers/elastichosts-lon-b/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/elastichosts-lon-b/target/apidocs</directory>
-            <outputDirectory>providers/elastichosts-lon-b/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>providers/elastichosts-lon-b</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>providers/elastichosts-lon-b</outputDirectory>            
-        </fileSet>     
-        
-        <!-- providers: elastichosts-lon-p -->
-        <fileSet>
-            <directory>providers/elastichosts-lon-p/target</directory>
-            <includes>
-                <include>elastichosts-lon-p-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>providers/elastichosts-lon-p/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/elastichosts-lon-p/target</directory>
-            <includes>
-                <include>elastichosts-lon-p-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>providers/elastichosts-lon-p/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/elastichosts-lon-p/target/apidocs</directory>
-            <outputDirectory>providers/elastichosts-lon-p/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>providers/elastichosts-lon-p</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>providers/elastichosts-lon-p</outputDirectory>            
-        </fileSet>
-        
-        <!-- providers: elastichosts-sat-p -->
-        <fileSet>
-            <directory>providers/elastichosts-sat-p/target</directory>
-            <includes>
-                <include>elastichosts-sat-p-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>providers/elastichosts-sat-p/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/elastichosts-sat-p/target</directory>
-            <includes>
-                <include>elastichosts-sat-p-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>providers/elastichosts-sat-p/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/elastichosts-sat-p/target/apidocs</directory>
-            <outputDirectory>providers/elastichosts-sat-p/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>providers/elastichosts-sat-p</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>providers/elastichosts-sat-p</outputDirectory>            
-        </fileSet>
-        
-        <!-- providers: eucalyptus-partnercloud-ec2 -->
-        <fileSet>
-            <directory>providers/eucalyptus-partnercloud-ec2/target</directory>
-            <includes>
-                <include>eucalyptus-partnercloud-ec2-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>providers/eucalyptus-partnercloud-ec2/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/eucalyptus-partnercloud-ec2/target</directory>
-            <includes>
-                <include>eucalyptus-partnercloud-ec2-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>providers/eucalyptus-partnercloud-ec2/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/eucalyptus-partnercloud-ec2/target/apidocs</directory>
-            <outputDirectory>providers/eucalyptus-partnercloud-ec2/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>providers/eucalyptus-partnercloud-ec2</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>providers/eucalyptus-partnercloud-ec2</outputDirectory>            
-        </fileSet>     
-        
-        <!-- providers: eucalyptus-partnercloud-s3 -->
-        <fileSet>
-            <directory>providers/eucalyptus-partnercloud-s3/target</directory>
-            <includes>
-                <include>eucalyptus-partnercloud-s3-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>providers/eucalyptus-partnercloud-s3/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/eucalyptus-partnercloud-s3/target</directory>
-            <includes>
-                <include>eucalyptus-partnercloud-s3-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>providers/eucalyptus-partnercloud-s3/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/eucalyptus-partnercloud-s3/target/apidocs</directory>
-            <outputDirectory>providers/eucalyptus-partnercloud-s3/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>providers/eucalyptus-partnercloud-s3</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>providers/eucalyptus-partnercloud-s3</outputDirectory>            
-        </fileSet>     
-        
-        <!-- providers: gogrid -->
-        <fileSet>
-            <directory>providers/gogrid/target</directory>
-            <includes>
-                <include>gogrid-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>providers/gogrid/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/gogrid/target</directory>
-            <includes>
-                <include>gogrid-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>providers/gogrid/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/gogrid/target/apidocs</directory>
-            <outputDirectory>providers/gogrid/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>providers/gogrid</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>providers/gogrid</outputDirectory>            
-        </fileSet>     
-        
-        <!-- providers: googlestorage -->
-        <fileSet>
-            <directory>providers/googlestorage/target</directory>
-            <includes>
-                <include>googlestorage-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>providers/googlestorage/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/googlestorage/target</directory>
-            <includes>
-                <include>googlestorage-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>providers/googlestorage/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/googlestorage/target/apidocs</directory>
-            <outputDirectory>providers/googlestorage/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>providers/googlestorage</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>providers/googlestorage</outputDirectory>            
-        </fileSet>     
-        
-        <!-- providers: openhosting-east1 -->
-        <fileSet>
-            <directory>providers/openhosting-east1/target</directory>
-            <includes>
-                <include>openhosting-east1-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>providers/openhosting-east1/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/openhosting-east1/target</directory>
-            <includes>
-                <include>openhosting-east1-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>providers/openhosting-east1/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/openhosting-east1/target/apidocs</directory>
-            <outputDirectory>providers/openhosting-east1/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>providers/openhosting-east1</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>providers/openhosting-east1</outputDirectory>            
-        </fileSet>     
-        
-        <!-- providers: scaleup-storage -->
-        <fileSet>
-            <directory>providers/scaleup-storage/target</directory>
-            <includes>
-                <include>scaleup-storage-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>providers/scaleup-storage/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/scaleup-storage/target</directory>
-            <includes>
-                <include>scaleup-storage-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>providers/scaleup-storage/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/scaleup-storage/target/apidocs</directory>
-            <outputDirectory>providers/scaleup-storage/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>providers/scaleup-storage</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>providers/scaleup-storage</outputDirectory>            
-        </fileSet>     
-        
-        <!-- providers: serverlove-z1-man -->
-        <fileSet>
-            <directory>providers/serverlove-z1-man/target</directory>
-            <includes>
-                <include>serverlove-z1-man-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>providers/serverlove-z1-man/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/serverlove-z1-man/target</directory>
-            <includes>
-                <include>serverlove-z1-man-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>providers/serverlove-z1-man/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/serverlove-z1-man/target/apidocs</directory>
-            <outputDirectory>providers/serverlove-z1-man/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>providers/serverlove-z1-man</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>providers/serverlove-z1-man</outputDirectory>            
-        </fileSet>     
-        
-        <!-- providers: skalicloud-sdg-my -->
-        <fileSet>
-            <directory>providers/skalicloud-sdg-my/target</directory>
-            <includes>
-                <include>skalicloud-sdg-my-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>providers/skalicloud-sdg-my/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/skalicloud-sdg-my/target</directory>
-            <includes>
-                <include>skalicloud-sdg-my-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>providers/skalicloud-sdg-my/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/skalicloud-sdg-my/target/apidocs</directory>
-            <outputDirectory>providers/skalicloud-sdg-my/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>providers/skalicloud-sdg-my</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>providers/skalicloud-sdg-my</outputDirectory>            
-        </fileSet>
-        
-        <!-- providers: synaptic-storage -->
-        <fileSet>
-            <directory>providers/synaptic-storage/target</directory>
-            <includes>
-                <include>synaptic-storage-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>providers/synaptic-storage/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/synaptic-storage/target</directory>
-            <includes>
-                <include>synaptic-storage-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>providers/synaptic-storage/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/synaptic-storage/target/apidocs</directory>
-            <outputDirectory>providers/synaptic-storage/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>providers/synaptic-storage</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>providers/synaptic-storage</outputDirectory>            
-        </fileSet>
-        
-        <!-- providers: trmk-ecloud -->
-        <fileSet>
-            <directory>providers/trmk-ecloud/target</directory>
-            <includes>
-                <include>trmk-ecloud-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>providers/trmk-ecloud/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/trmk-ecloud/target</directory>
-            <includes>
-                <include>trmk-ecloud-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>providers/trmk-ecloud/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/trmk-ecloud/target/apidocs</directory>
-            <outputDirectory>providers/trmk-ecloud/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>providers/trmk-ecloud</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>providers/trmk-ecloud</outputDirectory>            
-        </fileSet>     
-        
-        <!-- providers: trmk-vcloudexpress -->
-        <fileSet>
-            <directory>providers/trmk-vcloudexpress/target</directory>
-            <includes>
-                <include>trmk-vcloudexpress-${project.version}-jar-with-dependencies.jar</include>
-            </includes>
-            <outputDirectory>providers/trmk-vcloudexpress/lib</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/trmk-vcloudexpress/target</directory>
-            <includes>
-                <include>trmk-vcloudexpress-${project.version}-sources.jar</include>
-            </includes>
-            <outputDirectory>providers/trmk-vcloudexpress/src</outputDirectory>
-        </fileSet>
-        <fileSet>
-            <directory>providers/trmk-vcloudexpress/target/apidocs</directory>
-            <outputDirectory>providers/trmk-vcloudexpress/docs</outputDirectory>            
-        </fileSet>   
-        <fileSet>
-            <directory>providers/trmk-vcloudexpress</directory>
-            <includes>
-                <include>README.txt</include>
-            </includes>
-            <outputDirectory>providers/trmk-vcloudexpress</outputDirectory>            
-        </fileSet>     
-    </fileSets>        
-</assembly>

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/assemblies/src/main/resources/assemblies/provided-dependencies-descriptor.xml
----------------------------------------------------------------------
diff --git a/assemblies/src/main/resources/assemblies/provided-dependencies-descriptor.xml b/assemblies/src/main/resources/assemblies/provided-dependencies-descriptor.xml
deleted file mode 100644
index 2c1dfed..0000000
--- a/assemblies/src/main/resources/assemblies/provided-dependencies-descriptor.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-<!--
-
-Licensed to jclouds, Inc. (jclouds) under one or more
-contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  jclouds 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.
-
--->
-<?xml version="1.0" encoding="UTF-8"?>
-<assembly>
-    <id>provided-dependencies</id>
-    <formats>
-        <format>dir</format>
-    </formats>
-    <includeBaseDirectory>false</includeBaseDirectory>
-    <dependencySets>
-        <dependencySet>
-            <scope>provided</scope>
-            <useProjectArtifact>false</useProjectArtifact>            
-        </dependencySet>
-    </dependencySets>
-    <fileSets>
-        <!-- Hack to get Maven assembly to build even if there are no files to include.
-          See http://jira.codehaus.org/browse/MASSEMBLY-457. -->
-        <fileSet>
-            <includes>
-                <include>pom.xml</include>
-            </includes>
-            <outputDirectory>META-INF/maven/${project.groupId}/${project.artifactId}</outputDirectory>
-        </fileSet>
-    </fileSets>
-</assembly>

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/assemblies/src/main/resources/assemblies/src-descriptor.xml
----------------------------------------------------------------------
diff --git a/assemblies/src/main/resources/assemblies/src-descriptor.xml b/assemblies/src/main/resources/assemblies/src-descriptor.xml
deleted file mode 100644
index 12e04ee..0000000
--- a/assemblies/src/main/resources/assemblies/src-descriptor.xml
+++ /dev/null
@@ -1,41 +0,0 @@
-<!--
-
-Licensed to jclouds, Inc. (jclouds) under one or more
-contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  jclouds 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.
-
--->
-<?xml version="1.0" encoding="UTF-8"?>
-<assembly>
-    <id>src</id>
-    <includeBaseDirectory>false</includeBaseDirectory>
-    <formats>
-        <format>dir</format>
-    </formats>
-    <fileSets>
-        <fileSet>
-            <includes>
-                <include>README*</include>
-                <include>LICENSE*</include>
-                <include>NOTICE*</include>
-                <include>pom.xml</include>
-            </includes>
-        </fileSet>
-        <fileSet>
-            <directory>src</directory>
-        </fileSet>
-    </fileSets>
-</assembly>

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/antjruby/build.xml
----------------------------------------------------------------------
diff --git a/demos/antjruby/build.xml b/demos/antjruby/build.xml
deleted file mode 100644
index 07d6768..0000000
--- a/demos/antjruby/build.xml
+++ /dev/null
@@ -1,109 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-    Licensed to jclouds, Inc. (jclouds) under one or more
-    contributor license agreements.  See the NOTICE file
-    distributed with this work for additional information
-    regarding copyright ownership.  jclouds 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.
-
--->
-<project name="shrinkblob" default="shrinkblob" basedir="." xmlns:artifact="urn:maven-artifact-ant">
-
-  <!-- maven must be available before we use it -->
-  <get src="http://opensource.become.com/apache//maven/binaries/maven-ant-tasks-2.1.1.jar" dest="maven-ant-tasks.jar"/>
-
-  <!-- initialize maven tasks -->
-  <path id="maven-ant-tasks.classpath" path="maven-ant-tasks.jar" />
-  <typedef resource="org/apache/maven/artifact/ant/antlib.xml" uri="urn:maven-artifact-ant"
-           classpathref="maven-ant-tasks.classpath" />
-
-  <artifact:localRepository id="local.repository" path="${user.home}/.m2/repository" />
-  <artifact:remoteRepository id="jclouds-snapshot.repository" url="https://oss.sonatype.org/content/repositories/snapshots" />
-  <artifact:remoteRepository id="shrinkwrap.repository" url="https://repository.jboss.org/nexus/content/groups/public" />
-  
-  <!-- Setup maven so that we can get latest version of jclouds, shrinkwrap, and jruby -->
-  <artifact:dependencies pathId="shrinkwrap.classpath">
-    <dependency groupId="org.jboss.shrinkwrap" artifactId="shrinkwrap-impl-base" version="1.0.0-alpha-11" />
-    <dependency groupId="org.jruby" artifactId="jruby" version="1.5.2"/>
-    <dependency groupId="org.jclouds" artifactId="jclouds-allblobstore" version="1.0-SNAPSHOT" />
-    <remoteRepository refid="shrinkwrap.repository" />
-    <remoteRepository refid="jclouds-snapshot.repository" />
-    <localRepository refid="local.repository" />
-  </artifact:dependencies>
-
-  <input
-    message="What is the directory you'd like to upload?"
-    addproperty="dir"
-  />
-
-  <input
-    message="What is the name of the zip you'd like ${dir} stored to?"
-    addproperty="zip"
-  />
-
-  <input
-    message="What is the container you wish to store ${zip} in?"
-    addproperty="container"
-  />
-
-  <input
-    message="Which provider would you like to use (transient,googlestorage,cloudonestorage,synaptic-storage,azureblob,cloudfiles-us,cloudfiles-uk,aws-s3,eucalyptus-partnercloud-s3,scaleup-storage)?"
-    validargs="transient,googlestorage,cloudonestorage,synaptic-storage,azureblob,cloudfiles-us,cloudfiles-uk,aws-s3,eucalyptus-partnercloud-s3,scaleup-storage"
-    addproperty="provider"
-  />
-
-  <input
-    message="What is your identity on ${provider}?"
-    addproperty="identity"
-  />
-
-  <input
-    message="What is the credential for ${identity}?"
-    addproperty="credential"
-  />
-
-  <property name="location" value="default" />
-
-  <target name="shrinkblob">
-    <script language="jruby" classpathref="shrinkwrap.classpath"> <![CDATA[
-require 'java'
-require 'jruby/core_ext'
-include_class 'org.apache.tools.ant.Task'
-include_class 'org.jclouds.blobstore.BlobStoreContextFactory'
-include_class 'org.jboss.shrinkwrap.api.ShrinkWrap'
-include_class 'org.jboss.shrinkwrap.api.exporter.ZipExporter'
-include_class 'org.jboss.shrinkwrap.api.importer.ExplodedImporter'
-include_class 'org.jboss.shrinkwrap.impl.base.ServiceExtensionLoader'
-
-    # correct the ant classloader so that extensions can be found
-    java.lang.Thread.currentThread().setContextClassLoader(ServiceExtensionLoader.new().getClass().getClassLoader())
-
-    print "creating the archive from ",$dir,"\n"
-    zipStream = ShrinkWrap.create(ExplodedImporter.java_class, $zip).importDirectory($dir).as(ZipExporter.java_class).exportZip()
-
-    print "connecting to provider ",$provider,"/",$container,"\n"
-    
-    context = BlobStoreContextFactory.new().createContext($provider, $identity, $credential)
-    context.getBlobStore().createContainerInLocation(nil, $container)
-
-    print "uploading to ",$provider,"/",$container,"/",$zip,"\n"
-    context.createInputStreamMap($container).put($zip,zipStream);
-
-    context.close();
-
-]]></script>
-  </target>
-
-</project>

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/getpath/README.txt
----------------------------------------------------------------------
diff --git a/demos/getpath/README.txt b/demos/getpath/README.txt
deleted file mode 100644
index 8605569..0000000
--- a/demos/getpath/README.txt
+++ /dev/null
@@ -1,25 +0,0 @@
-====
-    Licensed to jclouds, Inc. (jclouds) under one or more
-    contributor license agreements.  See the NOTICE file
-    distributed with this work for additional information
-    regarding copyright ownership.  jclouds 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.
-====
-
-#
-# this is a simple command line client that obtains the contents of a container
-# 1. execute 'mvn install' to build the sample
-# 2. invoke the jar, passing your credentials and the container you wish to get
-# ex.
-#   java -jar target/jclouds-getpath-jar-with-dependencies.jar accesskey secretkey container/path

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/getpath/pom.xml
----------------------------------------------------------------------
diff --git a/demos/getpath/pom.xml b/demos/getpath/pom.xml
deleted file mode 100644
index ff76c0c..0000000
--- a/demos/getpath/pom.xml
+++ /dev/null
@@ -1,118 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-Licensed to jclouds, Inc. (jclouds) under one or more
-contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  jclouds 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.
-
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>org.apache.jclouds</groupId>
-    <artifactId>jclouds-demos-project</artifactId>
-    <version>1.7.0-SNAPSHOT</version>
-  </parent>
-  <artifactId>jclouds-demo-getpath</artifactId>
-  <name>jclouds getpath</name>
-  <description>jclouds blobstore tool that downloads a container path to a local directory</description>
-  <properties>
-    <jclouds.getpath.container>jclouds-getpath</jclouds.getpath.container>
-    <jclouds.getpath.path>1</jclouds.getpath.path>
-    <jclouds.test.listener></jclouds.test.listener>
-  </properties>
-
-  <dependencies>
-    <dependency>
-      <groupId>${project.groupId}</groupId>
-      <artifactId>jclouds-allblobstore</artifactId>
-      <version>${project.version}</version>
-    </dependency>
-  </dependencies>
-
-  <build>
-    <finalName>${project.artifactId}</finalName>
-    <plugins>
-      <plugin>
-        <artifactId>maven-jar-plugin</artifactId>
-        <configuration>
-          <archive>
-            <manifest>
-              <mainClass>org.jclouds.blobstore.GetPath</mainClass>
-            </manifest>
-          </archive>
-        </configuration>
-      </plugin>
-      <plugin>
-        <artifactId>maven-assembly-plugin</artifactId>
-        <configuration>
-          <descriptorRefs>
-            <descriptorRef>jar-with-dependencies</descriptorRef>
-          </descriptorRefs>
-          <archive>
-            <manifest>
-              <mainClass>org.jclouds.blobstore.GetPath</mainClass>
-            </manifest>
-          </archive>
-        </configuration>
-        <executions>
-          <execution>
-            <id>make-assembly</id>
-            <phase>package</phase>
-            <goals>
-              <goal>single</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-    </plugins>
-  </build>
-
-  <profiles>
-    <profile>
-      <id>live</id>
-      <build>
-        <plugins>
-          <plugin>
-            <artifactId>maven-surefire-plugin</artifactId>
-            <executions>
-              <execution>
-                <id>integration</id>
-                <phase>integration-test</phase>
-                <goals>
-                  <goal>test</goal>
-                </goals>
-                <configuration>
-                  <systemPropertyVariables>
-                    <test.identity.azureblob>${jclouds.azure.storage.account}</test.identity.azureblob>
-                    <test.credential.azureblob>${jclouds.azure.storage.key}</test.credential.azureblob>
-                    <test.identity.cloudfiles>${jclouds.rackspace.user}</test.identity.cloudfiles>
-                    <test.credential.cloudfiles>${jclouds.rackspace.key}</test.credential.cloudfiles>
-                    <test.identity.s3>${jclouds.aws.accesskeyid}</test.identity.s3>
-                    <test.credential.s3>${jclouds.aws.secretaccesskey}</test.credential.s3>
-                    <jclouds.getpath.container>${jclouds.getpath.container}</jclouds.getpath.container>
-                    <jclouds.getpath.path>${jclouds.getpath.path}</jclouds.getpath.path>
-                  </systemPropertyVariables>
-                </configuration>
-              </execution>
-            </executions>
-          </plugin>
-        </plugins>
-      </build>
-    </profile>
-  </profiles>
-
-</project>

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/getpath/src/main/java/org/jclouds/blobstore/GetPath.java
----------------------------------------------------------------------
diff --git a/demos/getpath/src/main/java/org/jclouds/blobstore/GetPath.java b/demos/getpath/src/main/java/org/jclouds/blobstore/GetPath.java
deleted file mode 100644
index 4e610b9..0000000
--- a/demos/getpath/src/main/java/org/jclouds/blobstore/GetPath.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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.blobstore;
-
-import static com.google.common.base.Preconditions.checkArgument;
-import static com.google.common.base.Preconditions.checkState;
-
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.net.URI;
-import java.util.Map.Entry;
-
-import org.jclouds.blobstore.util.BlobStoreUtils;
-import org.jclouds.domain.Credentials;
-import org.jclouds.http.HttpUtils;
-
-import com.google.common.io.ByteStreams;
-import com.google.common.io.Closeables;
-
-/**
- * 
- * Usage is: java GetPath blobstore://identity:key@service/container/path destinationPath
- * 
- * @author Adrian Cole
- */
-public class GetPath {
-
-   public static String INVALID_SYNTAX = "Invalid parameters. Syntax is: blobstore://identity:key@service/container/path destinationPath";
-
-   public static void main(String... args) throws IOException {
-      if (args.length < 2)
-         throw new IllegalArgumentException(INVALID_SYNTAX);
-      URI uri;
-      try {
-         uri = HttpUtils.createUri(args[0]);
-         checkArgument(uri.getScheme().equals("blobstore"), "wrong scheme");
-      } catch (IllegalArgumentException e) {
-         throw new IllegalArgumentException(String.format("%s%n%s", e.getMessage(), INVALID_SYNTAX));
-      }
-      checkArgument(args[1] != null, String.format("destination must be specified%n%s",
-               INVALID_SYNTAX));
-
-      File destinationDir = new File(args[1]);
-      destinationDir.mkdirs();
-
-      String provider = uri.getHost();
-      Credentials creds = Credentials.parse(uri);
-
-      BlobStoreContext context = new BlobStoreContextFactory().createContext(provider,
-               creds.identity, creds.credential);
-
-      String path = uri.getPath();
-      if (path.startsWith("/"))
-         path = path.substring(1);
-      String container = BlobStoreUtils.parseContainerFromPath(path);
-      String directory = BlobStoreUtils.parsePrefixFromPath(path);
-      copyDirectoryToDestination(context, container, directory, destinationDir);
-   }
-
-   private static void copyDirectoryToDestination(BlobStoreContext context, String container,
-            String directory, File destinationDir) throws FileNotFoundException, IOException {
-      InputStream input = null;
-
-      try {
-         checkState(context.getBlobStore().containerExists(container), String.format(
-                  "source container %s does not exist", directory, container));
-         checkState(context.getBlobStore().directoryExists(container, directory), String.format(
-                  "source directory %s does not exist in container %s", directory, container));
-
-         String path = container + "/" + directory;
-         InputStreamMap map = context.createInputStreamMap(path);
-         System.out.printf("fetching %d entries from %s %s%n", map.size(), context
-                  .getProviderSpecificContext().getIdentity(), path);
-         for (Entry<String, InputStream> entry : map.entrySet()) {
-            System.out.printf("getting file: %s/%s%n", path, entry.getKey());
-            input = entry.getValue();
-            File file = new File(destinationDir, entry.getKey());
-            OutputStream out = new FileOutputStream(file);
-            ByteStreams.copy(input, out);
-            out.flush();
-            out.close();
-         }
-
-      } finally {
-         // Close connection
-         Closeables.closeQuietly(input);
-      }
-   }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/getpath/src/test/java/org/jclouds/blobstore/GetPathLiveTest.java
----------------------------------------------------------------------
diff --git a/demos/getpath/src/test/java/org/jclouds/blobstore/GetPathLiveTest.java b/demos/getpath/src/test/java/org/jclouds/blobstore/GetPathLiveTest.java
deleted file mode 100644
index eb35d71..0000000
--- a/demos/getpath/src/test/java/org/jclouds/blobstore/GetPathLiveTest.java
+++ /dev/null
@@ -1,169 +0,0 @@
-/**
- * Licensed to jclouds, Inc. (jclouds) under one or more
- * contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  jclouds 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.blobstore;
-
-import static com.google.common.base.Preconditions.checkNotNull;
-import static org.testng.Assert.assertEquals;
-
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.Map.Entry;
-import java.util.concurrent.ExecutionException;
-import java.util.concurrent.TimeoutException;
-
-import org.jclouds.logging.log4j.config.Log4JLoggingModule;
-import org.testng.annotations.AfterTest;
-import org.testng.annotations.BeforeClass;
-import org.testng.annotations.Optional;
-import org.testng.annotations.Parameters;
-import org.testng.annotations.Test;
-
-import com.google.common.base.Charsets;
-import com.google.common.collect.ImmutableMap;
-import com.google.common.collect.ImmutableSet;
-import com.google.common.collect.Lists;
-import com.google.common.collect.Sets;
-import com.google.common.io.Files;
-
-/**
- * 
- * @author Adrian Cole
- */
-@Test(groups = "live", sequential = true)
-public class GetPathLiveTest {
-
-   public static final String PROPERTY_GETPATH_CONTAINER = "jclouds.getpath.container";
-   public static final String PROPERTY_GETPATH_PATH = "jclouds.getpath.path";
-
-   private Set<BlobStoreContext> contexts;
-   private String container;
-   private String path;
-
-   private String tmpDirectory;
-
-   protected static final String XML_STRING_FORMAT = "<apples><apple name=\"%s\"></apple> </apples>";
-
-   protected Map<String, String> fiveStrings = ImmutableMap.of("one.txt", String.format(
-            XML_STRING_FORMAT, "apple"), "two.txt", String.format(XML_STRING_FORMAT, "bear"),
-            "three.txt", String.format(XML_STRING_FORMAT, "candy"), "four.txt", String.format(
-                     XML_STRING_FORMAT, "dogma"), "five.txt", String.format(XML_STRING_FORMAT,
-                     "emma"));
-
-   List<String> urisToTest = Lists.newArrayList();
-
-   @BeforeClass(groups = { "integration", "live" })
-   void clearAndCreateContainers() throws InterruptedException, ExecutionException,
-            TimeoutException {
-      container = checkNotNull(System.getProperty(PROPERTY_GETPATH_CONTAINER));
-      path = checkNotNull(System.getProperty(PROPERTY_GETPATH_PATH));
-
-      contexts = Sets.newLinkedHashSet();
-      BlobStoreContextFactory factory = new BlobStoreContextFactory();
-      for (String provider : new String[] { "s3", "cloudfiles", "azureblob" }) {
-         String identity = checkNotNull(System.getProperty("test.identity." + provider),
-                  "test.identity." + provider);
-         String credential = checkNotNull(
-                  System.getProperty("test.credential." + provider),
-                  "test.credential." + provider);
-
-         contexts.add(factory.createContext(provider, identity, credential, ImmutableSet
-                  .of(new Log4JLoggingModule())));
-
-         urisToTest.add(String.format("blobstore://%s:%s@%s/%s/%s", identity, credential,
-                  provider, container, path));
-
-      }
-
-      boolean deleted = false;
-      for (BlobStoreContext context : contexts) {
-         if (context.getBlobStore().containerExists(container)) {
-            System.err.printf("deleting container %s at %s%n", container, context
-                     .getProviderSpecificContext().getEndpoint());
-            context.getBlobStore().deleteContainer(container);
-            deleted = true;
-         }
-      }
-      if (deleted) {
-         System.err.println("sleeping 30 seconds to allow containers to clear");
-         Thread.sleep(30000);
-      }
-      for (BlobStoreContext context : contexts) {
-         System.err.printf("creating container %s at %s%n", container, context
-                  .getProviderSpecificContext().getEndpoint());
-         context.getBlobStore().createContainerInLocation(null, container);
-      }
-      if (deleted) {
-         System.err.println("sleeping 5 seconds to allow containers to create");
-         Thread.sleep(30000);
-      }
-      for (BlobStoreContext context : contexts) {
-         System.err.printf("creating directory %s in container %s at %s%n", container, path,
-                  context.getProviderSpecificContext().getEndpoint());
-         context.getBlobStore().createDirectory(container, path);
-      }
-   }
-
-   @BeforeClass(dependsOnMethods = "clearAndCreateContainers", groups = { "integration", "live" })
-   protected void addFiles() {
-      for (BlobStoreContext context : contexts) {
-         System.err.printf("adding files to container %s at %s%n", container, context
-                  .getProviderSpecificContext().getEndpoint());
-         context.createInputStreamMap(container + "/" + path).putAllStrings(fiveStrings);
-      }
-   }
-
-   @BeforeClass(groups = { "integration", "live" })
-   @Parameters( { "basedir" })
-   protected void setUpTempDir(@Optional String basedir) throws InterruptedException,
-            ExecutionException, FileNotFoundException, IOException, TimeoutException {
-      if (basedir == null) {
-         basedir = System.getProperty("java.io.tmpdir");
-      }
-      tmpDirectory = basedir + File.separator + "target" + File.separator + "testFiles"
-               + File.separator + getClass().getSimpleName();
-      new File(tmpDirectory).mkdirs();
-   }
-
-   @Test
-   public void testAllContainers() throws IOException, InterruptedException {
-
-      for (String uriKey : urisToTest) {
-         System.out.println("storing at context: " + uriKey);
-         new File(tmpDirectory).delete();
-         new File(tmpDirectory).mkdirs();
-         GetPath.main(uriKey, tmpDirectory);
-         for (Entry<String, String> entry : fiveStrings.entrySet()) {
-            assertEquals(Files.toString(new File(tmpDirectory, entry.getKey()),
-                  Charsets.UTF_8), entry.getValue());
-         }
-      }
-
-   }
-
-   @AfterTest
-   public void closeContexts() {
-      for (BlobStoreContext context : contexts) {
-         context.close();
-      }
-   }
-}

http://git-wip-us.apache.org/repos/asf/incubator-jclouds/blob/f22731d9/demos/getpath/src/test/resources/log4j.xml
----------------------------------------------------------------------
diff --git a/demos/getpath/src/test/resources/log4j.xml b/demos/getpath/src/test/resources/log4j.xml
deleted file mode 100644
index 12bbf74..0000000
--- a/demos/getpath/src/test/resources/log4j.xml
+++ /dev/null
@@ -1 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>