bump jclouds.version to 2.1.0 remove unsupported modules:
- blobstore-clojure - blobstore-scala-filesystem - camel-notifications - compute-clojure - deploy-war-via-ant - minecraft-compute - play-compute - fix README.md clean up pom.xml - remove dead modules Project: http://git-wip-us.apache.org/repos/asf/jclouds-examples/repo Commit: http://git-wip-us.apache.org/repos/asf/jclouds-examples/commit/934cdb08 Tree: http://git-wip-us.apache.org/repos/asf/jclouds-examples/tree/934cdb08 Diff: http://git-wip-us.apache.org/repos/asf/jclouds-examples/diff/934cdb08 Branch: refs/heads/master Commit: 934cdb085d7b1511af6a390484b414f995510901 Parents: 0168a39 Author: andreaturli <[email protected]> Authored: Mon Mar 19 09:45:02 2018 +0100 Committer: andreaturli <[email protected]> Committed: Thu Mar 22 16:21:00 2018 +0100 ---------------------------------------------------------------------- README.md | 52 ++-- blobstore-basics/pom.xml | 9 +- blobstore-clojure/README.md | 22 -- blobstore-hdfs/README.md | 35 --- blobstore-hdfs/pom.xml | 146 ----------- .../examples/blobstore/hdfs/MainApp.java | 182 -------------- .../blobstore/hdfs/config/HdfsModule.java | 31 --- .../blobstore/hdfs/io/HdfsPayloadSlicer.java | 72 ------ .../blobstore/hdfs/io/payloads/HdfsPayload.java | 62 ----- blobstore-hdfs/src/main/resources/log4j.xml | 162 ------------ blobstore-karaf-shell/README.md | 37 --- blobstore-karaf-shell/pom.xml | 114 --------- .../blobstore/osgi/BlobStoreService.java | 39 --- .../blobstore/osgi/BlobStoreServiceImpl.java | 144 ----------- .../osgi/shell/BlobStoreCommandSupport.java | 33 --- .../blobstore/osgi/shell/ReadCommand.java | 41 ---- .../blobstore/osgi/shell/WriteCommand.java | 44 ---- .../resources/OSGI-INF/blueprint/blueprint.xml | 46 ---- blobstore-largeblob/pom.xml | 4 +- blobstore-scala-filesystem/README.md | 24 -- blobstore-scala-filesystem/build.sbt | 25 -- .../src/main/scala/Main.scala | 56 ----- blobstore-uploader/dependency-reduced-pom.xml | 92 +++---- blobstore-uploader/pom.xml | 5 +- camel-notifications/Readme.txt | 23 -- camel-notifications/pom.xml | 151 ------------ .../resources/META-INF/spring/camel-context.xml | 105 -------- .../src/main/resources/logback.xml | 38 --- .../org/jclouds/camel/notifier/camel.properties | 25 -- chef-basics/pom.xml | 4 +- cloudwatch-basics/README.md | 19 -- cloudwatch-basics/pom.xml | 85 ------- .../src/main/assembly/jar-with-dependencies.xml | 42 ---- .../examples/cloudwatch/basics/MainApp.java | 245 ------------------- compute-basics/pom.xml | 4 +- compute-clojure/README.md | 23 -- compute-clojure/resources/logback.xml | 36 --- deploy-war-via-ant/README.md | 55 ----- deploy-war-via-ant/build.xml | 111 --------- deploy-war-via-ant/runscript.sh | 27 -- ec2-computeservice-spot/README.md | 31 --- ec2-computeservice-spot/pom.xml | 79 ------ .../org/jclouds/examples/ec2/spot/MainApp.java | 119 --------- ec2-createlamp/README.md | 29 --- ec2-createlamp/pom.xml | 78 ------ .../examples/ec2/createlamp/MainApp.java | 234 ------------------ ec2-windows/README.md | 31 --- ec2-windows/pom.xml | 161 ------------ .../src/main/assembly/jar-with-dependencies.xml | 42 ---- .../jclouds/examples/ec2/windows/Arguments.java | 92 ------- .../jclouds/examples/ec2/windows/MainApp.java | 109 --------- .../ec2/windows/WindowsInstanceStarter.java | 141 ----------- ec2-windows/src/main/resources/log4j.properties | 37 --- glacier/pom.xml | 9 +- google-lb/pom.xml | 6 +- .../org/jclouds/examples/google/lb/MainApp.java | 9 +- minecraft-compute/README.md | 47 ---- minecraft-compute/pom.xml | 171 ------------- .../src/main/assembly/jar-with-dependencies.xml | 42 ---- .../minecraft/ConfigureMinecraftDaemon.java | 51 ---- .../org/jclouds/examples/minecraft/MainApp.java | 205 ---------------- .../examples/minecraft/MinecraftController.java | 114 --------- .../jclouds/examples/minecraft/NodeManager.java | 134 ---------- .../org/jclouds/examples/minecraft/Utils.java | 82 ------- .../src/main/resources/logback.xml | 37 --- openstack/pom.xml | 6 +- play-compute/.gitignore | 7 - play-compute/README | 4 - play-compute/app/controllers/Application.java | 36 --- play-compute/app/views/index.scala.html | 28 --- play-compute/app/views/main.scala.html | 36 --- play-compute/conf/application.conf | 74 ------ play-compute/conf/routes | 26 -- play-compute/project/Build.scala | 42 ---- play-compute/project/build.properties | 18 -- play-compute/project/plugins.sbt | 27 -- play-compute/public/images/favicon.png | Bin 687 -> 0 bytes .../public/javascripts/jquery-1.7.1.min.js | 4 - play-compute/public/stylesheets/main.css | 19 -- pom.xml | 18 +- rackspace/pom.xml | 8 +- .../examples/rackspace/Authentication.java | 4 +- .../cloudfiles/UploadObjectsWithServiceNet.java | 2 +- .../cloudnetworks/CreateSecurityGroup.java | 6 +- 84 files changed, 95 insertions(+), 4830 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/jclouds-examples/blob/934cdb08/README.md ---------------------------------------------------------------------- diff --git a/README.md b/README.md index f93e6e5..82163f7 100644 --- a/README.md +++ b/README.md @@ -6,66 +6,42 @@ This repository contains various examples of using <table> <thead><tr><th>project</th><th>description</th></tr></thead> <tbody> - <tr> - <td><a href="cloudwatch-basics/">Cloudwatch Basics (Java)</a></td> - <td>Example code to get the total metrics stored for each of your instances within the past 24 hours and shows avg/max/min CPU utilization for each instance when possible.</td> - </tr> - <tr> - <td><a href="compute-basics/">Compute Basics (Java)</a></td> - <td>Example code to add nodes to a group and execute commands on them using the portable <a href="http://jclouds.apache.org/start/compute/">ComputeService API</a></td> - </tr> - <tr> - <td><a href="compute-clojure/">Compute Basics (Clojure)</a></td> - <td>Example code using <a href="https://github.com/jclouds/jclouds/blob/master/compute/src/main/clojure/org/jclouds/compute2.clj">compute2</a> to create a node, execute a command and destroy the node.</td> - </tr> - <tr> - <td><a href="minecraft-compute/">Start a Minecraft Server (Java)</a></td> - <td>Example code to add nodes to a group and start Minecraft servers on them using the portable <a href="http://jclouds.apache.org/start/compute/">ComputeService API</a></td> - </tr> <tr> <td><a href="blobstore-basics/">BlobStore Basics (Java)</a></td> <td>Example code to create a container, blob, and list your blobs using the portable <a href="http://jclouds.apache.org/start/blobstore/">BlobStore API</a></td> </tr> <tr> - <td><a href="blobstore-clojure/">BlobStore Basics (Clojure)</a></td> - <td>Example code using <a href="https://github.com/jclouds/jclouds/blob/master/blobstore/src/main/clojure/org/jclouds/blobstore2.clj">blobstore2</a> to create a container, and list your containers.</a></td> - </tr> - <tr> - <td><a href="blobstore-scala-filesystem/">BlobStore Basics (Scala)</a></td> - <td>Example code to create a container and blob using the filesystem <a href="http://jclouds.apache.org/start/blobstore/">BlobStore API</a></td> + <td><a href="blobstore-largeblob/">Large Blob support (Java)</a></td> + <td>Example code to create a container and use a parallel strategy to upload a large blob, the portable <a href="http://jclouds.apache.org/start/blobstore/">BlobStore API</a></td> </tr> <tr> - <td><a href="blobstore-karaf-shell">BlobStore via Karaf Shell</a></td> - <td>Example to read and write to a blobstore from inside the Apache Karaf Shell.</td> + <td><a href="blobstore-uploader/">Blob Uploader (Java)</a></td> + <td>Example code to upload many small to medium sized files to a provider supported by jclouds.</td> </tr> <tr> - <td><a href="ec2-computeservice-spot/">Use EC2 Extensions in ComputeService (Java)</a></td> - <td>Example code to create a spot instance on <a href="http://jclouds.apache.org/guides/aws-ec2/">EC2</a> using <a href="http://jclouds.apache.org/start/compute/">ComputeService API</a> extensions</td> + <td><a href="chef-basics/">Chef Basics (Java)</a></td> + <td>Example code to add nodes to a group and execute Chef cookbooks on them using Chef Solo or a standard or Hosted Chef Server.</td> </tr> <tr> - <td><a href="ec2-createlamp/">EC2 Create LAMP (Java)</a></td> - <td>Example code to create a LAMP server on <a href="http://jclouds.apache.org/guides/aws-ec2/">EC2</a> using the provider-specific EC2Client</td> + <td><a href="compute-basics/">Compute Basics (Java)</a></td> + <td>Example code to add nodes to a group and execute commands on them using the portable <a href="http://jclouds.apache.org/start/compute/">ComputeService API</a></td> </tr> <tr> - <td><a href="deploy-war-via-ant/">Deploy a webapp (ant)</a></td> - <td>Example code to deploy a web application to the cloud using <a href="http://cargo.codehaus.org/">Cargo</a> and the jclouds ant plugin</td> + <td><a href="glacier/">AWS Glacier (Java)</a></td> + <td>Example code that uses jclouds to manage using the Glacier provider and BlobStore..</td> </tr> <tr> - <td><a href="blobstore-largeblob/">Large Blob support (Java)</a></td> - <td>Example code to create a container and use a parallel strategy to upload a large blob, the portable <a href="http://jclouds.apache.org/start/blobstore/">BlobStore API</a></td> + <td><a href="google-lb/">Google LoadBalancer (Java)</a></td> + <td>Example code that uses jclouds to manage Google [Network Load Balancing](https://cloud.google.com/compute/docs/load-balancing/network/).</td> </tr> <tr> - <td><a href="camel-notifications/">Camel notifications</a></td> - <td>Example code that uses jclouds from inside Apache Camel routes. The example provides routes that poll the compute provider for running nodes and sends notifications via email. </td> + <td><a href="openstack/">OpenStack (Java)</a></td> + <td>Example code that uses jclouds to perform common tasks on the <a href="http://jclouds.apache.org/guides/openstack/">OpenStack</a>.</td> </tr> <tr> <td><a href="rackspace/">Rackspace (Java)</a></td> <td>Example code that uses jclouds to perform common tasks on the <a href="http://jclouds.apache.org/guides/rackspace/">Rackspace Cloud</a>.</td> </tr> - <tr> - <td><a href="chef-basics/">Chef Basics (Java)</a></td> - <td>Example code to add nodes to a group and execute Chef cookbooks on them using Chef Solo or a standard or Hosted Chef Server.</td> - </tr> </tbody> </table> http://git-wip-us.apache.org/repos/asf/jclouds-examples/blob/934cdb08/blobstore-basics/pom.xml ---------------------------------------------------------------------- diff --git a/blobstore-basics/pom.xml b/blobstore-basics/pom.xml index 4a63568..9da345e 100644 --- a/blobstore-basics/pom.xml +++ b/blobstore-basics/pom.xml @@ -22,12 +22,12 @@ <modelVersion>4.0.0</modelVersion> <groupId>org.apache.jclouds.examples</groupId> <artifactId>blobstore-basics</artifactId> - <version>2.0.0</version> + <version>2.1.0</version> <name>blobstore-basics</name> <description>jclouds blobstore example that creates a container, then displays the size of each container</description> <properties> - <jclouds.version>2.0.0</jclouds.version> + <jclouds.version>2.1.0</jclouds.version> </properties> <dependencies> @@ -41,11 +41,6 @@ <artifactId>jclouds-allblobstore</artifactId> <version>${jclouds.version}</version> </dependency> - <dependency> - <groupId>org.apache.jclouds.labs</groupId> - <artifactId>google-cloud-storage</artifactId> - <version>${jclouds.version}</version> - </dependency> <!-- note that if you want a smaller distribution remove the above dependency and place something like below --> http://git-wip-us.apache.org/repos/asf/jclouds-examples/blob/934cdb08/blobstore-clojure/README.md ---------------------------------------------------------------------- diff --git a/blobstore-clojure/README.md b/blobstore-clojure/README.md deleted file mode 100644 index 74b5729..0000000 --- a/blobstore-clojure/README.md +++ /dev/null @@ -1,22 +0,0 @@ -# blobstore-clojure - -Basic blobstore usage example including creating a container and then listing all containers in your account. - -## Build - -Ensure you have [Leiningen](http://github.com/technomancy/leiningen) installed, then execute 'lein deps' to grab the jclouds dependencies. - -## Run - - bash$ lein repl - user> (use 'create-list.containers) - user> (create-and-list "transient" "foo" "bar" "mycontainer") - or for a real blobstore like S3 - user> (create-and-list "aws-s3" accesskey secret "mybucket") - -## License - -Copyright (C) 2009-2014 The Apache Software Foundation - -Licensed under the Apache License, Version 2.0 - http://git-wip-us.apache.org/repos/asf/jclouds-examples/blob/934cdb08/blobstore-hdfs/README.md ---------------------------------------------------------------------- diff --git a/blobstore-hdfs/README.md b/blobstore-hdfs/README.md deleted file mode 100755 index 183c0c7..0000000 --- a/blobstore-hdfs/README.md +++ /dev/null @@ -1,35 +0,0 @@ -# blobstore-hdfs - -This is a simple example which shows how we can extends the Payload to have HDFS for using with Blobstore. -Then the application layer is using an upload from HDFS. -The reason why such kind of HDFS payload currently is considered only an example application is that -people are using different versions of Hadoop, thus the adequate version needs to be matched exactly -which is not a simple decision in general case. As an example, it is the simplest way to present it. - -Note that, if you run this example and you will see an exception showing incompatible version between -your hdfs client and the running server's hdfs version, then switch the version of hadoop-core from -0.20.2-cdh3u0 to your used version. - -## Build - -Ensure you have maven 3.02 or higher installed, then execute 'mvn install' to build the example. - -## Run - -First of all, you need some Hadoop running in distributed or pseudo distributed mode. -The easiest way to test it, just install it a CDH3 version of Cloudera Hadoop as it is -described here: https://ccp.cloudera.com/display/CDHDOC/CDH3+Deployment+in+Pseudo-Distributed+Mode - -Invoke the jar, passing the name of the cloud provider you with to access (aws-s3 is currently tested), identity (ex. accesskey, username), credential (ex. secretkey, password), the filename you want to upload from hfds (for example hdfs://localhost:8020/user/yourusername/yourfile), then the name of the container you'd like to create, then the object name and eventually the optional parameters plainhttp or securehttp and a number representing the number of threads. - -Ex. for Amazon S3 - -"plainhttp" "5" are the two optional parameters. Default values are securehttp and 4 threads. - -The hdfs input file size has to be at least 32Mbytes size to be used multipart upload. Below this size it will fall back to simple upload. - -## License - -Copyright (C) 2009-2014 The Apache Software Foundation - -Licensed under the Apache License, Version 2.0 http://git-wip-us.apache.org/repos/asf/jclouds-examples/blob/934cdb08/blobstore-hdfs/pom.xml ---------------------------------------------------------------------- diff --git a/blobstore-hdfs/pom.xml b/blobstore-hdfs/pom.xml deleted file mode 100644 index 85cd2da..0000000 --- a/blobstore-hdfs/pom.xml +++ /dev/null @@ -1,146 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> -<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/xsd/maven-4.0.0.xsd"> - <modelVersion>4.0.0</modelVersion> - <groupId>org.jclouds.examples</groupId> - <artifactId>blobstore-hdfs</artifactId> - <version>1.0.0</version> - <name>blobstore-hdfs</name> - <description>demonstrates how we can build hfds payloads as an extension to the current payloads in blobstore</description> - - <repositories> - <repository> - <id>jboss-public-releases</id> - <url>https://repository.jboss.org/nexus/content/groups/public-jboss</url> - <releases> - <enabled>true</enabled> - </releases> - <snapshots> - <enabled>false</enabled> - </snapshots> - </repository> - <repository> - <id>cloudera-public-releases</id> - <url>https://repository.cloudera.com/content/repositories/releases/</url> - <releases> - <enabled>true</enabled> - </releases> - <snapshots> - <enabled>false</enabled> - </snapshots> - </repository> - </repositories> - - <dependencies> - <dependency> - <groupId>org.jclouds</groupId> - <artifactId>jclouds-blobstore</artifactId> - <version>1.1.0</version> - </dependency> - <dependency> - <groupId>org.jclouds</groupId> - <artifactId>jclouds-allblobstore</artifactId> - <version>1.1.0</version> - </dependency> - <dependency> - <groupId>org.jclouds.driver</groupId> - <artifactId>jclouds-netty</artifactId> - <version>1.1.0</version> - </dependency> - <dependency> - <groupId>org.jboss.netty</groupId> - <artifactId>netty</artifactId> - <version>3.2.4.Final</version> - </dependency> - <dependency> - <groupId>org.jclouds.driver</groupId> - <artifactId>jclouds-apachehc</artifactId> - <version>1.1.0</version> - </dependency> - <dependency> - <groupId>org.jclouds.driver</groupId> - <artifactId>jclouds-slf4j</artifactId> - <version>1.1.0</version> - </dependency> - <dependency> - <groupId>org.jclouds.driver</groupId> - <artifactId>jclouds-log4j</artifactId> - <version>1.1.0</version> - </dependency> - <!-- note that if you want a smaller distribution - remove the above dependency and place something - like below --> - <!-- - <dependency> - <groupId>org.jclouds.provider</groupId> - <artifactId>googlestorage</artifactId> - <version>1.1.0</version> - </dependency> - --> - <dependency> - <groupId>org.apache.hadoop</groupId> - <artifactId>hadoop-core</artifactId> - <version>0.20.2-cdh3u0</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.examples.blobstore.hdfs.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.examples.blobstore.hdfs.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/jclouds-examples/blob/934cdb08/blobstore-hdfs/src/main/java/org/jclouds/examples/blobstore/hdfs/MainApp.java ---------------------------------------------------------------------- diff --git a/blobstore-hdfs/src/main/java/org/jclouds/examples/blobstore/hdfs/MainApp.java b/blobstore-hdfs/src/main/java/org/jclouds/examples/blobstore/hdfs/MainApp.java deleted file mode 100755 index 3ee6bc5..0000000 --- a/blobstore-hdfs/src/main/java/org/jclouds/examples/blobstore/hdfs/MainApp.java +++ /dev/null @@ -1,182 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.examples.blobstore.hdfs; - -import static org.jclouds.Constants.PROPERTY_ENDPOINT; -import static org.jclouds.blobstore.options.PutOptions.Builder.multipart; -import static org.jclouds.location.reference.LocationConstants.ENDPOINT; -import static org.jclouds.location.reference.LocationConstants.PROPERTY_REGION; - -import java.io.IOException; -import java.util.Properties; - -import javax.ws.rs.core.MediaType; - -import org.apache.hadoop.conf.Configuration; -import org.apache.hadoop.conf.Configured; -import org.apache.hadoop.fs.FileSystem; -import org.apache.hadoop.fs.Path; -import org.jclouds.aws.domain.Region; -import org.jclouds.blobstore.BlobStore; -import org.jclouds.blobstore.BlobStoreContext; -import org.jclouds.blobstore.BlobStoreContextFactory; -import org.jclouds.blobstore.domain.Blob; -import org.jclouds.blobstore.util.BlobStoreUtils; -import org.jclouds.examples.blobstore.hdfs.config.HdfsModule; -import org.jclouds.examples.blobstore.hdfs.io.payloads.HdfsPayload; -import org.jclouds.http.config.JavaUrlHttpCommandExecutorServiceModule; -import org.jclouds.logging.log4j.config.Log4JLoggingModule; - -import com.google.common.collect.ImmutableSet; -import com.google.common.collect.Iterables; -import com.google.inject.Module; - -/** - * Demonstrates the use of {@link BlobStore} to upload from HDFS to a blob container - * - * Usage is: java MainApp \"provider\" \"identity\" \"credential\" \"hdfsUrl\" - * \"containerName\" \"objectName\" plainhttp threadcount - * - * \"plainhttp\" and \"threadcound\" is optional if all the rest of parameters are omitted - */ -public class MainApp extends Configured { - - public static int PARAMETERS = 6; - public static String INVALID_SYNTAX = "Invalid number of parameters. Syntax is: \"provider\" \"identity\" \"credential\" \"localFileName\" \"containerName\" \"objectName\" plainhttp threadcount"; - - public final static Properties PLAIN_HTTP_ENDPOINTS = new Properties(); - - static { - PLAIN_HTTP_ENDPOINTS.setProperty(PROPERTY_ENDPOINT, "http://s3.amazonaws.com"); - PLAIN_HTTP_ENDPOINTS.setProperty(PROPERTY_REGION + "." + Region.US_STANDARD + "." + ENDPOINT, - "http://s3.amazonaws.com"); - PLAIN_HTTP_ENDPOINTS.setProperty(PROPERTY_REGION + "." + Region.US_WEST_1 + "." + ENDPOINT, - "http://s3-us-west-1.amazonaws.com"); - PLAIN_HTTP_ENDPOINTS.setProperty(PROPERTY_REGION + "." + "EU" + "." + ENDPOINT, - "http://s3-eu-west-1.amazonaws.com"); - PLAIN_HTTP_ENDPOINTS.setProperty(PROPERTY_REGION + "." + Region.AP_SOUTHEAST_1 + "." + ENDPOINT, - "http://s3-ap-southeast-1.amazonaws.com"); - } - - final static Iterable<? extends Module> HDFS_MODULES = - ImmutableSet.of(new JavaUrlHttpCommandExecutorServiceModule(), new Log4JLoggingModule(), new HdfsModule()); - - static String getSpeed(long speed) { - if (speed < 1024) { - return "" + speed + " bytes/s"; - } else if (speed < 1048576) { - return "" + (speed / 1024) + " kbytes/s"; - } else { - return "" + (speed / 1048576) + " Mbytes/s"; - } - } - - static void printSpeed(String message, long start, long length) { - long sec = (System.currentTimeMillis() - start) / 1000; - if (sec == 0) - return; - long speed = length / sec; - System.out.print(message); - if (speed < 1024) { - System.out.print(" " + length + " bytes"); - } else if (speed < 1048576) { - System.out.print(" " + (length / 1024) + " kB"); - } else if (speed < 1073741824) { - System.out.print(" " + (length / 1048576) + " MB"); - } else { - System.out.print(" " + (length / 1073741824) + " GB"); - } - System.out.println(" with " + getSpeed(speed) + " (" + length + " bytes)"); - } - - - /** - * @param provider - * @param identity - * @param credential - * @param hdfsUrl - * @param containerName - * @param objectName - * @param plainhttp - * @param threadcount - * @throws IOException - */ - private void upload(String provider, String identity, - String credential, String hdfsUrl, String containerName, - String objectName, boolean plainhttp, String threadcount) - throws IOException { - // Init - Properties overrides = new Properties(); - if (plainhttp) - overrides.putAll(PLAIN_HTTP_ENDPOINTS); // default is https - if (threadcount != null) - overrides.setProperty("jclouds.mpu.parallel.degree", threadcount); // without setting, - // default is 4 threads - overrides.setProperty(provider + ".identity", identity); - overrides.setProperty(provider + ".credential", credential); - BlobStoreContext context = new BlobStoreContextFactory().createContext(provider, HDFS_MODULES, overrides); - - try { - long start = System.currentTimeMillis(); - Configuration conf = getConf(); - if (conf == null) { - conf = new Configuration(); - setConf(conf); - } - // Create Container - BlobStore blobStore = context.getBlobStore(); // it can be changed to sync - // BlobStore - blobStore.createContainerInLocation(null, containerName); - Blob blob = blobStore.blobBuilder(objectName).payload( - new HdfsPayload(new Path(hdfsUrl), conf)) - .contentType(MediaType.APPLICATION_OCTET_STREAM) - .contentDisposition(objectName).build(); - long length = blob.getPayload().getContentMetadata().getContentLength(); - blobStore.putBlob(containerName, blob, multipart()); - - printSpeed("Sucessfully uploaded", start, length); - - } finally { - // Close connection - context.close(); - } - } - - public static void main(String[] args) throws IOException { - - if (args.length < PARAMETERS) - throw new IllegalArgumentException(INVALID_SYNTAX); - - // Args - String provider = args[0]; - if (!Iterables.contains(BlobStoreUtils.getSupportedProviders(), provider)) - throw new IllegalArgumentException("provider " + provider + " not in supported list: " - + BlobStoreUtils.getSupportedProviders()); - String identity = args[1]; - String credential = args[2]; - String hdfsUrl = args[3]; - String containerName = args[4]; - String objectName = args[5]; - boolean plainhttp = args.length >= 7 && "plainhttp".equals(args[6]); - String threadcount = args.length >= 8 ? args[7] : null; - - MainApp app = new MainApp(); - app.upload(provider, identity, credential, hdfsUrl, containerName, - objectName, plainhttp, threadcount); - System.exit(0); - } -} http://git-wip-us.apache.org/repos/asf/jclouds-examples/blob/934cdb08/blobstore-hdfs/src/main/java/org/jclouds/examples/blobstore/hdfs/config/HdfsModule.java ---------------------------------------------------------------------- diff --git a/blobstore-hdfs/src/main/java/org/jclouds/examples/blobstore/hdfs/config/HdfsModule.java b/blobstore-hdfs/src/main/java/org/jclouds/examples/blobstore/hdfs/config/HdfsModule.java deleted file mode 100644 index c356dfe..0000000 --- a/blobstore-hdfs/src/main/java/org/jclouds/examples/blobstore/hdfs/config/HdfsModule.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.examples.blobstore.hdfs.config; - -import org.jclouds.io.PayloadSlicer; - -import com.google.inject.AbstractModule; -import org.jclouds.examples.blobstore.hdfs.io.HdfsPayloadSlicer; - -public class HdfsModule extends AbstractModule { - - @Override - protected void configure() { - bind(PayloadSlicer.class).to(HdfsPayloadSlicer.class); - } - -} http://git-wip-us.apache.org/repos/asf/jclouds-examples/blob/934cdb08/blobstore-hdfs/src/main/java/org/jclouds/examples/blobstore/hdfs/io/HdfsPayloadSlicer.java ---------------------------------------------------------------------- diff --git a/blobstore-hdfs/src/main/java/org/jclouds/examples/blobstore/hdfs/io/HdfsPayloadSlicer.java b/blobstore-hdfs/src/main/java/org/jclouds/examples/blobstore/hdfs/io/HdfsPayloadSlicer.java deleted file mode 100644 index f2ddc68..0000000 --- a/blobstore-hdfs/src/main/java/org/jclouds/examples/blobstore/hdfs/io/HdfsPayloadSlicer.java +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.examples.blobstore.hdfs.io; - -import static com.google.common.base.Preconditions.checkArgument; -import static com.google.common.base.Preconditions.checkNotNull; - -import java.io.IOException; -import java.io.InputStream; - -import javax.inject.Singleton; - -import org.apache.hadoop.fs.FSDataInputStream; -import org.jclouds.examples.blobstore.hdfs.io.payloads.HdfsPayload; -import org.jclouds.io.Payload; -import org.jclouds.io.internal.BasePayloadSlicer; -import org.jclouds.io.payloads.InputStreamSupplierPayload; - -import com.google.common.io.Closeables; -import com.google.common.io.InputSupplier; -import com.google.common.io.LimitInputStream; - -@Singleton -public class HdfsPayloadSlicer extends BasePayloadSlicer { - - @Override - public Payload slice(Payload input, long offset, long length) { - checkNotNull(input); - checkArgument(offset >= 0, "offset is negative"); - checkArgument(length >= 0, "length is negative"); - Payload returnVal; - if (input instanceof HdfsPayload) { - returnVal = doSlice( - (FSDataInputStream) ((HdfsPayload) input).getInput(), offset, - length); - return copyMetadataAndSetLength(input, returnVal, length); - } else { - return super.slice(input, offset, length); - } - } - - protected Payload doSlice(final FSDataInputStream inputStream, - final long offset, final long length) { - return new InputStreamSupplierPayload(new InputSupplier<InputStream>() { - public InputStream getInput() throws IOException { - if (offset > 0) { - try { - inputStream.seek(offset); - } catch (IOException e) { - Closeables.closeQuietly(inputStream); - throw e; - } - } - return new LimitInputStream(inputStream, length); - } - }); - } -} http://git-wip-us.apache.org/repos/asf/jclouds-examples/blob/934cdb08/blobstore-hdfs/src/main/java/org/jclouds/examples/blobstore/hdfs/io/payloads/HdfsPayload.java ---------------------------------------------------------------------- diff --git a/blobstore-hdfs/src/main/java/org/jclouds/examples/blobstore/hdfs/io/payloads/HdfsPayload.java b/blobstore-hdfs/src/main/java/org/jclouds/examples/blobstore/hdfs/io/payloads/HdfsPayload.java deleted file mode 100644 index adbb0fa..0000000 --- a/blobstore-hdfs/src/main/java/org/jclouds/examples/blobstore/hdfs/io/payloads/HdfsPayload.java +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.examples.blobstore.hdfs.io.payloads; - -import java.io.IOException; -import java.io.InputStream; - -import org.apache.hadoop.conf.Configuration; -import org.apache.hadoop.fs.FileSystem; -import org.apache.hadoop.fs.Path; -import org.jclouds.io.payloads.BasePayload; - -import com.google.common.base.Throwables; - -public class HdfsPayload extends BasePayload<Path> { - - private Configuration configuration; - - public HdfsPayload(final Path content, final Configuration configuration) - throws IOException { - this(content, configuration, content.getFileSystem(configuration) - .getFileStatus(content).getLen()); - } - - public HdfsPayload(final Path content, final Configuration configuration, - final long length) throws IOException { - super(content); - this.configuration = configuration; - getContentMetadata().setContentLength(length); - } - - public InputStream getInput() { - try { - return content.getFileSystem(configuration).open(content); - } catch (IOException e) { - Throwables.propagate(e); - return null; - } - } - - public FileSystem getFileSystem() throws IOException { - return content.getFileSystem(configuration); - } - - public Configuration getConfiguration() { - return configuration; - } -} http://git-wip-us.apache.org/repos/asf/jclouds-examples/blob/934cdb08/blobstore-hdfs/src/main/resources/log4j.xml ---------------------------------------------------------------------- diff --git a/blobstore-hdfs/src/main/resources/log4j.xml b/blobstore-hdfs/src/main/resources/log4j.xml deleted file mode 100644 index 9db501e..0000000 --- a/blobstore-hdfs/src/main/resources/log4j.xml +++ /dev/null @@ -1,162 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> -<!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="HTTPWIREFILE" class="org.apache.log4j.DailyRollingFileAppender"> - <param name="File" value="target/test-data/http-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\n --> - <param name="ConversionPattern" value="%d %-5p [%c] (%t) %m%n" /> - - <!-- - The full pattern: Date MS Priority [Category] - (Thread:NDC) Message\n <param name="ConversionPattern" - value="%d %-5r %-5p [%c] (%t:%x) %m%n"/> - --> - </layout> - </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\n --> - <param name="ConversionPattern" value="%d %-5p [%c] (%t) %m%n" /> - - <!-- - The full pattern: Date MS Priority [Category] - (Thread:NDC) Message\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\n --> - <param name="ConversionPattern" value="%d %-5p [%c] (%t) %m%n" /> - - <!-- - The full pattern: Date MS Priority [Category] - (Thread:NDC) Message\n <param name="ConversionPattern" - value="%d %-5r %-5p [%c] (%t:%x) %m%n"/> - --> - </layout> - </appender> - <!-- A time/date based rolling appender --> - <appender name="BLOBSTOREFILE" class="org.apache.log4j.DailyRollingFileAppender"> - <param name="File" value="target/test-data/jclouds-blobstore.log" /> - <param name="Append" value="true" /> - <param name="DatePattern" value="'.'yyyy-MM-dd" /> - <param name="Threshold" value="TRACE" /> - <layout class="org.apache.log4j.PatternLayout"> - <param name="ConversionPattern" value="%d %-5p [%c] (%t) %m%n" /> - </layout> - </appender> - - <appender name="ASYNC" class="org.apache.log4j.AsyncAppender"> - <appender-ref ref="FILE" /> - </appender> - - <appender name="ASYNCHTTPWIRE" class="org.apache.log4j.AsyncAppender"> - <appender-ref ref="HTTPWIREFILE" /> - </appender> - - <appender name="ASYNCWIRE" class="org.apache.log4j.AsyncAppender"> - <appender-ref ref="WIREFILE" /> - </appender> - - <appender name="ASYNCBLOBSTORE" class="org.apache.log4j.AsyncAppender"> - <appender-ref ref="BLOBSTOREFILE" /> - </appender> - <!-- ================ --> - <!-- Limit categories --> - <!-- ================ --> - - <category name="org.jclouds"> - <priority value="DEBUG" /> - <appender-ref ref="ASYNC" /> - </category> - - <category name="org.apache.http"> - <priority value="DEBUG" /> - <appender-ref ref="ASYNCHTTPWIRE" /> - </category> - <category name="org.apache.http.wire"> - <priority value="ERROR" /> - <appender-ref ref="ASYNCHTTPWIRE" /> - </category> - <category name="com.ning.http"> - <priority value="DEBUG" /> - <appender-ref ref="ASYNCHTTPWIRE" /> - </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.blobstore"> - <priority value="DEBUG" /> - <appender-ref ref="ASYNCBLOBSTORE" /> - </category> - <!-- ======================= --> - <!-- Setup the Root category --> - <!-- ======================= --> - - <root> - <priority value="WARN" /> - </root> - -</log4j:configuration> http://git-wip-us.apache.org/repos/asf/jclouds-examples/blob/934cdb08/blobstore-karaf-shell/README.md ---------------------------------------------------------------------- diff --git a/blobstore-karaf-shell/README.md b/blobstore-karaf-shell/README.md deleted file mode 100644 index c2dc989..0000000 --- a/blobstore-karaf-shell/README.md +++ /dev/null @@ -1,37 +0,0 @@ -# blobstore-karaf-shell - -This is a simple examples that demonstrates the using a [BlobStore](http://jclouds.apache.org/start/blobstore/) provider from within [Apache Karaf](http://karaf.apache.org/) Runtime. - -This example adds two osgi shell commands, that read and write to a blobstore. The context of the blobstore can be configured via OSGi Configuration Admin, which allows the switching blobstore contexts (providers, keys etc) "on the fly". -## Build - -The sample builds with maven 2.2.1 or higher (however its tested with 3.0.3). Execute 'mvn install' to build the example. - -## Run -From within Apache Karaf (2.2.0 or higher) type: -karaf@root>osgi:install -s mvn:org.jclouds.examples/blobstore-karaf-shell/1.0-SNAPSHOT - -Once the sample is install, create a new configuration named "org.jclouds.blobstore" and add the provider,the access key id and the secret key. - -karaf@root>config:edit org.jclouds.blobstore - -karaf@root>config:propset provider aws-s3 - -karaf@root>config:propset accessKeyId XXXXXX - -karaf@root>config:propset secretKey XXXXXX - -karaf@root>config:update - -An alternative is to create a cfg file with the key values listed above and throw it under karaf/etc. - -Now you can use the shell commands, for example: -karaf@root>jclouds:blobstore-write mybucket myblob JCloudsRocks! -karaf@root>jclouds:blobstore-read mybucket myblob -JCloudsRocks! - -## License - -Copyright (C) 2009-2014 The Apache Software Foundation - -Licensed under the Apache License, Version 2.0 http://git-wip-us.apache.org/repos/asf/jclouds-examples/blob/934cdb08/blobstore-karaf-shell/pom.xml ---------------------------------------------------------------------- diff --git a/blobstore-karaf-shell/pom.xml b/blobstore-karaf-shell/pom.xml deleted file mode 100644 index 6240132..0000000 --- a/blobstore-karaf-shell/pom.xml +++ /dev/null @@ -1,114 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> -<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/xsd/maven-4.0.0.xsd"> - <modelVersion>4.0.0</modelVersion> - - <groupId>org.jclouds.examples</groupId> - <artifactId>blobstore-karaf-shell</artifactId> - <version>1.0-SNAPSHOT</version> - <name>blobstore-karaf-shell</name> - <packaging>bundle</packaging> - <description>jclouds karaf example that uses a blobstore from the karaf shell</description> - - <properties> - <osgi.import> - !org.jclouds.examples*, - org.apache.felix.gogo*;version="[0.5,1)", - org.apache.karaf*;version="[2.1,4)", - org.jclouds*;version="[1.0,2)", - * - </osgi.import> - <osgi.export>org.jclouds.examples*</osgi.export> - </properties> - - <build> - <plugins> - <plugin> - <groupId>org.apache.felix</groupId> - <artifactId>maven-bundle-plugin</artifactId> - <version>2.3.4</version> - <extensions>true</extensions> - <inherited>true</inherited> - <configuration> - <instructions> - <Bundle-Name>${project.name}</Bundle-Name> - <Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName> - <Export-Package>${osgi.export}</Export-Package> - <Import-Package>${osgi.import}</Import-Package> - <DynamicImport-Package>${osgi.dynamic.import}</DynamicImport-Package> - <Private-Package>${osgi.private}</Private-Package> - <Require-Bundle>${osgi.bundles}</Require-Bundle> - <Bundle-Activator>${osgi.activator}</Bundle-Activator> - </instructions> - <supportedProjectTypes> - <supportedProjectType>jar</supportedProjectType> - <supportedProjectType>war</supportedProjectType> - <supportedProjectType>bundle</supportedProjectType> - </supportedProjectTypes> - <unpackBundle>true</unpackBundle> - </configuration> - <executions> - <execution> - <id>bundle-manifest</id> - <phase>process-classes</phase> - <goals> - <goal>manifest</goal> - </goals> - </execution> - </executions> - </plugin> - </plugins> - </build> - - <dependencies> - <!-- OSGi Dependencies --> - <dependency> - <groupId>org.osgi</groupId> - <artifactId>org.osgi.core</artifactId> - <version>4.2.0</version> - </dependency> - <dependency> - <groupId>org.osgi</groupId> - <artifactId>org.osgi.compendium</artifactId> - <version>4.2.0</version> - </dependency> - - <!-- Karaf Dependencies --> - <dependency> - <groupId>org.apache.karaf.shell</groupId> - <artifactId>org.apache.karaf.shell.console</artifactId> - <version>2.2.5</version> - </dependency> - - <dependency> - <groupId>org.jclouds</groupId> - <artifactId>jclouds-blobstore</artifactId> - <version>1.5.0-alpha.6</version> - </dependency> - <dependency> - <groupId>org.jclouds</groupId> - <artifactId>jclouds-allblobstore</artifactId> - <version>1.5.0-alpha.6</version> - </dependency> - </dependencies> - -</project> http://git-wip-us.apache.org/repos/asf/jclouds-examples/blob/934cdb08/blobstore-karaf-shell/src/main/java/org/jclouds/examples/blobstore/osgi/BlobStoreService.java ---------------------------------------------------------------------- diff --git a/blobstore-karaf-shell/src/main/java/org/jclouds/examples/blobstore/osgi/BlobStoreService.java b/blobstore-karaf-shell/src/main/java/org/jclouds/examples/blobstore/osgi/BlobStoreService.java deleted file mode 100644 index 76511aa..0000000 --- a/blobstore-karaf-shell/src/main/java/org/jclouds/examples/blobstore/osgi/BlobStoreService.java +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.examples.blobstore.osgi; - -import java.io.IOException; - -public interface BlobStoreService { - - /** - * Reads an Object from the Blob Store. - * @param bucket - * @param blobName - * @return - */ - Object read(String bucket, String blobName); - - /** - * Writes an {@link Object} to the Blob Store. - * @param bucket - * @param blobName - * @param object - */ - void write(String bucket, String blobName, Object object) throws IOException; - -} http://git-wip-us.apache.org/repos/asf/jclouds-examples/blob/934cdb08/blobstore-karaf-shell/src/main/java/org/jclouds/examples/blobstore/osgi/BlobStoreServiceImpl.java ---------------------------------------------------------------------- diff --git a/blobstore-karaf-shell/src/main/java/org/jclouds/examples/blobstore/osgi/BlobStoreServiceImpl.java b/blobstore-karaf-shell/src/main/java/org/jclouds/examples/blobstore/osgi/BlobStoreServiceImpl.java deleted file mode 100644 index ad69d64..0000000 --- a/blobstore-karaf-shell/src/main/java/org/jclouds/examples/blobstore/osgi/BlobStoreServiceImpl.java +++ /dev/null @@ -1,144 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.examples.blobstore.osgi; - -import org.jclouds.blobstore.BlobStore; -import org.jclouds.blobstore.BlobStoreContext; -import org.jclouds.blobstore.BlobStoreContextFactory; -import org.jclouds.blobstore.domain.Blob; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.ObjectInputStream; -import java.io.ObjectOutputStream; - - -public class BlobStoreServiceImpl implements BlobStoreService { - - private static final Logger logger = LoggerFactory.getLogger(BlobStoreServiceImpl.class); - - private String accessKeyId; - private String secretKey; - private String provider; - - private BlobStoreContext context; - - /** - * Constructor - */ - public BlobStoreServiceImpl() { - - } - - public Object read(String bucket, String blobName) { - Object result = null; - ObjectInputStream ois = null; - context = new BlobStoreContextFactory().createContext(provider, accessKeyId, secretKey); - if (context != null) { - BlobStore blobStore = context.getBlobStore(); - blobStore.createContainerInLocation(null, bucket); - - InputStream is = blobStore.getBlob(bucket, blobName).getPayload().getInput(); - - try { - ois = new ObjectInputStream(is); - result = ois.readObject(); - } catch (IOException e) { - e.printStackTrace(); - } catch (ClassNotFoundException e) { - e.printStackTrace(); - } finally { - if (ois != null) { - try { - ois.close(); - } catch (IOException e) { - } - } - - if (is != null) { - try { - is.close(); - } catch (IOException e) { - } - } - } - } else logger.warn("Blob store context is null."); - return result; - } - - - public void write(String bucket, String blobName, Object object) { - context = new BlobStoreContextFactory().createContext(provider, accessKeyId, secretKey); - if (context != null) { - BlobStore blobStore = context.getBlobStore(); - Blob blob = blobStore.blobBuilder(blobName).build(); - - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - ObjectOutputStream oos = null; - - try { - oos = new ObjectOutputStream(baos); - oos.writeObject(object); - blob.setPayload(baos.toByteArray()); - blobStore.putBlob(bucket, blob); - } catch (IOException e) { - logger.error("Error while writing blob", e); - } finally { - if (oos != null) { - try { - oos.close(); - } catch (IOException e) { - } - } - - if (baos != null) { - try { - baos.close(); - } catch (IOException e) { - } - } - } - } else logger.warn("Blob store context is null."); - } - - public String getSecretKey() { - return secretKey; - } - - public void setSecretKey(String secretKey) { - this.secretKey = secretKey; - } - - public String getAccessKeyId() { - return accessKeyId; - } - - public void setAccessKeyId(String accessKeyId) { - this.accessKeyId = accessKeyId; - } - - public String getProvider() { - return provider; - } - - public void setProvider(String provider) { - this.provider = provider; - } -} http://git-wip-us.apache.org/repos/asf/jclouds-examples/blob/934cdb08/blobstore-karaf-shell/src/main/java/org/jclouds/examples/blobstore/osgi/shell/BlobStoreCommandSupport.java ---------------------------------------------------------------------- diff --git a/blobstore-karaf-shell/src/main/java/org/jclouds/examples/blobstore/osgi/shell/BlobStoreCommandSupport.java b/blobstore-karaf-shell/src/main/java/org/jclouds/examples/blobstore/osgi/shell/BlobStoreCommandSupport.java deleted file mode 100644 index c7a95a5..0000000 --- a/blobstore-karaf-shell/src/main/java/org/jclouds/examples/blobstore/osgi/shell/BlobStoreCommandSupport.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.examples.blobstore.osgi.shell; - -import org.apache.karaf.shell.console.OsgiCommandSupport; -import org.jclouds.examples.blobstore.osgi.BlobStoreService; - -public abstract class BlobStoreCommandSupport extends OsgiCommandSupport { - - protected BlobStoreService blobStoreService; - - public BlobStoreService getBlobStoreService() { - return blobStoreService; - } - - public void setBlobStoreService(BlobStoreService service) { - this.blobStoreService = service; - } -} http://git-wip-us.apache.org/repos/asf/jclouds-examples/blob/934cdb08/blobstore-karaf-shell/src/main/java/org/jclouds/examples/blobstore/osgi/shell/ReadCommand.java ---------------------------------------------------------------------- diff --git a/blobstore-karaf-shell/src/main/java/org/jclouds/examples/blobstore/osgi/shell/ReadCommand.java b/blobstore-karaf-shell/src/main/java/org/jclouds/examples/blobstore/osgi/shell/ReadCommand.java deleted file mode 100644 index 95ad449..0000000 --- a/blobstore-karaf-shell/src/main/java/org/jclouds/examples/blobstore/osgi/shell/ReadCommand.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.examples.blobstore.osgi.shell; - -import org.apache.felix.gogo.commands.Argument; -import org.apache.felix.gogo.commands.Command; - -@Command(scope = "jclouds", name = "blobstore-read", description = "Reads data from the blobstore") -public class ReadCommand extends BlobStoreCommandSupport { - - @Argument(index = 0, name = "bucketName", description = "The name of the bucket", required = true, multiValued = false) - String bucketName; - - @Argument(index = 1, name = "blobName", description = "The name of the blob", required = true, multiValued = false) - String blobName; - - @Override - protected Object doExecute() throws Exception { - if(blobStoreService != null) { - Object payload = blobStoreService.read(bucketName, blobName); - System.out.printf("%s\n", payload); - } else { - System.err.println("No blob store service configured."); - } - return null; - } -} http://git-wip-us.apache.org/repos/asf/jclouds-examples/blob/934cdb08/blobstore-karaf-shell/src/main/java/org/jclouds/examples/blobstore/osgi/shell/WriteCommand.java ---------------------------------------------------------------------- diff --git a/blobstore-karaf-shell/src/main/java/org/jclouds/examples/blobstore/osgi/shell/WriteCommand.java b/blobstore-karaf-shell/src/main/java/org/jclouds/examples/blobstore/osgi/shell/WriteCommand.java deleted file mode 100644 index de12108..0000000 --- a/blobstore-karaf-shell/src/main/java/org/jclouds/examples/blobstore/osgi/shell/WriteCommand.java +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.examples.blobstore.osgi.shell; - -import org.apache.felix.gogo.commands.Argument; -import org.apache.felix.gogo.commands.Command; - -@Command(scope = "jclouds", name = "blobstore-write", description = "Writes data from the blobstore") -public class WriteCommand extends BlobStoreCommandSupport { - - @Argument(index = 0, name = "bucketName", description = "The name of the bucket", required = true, multiValued = false) - String bucketName; - - @Argument(index = 1, name = "blobName", description = "The name of the blob", required = true, multiValued = false) - String blobName; - - @Argument(index = 2, name = "payload", description = "The payload", required = true, multiValued = false) - String payload; - - - @Override - protected Object doExecute() throws Exception { - if(blobStoreService != null) { - blobStoreService.write(bucketName,blobName,payload); - } else { - System.err.println("No blob store service configured."); - } - return null; - } -} http://git-wip-us.apache.org/repos/asf/jclouds-examples/blob/934cdb08/blobstore-karaf-shell/src/main/resources/OSGI-INF/blueprint/blueprint.xml ---------------------------------------------------------------------- diff --git a/blobstore-karaf-shell/src/main/resources/OSGI-INF/blueprint/blueprint.xml b/blobstore-karaf-shell/src/main/resources/OSGI-INF/blueprint/blueprint.xml deleted file mode 100644 index 8d6519c..0000000 --- a/blobstore-karaf-shell/src/main/resources/OSGI-INF/blueprint/blueprint.xml +++ /dev/null @@ -1,46 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> -<blueprint - xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0" - xmlns:cm="http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.0.0" - xmlns:ext="http://aries.apache.org/blueprint/xmlns/blueprint-ext/v1.0.0" - default-activation="lazy"> - - <!-- Command Bundle --> - <command-bundle xmlns="http://karaf.apache.org/xmlns/shell/v1.0.0"> - <command name="jclouds/blobstore-write"> - <action class="org.jclouds.examples.blobstore.osgi.shell.WriteCommand"> - <property name="blobStoreService" ref="blobStoreServiceImpl"/> - </action> - </command> - - <command name="jclouds/blobstore-read"> - <action class="org.jclouds.examples.blobstore.osgi.shell.ReadCommand"> - <property name="blobStoreService" ref="blobStoreServiceImpl"/> - </action> - </command> - </command-bundle> - - <bean id="blobStoreServiceImpl" class="org.jclouds.examples.blobstore.osgi.BlobStoreServiceImpl"> - <cm:managed-properties persistent-id="org.jclouds.blobstore" update-method="createOrUpdate" - update-strategy="container-managed"/> - </bean> - -</blueprint> http://git-wip-us.apache.org/repos/asf/jclouds-examples/blob/934cdb08/blobstore-largeblob/pom.xml ---------------------------------------------------------------------- diff --git a/blobstore-largeblob/pom.xml b/blobstore-largeblob/pom.xml index eef23e8..068f584 100644 --- a/blobstore-largeblob/pom.xml +++ b/blobstore-largeblob/pom.xml @@ -22,12 +22,12 @@ <modelVersion>4.0.0</modelVersion> <groupId>org.apache.jclouds.examples</groupId> <artifactId>blobstore-largeblob</artifactId> - <version>1.8.0</version> + <version>2.1.0</version> <name>blobstore-largeblob</name> <description>jclouds blobstore example that creates a container, then uploads a large file using parallel multipart upload</description> <properties> - <jclouds.version>1.9.0</jclouds.version> + <jclouds.version>2.1.0</jclouds.version> </properties> <dependencies> http://git-wip-us.apache.org/repos/asf/jclouds-examples/blob/934cdb08/blobstore-scala-filesystem/README.md ---------------------------------------------------------------------- diff --git a/blobstore-scala-filesystem/README.md b/blobstore-scala-filesystem/README.md deleted file mode 100644 index 25b34e1..0000000 --- a/blobstore-scala-filesystem/README.md +++ /dev/null @@ -1,24 +0,0 @@ -# blobstore-scala-filesystem - -This is a simple example command line client that creates a container and test blob in a filesystem [BlobStore](http://jclouds.apache.org/start/blobstore/) using Scala. This example uses [scala-arm](https://github.com/jsuereth/scala-arm) to manage the [BlobStoreContext](http://javadocs.jclouds.cloudbees.net/org/jclouds/blobstore/BlobStoreContext.html) - -## Build - -Ensure that [sbt is installed](http://www.scala-sbt.org/release/docs/Getting-Started/Setup.html). Tested with 0.12.2 - -## Run - -Run `sbt` from the root of your project and invoke -``` -run <basedir> <containername> <blobname> -``` -where <em>basedir</em> is a directory in which the container will be created. E.g. if your basedir is `/home/blobstore` and you want to store _myblob_ in _mycontainer_, run -``` -run /home/blobstore mycontainer myblob -``` - -## License - -Copyright (C) 2009-2014 The Apache Software Foundation - -Licensed under the Apache License, Version 2.0 http://git-wip-us.apache.org/repos/asf/jclouds-examples/blob/934cdb08/blobstore-scala-filesystem/build.sbt ---------------------------------------------------------------------- diff --git a/blobstore-scala-filesystem/build.sbt b/blobstore-scala-filesystem/build.sbt deleted file mode 100644 index c5a5c9f..0000000 --- a/blobstore-scala-filesystem/build.sbt +++ /dev/null @@ -1,25 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -name := "blobstore-scala-filesystem" - -scalaVersion := "2.10.2" - -version := "1.0-SNAPSHOT" - -libraryDependencies ++= Seq( "org.apache.jclouds.api" % "filesystem" % "1.6.1-incubating", - "com.google.code.findbugs" % "jsr305" % "1.3.+", - "com.jsuereth" %% "scala-arm" % "1.3" - ) http://git-wip-us.apache.org/repos/asf/jclouds-examples/blob/934cdb08/blobstore-scala-filesystem/src/main/scala/Main.scala ---------------------------------------------------------------------- diff --git a/blobstore-scala-filesystem/src/main/scala/Main.scala b/blobstore-scala-filesystem/src/main/scala/Main.scala deleted file mode 100644 index d8222fb..0000000 --- a/blobstore-scala-filesystem/src/main/scala/Main.scala +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -import org.jclouds.blobstore.BlobStoreContext -import org.jclouds.ContextBuilder -import org.jclouds.filesystem.reference.FilesystemConstants -import resource._ - -/** - * Demonstrates the use of the filesystem [[org.jclouds.blobstore.BlobStore]] in Scala - * - * Usage is: run <basedir> <containername> <blobname> - * - * @author adisesha - */ -object Main extends App { - require(args.length == 3, "Invalid number of parameters. Usage: run <basedir> <containername> <blobname>") - - val basedir = args(0) - val containerName = args(1) - val blobname = args(2) - - val properties = new java.util.Properties() - properties.setProperty(FilesystemConstants.PROPERTY_BASEDIR, basedir) - - //Using scala-arm for context management. See https://github.com/jsuereth/scala-arm - managed(ContextBuilder.newBuilder("filesystem") - .overrides(properties) - .buildView(classOf[BlobStoreContext])) - .acquireAndGet(context => { - - val blobStore = context.getBlobStore - blobStore.createContainerInLocation(null, containerName) - - val blob = blobStore.blobBuilder(blobname).payload("testdata").build() - blobStore.putBlob(containerName, blob) - - val filePath = basedir + System.getProperty("file.separator") + containerName - println(s"Blob '$blobname' stored under '$filePath'") - }) -} http://git-wip-us.apache.org/repos/asf/jclouds-examples/blob/934cdb08/blobstore-uploader/dependency-reduced-pom.xml ---------------------------------------------------------------------- diff --git a/blobstore-uploader/dependency-reduced-pom.xml b/blobstore-uploader/dependency-reduced-pom.xml index 2b3c3c6..2a895db 100644 --- a/blobstore-uploader/dependency-reduced-pom.xml +++ b/blobstore-uploader/dependency-reduced-pom.xml @@ -1,55 +1,37 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> -<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> - <groupId>blobstore-uploader</groupId> - <artifactId>blob-uploader</artifactId> - <version>1.0-SNAPSHOT</version> - <build> - <plugins> - <plugin> - <artifactId>maven-shade-plugin</artifactId> - <executions> - <execution> - <phase>package</phase> - <goals> - <goal>shade</goal> - </goals> - <configuration> - <finalname>blobstore-uploader</finalname> - <transformers> - <transformer> - <manifestEntries> - <Main-Class>org.jclouds.examples.blobstore.BlobUploaderMain</Main-Class> - <build-number>1</build-number> - </manifestEntries> - </transformer> - </transformers> - </configuration> - </execution> - </executions> - </plugin> - </plugins> - </build> - <properties> - <jclouds.version>1.8.1</jclouds.version> - </properties> -</project> - +<?xml version="1.0" encoding="UTF-8"?> +<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> + <groupId>blobstore-uploader</groupId> + <artifactId>blob-uploader</artifactId> + <version>2.1.0</version> + <build> + <plugins> + <plugin> + <artifactId>maven-shade-plugin</artifactId> + <executions> + <execution> + <phase>package</phase> + <goals> + <goal>shade</goal> + </goals> + <configuration> + <finalname>blobstore-uploader</finalname> + <transformers> + <transformer> + <manifestEntries> + <Main-Class>org.jclouds.examples.blobstore.BlobUploaderMain</Main-Class> + <build-number>1</build-number> + </manifestEntries> + </transformer> + </transformers> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> + <properties> + <jclouds.version>2.1.0</jclouds.version> + </properties> +</project> + http://git-wip-us.apache.org/repos/asf/jclouds-examples/blob/934cdb08/blobstore-uploader/pom.xml ---------------------------------------------------------------------- diff --git a/blobstore-uploader/pom.xml b/blobstore-uploader/pom.xml index d750210..57f7014 100644 --- a/blobstore-uploader/pom.xml +++ b/blobstore-uploader/pom.xml @@ -24,11 +24,10 @@ <groupId>blobstore-uploader</groupId> <artifactId>blob-uploader</artifactId> - <version>1.0-SNAPSHOT</version> - + <version>2.1.0</version> <properties> - <jclouds.version>1.9.2</jclouds.version> + <jclouds.version>2.1.0</jclouds.version> </properties> <dependencies> http://git-wip-us.apache.org/repos/asf/jclouds-examples/blob/934cdb08/camel-notifications/Readme.txt ---------------------------------------------------------------------- diff --git a/camel-notifications/Readme.txt b/camel-notifications/Readme.txt deleted file mode 100644 index 9eeefee..0000000 --- a/camel-notifications/Readme.txt +++ /dev/null @@ -1,23 +0,0 @@ -# Camel Notifier - -This simple examples demonstrates using Apache Camel with jclouds. -It starts a camel route which polls the cloud provider for running nodes. -If the clouds provider gives a possitive response it sends an email to the user notifying him, that there are nodes running. - -# Setup -The following properties need to be added the maven profile or to the project pom: - -jclouds.provider (ex. aws-ec2, hpcloud-compute, bluelock-vcloud-zone01) -jclouds.identity (ex. accesskey, tenant:accesskey, user@org) -jclouds.credential (ex. secretkey, password) - -smtp.username -smtp.password -smtp.server - -email.from (your email address) -email.to (who this is being sent to) - -# Running the sample - -from the command line just type: mvn camel:run http://git-wip-us.apache.org/repos/asf/jclouds-examples/blob/934cdb08/camel-notifications/pom.xml ---------------------------------------------------------------------- diff --git a/camel-notifications/pom.xml b/camel-notifications/pom.xml deleted file mode 100644 index 203986f..0000000 --- a/camel-notifications/pom.xml +++ /dev/null @@ -1,151 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> -<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> - - <groupId>org.jclouds.examples</groupId> - <artifactId>camel-notifications</artifactId> - <version>1.0.1</version> - <packaging>jar</packaging> - <description>jclouds camel example that uses a camel routes for sending email notifications, of the node states - </description> - - <name>jclouds Camel Notifier</name> - - <properties> - <camel.version>2.9.0</camel.version> - <jclouds.version>1.6.0</jclouds.version> - </properties> - - <dependencies> - - <!-- Camel Dependencies --> - <dependency> - <groupId>org.apache.camel</groupId> - <artifactId>camel-core</artifactId> - <version>${camel.version}</version> - </dependency> - <dependency> - <groupId>org.apache.camel</groupId> - <artifactId>camel-spring</artifactId> - <version>${camel.version}</version> - </dependency> - - <dependency> - <groupId>org.apache.camel</groupId> - <artifactId>camel-quartz</artifactId> - <version>${camel.version}</version> - </dependency> - - <dependency> - <groupId>org.apache.camel</groupId> - <artifactId>camel-jclouds</artifactId> - <version>${camel.version}</version> - </dependency> - - <dependency> - <groupId>org.apache.camel</groupId> - <artifactId>camel-mail</artifactId> - <version>${camel.version}</version> - </dependency> - - <dependency> - <groupId>org.apache.camel</groupId> - <artifactId>camel-groovy</artifactId> - <version>${camel.version}</version> - </dependency> - - <!-- jclouds Dependencies --> - <dependency> - <groupId>org.jclouds.driver</groupId> - <artifactId>jclouds-slf4j</artifactId> - <version>${jclouds.version}</version> - </dependency> - - <dependency> - <groupId>org.jclouds</groupId> - <artifactId>jclouds-compute</artifactId> - <version>${jclouds.version}</version> - </dependency> - - <dependency> - <groupId>org.jclouds</groupId> - <artifactId>jclouds-allcompute</artifactId> - <version>${jclouds.version}</version> - </dependency> - - <!-- Logging --> - <dependency> - <groupId>ch.qos.logback</groupId> - <artifactId>logback-classic</artifactId> - <version>1.0.0</version> - </dependency> - </dependencies> - - <build> - <defaultGoal>install</defaultGoal> - <plugins> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-compiler-plugin</artifactId> - <version>2.3.2</version> - <configuration> - <source>1.6</source> - <target>1.6</target> - </configuration> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-resources-plugin</artifactId> - <version>2.5</version> - <executions> - <execution> - <id>copy-resources</id> - <phase>validate</phase> - <goals> - <goal>copy-resources</goal> - </goals> - <configuration> - <outputDirectory>${project.basedir}/target/classes</outputDirectory> - <resources> - <resource> - <directory>src/main/resources</directory> - <filtering>true</filtering> - <includes> - <include>**</include> - </includes> - </resource> - </resources> - </configuration> - </execution> - </executions> - </plugin> - - <!-- allows the route to be ran via 'mvn camel:run' --> - <plugin> - <groupId>org.apache.camel</groupId> - <artifactId>camel-maven-plugin</artifactId> - <version>${camel.version}</version> - </plugin> - </plugins> - </build> -</project>
