Commit Graph

162 Commits

Author SHA1 Message Date
Andrew Gaul 4e3776a099 JCLOUDS-894: Expose Azure multipart operations 2015-05-01 13:32:29 -07:00
Andrew Gaul 09b54eb03f List both committed and uncommitted Azure blocks 2015-05-01 13:32:28 -07:00
Andrew Gaul a761f4cfa1 JCLOUDS-651: Azure copy object content metadata 2015-04-08 17:58:46 -07:00
Andrew Gaul 31369ae590 JCLOUDS-651: Add Azure server-side copyBlob 2015-04-02 15:36:53 -07:00
Andrew Gaul f57ccadce8 JCLOUDS-871: Azure Copy Blob support
API reference:

http://msdn.microsoft.com/en-us/library/dd894037.aspx
2015-03-31 11:13:16 -07:00
Andrew Gaul 967f08a8f2 Return ETag from Azure setBlobMetadata
Also fix up live tests.
2015-03-31 11:03:04 -07:00
Andrew Gaul 9cf97f3117 JCLOUDS-867: Azure support for Content-Disposition
Enabled by Azure API version 2013-08-15.
2015-03-31 10:53:32 -07:00
Andrew Gaul 8617c75b7e JCLOUDS-867: Use Azure API version 2013-08-15
This changes the format of EnumerationResults.
2015-03-31 10:53:32 -07:00
Andrew Gaul ac0e5c2439 JCLOUDS-183: Enable Azure testGetIfModifiedSince
Also comment on why we skip other tests.
2015-03-30 13:07:35 -07:00
Ignasi Barrera f469cf8b51 Next development version 2.0.0-SNAPSHOT 2015-03-24 10:52:01 +01:00
Ignasi Barrera bb41ed4341 Apache jclouds 1.9.0 release 2015-03-24 10:35:42 +01:00
Andrew Gaul 019ae75a61 JCLOUDS-732: Azure portable object ACLs
Azure does not implement support for these:

https://msdn.microsoft.com/library/azure/dd179354.aspx
2015-02-21 10:28:01 -08:00
Andrew Gaul bc81919c58 Add @Beta annotations to BlobStore ACL methods
Also add missing @Override annotations.
2015-02-21 10:18:57 -08:00
Andrew Gaul d701f6a127 JCLOUDS-660: Azure portable container ACLs 2015-02-12 17:26:47 -08:00
Andrew Gaul 3ab2716a7a Skip tests which cannot run on Azure 2015-01-24 13:42:27 -08:00
Andrew Gaul c770ffbeb0 Use sorted set to order relative paths correctly 2015-01-22 11:37:46 -08:00
Andrew Gaul fae097e144 JCLOUDS-654: Add object size to StorageMetadata
This allows callers to read the content length during container
listing.  Tested against: atmosonline, aws-s3, azureblob, filesystem,
and transient.  Intentionally not implemented for legacy swift
provider.
2015-01-09 22:34:56 -08:00
Andrew Gaul 317089c77e Remove tests duplicated by testPut 2015-01-09 21:59:25 -08:00
Andrew Gaul 91c47bfd92 JCLOUDS-801: Add portable multipart upload tests
Exercise both repeatable and non-repeatable payloads.  Tested against
AWS-S3, Azure, and legacy Swift.  Skipped on all other providers.
2015-01-09 21:59:25 -08:00
Andrew Gaul 57a1f0e986 Bind Azure content metadata in multipart upload 2015-01-09 21:59:25 -08:00
Andrew Gaul fdec63fe47 Use LinkedHashSet for BoundedHashSet
This allows enumerating Azure containers in the same order as the
service provides.  This more closely matches PageSet and the Atmos
implementation of BoundedSet.
2015-01-09 17:51:23 -08:00
Andrew Gaul 35d6313e63 JCLOUDS-660: Implement AzureBlob set ACL
Reference:

