Commit Graph

180 Commits

Author SHA1 Message Date
Andrew Gaul 6cc8e36f43 Add test for correct and incorrect contentMD5
Tested against atmos (skipped), aws-s3, azureblob, cloudfiles-us, and
filesystem (skipped).
2013-09-11 16:10:45 -07:00
Andrew Gaul 65729acd6e Explain expected result in filesystem test 2013-09-06 09:26:43 -07:00
Andrew Gaul 3ad6b275d4 Run some filesystem integration tests
Previously no integration tests ran, now we see:

Tests run: 43, Failures: 0, Errors: 0, Skipped: 8
2013-09-04 13:26:46 -07:00
Andrew Gaul 1a003ee731 Handle large putBlob with filesystem blobstore
Previously large putBlob caused an OutOfMemoryError even with
repeatable Payloads.  Fixes JCLOUDS-248.
2013-08-26 20:17:46 -04:00
Andrew Gaul fcdc3d6138 Expect exception from FilePayload.getInput
Previously the constructor threw this.  Fixes regression from ac58a70.
2013-07-16 08:26:50 -07:00
Andrew Gaul 1a6be0eb67 Do not repeat array type in initializers 2013-06-18 21:02:50 -07:00
Andrew Bayer 32ea520f34 Add license headers to src/test/resources where possible, more fine-grained RAT exclusions 2013-06-12 16:45:29 -07:00
adriancole ed2f18a1af JCLOUDS-31. updated to ASF headers via mvn com.mycila.maven-license-plugin:maven-license-plugin:format 2013-05-16 21:30:37 -07:00
adriancole fa10fc4838 JCLOUDS-31. remove malformed, duplicate, or unnecessary headers 2013-05-16 21:30:32 -07:00
Andrew Bayer 446ac67884 JCLOUDS-30. Switch to 2 space indents for POM files. 2013-05-13 12:04:43 -07:00
Andrew Bayer 259b04ff1c JCLOUDS-16. Switch groupId to org.apache.jclouds, change parent POM, remove old distributionManagement content, add ASF repos. 2013-05-13 12:04:42 -07:00
adriancole fbe9f945e7 rename bindMappedApi -> bindSyncToAsyncApi 2013-04-10 08:57:32 -07:00
adriancole 61067d3683 Deprecated remaining code related to RestContext, RestApiMetadata, and RestClientModule for ApiContext, HttpApiMetadata, HttpApiModule 2013-04-09 22:07:43 -07:00
Andrew Gaul 648e6c2a8a Remove InputSuppliers.of(InputStream)
This method breaks the contract of an InputSupplier since every call
to getInput returns the same InputStream instance.  This is
particularly dangerous when one of the callers mutates or closes the
InputStream which causes all others callers to fail.
2013-04-03 13:19:42 -07:00
Adrian Cole fb69ae0fa9 bump master to 1.7.0-SNAPSHOT 2013-03-08 23:02:40 -08:00
adriancole c31145e42e [maven-release-plugin] prepare for next development iteration 2013-03-04 06:13:59 -08:00
adriancole 0eb3ee8091 [maven-release-plugin] prepare release jclouds-1.6.0-alpha.4 2013-03-04 06:13:57 -08:00
Andrew Gaul ff42fdfa13 Address FindBugs warnings 2013-02-24 20:17:50 -08:00
adriancole 89fda8ee28 [maven-release-plugin] prepare for next development iteration 2013-02-04 17:30:46 -08:00
adriancole 2b0ad28f26 [maven-release-plugin] prepare release jclouds-1.6.0-alpha.2 2013-02-04 17:30:44 -08:00
adriancole 267069755e [maven-release-plugin] prepare for next development iteration 2013-02-02 08:41:53 -08:00
adriancole 7c924b312f [maven-release-plugin] prepare release jclouds-1.6.0-alpha.1 2013-02-02 08:41:51 -08:00
Andrew Gaul ac9acb8808 Dynamically generate filesystem blobstore input
This removes several large images from the source tree.
2013-01-22 10:57:11 -08:00
Adrian Cole 47c215c63c removed custom guava code for scoped binding and type params 2013-01-08 22:48:10 -08:00
Adrian Cole 9745e9dc2f fixed covariance and warnings on ApiMetadata subclasses 2012-12-31 19:40:49 -08:00
Adrian Cole bb953c981e fix issue #1101: Move to Guava 14 BaseEncoding and Hashing 2012-12-31 14:48:31 -08:00
Adrian Cole 2523ab54ac removed use of static fields to share type mapping info 2012-12-30 17:22:03 -08:00
Adrian Cole 878ec1bcab undid Serializable and added checkstyle InterfaceIsType:allowMarkerInterfaces=false 2012-11-18 09:23:44 -08:00
Adrian Cole 64a8fd0cbb Merge pull request #961 from andrewgaul/checkstyle-collection-helpers
Enforce use of Collection helpers via Checkstyle
2012-11-05 11:38:49 -08:00
Andrew Gaul 3d191253ec Enforce use of Collection helpers via Checkstyle
This ensures that we do not repeat the type name.  Some instances remain
due to auto-generated code in dmtf/cim/Cim*.
2012-11-04 20:45:49 -08:00
Andrew Gaul ffc2fb0eb4 Ensure that callers get a well-behaving Set
Returning a container with a custom add method could confuse callers.
Provide same functionality via Function.
2012-11-04 19:31:31 -08:00
Andrew Gaul b3da8e4603 Remove filesystem dependency on Apache commons-io 2012-10-30 20:48:58 -07:00
Adrian Cole 7a46979e66 Merge pull request #922 from andrewgaul/checkstyle-newline-eof
Enforce newline at end of file via Checkstyle
2012-10-30 08:55:16 -07:00
Andrew Gaul fd26ba0d40 Simplify FilesystemAsyncBlobStoreTest.tearDown
We should not swallow an IOException and resourcesToBeDeleted only ever
has one file.
2012-10-30 03:01:44 -07:00
Andrew Gaul 93d69ece2b Enforce newline at end of file via Checkstyle
Also address all warnings, via:

