Commit Graph

121 Commits

Author SHA1 Message Date
Andrew Gaul e8e78689e6 Next development version 2.4.0-SNAPSHOT 2021-09-19 08:58:25 +09:00
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
Andrew Gaul 7ad7890ad0 Next development version 2.4.0-SNAPSHOT 2021-04-14 23:07:54 +09:00
korlov42 44ff69d144 JCLOUDS-1551: Update version of OkHttp 3.14.9 2021-02-12 18:57:46 +09:00
gurkerl83 32f6c4d50f Remove the OSGi configuration from each module. The approach of defining OSGi configuration through common properties and serving them to the bundle plugin gets no longer used; instead, OSGi configuration gets defined in each module's dedicated bnd file. 2020-10-26 19:58:41 +09:00
gurkerl83 7a9cd345a6 Onboard bnd-configuration files, one per module 2020-10-26 19:58:41 +09:00
Ignasi Barrera f5b29c7028 Next development version 2.3.0-SNAPSHOT 2019-10-21 10:32:43 +02:00
Ignasi Barrera 7221844fac Apache jclouds 2.2.0-rc1 release 2019-10-21 10:32:43 +02:00
Andrew Gaul a70ca2d25c Convert a handful of HTTP URLs to HTTPS 2019-05-21 20:52:22 +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
andreaturli d17487b223 fix typo in project.version
- from 2.2.0-SNAPSHOST to 2.2.0-SNAPSHOT
2018-02-21 16:45:43 +01:00
andreaturli a5db565581 Next development version 2.2.0-SNAPSHOST 2018-02-16 11:23:12 +01:00
andreaturli 9273bd56ad Apache jclouds 2.1.0-rc3 release 2018-02-16 11:20:21 +01: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
Ignasi Barrera d290705419 Next development version 2.1.0-SNAPSHOT 2016-11-15 01:12:59 +01:00
Ignasi Barrera 6a3a37f4e0 Apache jclouds 2.0.0-rc3 release 2016-11-09 22:30:45 +01: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