class PlaceOS::Model::JsonSchema
- PlaceOS::Model::JsonSchema
- PlaceOS::Model::ModelBase
- RethinkORM::Base
- ActiveModel::Model
- Reference
- Object
Included Modules
- RethinkORM::Timestamps
Defined in:
placeos-models/json_schema.crConstant Summary
-
CALLBACKS =
{before_save: [] of Nil, after_save: [] of Nil, before_create: [do self.created_at = self.updated_at = Time.utc end] of Nil, after_create: [] of Nil, before_update: [do self.updated_at = Time.utc end] of Nil, after_update: [] of Nil, before_destroy: [] of Nil, after_destroy: [] of Nil}
-
Log =
::Log.for(self)
Constructors
-
.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
- .new(ctx : YAML::ParseContext, node : YAML::Nodes::Node)
- .new(created_at : Time | Nil = nil, updated_at : Time | Nil = nil, name : String | Nil = nil, description : String | Nil = nil, schema : JSON::Any | Nil = nil, id : String | Nil | Nil = nil)
-
.new(params : HTTP::Params | Hash(String, String) | Tuple(String, String))
Initialize PlaceOS::Model::JsonSchema from
HTTP::Params
.
Class Method Summary
-
.attributes : Array(Symbol)
Returns all attribute keys.
- .elastic
- .table_name
Instance Method Summary
-
#after_create
Base class for all Engine models
-
#after_destroy
Base class for all Engine models
-
#after_save
Base class for all Engine models
-
#after_update
Base class for all Engine models
-
#apply_defaults
Generate code to apply default values
-
#assign_attributes(created_at : Time | Missing = Missing, updated_at : Time | Missing = Missing, name : String | Missing = Missing, description : String | Missing = Missing, schema : JSON::Any | Missing = Missing, id : String | Nil | 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_from_json(json)
- #assign_attributes_from_trusted_json(json)
- #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. -
#before_create
Base class for all Engine models
-
#before_destroy
Base class for all Engine models
-
#before_save
Base class for all Engine models
-
#before_update
Base class for all Engine models
-
#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.
-
#created_at : Time
#created_at
getter -
#created_at=(value : Time)
Override the map json
#created_at
setter -
#created_at_change
Returns
{ created_at_was, created_at }
if#created_at
has changed. -
#created_at_changed?
Check if
#created_at
is in the set of changed attributes. -
#created_at_default : Time
#created_at
's default value -
#created_at_was : Time?
Returns the previous value of
#created_at
. -
#created_at_will_change!
Include
#created_at
in the set of changed attributes, whether it has changed or not. -
#description : String
#description
getter -
#description=(value : String)
#description
setter -
#description_change
Returns
{ description_was, description }
if#description
has changed. -
#description_changed?
Check if
#description
is in the set of changed attributes. -
#description_default : String
#description
's default value -
#description_was : String?
Returns the previous value of
#description
. -
#description_will_change!
Include
#description
in the set of changed attributes, whether it has changed or not. -
#id : String | Nil
#id
getter -
#id=(value : String | Nil)
#id
setter -
#id_change
Returns
{ id_was, id }
if#id
has changed. -
#id_changed?
Check if
#id
is in the set of changed attributes. -
#id_was : String?
Returns the previous value of
#id
. -
#id_will_change!
Include
#id
in the set of changed attributes, whether it has changed or not. - #metadata
-
#name : String
#name
getter -
#name=(value : String)
#name
setter -
#name_change
Returns
{ name_was, name }
if#name
has changed. -
#name_changed?
Check if
#name
is in the set of changed attributes. -
#name_default : String
#name
's default value -
#name_was : String?
Returns the previous value of
#name
. -
#name_will_change!
Include
#name
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.
-
#run_create_callbacks(&)
Wrap a block with callbacks for the appropriate crud operation
-
#run_destroy_callbacks(&)
Base class for all Engine models
-
#run_save_callbacks(&)
Base class for all Engine models
-
#run_update_callbacks(&)
Base class for all Engine models
-
#schema : JSON::Any
#schema
getter -
#schema=(value : JSON::Any)
#schema
setter -
#schema_change
Returns
{ schema_was, schema }
if#schema
has changed. -
#schema_changed?
Check if
#schema
is in the set of changed attributes. -
#schema_default : JSON::Any
#schema
's default value -
#schema_was : JSON::Any?
Returns the previous value of
#schema
. -
#schema_will_change!
Include
#schema
in the set of changed attributes, whether it has changed or not. - #table_name
- #to_json(json : JSON::Builder)
- #to_yaml(__temp_1413 : YAML::Nodes::Builder)
-
#updated_at : Time
#updated_at
getter -
#updated_at=(value : Time)
#updated_at
setter -
#updated_at_change
Returns
{ updated_at_was, updated_at }
if#updated_at
has changed. -
#updated_at_changed?
Check if
#updated_at
is in the set of changed attributes. -
#updated_at_default : Time
#updated_at
's default value -
#updated_at_was : Time?
Returns the previous value of
#updated_at
. -
#updated_at_will_change!
Include
#updated_at
in the set of changed attributes, whether it has changed or not. -
#validate_nilability
Validate that all non-nillable fields have values.
Instance methods inherited from class PlaceOS::Model::ModelBase
after_create
after_create,
after_destroy
after_destroy,
after_save
after_save,
after_update
after_update,
apply_defaults
apply_defaults,
assign_attributes(id : String | Nil | Missing = Missing)assign_attributes(params : HTTP::Params | Hash(String, String) | Tuple(String, String)) assign_attributes, attributes attributes, attributes_tuple attributes_tuple, before_create before_create, before_destroy before_destroy, before_save before_save, before_update before_update, persistent_attributes persistent_attributes, run_create_callbacks(&) run_create_callbacks, run_destroy_callbacks(&) run_destroy_callbacks, run_save_callbacks(&) run_save_callbacks, run_update_callbacks(&) run_update_callbacks
Class methods inherited from class PlaceOS::Model::ModelBase
attributes : Array(Symbol)
attributes
Constructor Detail
Serialize from a trusted JSON source
Serialize from a trusted YAML source
Initialize PlaceOS::Model::JsonSchema from HTTP::Params
.
Class Method Detail
Instance Method Detail
Base class for all Engine models
Base class for all Engine models
Base class for all Engine models
Base class for all Engine models
Assign to multiple attributes.
Assign to mulitple attributes via HTTP::Params
.
Base class for all Engine models
Base class for all Engine models
Base class for all Engine models
Base class for all Engine models
Include #created_at
in the set of changed attributes, whether it has changed or not.
Include #description
in the set of changed attributes, whether it has changed or not.
Include #name
in the set of changed attributes, whether it has changed or not.
Base class for all Engine models
Base class for all Engine models
Base class for all Engine models
Include #schema
in the set of changed attributes, whether it has changed or not.
Include #updated_at
in the set of changed attributes, whether it has changed or not.