find -name \*.java | while read i; do if [ x`tail -c 1 $i` != x"" ]; then echo >> $i; fi; done
2012-10-29 22:12:44 -07:00
Andrew Gaul 709ca69a2d Enforce that all imports are used via Checkstyle
Also remove all unused imports, via:

mvn checkstyle:checkstyle -Dcheckstyle.output.file=/dev/stdout -Dcheckstyle.output.format=plain | tac | awk -v FS=: '/warning/{print "sed -i " $2 "d " $1}' | while read i; do $i; done
2012-10-29 17:11:08 -07:00
Andrew Gaul 9f6b9d4d8a Rename to LocalBlobRequestSigner
Missing commit from the Filesystem and Transient unification.
2012-10-07 22:54:03 -07:00
Andrew Gaul 02e1a54220 Improve use of File constructor 2012-10-06 19:28:27 -07:00
Adrian Cole 5da084d6c4 Merge pull request #868 from andrewgaul/filesystem-get-all-container-names
Simplify filesystem blobstore getAllContainerNames
2012-10-05 10:10:57 -07:00
Andrew Gaul b8cd2b9ead Simplify filesystem blobstore getAllContainerNames
This commit removes the dangerous behavior of calling File.delete in
Iterator.remove and helps migrate away from Apache commons-io.
2012-10-05 09:34:33 -07:00
Andrew Gaul ceb203c10a Improve use of InputSupplier helpers 2012-10-02 18:18:51 -07:00
Andrew Gaul 0140020c0e Use Iterator for IMAGE_RESOUCE
Also ensure immutability.  Remove some unused members.
2012-10-02 09:45:46 -07:00
Andrew Gaul 34b9106b6d Handle InputStreamPayload in filesystem putBlob
We must save input to subsequently calculate its MD5.  Also tidy up
testWritePayloadOnFile.  Closes #1093.  Test case written by Tom
Manning.
2012-09-29 11:52:52 -07:00
Andrew Gaul 44a8ed155c Prefer Guava InputSupplier methods over IOUtils 2012-09-25 11:44:10 -07:00
Adrian Cole 28d766b9df bumped to 1.6.0-SNAPSHOT 2012-09-17 01:43:52 -07:00
Adrian Cole dcca748a79 unused imports 2012-09-15 23:48:35 -07:00
Adrian Cole 795dd48abb Merge pull request #762 from andrewgaul/commons-io
Use consistent and latest version of commons-io
2012-07-31 08:15:56 -07:00
Andrew Gaul 577cde0a02 Denormalize path when removing subtree
This commit improves filesystem blobstore compatibility on Windows.
This partially reverts cfe3169.  Tested on Ubuntu 12.04 and Windows 7.
References #737.  Closes #912.
2012-07-30 14:42:44 -07:00
Andrew Gaul e253f539d6 Prefer string replacement over regular expression
Previously this method threw an PatternSyntaxException due to a
missing level of escaping.  Also remove bogus test.
2012-07-30 13:36:43 -07:00
Andrew Gaul ed8319dbae Use consistent and latest version of commons-io
Changelogs:
http://commons.apache.org/io/upgradeto2_0.html
http://commons.apache.org/io/upgradeto2_2.html
http://commons.apache.org/io/upgradeto2_4.html
2012-07-30 10:58:32 -07:00
Andrew Gaul 8ed0e28e68 Spelling corrections 2012-07-26 22:39:35 -07:00
Andrew Gaul f5548f3a94 Shuffle strategy methods into consistent order
Group by container, blob, and miscellaneous methods.  Within these
groups, sort by by exists, getter, setter, and remove.  Code movement
only; no functional changes.
2012-07-26 13:52:23 -07:00
Andrew Gaul 562f8277d3 Introduce LocalAsyncBlobStore
This commit unifies the filesystem and transient blobstores.
2012-07-23 09:20:41 -07:00
Andrew Gaul 756e46333f Miscellaneous local blobstore cleanups
There are no more functional differences between the filesystem and
transient blobstores.  This is the last commit before introducing a
unified LocalAsyncBlobStore class.
2012-07-23 08:06:36 -07:00
Adrian Cole b890765e9e Merge pull request #738 from andrewgaul/local-blobstore-move-helper-method
Move helper method to TransientStorageStrategy
2012-07-23 07:37:30 -07:00
Adrian Cole d5f9bb3172 Merge pull request #739 from andrewgaul/prefer-valueof
Prefer valueOf over explicit object creation
2012-07-22 22:00:09 -07:00
Andrew Gaul 985cccff9a Prefer valueOf over explicit object creation
This allows use of cached values.  Patched with:

