class PlaceOS::Model::Trigger::Actions
- PlaceOS::Model::Trigger::Actions
- PlaceOS::Model::SubModel
- ActiveModel::Model
- Reference
- Object
Defined in:
placeos-models/trigger/actions.crConstant Summary
-
Log =
::Log.for(self)
Constructors
- .from_json(string_or_io : String | IO, trusted : Bool = false) : self
-
.from_json(string_or_io : String | IO, root : String, trusted : Bool = false) : self
Deserializes the given JSON in string_or_io into an instance of
self
, assuming the JSON consists of an JSON object with key root, and whose value is the value to deserialize. - .from_trusted_json(string_or_io : String | IO, root : String) : self
-
.from_trusted_json(string_or_io : String | IO) : self
Serialize from a trusted JSON source
-
.from_trusted_yaml(string_or_io : String | IO) : self
Serialize from a trusted YAML source
- .from_yaml(string_or_io : String | IO, trusted : Bool = false) : self
- .new(ctx : YAML::ParseContext, node : YAML::Nodes::Node)
- .new(pull : JSON::PullParser)
- .new(rs : DB::ResultSet)
- .new(functions : Array(PlaceOS::Model::Trigger::Actions::Function) | ActiveModel::Model::None = ::ActiveModel::Model::None.new, mailers : Array(PlaceOS::Model::Trigger::Actions::Email) | ActiveModel::Model::None = ::ActiveModel::Model::None.new)
-
.new(params : HTTP::Params | Hash(String, String) | Tuple(String, String))
Initialize PlaceOS::Model::Trigger::Actions from
HTTP::Params
.
Class Method Summary
-
.attributes : Array(Symbol)
Returns all attribute keys.
- .from_rs(rs : DB::ResultSet)
Instance Method Summary
- #after_initialize(trusted : Bool)
-
#apply_defaults
Generate code to apply default values
-
#assign_attributes(functions : Array(PlaceOS::Model::Trigger::Actions::Function) | Missing = Missing, mailers : Array(PlaceOS::Model::Trigger::Actions::Email) | Missing = Missing)
Assign to multiple attributes.
-
#assign_attributes(params : HTTP::Params | Hash(String, String) | Tuple(String, String))
Assign to mulitple attributes via
HTTP::Params
. -
#assign_attributes(model : PlaceOS::Model::Trigger::Actions)
Assign to multiple attributes from a model object
- #assign_attributes_from_json(json, root : String)
- #assign_attributes_from_json(json)
- #assign_attributes_from_trusted_json(json, root : String)
-
#assign_attributes_from_trusted_json(json)
Assign each field from JSON if field exists in JSON and has changed in model
- #assign_attributes_from_trusted_yaml(yaml)
-
#assign_attributes_from_yaml(yaml)
Uses the YAML parser as JSON is valid YAML
-
#attributes
Returns a
Hash
of all attribute values -
#attributes_tuple
Returns a
NamedTuple
of all attribute values. -
#changed?
Check if any attributes have changed.
-
#changed_attributes
Returns a
Hash
with all changed attributes. -
#changed_json(io : IO) : Nil
Serialize the set of changed attributes to JSON.
-
#changed_json : String
Serialize the set of changed attributes to JSON.
-
#changed_yaml(io : IO) : Nil
Serialize the set of changed attributes to YAML.
-
#changed_yaml : String
Serialize the set of changed attributes to YAML.
-
#clear_changes_information
Reset changes for all attributes.
-
#functions : Array(PlaceOS::Model::Trigger::Actions::Function)
#functions
getter -
#functions=(value : Array(PlaceOS::Model::Trigger::Actions::Function))
Setters
#functions
setter - #functions? : Array(PlaceOS::Model::Trigger::Actions::Function) | Nil
- #functions_assigned? : Bool
-
#functions_change : Tuple(Array(PlaceOS::Model::Trigger::Actions::Function) | Nil, Array(PlaceOS::Model::Trigger::Actions::Function) | Nil) | Nil
Returns a Tuple of the previous and the current value of an instance variable if it has changed
- #functions_changed? : Bool
-
#functions_default : Array(Function)
#functions
's default value - #functions_present? : Bool
- #functions_was : Array(PlaceOS::Model::Trigger::Actions::Function) | Nil
-
#functions_will_change! : Nil
Include
#functions
in the set of changed attributes, whether it has changed or not. -
#mailers : Array(PlaceOS::Model::Trigger::Actions::Email)
#mailers
getter -
#mailers=(value : Array(PlaceOS::Model::Trigger::Actions::Email))
#mailers
setter - #mailers? : Array(PlaceOS::Model::Trigger::Actions::Email) | Nil
- #mailers_assigned? : Bool
-
#mailers_change : Tuple(Array(PlaceOS::Model::Trigger::Actions::Email) | Nil, Array(PlaceOS::Model::Trigger::Actions::Email) | Nil) | Nil
Returns a Tuple of the previous and the current value of an instance variable if it has changed
- #mailers_changed? : Bool
-
#mailers_default : Array(Email)
#mailers
's default value - #mailers_present? : Bool
- #mailers_was : Array(PlaceOS::Model::Trigger::Actions::Email) | Nil
-
#mailers_will_change! : Nil
Include
#mailers
in the set of changed attributes, whether it has changed or not. -
#persistent_attributes
Returns a
Hash
of all attributes that can be persisted. -
#restore_attributes
Reset each attribute to their previous values and clears all changes.
-
#validate_nilability
Validate that all non-nillable fields have values.
Instance methods inherited from class PlaceOS::Model::SubModel
apply_defaults
apply_defaults,
assign_attributes(params : HTTP::Params | Hash(String, String) | Tuple(String, String))assign_attributes(model : PlaceOS::Model::SubModel)
assign_attributes assign_attributes, attributes attributes, attributes_tuple attributes_tuple, persistent_attributes persistent_attributes, to_reql to_reql
Constructor methods inherited from class PlaceOS::Model::SubModel
new(ctx : YAML::ParseContext, node : YAML::Nodes::Node)new(pull : JSON::PullParser)
new(rs : DB::ResultSet) new
Class methods inherited from class PlaceOS::Model::SubModel
attributes : Array(Symbol)
attributes,
from_rs(rs : DB::ResultSet)
from_rs
Constructor Detail
Deserializes the given JSON in string_or_io into
an instance of self
, assuming the JSON consists
of an JSON object with key root, and whose value is
the value to deserialize. Will not deserialise from
fields with mass_assign: false
class User < ActiveModel::Model
attribute name : String
attribute google_id : UUID, mass_assign: false
end
User.from_json(%({"main": {"name": "Jason", "google_id": "f6f70bfb-c882-446d-8758-7ce47db39620"}}), root: "main") # => #<User:0x103131b20 @name="Jason">
Serialize from a trusted JSON source
Serialize from a trusted YAML source
Initialize PlaceOS::Model::Trigger::Actions from HTTP::Params
.
Class Method Detail
Instance Method Detail
Assign to multiple attributes.
Assign to mulitple attributes via HTTP::Params
.
Assign to multiple attributes from a model object
Assign each field from JSON if field exists in JSON and has changed in model
Setters
#functions
setter
Returns a Tuple of the previous and the current value of an instance variable if it has changed
Include #functions
in the set of changed attributes, whether it has changed or not.
Returns a Tuple of the previous and the current value of an instance variable if it has changed