Class S3Resource

  • All Implemented Interfaces:
    RangeAwareResource, org.springframework.core.io.InputStreamSource, org.springframework.core.io.Resource

    public class S3Resource
    extends Object
    implements RangeAwareResource
    Implementation of Resource for S3 files.
    Author:
    avasquez
    • Method Detail

      • getActualKey

        protected String getActualKey()
      • exists

        public boolean exists()
        Specified by:
        exists in interface org.springframework.core.io.Resource
      • isReadable

        public boolean isReadable()
        Specified by:
        isReadable in interface org.springframework.core.io.Resource
      • isOpen

        public boolean isOpen()
        Specified by:
        isOpen in interface org.springframework.core.io.Resource
      • getURL

        public URL getURL()
                   throws IOException
        Specified by:
        getURL in interface org.springframework.core.io.Resource
        Throws:
        IOException
      • getURI

        public URI getURI()
                   throws IOException
        Specified by:
        getURI in interface org.springframework.core.io.Resource
        Throws:
        IOException
      • getFile

        public File getFile()
                     throws IOException
        Specified by:
        getFile in interface org.springframework.core.io.Resource
        Throws:
        IOException
      • contentLength

        public long contentLength()
                           throws IOException
        Specified by:
        contentLength in interface org.springframework.core.io.Resource
        Throws:
        IOException
      • lastModified

        public long lastModified()
                          throws IOException
        Specified by:
        lastModified in interface org.springframework.core.io.Resource
        Throws:
        IOException
      • createRelative

        public org.springframework.core.io.Resource createRelative​(String relativePath)
                                                            throws IOException
        Specified by:
        createRelative in interface org.springframework.core.io.Resource
        Throws:
        IOException
      • getFilename

        public String getFilename()
        Specified by:
        getFilename in interface org.springframework.core.io.Resource
      • getDescription

        public String getDescription()
        Specified by:
        getDescription in interface org.springframework.core.io.Resource
      • getInputStream

        public InputStream getInputStream()
                                   throws IOException
        Specified by:
        getInputStream in interface org.springframework.core.io.InputStreamSource
        Throws:
        IOException
      • getInputStream

        public InputStream getInputStream​(long start,
                                          long end)
                                   throws IOException
        Description copied from interface: RangeAwareResource
        Returns a range of bytes from the resource's content.
        Specified by:
        getInputStream in interface RangeAwareResource
        Parameters:
        start - the start of the range
        end - the end of the range
        Returns:
        an input stream with the content range
        Throws:
        IOException - if an IO error occurs