abstract ActionBrick
abstract ActionBrickDeprecated
use Brick instead
Extends
Constructors
new ActionBrick()
new ActionBrick(): ActionBrick
Returns
ActionBrick
Inherited from
Properties
containsRel
static containsRel: Relation<CloudObject, CloudObject>;
Relation between a container (a CloudObject) that has children (other CloudObjects)
For example, from a folder to the contained elements or from a function to the elements needed for that function to run.
Inherited from
extendedByRel
static extendedByRel: Relation<CloudObject, CloudObject>;
Inverse relation of extendRel
Inherited from
extendRel
static extendRel: Relation<CloudObject, CloudObject>;
Model CloudObjects can inherit relations and properties
from another CloudObject model to mimic their behaviour.
Relation from a model to the CloudObject model it extends.
A --extendRel-> B
A inherits B's properties and relations.
Inherited from
instancesRel
static instancesRel: Relation<CloudObject, CloudObject>;
Inverse relation of modelRel between a model and its instances
Equivalent to modelRel.getInverse()
Inherited from
modelRel
static modelRel: Relation<CloudObject, CloudObject>;
Relation between a CloudObjectand its model
instance --modelRel-> model
Inherited from
nameProp
static nameProp: Property<string>;
Name property for all CloudObjects
Inherited from
propertyRel
static propertyRel: Relation<CloudObject, PropertyModel>;
Relation between a model and the properties it defines.
Inherited from
Methods
asInstance()
static asInstance<T>(this): T
Get this CloudObject class as a CloudObject instance.
Type Parameters
| Type Parameter |
|---|
T |
Parameters
| Parameter | Type |
|---|---|
this | Class<T> |
Returns
T
the current data type class as a CloudObject instance.
Inherited from
createWith()
static createWith<T>(
this,
properties,
model?,
source?): T
Create an instance of the specified data type (or model)
in the local datacloud (not persisted) with the specified property values.
If the model is not specified, it uses this DataType.
Type Parameters
| Type Parameter |
|---|
T |
Parameters
| Parameter | Type | Description |
|---|---|---|
this | Class<T> | - |
properties | Map<InstanceOrTag, any> | mappings of (propertyTag -> propertyValue) |
model? | InstanceOrTag | tag of the model of the CloudObject you want to create. |
source? | string |
Returns
T
newly created CloudObject
Inherited from
exists()
static exists(tag): boolean
Checks whether a CloudObject exists or not.
Parameters
| Parameter | Type | Description |
|---|---|---|
tag | InstanceOrTag | tag of the CloudObject |
Returns
boolean
true if tag is valid and references a CloudObject.
Static
Inherited from
get()
static get<T>(tag): T
Get the CloudObject whose tag is specified.
This only works if the CloudObject is already present in the local datacloud cache.
(NB: you can use a Query to retrieve a distant CloudObject)
Type Parameters
| Type Parameter |
|---|
T extends CloudObject |
Parameters
| Parameter | Type | Description |
|---|---|---|
tag | InstanceOrTag | tag of the CloudObject |
Returns
T
CloudObject specified by the tag
Static
Inherited from
getProperties()
static getProperties(): Property<any>[]
The attributes of a CloudObject are called properties. Properties can be of different types,
e.g. Property<string>, Property<number>, Property<Date>.
If a Person CloudObject has an age property, all the instances of Person can access
the age property using the same tag, the tag of the age property. This method returns all
properties defined by the Data Type associated to this class.
Returns
Property<any>[]
All properties defined for a data type
Inherited from
getRelations()
static getRelations<O, D>(this): (Relation<O, D> | Relation<D, O>)[]
Return all the relations whose origin OR destination is the CloudObject associated to this class.
Type Parameters
| Type Parameter |
|---|
O extends CloudObject |
D extends CloudObject |
Parameters
| Parameter | Type |
|---|---|
this | Class<O> |
Returns
(Relation<O, D> | Relation<D, O>)[]
All relations defined on the current data type. It can be the destination or the origin of the relations.
Inherited from
instancesOf()
static instancesOf<T>(model): Query<T, never>
Return a query starting from all instances of this Data Type.
Type Parameters
| Type Parameter |
|---|
T extends CloudObject |
Parameters
| Parameter | Type | Description |
|---|---|---|
model | InstanceOrTag | Class<T> | data type to get instances of |
Returns
Query<T, never>
A query starting from the instances of the specified model.
Inherited from
clear()
protected clear($): void
Called every time the context is cleared.
Parameters
| Parameter | Type | Description |
|---|---|---|
$ | BrickContext | the brick context |
Returns
void
Inherited from
destroy()
protected destroy($): void
Called when the brick ends its lifecycle and gets destroyed.
Parameters
| Parameter | Type | Description |
|---|---|---|
$ | BrickContext | the brick context |
Returns
void
Inherited from
equals()
equals(object): boolean
Compare this CloudObject and the given one and return whether they are identical or not.
Parameters
| Parameter | Type | Description |
|---|---|---|
object | any | the object to compare |
Returns
boolean
true if the specified object is the same CloudObject
Inherited from
follow()
follow<D>(relation): Query<D, never>
Start a query from this instance and follow the relation given as argument. The query starts from this single instance, and follows a relation to an arbitrary number of destination instances. See Query.follow | Query.follow(relation)
The following are equivalent:
myCloudObject.follow(relation);
myCloudObject.query().follow(relation);
Type Parameters
| Type Parameter |
|---|
D extends CloudObject |
Parameters
| Parameter | Type | Description |
|---|---|---|
relation | Relation<ActionBrick, D> | the relation to follow from the starting instance (this) |
Returns
Query<D, never>
query starting from this and following the relation relation as first step of the query
Inherited from
followSingle()
followSingle<D>(relation): QuerySingle<D>
Start a querySingle from this instance that follows 0..1 relations
The query starts from this instance, and follow the relation to a single
destination instance. It is equivalent to QuerySingle.from(this).follow(relation).
Type Parameters
| Type Parameter |
|---|
D extends CloudObject |
Parameters
| Parameter | Type | Description |
|---|---|---|
relation | Relation<ActionBrick, D> | to follow from this starting instance |
Returns
QuerySingle<D>
a query following 0-1 relations
Inherited from
get()
get<T>(property): T
Get the current value of the specified property for this CloudObject instance
Type Parameters
| Type Parameter |
|---|
T |
Parameters
| Parameter | Type | Description |
|---|---|---|
property | InstanceOrTag | Property<T> | property or property's tag |
Returns
T
property value
Inherited from
getInputs()
getInputs(): string[]
Return the list of inputs tags as an ordered array.
Returns
string[]
Const
Inherited from
getModel()
getModel(): CloudObject
Every CloudObject has a model which defines relations and properties its instances may have.
Returns
CloudObject
the model of this CloudObject instance as a CloudObject instance
Inherited from
getModelTag()
getModelTag(): string
Every CloudObject has a model which defines relations and properties its instances may have.
Returns
string
the tag of the model of this CloudObject instance
Inherited from
getOutputs()
getOutputs(): string[]
Return the list of outputs tags as an ordered array
Returns
string[]
Const
Inherited from
getSource()
getSource(): string
Return the source id that owns this cloud object.
Returns
string
Inherited from
getTag()
getTag(): string
Every CloudObject has a unique tag.
Returns
string
tag of the CloudObject
Inherited from
init()
protected init($): void
Called when the brick starts its lifecycle and gets initialized.
Parameters
| Parameter | Type | Description |
|---|---|---|
$ | BrickContext | the brick context |
Returns
void
Inherited from
isPersisted()
isPersisted(): boolean
Return the persistence state of this instance.
CloudObjects can either be volatile, and only live in the local cache. In this case,
the CloudObject instance is not persisted. If a CloudObjectis persisted, it is stored in an external data store.
This means that the instance can be accessible through other Olympe VMs in the same environment.
Returns
boolean
a boolean indicating if this object is persisted in a non-volatile way.
Inherited from
name()
name(): string
Every CloudObject can define a value for its nameProperty.
This method returns the current value of that property for this instance.
Returns
string
the value of the name property of this
Inherited from
observe()
observe<T>(
context,
property,
waitForValue?): Observable<T>
Get an observable to the current value of the specified property for this CloudObject instance.
The observable gets the new value each time the property gets updated in the datacloud.
The observable gets completed automatically once the specified context is Context.onClear | cleared.
If waitForValue is set to FALSE (TRUE by default), the first value received by the observable is null if there is no value at call time.
Type Parameters
| Type Parameter |
|---|
T |
Parameters
| Parameter | Type | Description |
|---|---|---|
context | Context | context to which the Observable is attached |
property | InstanceOrTag | Property<T> | property or property's tag to observe |
waitForValue? | boolean | whether the observable wait for a first value to get a value. (Default = true) |
Returns
Observable<T>
Observable of property values
Inherited from
observeProperties()
observeProperties<T>(context): Observable<[Property<T>, T]>
Get an observable to pair [property, value] for this CloudObject instance.
The observable gets the new value each time any property gets updated in the datacloud. The observable gets completed automatically once the specified context is Context.onClear | cleared.
Type Parameters
| Type Parameter |
|---|
T |
Parameters
| Parameter | Type | Description |
|---|---|---|
context | Context | Context to which the Observable will be attached |
Returns
Observable<[Property<T>, T]>
Observable of property values
Inherited from
onDestroy()
protected onDestroy($): void
Parameters
| Parameter | Type | Description |
|---|---|---|
$ | BrickContext | the brick context |
Returns
void
Deprecated
use Brick.destroy instead
Inherited from
onInit()
protected onInit($): void
Parameters
| Parameter | Type | Description |
|---|---|---|
$ | BrickContext | the brick context |
Returns
void
Deprecated
use Brick.init instead
Inherited from
onUpdate()
protected onUpdate(
$,
inputs,
outputs): void
Parameters
| Parameter | Type | Description |
|---|---|---|
$ | BrickContext | the brick context |
inputs | any[] | array of input values |
outputs | (value) => void[] | array of output setter functions. |
Returns
void
Deprecated
use Brick.update instead
Inherited from
query()
query(): Query<ActionBrick, never>
Create and return a query starting from this instance
Returns
Query<ActionBrick, never>
a query starting at this CloudObject instance
Inherited from
run()
run($): void
Run the brick itself using the specified context.
Parameters
| Parameter | Type | Description |
|---|---|---|
$ | BrickContext | the brick context |
Returns
void
Inherited from
setupExecution()
protected setupExecution($): Observable<any>
Observe the context to define when the brick update method should be called.
Parameters
| Parameter | Type | Description |
|---|---|---|
$ | BrickContext | the brick context |
Returns
Observable<any>
an observable that emit a value anytime the brick update method should be called.
Inherited from
toJSON()
toJSON(): Object
Create a Javascript object from this CloudObject current state, including its tag and property values. It provides the same result as toObject called with nameAsKey = true and inheritedProperties = false.
Returns
Object
Inherited from
toObject()
toObject(namesAsKey?, inheritedProperties?): Object
Create a Javascript object from this CloudObject current state.
Parameters
| Parameter | Type | Description |
|---|---|---|
namesAsKey? | boolean | If true, use the property name instead of the property tag as keys of the generated object. |
inheritedProperties? | boolean | If false, do not including inherited property. By default, it includes them. |
Returns
Object
Inherited from
update()
protected update(
$,
inputs,
outputs): void | Promise<void>
Called whenever the conditions to update the brick are satisfied (as defined by method configCoreUpdate).
By default, a function updates whenever an input gets a new value, but only if all inputs have a value.
Parameters
| Parameter | Type | Description |
|---|---|---|
$ | BrickContext | the brick context |
inputs | any[] | array of input values |
outputs | (any) => void[] | array of output setter functions. A setter updates a specific output value of the brick. |
Returns
void | Promise<void>