Class ObjectController
-
- All Implemented Interfaces:
@CrossOrigin(origins = {"*"}, exposedHeaders = {"*"})@Controller()@RequestMapping(value = {"${com.adobe.testing.s3mock.controller.contextPath:}"}) public final class ObjectController
-
-
Constructor Summary
Constructors Constructor Description ObjectController(BucketService bucketService, ObjectService objectService)
-
Method Summary
Modifier and Type Method Description final ResponseEntity<DeleteResult>deleteObjects(@PathVariable() String bucketName, @RequestBody() Delete body)API Reference. final ResponseEntity<Void>postObject(@PathVariable() String bucketName, @RequestParam(value = "key") ObjectKey key, @RequestParam(value = "tagging", required = false) List<Tag> tags, @RequestParam(value = "Content-Type", required = false) String contentType, @RequestParam(value = "Content-MD5", required = false) String contentMd5, @RequestParam(value = "x-amz-storage-class", required = false, defaultValue = "STANDARD") StorageClass storageClass, @RequestPart(value = "file") MultipartFile file)API Reference. final ResponseEntity<Void>headObject(@PathVariable() String bucketName, @PathVariable() ObjectKey key, @RequestHeader(value = "If-Match", required = false) List<String> match, @RequestHeader(value = "If-None-Match", required = false) List<String> noneMatch, @RequestHeader(value = "If-Modified-Since", required = false) List<Instant> ifModifiedSince, @RequestHeader(value = "If-Unmodified-Since", required = false) List<Instant> ifUnmodifiedSince, @RequestHeader(value = "Range", required = false) HttpRange range, @RequestParam(value = "partNumber", required = false) String partNumber, @RequestParam(value = "versionId", required = false) String versionId, @RequestParam() Map<String, String> queryParams)API Reference. final ResponseEntity<Void>deleteObject(@PathVariable() String bucketName, @PathVariable() ObjectKey key, @RequestHeader(value = "If-Match", required = false) List<String> match, @RequestHeader(value = "x-amz-if-match-last-modified-time", required = false) List<Instant> matchLastModifiedTime, @RequestHeader(value = "x-amz-if-match-size", required = false) List<Long> matchSize, @RequestParam(value = "versionId", required = false) String versionId)API Reference. final ResponseEntity<StreamingResponseBody>getObject(@PathVariable() String bucketName, @PathVariable() ObjectKey key, @RequestHeader(value = "x-amz-checksum-mode", required = false, defaultValue = "DISABLED") ChecksumMode mode, @RequestHeader(value = "If-Match", required = false) List<String> match, @RequestHeader(value = "If-None-Match", required = false) List<String> noneMatch, @RequestHeader(value = "If-Modified-Since", required = false) List<Instant> ifModifiedSince, @RequestHeader(value = "If-Unmodified-Since", required = false) List<Instant> ifUnmodifiedSince, @RequestParam(value = "partNumber", required = false) String partNumber, @RequestHeader(value = "Range", required = false) HttpRange range, @RequestParam(value = "versionId", required = false) String versionId, @RequestParam() Map<String, String> queryParams)API Reference. final ResponseEntity<Void>putObject(@PathVariable() String bucketName, @PathVariable() ObjectKey key, @RequestHeader(value = "x-amz-tagging", required = false) List<Tag> tags, @RequestHeader(value = "Content-Type", required = false) String contentType, @RequestHeader(value = "Content-MD5", required = false) String contentMd5, @RequestHeader(value = "If-Match", required = false) List<String> match, @RequestHeader(value = "If-None-Match", required = false) List<String> noneMatch, @RequestHeader(value = "x-amz-storage-class", required = false, defaultValue = "STANDARD") StorageClass storageClass, @RequestHeader() HttpHeaders httpHeaders, InputStream inputStream)API Reference. final ResponseEntity<CopyObjectResult>copyObject(@PathVariable() String bucketName, @PathVariable() ObjectKey key, @RequestHeader(value = "x-amz-copy-source") CopySource copySource, @RequestHeader(value = "x-amz-metadata-directive", defaultValue = "COPY") AwsHttpHeaders.MetadataDirective metadataDirective, @RequestHeader(value = "x-amz-copy-source-if-match", required = false) List<String> match, @RequestHeader(value = "x-amz-copy-source-if-none-match", required = false) List<String> noneMatch, @RequestHeader(value = "x-amz-copy-source-if-modified-since", required = false) List<Instant> ifModifiedSince, @RequestHeader(value = "x-amz-copy-source-if-unmodified-since", required = false) List<Instant> ifUnmodifiedSince, @RequestHeader(value = "x-amz-storage-class", required = false) StorageClass storageClass, @RequestHeader() HttpHeaders httpHeaders)API Reference. -
-
Constructor Detail
-
ObjectController
ObjectController(BucketService bucketService, ObjectService objectService)
-
-
Method Detail
-
deleteObjects
@PostMapping(value = {"/{bucketName:.+}", "/{bucketName:.+}/"}, params = {"delete"}, produces = {"application/xml"}) final ResponseEntity<DeleteResult> deleteObjects(@PathVariable() String bucketName, @RequestBody() Delete body)
-
postObject
@PostMapping(value = {"/{bucketName:.+}", "/{bucketName:.+}/"}, params = {"!delete"}, produces = {"application/xml"}, consumes = {"multipart/form-data"}) final ResponseEntity<Void> postObject(@PathVariable() String bucketName, @RequestParam(value = "key") ObjectKey key, @RequestParam(value = "tagging", required = false) List<Tag> tags, @RequestParam(value = "Content-Type", required = false) String contentType, @RequestParam(value = "Content-MD5", required = false) String contentMd5, @RequestParam(value = "x-amz-storage-class", required = false, defaultValue = "STANDARD") StorageClass storageClass, @RequestPart(value = "file") MultipartFile file)API Reference. Does not support all parameters listed in the API reference.
-
headObject
@RequestMapping(value = {"/{bucketName:.+}/{*key}"}, method = {RequestMethod.HEAD}) final ResponseEntity<Void> headObject(@PathVariable() String bucketName, @PathVariable() ObjectKey key, @RequestHeader(value = "If-Match", required = false) List<String> match, @RequestHeader(value = "If-None-Match", required = false) List<String> noneMatch, @RequestHeader(value = "If-Modified-Since", required = false) List<Instant> ifModifiedSince, @RequestHeader(value = "If-Unmodified-Since", required = false) List<Instant> ifUnmodifiedSince, @RequestHeader(value = "Range", required = false) HttpRange range, @RequestParam(value = "partNumber", required = false) String partNumber, @RequestParam(value = "versionId", required = false) String versionId, @RequestParam() Map<String, String> queryParams)
-
deleteObject
@DeleteMapping(value = {"/{bucketName:.+}/{*key}"}, params = {"!lifecycle", "!tagging"}) final ResponseEntity<Void> deleteObject(@PathVariable() String bucketName, @PathVariable() ObjectKey key, @RequestHeader(value = "If-Match", required = false) List<String> match, @RequestHeader(value = "x-amz-if-match-last-modified-time", required = false) List<Instant> matchLastModifiedTime, @RequestHeader(value = "x-amz-if-match-size", required = false) List<Long> matchSize, @RequestParam(value = "versionId", required = false) String versionId)
-
getObject
@GetMapping(value = {"/{bucketName:.+}/{*key}"}, params = {"!uploads", "!uploadId", "!tagging", "!legal-hold", "!retention", "!acl", "!attributes"}) final ResponseEntity<StreamingResponseBody> getObject(@PathVariable() String bucketName, @PathVariable() ObjectKey key, @RequestHeader(value = "x-amz-checksum-mode", required = false, defaultValue = "DISABLED") ChecksumMode mode, @RequestHeader(value = "If-Match", required = false) List<String> match, @RequestHeader(value = "If-None-Match", required = false) List<String> noneMatch, @RequestHeader(value = "If-Modified-Since", required = false) List<Instant> ifModifiedSince, @RequestHeader(value = "If-Unmodified-Since", required = false) List<Instant> ifUnmodifiedSince, @RequestParam(value = "partNumber", required = false) String partNumber, @RequestHeader(value = "Range", required = false) HttpRange range, @RequestParam(value = "versionId", required = false) String versionId, @RequestParam() Map<String, String> queryParams)
-
putObject
@PutMapping(value = {"/{bucketName:.+}/{*key}"}, params = {"!uploadId", "!tagging", "!legal-hold", "!retention", "!acl"}, headers = {"!x-amz-copy-source"}) final ResponseEntity<Void> putObject(@PathVariable() String bucketName, @PathVariable() ObjectKey key, @RequestHeader(value = "x-amz-tagging", required = false) List<Tag> tags, @RequestHeader(value = "Content-Type", required = false) String contentType, @RequestHeader(value = "Content-MD5", required = false) String contentMd5, @RequestHeader(value = "If-Match", required = false) List<String> match, @RequestHeader(value = "If-None-Match", required = false) List<String> noneMatch, @RequestHeader(value = "x-amz-storage-class", required = false, defaultValue = "STANDARD") StorageClass storageClass, @RequestHeader() HttpHeaders httpHeaders, InputStream inputStream)
-
copyObject
@PutMapping(value = {"/{bucketName:.+}/{*key}"}, headers = {"x-amz-copy-source"}, params = {"!uploadId", "!tagging", "!legal-hold", "!retention", "!acl"}, produces = {"application/xml"}) final ResponseEntity<CopyObjectResult> copyObject(@PathVariable() String bucketName, @PathVariable() ObjectKey key, @RequestHeader(value = "x-amz-copy-source") CopySource copySource, @RequestHeader(value = "x-amz-metadata-directive", defaultValue = "COPY") AwsHttpHeaders.MetadataDirective metadataDirective, @RequestHeader(value = "x-amz-copy-source-if-match", required = false) List<String> match, @RequestHeader(value = "x-amz-copy-source-if-none-match", required = false) List<String> noneMatch, @RequestHeader(value = "x-amz-copy-source-if-modified-since", required = false) List<Instant> ifModifiedSince, @RequestHeader(value = "x-amz-copy-source-if-unmodified-since", required = false) List<Instant> ifUnmodifiedSince, @RequestHeader(value = "x-amz-storage-class", required = false) StorageClass storageClass, @RequestHeader() HttpHeaders httpHeaders)
-
-
-
-