Class BlobstoreFile

  • public class BlobstoreFile
    extends FileMetadata
    Represents a file in the local file service that is stored in the BlobStore. For each BlobStore file there are two instances of this class: one corresponding to the creation-handle which is write-only, and one corresponding to the blob key which is read-only. Each instance will eventually contain both the creation handle and the blob key Strings so that it is possible to find one from the other.
    • Field Detail


        public static final java.lang.String FILE_SYSTEM

        public static final java.lang.String CREATION_HANDLE_PREFIX
        See Also:
        Constant Field Values
    • Method Detail

      • buildFullPath

        public static java.lang.String buildFullPath(java.lang.String namePart)
      • create

        public static FileMetadata create(LocalFileService localFileService,
                                          Clock clock,
                                          java.lang.String fileName,
                                          java.lang.String randomString,
                                          ContentType contentType,
                                          java.util.Map<java.lang.String,java.lang.String> parameters)
        Creates a new instance for a non-finalized file.
      • newFinalizedInstance

        public static FileMetadata newFinalizedInstance(LocalFileService localFileService,
                                                        Clock clock,
                                                        ParsedFileName parsedName)
        Given a ParsedFileName for a Blobstore file that is expected to have been finalized, this method will attempt to construct and return a new FileMetadata instance for the file. If the file name represents a blob key, then an instance will be returned wrapping the blob key. If the name represents a creation handle then this method will query the datastore in order to find a blob key corresponding to the creation handle. If one is found then an instance will be returned. Otherwise null will be returned.
        An instance of FileMetadata or null if no corresponding entity could be found in the datastore.
      • getBlobInfo

        public getBlobInfo()
        Specified by:
        getBlobInfo in class FileMetadata
        the BlobInfo of the file. File must have been finalized.
      • getOutputStream

        protected getOutputStream()
        Specified by:
        getOutputStream in class FileMetadata
      • getInputStream

        protected getInputStream()
        Specified by:
        getInputStream in class FileMetadata