(Quick Reference)
CloudFile
Purpose
This is an abstract class implementation for manipulating files in the cloud.
Examples
Below is an example of how a CloudFile might be used. Typically you would not use this class directly but rather use an implementation of this class. (i.e.
LocalFile
or
S3File
)
CloudFile file = new CloudFile(provider: provider, parent: directory , name: name)file.text = "Setting test Content"
file.contentType = "text/plain"
if(!file.exists()) {
file.save()
}
Description
The CloudFile Interface supports the following Methods and Properties:
name
- Property for setting the file name or retrieving.
getInputStream()
- Retrieve an input stream containing the contents of the file
getText()
- Get a String instance of the contents of the file. (Optionally pass an encoding)
getBytes()
- Get a byte array of the contents of this file.
getParent()
- Get reference to the Directory object this file is stored in.
setBytes()
- Set the contents of this file to a byte array (note in most cases save() must be called to commit this to the cloud).
setText()
- Set the contents of this file to a String value (note in most cases save() must be called to commit this to the cloud).
contentType
- Get or set the contentType of the file.
contentLength
- Get or set the contentLength of the file.
exists()
- Test if the file actually exists or not on the server
isDirectory()
- Returns false in most cases (LocalStorage implementations may return true)
isFile()
- Returns true in most cases (LocalStorage implementation is the exception)
setMetaAttribute()
- Set a key with a value for the file.
getMetaAttribute()
- Get value of meta attribtue.
getMetaAttribtues()
- Get a Map of all metadata.
- @removeMetaAttribute() - Remove an attribute on the file.
save()
- Save the file to the server.
delete()
- Delete the file from the server.