i831992
2791f47046
JCLOUDS-1580 - Add support for lowercase metadata headers
...
The issue happens if a cloud provider returns lowercase metadata headers, for example: "x-object-meta-apiversion" instead of "X-Object-Meta-ApiVersion"
In that case, BlobStore.blobMetadata(CONTAINER, PATH).getUserMetadata()
incorrectly returns an empty map.
This happens because the code is looking for the exact String "-Meta-" (case-sensitive).
This checkin allows to handle metadata headers of any case, and also adds a unit test for that situation.
2021-06-23 09:59:26 +09:00
korlov42
44ff69d144
JCLOUDS-1551: Update version of OkHttp 3.14.9
2021-02-12 18:57:46 +09:00
Olaf Flebbe
92a3c68838
JCLOUDS-1497: Fix checkstyle-suppressions for jcloud-labs ( #27 )
...
* Fix NoWhitespaceBefore Checkstyle Violation
* checkstyle updates: remove suppressionsfilter from checkstyle.xml
* suppressions now done in maven-checkstyle-plugin
2019-05-07 11:49:54 +02:00
Andrew Gaul
53c47aa0bd
Correct uses of checkNotNull
...
These should provide a descriptive second argument, not the same as
the first argument which is null in the failure case. This also found
a logic error in CreateVolumeResponseHandler.
2019-02-23 16:33:40 +09:00
duc
70f0635ac2
JCLOUDS-1479: populate container cache on create
2019-01-02 19:29:31 -08:00
Mat Mannion
29655f3149
JCLOUDS-1263: Add live integration test for manipulating objects through the Swift ObjectApi with unicode characters in their path
2018-05-21 22:19:25 -07:00
Mat Mannion
14621c08d7
JCLOUDS-1263: URL encode object names from list object response before creating URIs with them
...
This fix calls urlEncode on the path before appending them to the existing path, as the core UriBuilder
class expects them to be URL-encoded.
2018-05-21 22:19:25 -07:00
Andrew Gaul
7e0a2dbd13
JCLOUDS-1400: Honor Swift signed URL content type
2018-04-12 22:43:43 -07:00
Andrew Gaul
90fac3b683
JCLOUDS-1271: Remove BlobStore.signRemoveBlob
...
Most providers never supported this functionality and the portable
abstraction should not have included it.
2018-03-09 20:52:12 -08:00
Ignasi Barrera
dd73410d12
Add support for OpenStack Keystone V3
...
Refactors the Keystone Authentication and Service Catalog classes to a
common model that can be used by V2 and V3 of Keystone. Each version
will have their own Authentication APIs and Service Catalog Suppliers,
and the higher level Keystone Authentication will transparently delegate
to the right API based on the keystone-version property.
OpenStack APIs will just have to define the default keystone-version
property they work with, and declare the generic Keystone Authentication
and Service Catalog modules.
Co-authored-by: Andrea Turli <andreaturli@apache.org>
2018-01-16 09:06:30 +01:00
Andrew Gaul
855ac7776c
JCLOUDS-1080: remove spurious parameter from test
...
Follow on to 52044d23d9
.
2017-11-07 11:49:00 -08:00
Andrew Gaul
52044d23d9
JCLOUDS-1080: request JSON only for list objects
2017-11-07 10:58:09 -08:00
Andrew Gaul
9dc85ecaab
JCLOUDS-1281: Improve Swift DLO tests
...
Add DynamicLargeObjectApiLiveTest to Rackspace Cloud Files suite and
use correct regionId so that tests pass. Also remove duplicative
test.
2017-11-07 10:50:10 -08:00
Archana Chinnaiah
eaf3c779dc
JCLOUDS-1281: Swift dynamic large objects
2017-11-07 10:50:10 -08:00
Andrew Gaul
46759f8bda
Fix a few Coverity defects
2017-11-05 20:12:47 -08:00
Andrew Gaul
c901bf3a0f
JCLOUDS-1337: Swift putBlob portable storage tiers
2017-10-23 21:31:49 -07:00
Andrew Gaul
6046fc925c
Avoid hard-coding rackspace region in swift test
2017-09-09 13:42:59 -07:00
Timur Alperovich
6feacb1ee5
Fixes for jclouds openstack swift tests.
...
The ContainerApiLiveTest class has tests that mostly assume that a
single test container always exists. They collide on changes to the
state of the container. Some of the tests, though, assume the
container does _not_ exist and attempt to create it and subsequently
delete it. The change in this patch makes their behavior uniform with
respect to that test container: assume it exists and if the test tries
to delete it or mutate it, delete the container and create it at the
end of the test.
The fix in ObjectApi is for the Object GET requests. Currently,
jclouds passes "format=json", which is not a supported query parameter
for object GET.
Lastly, ObjectApiLiveTest that test server-side copy should ignore the
X-Openstack-Request-ID header, as its value will change between the
two requests.
2017-09-07 13:25:50 -07:00
Andrew Gaul
97c77541ec
Allow empty delimiters with openstack-swift
2017-09-07 12:28:41 -07:00
Andrew Gaul
3a1710d15c
Default Swift signer timeout to 15 minutes
...
This matches other providers.
2017-09-07 11:53:54 -07:00
Andrew Gaul
517323fbd5
JCLOUDS-1225: Address Guava 18 MoreExecutors changes
...
Fixed with:
find -name \*.java | xargs sed -i 's/sameThreadExecutor/newDirectExecutorService/g'
2017-08-22 17:14:22 -07:00
Andrew Gaul
a493e2ca2f
JCLOUDS-1225: Address Guava 18 Objects changes
...
Fixed with:
find -name \*.java | xargs sed -i 's/Objects.[Tt]oStringHelper/More&/g'
find -name \*.java | xargs sed -i 's/Objects.firstNonNull/More&/g'
find -name \*.java | xargs sed -i 's/^\(import com.google.common.base.\)\(Objects.*\)/\1More\2\n\1\2/g'
find -name \*.java | xargs java -jar google-java-format-1.3-all-deps.jar -i --fix-imports-only --skip-sorting-imports
2017-08-22 17:12:53 -07:00
Andrew Gaul
2b49bf3618
JCLOUDS-1299: Handle % in names during Swift list
...
uriBuilder.appendPath assumes an encoded path.
2017-05-16 17:29:02 -07:00
ui4j
a299a6c1fd
JCLOUDS-1297: Fix uploadId format for non-English locale
...
Add Locale.ENGLISH parameter to String.format(...) to generate same uploadId for different locales.
2017-05-15 20:01:40 +03:00
Andrew Gaul
2e7de9f850
JCLOUDS-1271: Deprecate signRemoveBlob
...
URL signing should always use authentication parameters instead of
headers yet no provider supports DELETEs with the former.
2017-04-19 18:08:52 -07:00
Mat Mannion
d41101df59
JCLOUDS-1264: Swift Unicode multipart manifests
...
This fixes a bug where previously BindManifestToJsonPayload used the
character length as the ContentLength, instead of the byte length,
which caused issues if the JSON contained multi-byte Unicode
characters.
2017-04-04 05:05:53 -07:00
Andrew Gaul
01780db4db
Remove erroneous static final from BIG_FILE
...
Also use preferred bigFile capitalization for member. Fixes
regression from e058973abc
.
2017-03-17 17:41:32 -07:00
Andrew Gaul
e058973abc
Ensure SOME_CONSTANTS are static final
...
Found via error-prone.
2017-03-17 16:59:41 -07:00
Andrew Gaul
87eda15085
Return more metadata from listMultipartUpload
...
Include Content-Length and Last-Modified.
2017-03-08 20:35:24 -08:00
Archana Chinnaiah
8649002e03
JCLOUDS-1246: Allow extending SwiftBlobStoreContextModule
2017-03-01 11:45:01 -08:00
Etienne CARRIERE
ac2f746e64
JCLOUDS-1220: Possibility to change the name of Header of Identity v1 protocol
2017-01-05 15:55:19 +01:00
Zack Shoylev
6bc82ee262
Change BaseSwiftApiLiveTest to inherit from BaseBlobStoreIntegrationTest and use its methods
2016-12-20 14:10:22 -06:00
Andrew Gaul
fc14dce5ce
Avoid creating temporary files via relative paths
...
This avoids creating junk in the source directory.
2016-11-15 20:28:31 -08:00
Zack Shoylev
ee89c253b3
Missing cleanup was causing testReplaceManifest to fail
2016-11-15 11:21:25 -06:00
Andrew Gaul
3c9f66b8e9
Avoid lower-case l literal suffix
...
Readers can confuse this with 1. Found via error-prone. Fixed via:
find -name \*.java | xargs sed -i 's/\( [0-9][0-9]*\)l/\1L/g'
find -name \*.java | xargs sed -i 's/\(([0-9][0-9]*\)l/\1L/g'
2016-10-23 14:24:35 -07:00
Andrew Gaul
d1508b2d23
Make inner class static
...
Found via error-prone.
2016-10-23 06:39:46 -07:00
Zack Shoylev
00f7ee0738
jclouds was not properly retrying on an expect: 100-continue PUT request that requires re-athentication because of java protocol code
...
JCLOUDS-1179 This fix also addresses the same problem with other providers
No currently working tests because of https://github.com/square/okhttp/issues/675
This is a common problem in other tools as well https://curl.haxx.se/mail/lib-2004-08/0002.html
2016-10-13 12:17:19 -05:00
Zack Shoylev
4bbca9edf9
More fixes to parallel download resource cleanup
2016-09-14 14:36:44 -05:00
Zack Shoylev
de68c2a1b0
Some handles were not properly closed
2016-09-07 16:28:00 -05:00
Zack Shoylev
05c05e3de2
Allows users to download large files efficiently and directly to disk.
2016-09-02 14:05:26 -05:00
Zack Shoylev
42079e1392
Parallel upload for BaseBlobStore
2016-07-15 04:15:17 -05:00
Zack Shoylev
6bff97b6d3
Changes the upload behavior to parallel, a TODO
2016-07-01 11:26:56 -05:00
Andrew Gaul
fff12293f9
JCLOUDS-1125: Add missing expected exception
2016-06-23 23:06:13 -07:00
Andrew Gaul
5fec2346a6
JCLOUDS-1028: Configure idempotent methods
...
Enable POST for Atmos, S3, and Swift.
2016-06-15 16:35:22 -07:00
Andrew Gaul
0bd2959410
JCLOUDS-1125: portable list multipart uploads
...
Only Azure, B2, and S3 support this operation. Some MultipartUpload
fields become nullable.
2016-06-13 16:26:43 -07:00
Zack Shoylev
c1ce819f61
updateTemporaryUrlKey test
2016-06-07 17:37:39 -05:00
IgnacioCalvo
7d2f1e8b4d
JCLOUDS-1080: Force JSON format for requests
...
Also make all fields optional.
2016-03-17 20:40:51 -07:00
Zack Shoylev
f8ebbfdf8a
Fixes an intermittently failing swift live test.
2016-03-08 12:38:13 -06:00
Andrew Gaul
dd670f3f78
JCLOUDS-1064: More helpful error for null length
2016-03-06 19:08:26 -08:00
Zack Shoylev
8bbcfed312
Ensures the Swift container list call requests JSON as per spec
2016-02-18 18:48:55 -06:00