Class S3Objects


  • @Path("/")
    public class S3Objects
    extends java.lang.Object
    • Constructor Summary

      Constructors 
      Constructor Description
      S3Objects()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      jakarta.ws.rs.core.Response deleteObject​(net.jolivier.s3api.auth.S3Context ctx, @NotNull java.lang.String key, java.lang.String versionId)
      Deletes an existing object
      net.jolivier.s3api.model.DeleteResult deleteObjects​(net.jolivier.s3api.auth.S3Context ctx, org.glassfish.jersey.server.ContainerRequest request)
      Delete objects from a bucket
      jakarta.ws.rs.core.Response getObject​(net.jolivier.s3api.auth.S3Context ctx, org.glassfish.jersey.server.ContainerRequest request, @NotNull java.lang.String key, java.lang.String versionId)
      Get an existing object.
      jakarta.ws.rs.core.Response headObject​(net.jolivier.s3api.auth.S3Context ctx, @NotNull java.lang.String key, java.lang.String versionId)
      Checks for an objects.
      jakarta.ws.rs.core.Response listObjectsOrListBuckets​(net.jolivier.s3api.auth.S3Context ctx, java.lang.String delimiter, java.lang.String encodingType, java.lang.String marker, java.lang.String versionIdMarker, int maxKeys, java.lang.String prefix, jakarta.ws.rs.core.UriInfo uriInfo)
      List the objects in a bucket.
      jakarta.ws.rs.core.Response putOrCopy​(net.jolivier.s3api.auth.S3Context ctx, @NotNull java.lang.String key, java.lang.String inputMd5, java.lang.String contentType, java.lang.String sourceKey, org.glassfish.jersey.server.ContainerRequest request)
      Both putObject and copyObject are PUT operations on a bucket.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • S3Objects

        public S3Objects()
    • Method Detail

      • getObject

        @Path("/{key: .+}")
        @GET
        public jakarta.ws.rs.core.Response getObject​(@Context
                                                     net.jolivier.s3api.auth.S3Context ctx,
                                                     @Context
                                                     org.glassfish.jersey.server.ContainerRequest request,
                                                     @NotNull @PathParam("key")
                                                     @NotNull java.lang.String key,
                                                     @QueryParam("versionId")
                                                     java.lang.String versionId)
        Get an existing object.
        Throws:
        net.jolivier.s3api.exception.S3Exception - if the object does not exist.
      • headObject

        @Path("/{key: .+}")
        @HEAD
        public jakarta.ws.rs.core.Response headObject​(@Context
                                                      net.jolivier.s3api.auth.S3Context ctx,
                                                      @NotNull @PathParam("key")
                                                      @NotNull java.lang.String key,
                                                      @QueryParam("versionId")
                                                      java.lang.String versionId)
        Checks for an objects.
      • deleteObject

        @Path("/{key: .+}")
        @DELETE
        public jakarta.ws.rs.core.Response deleteObject​(@Context
                                                        net.jolivier.s3api.auth.S3Context ctx,
                                                        @NotNull @PathParam("key")
                                                        @NotNull java.lang.String key,
                                                        @QueryParam("versionId")
                                                        java.lang.String versionId)
        Deletes an existing object
        Throws:
        net.jolivier.s3api.exception.S3Exception - if the object does not exist.
      • deleteObjects

        @POST
        @Produces("application/xml")
        public net.jolivier.s3api.model.DeleteResult deleteObjects​(@Context
                                                                   net.jolivier.s3api.auth.S3Context ctx,
                                                                   @Context
                                                                   org.glassfish.jersey.server.ContainerRequest request)
        Delete objects from a bucket
      • putOrCopy

        @Path("/{key: .+}")
        @PUT
        public jakarta.ws.rs.core.Response putOrCopy​(@Context
                                                     net.jolivier.s3api.auth.S3Context ctx,
                                                     @NotNull @PathParam("key")
                                                     @NotNull java.lang.String key,
                                                     @HeaderParam("Content-MD5")
                                                     java.lang.String inputMd5,
                                                     @HeaderParam("Content-Type")
                                                     java.lang.String contentType,
                                                     @HeaderParam("x-amz-copy-source")
                                                     java.lang.String sourceKey,
                                                     @Context
                                                     org.glassfish.jersey.server.ContainerRequest request)
        Both putObject and copyObject are PUT operations on a bucket. This method detects the "x-amz-copy-source" header and branches behavior on that. If the header is present the operation is assumed to be a copyObject. If the header is absent the operation is assumed to be a putObject.
      • listObjectsOrListBuckets

        @GET
        @Produces("application/xml")
        public jakarta.ws.rs.core.Response listObjectsOrListBuckets​(@Context
                                                                    net.jolivier.s3api.auth.S3Context ctx,
                                                                    @QueryParam("delimiter")
                                                                    java.lang.String delimiter,
                                                                    @QueryParam("encoding-type")
                                                                    java.lang.String encodingType,
                                                                    @QueryParam("marker")
                                                                    java.lang.String marker,
                                                                    @QueryParam("VersionIdMarker")
                                                                    java.lang.String versionIdMarker,
                                                                    @DefaultValue("1000") @QueryParam("max-keys")
                                                                    int maxKeys,
                                                                    @QueryParam("prefix")
                                                                    java.lang.String prefix,
                                                                    @Context
                                                                    jakarta.ws.rs.core.UriInfo uriInfo)
        List the objects in a bucket. Enforces a maxKeys 1000 value.
        Throws:
        net.jolivier.s3api.exception.S3Exception - if the bucket does not exist.