Class ObjectService

java.lang.Object
com.adobe.testing.s3mock.service.ObjectService

public class ObjectService extends Object
  • Constructor Details

  • Method Details

    • copyS3Object

      public CopyObjectResult copyS3Object(String sourceBucketName, String sourceKey, String destinationBucketName, String destinationKey, Map<String,String> encryptionHeaders, Map<String,String> userMetadata)
      Copies an object to another bucket and encrypted object.
      Parameters:
      sourceBucketName - bucket to copy from.
      sourceKey - object key to copy.
      destinationBucketName - destination bucket.
      destinationKey - destination object key.
      userMetadata - User metadata to store for destination object
      Returns:
      an CopyObjectResult or null if source couldn't be found.
    • putS3Object

      public S3ObjectMetadata putS3Object(String bucketName, String key, String contentType, Map<String,String> storeHeaders, InputStream dataStream, boolean useV4ChunkedWithSigningFormat, Map<String,String> userMetadata, Map<String,String> encryptionHeaders, List<Tag> tags, ChecksumAlgorithm checksumAlgorithm, String checksum, Owner owner)
      Stores an object inside a Bucket.
      Parameters:
      bucketName - Bucket to store the object in.
      key - object key to be stored.
      contentType - The files Content Type.
      storeHeaders - various headers to store
      dataStream - The File as InputStream.
      useV4ChunkedWithSigningFormat - If true, V4-style signing is enabled.
      userMetadata - User metadata to store for this object, will be available for the object with the key prefixed with "x-amz-meta-".
      Returns:
      S3ObjectMetadata.
    • deleteObjects

      public DeleteResult deleteObjects(String bucketName, Delete delete)
    • deleteObject

      public boolean deleteObject(String bucketName, String key)
      Removes an object key from a bucket.
      Parameters:
      bucketName - bucket containing the object.
      key - object to be deleted.
      Returns:
      true if deletion succeeded.
    • setObjectTags

      public void setObjectTags(String bucketName, String key, List<Tag> tags)
      Sets tags for a given object.
      Parameters:
      bucketName - Bucket the object is stored in.
      key - object key to store tags for.
      tags - List of tag objects.
    • setLegalHold

      public void setLegalHold(String bucketName, String key, LegalHold legalHold)
      Sets LegalHold for a given object.
      Parameters:
      bucketName - Bucket the object is stored in.
      key - object key to store tags for.
      legalHold - the legal hold.
    • setAcl

      public void setAcl(String bucketName, String key, AccessControlPolicy policy)
      Sets AccessControlPolicy for a given object.
      Parameters:
      bucketName - Bucket the object is stored in.
      key - object key to store tags for.
      policy - the ACL.
    • getAcl

      public AccessControlPolicy getAcl(String bucketName, String key)
      Retrieves AccessControlPolicy for a given object.
      Parameters:
      bucketName - Bucket the object is stored in.
      key - object key to store tags for.
    • setRetention

      public void setRetention(String bucketName, String key, Retention retention)
      Sets Retention for a given object.
      Parameters:
      bucketName - Bucket the object is stored in.
      key - object key to store tags for.
      retention - the retention.
    • verifyRetention

      public void verifyRetention(Retention retention)
    • verifyMd5

      public InputStream verifyMd5(InputStream inputStream, String contentMd5, String sha256Header)
    • verifyMd5

      public void verifyMd5(InputStream inputStream, String contentMd5)
    • verifyObjectMatchingForCopy

      public void verifyObjectMatchingForCopy(List<String> match, List<String> noneMatch, S3ObjectMetadata s3ObjectMetadata)
      FOr copy use-cases, we need to return PRECONDITION_FAILED only.
    • verifyObjectMatching

      public void verifyObjectMatching(List<String> match, List<String> noneMatch, S3ObjectMetadata s3ObjectMetadata)
    • verifyObjectExists

      public S3ObjectMetadata verifyObjectExists(String bucketName, String key)
    • verifyObjectLockConfiguration

      public S3ObjectMetadata verifyObjectLockConfiguration(String bucketName, String key)
    • getChecksum

      public static Checksum getChecksum(S3ObjectMetadata s3ObjectMetadata)