Constructor
new Service(connection, serviceId)
Creates an object representing a secondary web service stored at the back-end.
Parameters:
Name | Type | Description |
---|---|---|
connection |
Connection | A Connection object representing an established connection to an openEO back-end. |
serviceId |
string | The service ID. |
- Source:
Extends
Members
(protected) apiToClientNames :object.<string, string>
Type:
- object.<string, string>
- Overrides:
- Source:
(readonly) attributes :object.<string, *>
Additional attributes of the secondary web service, e.g. available layers for a WMS based on the bands in the underlying GeoTiff.
Type:
- object.<string, *>
- Source:
(readonly, nullable) budget :number
Maximum amount of costs the request is allowed to produce in the currency specified by the back-end.
Type:
- number
- Source:
(protected) clientToApiNames :object.<string, string>
Type:
- object.<string, string>
- Overrides:
- Source:
(readonly) configuration :object.<string, *>
Map of configuration settings, i.e. the setting names supported by the secondary web service combined with actual values.
Type:
- object.<string, *>
- Source:
(protected) connection :Connection
Type:
- Overrides:
- Source:
(readonly, nullable) costs :number
An amount of money or credits in the currency specified by the back-end.
Type:
- number
- Source:
(readonly) created :string
Date and time of creation, formatted as a RFC 3339 date-time.
Type:
- string
- Source:
(readonly, nullable) description :string
Type:
- string
- Source:
(readonly) enabled :boolean
Type:
- boolean
- Source:
(protected) extra :object.<string, *>
Additional (non-standardized) properties received from the API.
Type:
- object.<string, *>
- Overrides:
- Source:
(readonly) id :string
The identifier of the service.
Type:
- string
- Source:
(protected) lastRefreshTime :number
Type:
- number
- Overrides:
- Source:
(readonly) plan :string
The billing plan to process and charge the service with.
Type:
- string
- Source:
(readonly) process :Process
The process chain to be executed.
Type:
- Source:
(readonly, nullable) title :string
Type:
- string
- Source:
(readonly) type :string
Web service type (protocol / standard) that is exposed.
Type:
- string
- Source:
(readonly) url :string
URL at which the secondary web service is accessible
Type:
- string
- 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
debugService() → {Logs}
Get logs for the secondary web service from the back-end.
- Source:
Returns:
- Type
- Logs
(async) deleteService()
Deletes the secondary web service from the back-end.
- Source:
Throws:
(async) describeService() → {Promise.<Service>}
Updates the data stored in this object by requesting the secondary web service metadata from the back-end.
- Source:
Throws:
Returns:
The updates service object (this).
- Type
- Promise.<Service>
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
monitorService(callback, intervalopt, requestLogsopt) → {function}
Checks for new log entries every x seconds.
On every status change (enabled/disabled) observed or on new log entries
(if supported by the back-end and not disabled via requestLogs
), the
callback is executed. It may also be executed once at the beginning.
The callback receives the updated service (this object) and the logs (array) passed.
Returns a function that can be called to stop monitoring the service manually. The monitoring must be stopped manually, otherwise it runs forever.
This is only supported if describeService is supported by the back-end.
Parameters:
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
callback |
function | |||
interval |
number |
<optional> |
60 | Interval between update requests, in seconds as integer. |
requestLogs |
boolean |
<optional> |
true | Enables/Disables requesting logs |
- Source:
Throws:
Returns:
- Type
- function
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) updateService(parameters) → {Promise.<Service>}
Modifies the secondary web service at the back-end and afterwards updates this object, too.
Parameters:
Name | Type | Description | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
parameters |
object | An object with properties to update, each of them is optional, but at least one of them must be specified. Additional properties can be set if the server supports them. Properties
|
- Source:
Throws:
Returns:
The updated service object (this).
- Type
- Promise.<Service>