Constructor
new UserFile(connection, path)
Creates an object representing a file on the user workspace.
Parameters:
| Name | Type | Description | 
|---|---|---|
connection | 
            
            Connection | A Connection object representing an established connection to an openEO back-end.  | 
        
path | 
            
            string | The path to the file, relative to the user workspace and without user ID.  | 
        
- Source:
 
Extends
Members
(protected) apiToClientNames :object.<string, string>
Type:
- object.<string, string>
 
- Overrides:
 - Source:
 
(protected) clientToApiNames :object.<string, string>
Type:
- object.<string, string>
 
- Overrides:
 - Source:
 
(protected) connection :Connection
Type:
- Overrides:
 - Source:
 
(protected) extra :object.<string, *>
Additional (non-standardized) properties received from the API.
Type:
- object.<string, *>
 
- Overrides:
 - Source:
 
(protected) lastRefreshTime :number
Type:
- number
 
- Overrides:
 - Source:
 
(readonly) modified :string
Date and time the file has lastly been modified, formatted as a RFC 3339 date-time.
Type:
- string
 
- Source:
 
(readonly) path :string
Path to the file, relative to the user's directory.
Type:
- string
 
- Source:
 
(readonly) size :number
File size in bytes as integer.
Type:
- number
 
- Source:
 
Methods
(protected) _convertToRequest(parameters) → {object.<string, *>}
Converts the object to a valid objects for API requests.
Parameters:
| Name | Type | Description | 
|---|---|---|
parameters | 
            
            object.<string, *> | 
- Overrides:
 - Source:
 
Returns:
- Type
 - object.<string, *>
 
(protected) _supports(feature) → {boolean}
Checks whether a features is supported by the API.
Parameters:
| Name | Type | Description | 
|---|---|---|
feature | 
            
            string | 
- Overrides:
 - Source:
 - See:
 
Returns:
- Type
 - boolean
 
(async) deleteFile()
Deletes the file from the user workspace.
- Source:
 
Throws:
(async) downloadFile(target) → {Promise.<(Array.<string>|void)>}
Downloads a file from the user workspace and saves it.
This method has different behaviour depending on the environment. In a NodeJS environment writes the downloaded file to the target location on the file system. In a browser environment offers the file for downloading using the specified name (folders are not supported).
Parameters:
| Name | Type | Description | 
|---|---|---|
target | 
            
            string | The target, see method description for details.  | 
        
- Source:
 
Throws:
Returns:
- Return value depends on the target and environment, see method description for details.
 
- Type
 - Promise.<(Array.<string>|void)>
 
get(name) → {*}
Get a value from the additional data that is not part of the core model, i.e. from proprietary extensions.
Parameters:
| Name | Type | Description | 
|---|---|---|
name | 
            
            string | Name of the property.  | 
        
- Overrides:
 - Source:
 
Returns:
The value, which could be of any type.
- Type
 - *
 
getAll() → {object.<string, *>}
Returns all data in the model.
- Overrides:
 - Source:
 
Returns:
- Type
 - object.<string, *>
 
getDataAge() → {number}
Returns the age of the data in seconds.
- Overrides:
 - Source:
 
Returns:
Age of the data in seconds as integer.
- Type
 - number
 
(async) retrieveFile() → {Promise.<(Stream.Readable|Blob)>}
Downloads a file from the user workspace into memory.
This method has different behaviour depending on the environment. Returns a stream in a NodeJS environment or a Blob in a browser environment.
- Source:
 
Throws:
Returns:
- Return value depends on the target and environment, see method description for details.
 
- Type
 - Promise.<(Stream.Readable|Blob)>
 
setAll(metadata) → {BaseEntity}
Converts the data from an API response into data suitable for our JS client models.
Parameters:
| Name | Type | Description | 
|---|---|---|
metadata | 
            
            object.<string, *> | JSON object originating from an API response.  | 
        
- Overrides:
 - Source:
 
Returns:
Returns the object itself.
- Type
 - BaseEntity
 
toJSON() → {object.<string, *>}
Returns a JSON serializable representation of the data that is API compliant.
- Overrides:
 - Source:
 
Returns:
- Type
 - object.<string, *>
 
(async) uploadFile(source, statusCallbacknullable) → {Promise.<UserFile>}
Uploads a file to the user workspace. If a file with the name exists, overwrites it.
This method has different behaviour depending on the environment. In a nodeJS environment the source must be a path to a file as string. In a browser environment the source must be an object from a file upload form.
Parameters:
| Name | Type | Attributes | Default | Description | 
|---|---|---|---|---|
source | 
            
            * | The source, see method description for details.  | 
        ||
statusCallback | 
            
            uploadStatusCallback | 
                
                
                    <nullable> | 
            
            
                null | Optionally, a callback that is executed on upload progress updates.  | 
        
- Source:
 
Throws:
Returns:
- Type
 - Promise.<UserFile>