com.google.appengine.api.files.dev
Class BlobstoreFile
- java.lang.Object
-
- com.google.appengine.api.files.dev.FileMetadata
-
- com.google.appengine.api.files.dev.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.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.google.appengine.api.files.dev.FileMetadata
FileMetadata.LockState, FileMetadata.OpenState
-
-
Field Summary
Fields Modifier and Type Field and Description static java.lang.StringCREATION_HANDLE_PREFIXstatic java.lang.StringFILE_SYSTEM-
Fields inherited from class com.google.appengine.api.files.dev.FileMetadata
appendName, contentType, currentSequenceKey, finalized, readName, tempBytes, tempBytesSizeWhenFinalized
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method and Description static java.lang.StringbuildFullPath(java.lang.String namePart)static FileMetadatacreate(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.com.google.appengine.api.blobstore.BlobInfogetBlobInfo()protected java.io.InputStreamgetInputStream()protected java.io.OutputStreamgetOutputStream()static FileMetadatanewFinalizedInstance(LocalFileService localFileService, Clock clock, ParsedFileName parsedName)Given aParsedFileNamefor a Blobstore file that is expected to have been finalized, this method will attempt to construct and return a newFileMetadatainstance for the file.voidsetFinalized()-
Methods inherited from class com.google.appengine.api.files.dev.FileMetadata
append, checkParameters, copy, getAppendName, getContentType, getLockState, getOpenState, getTempBytesSize, isFinalized, isOpenInDifferentSession, lock, newReadableInstance, read, saveBlobInfo, setState
-
-
-
-
Field Detail
-
FILE_SYSTEM
public static final java.lang.String FILE_SYSTEM
-
CREATION_HANDLE_PREFIX
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 aParsedFileNamefor a Blobstore file that is expected to have been finalized, this method will attempt to construct and return a newFileMetadatainstance 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. Otherwisenullwill be returned.- Returns:
- An instance of
FileMetadataornullif no corresponding entity could be found in the datastore.
-
getBlobInfo
public com.google.appengine.api.blobstore.BlobInfo getBlobInfo()
- Specified by:
getBlobInfoin classFileMetadata- Returns:
- the
BlobInfoof the file. File must have been finalized.
-
setFinalized
public void setFinalized()
- Overrides:
setFinalizedin classFileMetadata
-
getOutputStream
protected java.io.OutputStream getOutputStream() throws java.io.IOException- Specified by:
getOutputStreamin classFileMetadata- Throws:
java.io.IOException
-
getInputStream
protected java.io.InputStream getInputStream() throws java.io.IOException- Specified by:
getInputStreamin classFileMetadata- Throws:
java.io.IOException
-
-