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:19 UTC
[2/5] JCLOUDS-54. remove historical demos,
archetypes and assemblies modules
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>