http://msdn.microsoft.com/en-us/library/azure/dd179391.aspx
2015-01-09 14:05:05 -08:00
Jeremy Daggett d3c1e2eab4 Use AutoService to generate service loader metadata 2015-01-09 11:22:12 -08:00
Andrew Gaul 1c781cc5fa JCLOUDS-391: Azure multipart putBlob user metadata 2014-12-22 15:58:49 -08:00
Andrew Gaul 1663e0911e JCLOUDS-671: test putBlob with large multi-part InputStream 2014-12-06 13:52:27 -08:00
Eric Jutrzenka 66c4963b49 JCLOUDS-671: Use Iterable payload slicer for Azure
Payload slicer has a method that returns an iterable of payloads that
works on non-repeatable InputStreams that was introduced to fix
multi-part uploads in Swift (JCLOUDS-356). This commit applies the
same method to fix multi-part uploads for Azure blob store.
2014-12-06 13:52:27 -08:00
Adrian Cole 02801321a2 JCLOUDS-410 note that ByteArrayPayload needs to handle offsets. 2014-10-29 10:20:39 -07:00
Adrian Cole 1702bddffa Revert "Replace uses of ByteArrayPayload"
This reverts commit bd5b6853ee.
2014-10-29 10:20:38 -07:00
kstyrc b220d889ca JCLOUDS-184: Improving AzureBlob unit tests 2014-10-21 10:10:49 -05:00
Adrian Cole b9525a0877 JCLOUDS-40 unasync Fallback 2014-10-06 13:14:59 -07:00
Adrian Cole 99e217b720 Move off confusing test names. 2014-10-05 17:22:18 -07:00
Adrian Cole dfb583b67a JCLOUDS-40 remove all implementations of AsyncBlobStore except Submission in preparation for complete removal. 2014-10-05 08:49:38 -07:00
Adrian Cole c13220dc93 JCLOUDS-40 missing azure-common reference from azureblob. 2014-10-03 23:13:46 -07:00
Adrian Cole 4c95a57880 JCLOUDS-40 unasync azureblob; plus fold otherwise unused azure-common into it. 2014-10-03 22:15:01 -07:00
Andrew Gaul bd5b6853ee Replace uses of ByteArrayPayload
Prefer ByteSourcePayload which offers a superset of its functionality.
Note that ByteArrayPayload implicitly set the contentLength while
users of ByteSourcePayload must do so explicitly.
2014-09-07 07:43:14 -07:00
Andrew Gaul 975c1325bc JCLOUDS-706: Upgrade Azure API to 2012-02-12
This will allow use of Azure after August 2015:

http://blogs.msdn.com/b/windowsazurestorage/archive/2014/08/05/microsoft-azure-storage-service-version-removal.aspx
2014-09-05 16:35:31 -07:00
Andrew Gaul 0b89b1fd10 Ensure that Content-MD5 has 128 bits
Update many tests Content-MD5 headers and ETag responses.
2014-09-04 16:57:48 -07:00
Andrew Gaul 34cfdbe266 Enforce Override annotation via Checkstyle
Also remove bogus inheritDoc on base and static methods.
2014-08-31 19:37:50 -07:00
Andrew Gaul 1b824afbfc Remove redundant modifiers from interfaces 2014-08-26 17:34:13 -07:00
Jeremy Daggett e711275fb1 Prefer isEmpty() for collections rather than size() 2014-08-20 11:07:48 -07:00
Andrew Gaul 59462747e7 Reset StringBuilder instead of creating new ones
This avoids unneeded garbage, especially during XML parsing.  Replaced
with:

find -name \*.java | xargs sed -i 's/^\( *[^ ]*\) = new StringBuilder();$/\1.setLength(0);/'
2014-08-06 11:22:49 -07:00
Andrew Phillips e3d9851216 Up to 2.0.0-SNAPSHOT after the 1.8.0 release 2014-08-05 09:10:24 +02:00
Andrew Gaul 1e1eb5a092 Add deleteContainerIfEmpty to BlobStore
This matches how most blobstores operate: delete container is a single
operation, not a compound operation which recursively deletes blobs.
Azure is the only provider which allows deleting a non-empty
container.
2014-07-25 23:02:39 -07:00
Andrew Gaul f17c876d8d Replace const.txt file input with synthetic inputs
This commit replaces file resource-based test inputs with in-memory
equivalents.  This is more consistent and efficient than the previous
approach.  Also resized some test inputs to be partSize + 1 instead of
2 * partSize.  Tested against aws-s3, blobstore, core, cloudfiles-us,
and filesystem.
2014-07-19 18:35:25 -07:00
Andrew Gaul fb60d76704 JCLOUDS-622: Remove most vestiges of InputSupplier
Guava 16 deprecated InputSupplier and a future release will remove it.
2014-07-16 16:07:59 -07:00
Andrew Gaul 9cdd53b0b7 JCLOUDS-546: Remove Javadoc @author annotations
Annotations removed with:

find -name \*.java | xargs sed -i /@author/d

Empty Javadoc removed with multiple iterations of:

find -name \*.java | xargs sed -i -z 's/ \*\n \*\// \*\//'
find -name \*.java | xargs sed -i -z 's/ \* \n \*\// \*\//'
find -name \*.java | xargs sed -i -z 's/\/\*\*\n \*\/\n//'
2014-06-07 21:44:54 -07:00
Andrew Gaul 186f052022 Remove BlobBuilder and Payloads.calculateMD5
Callers should instead explicitly set contentMD5, usually with the
results from Guava Hashing.md5(). This narrows the API and removes a
strange IOException from callers.  Further it removes a dangerous
rebuffering of arbitrarily-large non-repeatable Payloads.
2014-05-28 12:54:18 -07:00
Andrew Gaul 26b53e52b7 Use ByteSource methods to create test input
Also avoids excessive system calls due to unbuffered writes.  Finally
migrate repeatingArrayByteSource to ByteSources.
2014-05-22 10:43:57 -07:00
Andrew Gaul 8d51ad6f87 Prefer Guava HttpHeaders over JAX-RS
jclouds code contains more instances of the former and Guava has
additional constants like CONTENT_MD5.
2014-05-15 01:55:51 -07:00
Andrew Gaul 2d88f5164e Enforce that all commas have trailing whitespace 2014-05-08 18:28:08 -07:00