find -name \*.java | xargs sed -i 's/new Boolean(false)/Boolean.FALSE/g'
find -name \*.java | xargs sed -i 's/new Boolean(true)/Boolean.TRUE/g'
find -name \*.java | xargs sed -i 's/new Boolean(/Boolean.valueOf(/g'
find -name \*.java | xargs sed -i 's/new Integer(/Integer.valueOf(/g'
find -name \*.java | xargs sed -i 's/new Long(/Long.valueOf(/g'
2012-07-22 21:01:46 -07:00
Andrew Gaul 22da88d2ae Move helper method to TransientStorageStrategy
Also move etag generation since we cannot reuse Payloads in the
general case.
2012-07-22 20:02:59 -07:00
Andrew Gaul 0bc5c69a4f Move copy(MutableBlobMetadata) to BlobStoreUtils 2012-07-22 17:37:18 -07:00
Andrew Gaul 870ed0cdb3 Shuffle blobstore parameters to match superclass
Also remove unused injected parameter.
2012-07-19 07:17:02 -07:00
Andrew Gaul a2d5a48f3f Inject TransientStorageStrategy
Remove some unneeded checkNotNull as Guice does not inject null
parameters.
2012-07-18 16:02:07 -07:00
Andrew Gaul 8a9265f015 Tie up odds and ends from LocalStorageStrategy
Use LocalStorageStrategy instead of TransientStorageStrategy and
handle IOExceptions.  Aso use dummy location in filesystem blobstore.
2012-07-18 09:45:23 -07:00
Andrew Gaul c30c2c4809 Introduce LocalStorageStrategy
This commit will allow eventual unification of the filesystem and
transient blobstores.  No functional changes -- rename
FilesystemStorageStrategy to LocalStorageStrategy and implement it in
FilesystemStorageStrategyImpl and TransientStorageStrategy.
2012-07-17 23:11:10 -07:00
Adrian Cole 007eba6d7c Merge pull request #723 from andrewgaul/filesystem-transient-input-supplier
Ensure we close streams via InputSupplier methods
2012-07-17 15:23:47 -07:00
Andrew Gaul bd5bf0dad2 Ensure we close streams via InputSupplier methods 2012-07-17 11:46:10 -07:00
Andrew Gaul d89153ed1f Reduce filesystem and transient differences 2012-07-17 09:50:47 -07:00
Andrew Gaul 02203afb07 Harmonize filesystem and transient putBlob 2012-07-16 22:02:00 -07:00
Adrian Cole 05fd64af44 cleaned up http builders and expect tests 2012-07-15 01:50:38 -07:00
Andrew Gaul 736554d049 Correct spelling errors 2012-06-14 10:03:39 -04:00
Adrian Cole 5a3f6011a2 removed junit test dependency 2012-06-03 17:26:57 -07:00
Ioannis Canellos b078adc3ce Removed fragments and dynamic imports. Added centralized control of the maven-bundle-plugin. 2012-06-03 19:41:54 +03:00
Aled Sage 2637a4b6e9 Issue 647: DateCodec impl delegates to DateService 2012-05-17 11:25:13 +01:00
Andrew Gaul dbb56e64da Remove quirky isSame method
Use safer InputSupplier instead.
2012-05-15 11:37:22 -07:00
Andrew Gaul f55231d607 Tolerate oversized ranges in getBlob 2012-05-14 15:16:32 -07:00
Andrew Gaul 9b6cf5ea21 Hamonize filesystem and transient copyBlob 2012-05-14 13:36:21 -07:00
Andrew Gaul 1199c54f67 Harmonize filesystem and transient loadBlob
Move getBlob into FilesystemStorageStrategyImpl, similar to
TransientStorageStrategy.
2012-05-14 13:06:19 -07:00
Andrew Gaul a30aad05ed Harmonize filesystem and transient getBlob
This commit also simplifies HTTP range logic calculations, sets the
correct Content-Length, and avoids an unneeded copy.
2012-05-14 11:02:03 -07:00
Andrew Phillips 29e7e7e85e Revert "Merge pull request #617 from andrewgaul/filesystem-transient-remove-copy"
This reverts commit 0fe120d659, reversing
changes made to 5033b98252.
2012-05-08 23:37:19 -07:00
Andrew Gaul d13e8aec4a Remove unused copy method
Also make second copy method private access.
2012-05-08 21:08:03 -07:00
Andrew Gaul 4ac7629f44 Delegate blob storage to TransientStorageStrategy
This further minimizes the drift between the filesystem and transient
blobstores.  We also now require that users keep the BlobStoreContext
open instead of using ConcurrentMap singletons.  Finally we remove the
"stub" container.
2012-05-08 14:11:32 -07:00
Adrian Cole 39e6f84f4b Merge pull request #612 from andrewgaul/transient-storage-strategy
Introduce TransientStorageStrategy
2012-05-07 17:14:10 -07:00
Andrew Gaul 442c51eb3c Introduce TransientStorageStrategy
This allows code from the filesystem blobstore to be more similar to
the transient blobstore.  This commit also corrects a bug where
blobExists did not throw an exception when the container did not
exist.
2012-05-07 16:52:31 -07:00
Adrian Cole 015a89cdcd Merge pull request #611 from andrewgaul/reduce-filesystem-transient-diff
Reduce filesystem and transient differences
2012-05-07 16:29:33 -07:00
Andrew Gaul 3a0c15b345 Reduce filesystem and transient differences
These providers have a similar lineage but many gratuitous
differences.  This commit reduces the diff between them and is a
prerequisite for upcoming changes to make them more similar to each
other and real providers.  Some future commit might unify these in
some smarter way, e.g., having a TransientStrategy to match
FilesystemStrategy.
2012-05-07 15:55:05 -07:00
Andrew Gaul 7cbfd42736 Do not check for equality on overwrites
Firstly, this check never triggered because Payload.equals always
returns false for File objects.  Secondly, this would not reduce IO
even if it worked since the common case is not overwriting a file with
the same contents.  Lastly, simplify a cast.
2012-05-07 13:35:02 -07:00
Andrew Gaul 0903d8522a Close streams in filesystem tests
Windows cannot delete open files and this may have caused test
failures.  References #912.
2012-05-03 09:22:53 -07:00
Andrew Gaul 646f8d8b13 Improve use of Throwables.propagate
Throwing the return value removes some unneeded asserts and return
statements.  Also remove some useless and misspelled propogate
wrappers.
2012-05-02 11:05:22 -07:00
Adrian Cole df7d2acbb4 wrapper -> view 2012-04-23 19:14:36 -07:00
Adrian Cole 886d2cafb9 created base Context class with ProviderMetadata and Identity 2012-04-23 16:16:51 -07:00
Adrian Cole cedd906bdb Merge pull request #566 from andrewgaul/length-typo
Correct typo
2012-04-16 01:12:55 -07:00
Adrian Cole 0b59dea073 removed ContextBuilder subclasses; added unwrap; undid generic params 2012-04-16 00:44:20 -07:00
Andrew Gaul 40bb12d410 Correct typo 2012-04-13 15:29:51 -07:00
Adrian Cole 23cb01f977 refactor PropertiesBuilder and related types into ApiMetadata and ProviderMetadata, and update all usage 2012-04-11 19:47:09 -06:00
Adrian Cole 764e0907f7 Issue 657:ApiMetadata 2012-04-01 18:43:31 -07:00
Adrian Cole 5c6ce9f081 organize imports 2012-03-28 03:37:48 -04:00
Ioannis Canellos 5490b3068c [842] Added required import packages to cloudfiles api bundle. Improved import packages in all bundles. 2012-02-17 00:49:39 +02:00
Adrian Cole fe4d148528 updated current version to 1.5.0-SNAPSHOT 2012-02-04 11:06:07 -08:00
Adrian Cole 65b75ecb64 filesystem related changes for Issue 826 2012-02-03 00:29:39 -08:00
Adrian Cole 3df052565f updated current version to 1.4.0-SNAPSHOT 2012-01-16 13:08:32 -08:00
Adrian Cole add431a329 missing build property commit 2012-01-08 00:04:04 -08:00