Cloudloop is a new open source Java API and command-line management tool for cloud storage.
Cloudloop provides several advantages over other cloud storage API’s and tools:
(1) Abstracts away differences between different vendors’ interfaces, allowing you to easily switch providers without changing any code.
(2) Allows you to copy data across providers, giving you the ability to synchronize and migrate data between providers.
(3) Provides a file-system-like interface with folders (rather than the primitive key-value system interface used by S3 and other providers).
(4) Supports many varieties of encryption out of the box.
Here's a quick example of what you can do with the API:
Copy a file from your local file-system to cloud storage (in this case Amazon S3):
Cloudloop.init( );
CloudStore localFilesystem = Cloudloop.getStorage( "local" );
CloudStoreFile localFile = localFilesystem.getFile( "/some/directory/my_file.txt" );
CloudStore amazonS3 = Cloudloop.getStorage( "s3" );
CloudStoreFile destinationFile = amazonS3.getFile( "/target/directory/my_file.txt" );
localFile.copyTo( destinationFile, null );
Here’s how you would do the same thing using the cloudloop command-line interface:
cp //local/some/directory/my_file.txt //s3/target/directory/my_file.txt
Move a directory and all subdirectories from one storage provider to another:
Cloudloop.init( );
CloudStore amazonS3 = Cloudloop.getStorage( "s3" );
CloudStoreFile sourceDir = amazonS3.getDirectory( "/some/directory/" );
CloudStore nirvanix = Cloudloop.getStorage( "nirvanix" );
CloudStoreFile destinationDir = nirvanix.getFile( "/target/directory/" );
sourceDir.copyTo( destinationDir, null );
And with the command-line:
cp //s3/some/directory //nirvanix/target/directory/
These are just a few examples of what you can do with cloudloop. To learn more and start using cloudloop, checkout the website:
www.cloudloop.com or email
info at cloudloop dot com. Any feedback is much appreciated.
Cloudloop is licensed under Apache, so you're free to use the code however you like.