class

Notification::DeleteOperation

Inherits Avram::DeleteOperation < Avram::AddColumnAttributes < Avram::InheritColumnAttributes < Avram::DeleteCallbacks < Avram::AfterCommitCallback < Avram::CallbackHelpers < Avram::ParamKeyOverride < Avram::OperationErrors < Avram::Validations < Avram::DefineAttribute < Avram::NeedyInitializerAndDeleteMethods < Reference < Object

Constants

ATTRIBUTES = [] of Nil
COLUMN_ATTRIBUTES = [{name: id, type: Int64, nilable: false, autogenerated: true, value: nil, serialized: false, allow_blank: false}, {name: created_at, type: Time, nilable: false, autogenerated: true, value: nil, serialized: false, allow_blank: false}, {name: updated_at, type: Time, nilable: false, autogenerated: true, value: nil, serialized: false, allow_blank: false}, {name: notification_type, type: Notification::NotificationType, nilable: false, autogenerated: false, value: nil, serialized: false, allow_blank: false}, {name: status, type: Notification::Status, nilable: false, autogenerated: false, value: Notification::Status::Pending, serialized: false, allow_blank: false}, {name: title, type: String, nilable: false, autogenerated: false, value: nil, serialized: false, allow_blank: false}, {name: message, type: String, nilable: false, autogenerated: false, value: nil, serialized: false, allow_blank: false}, {name: scheduled_for, type: Time, nilable: true, autogenerated: false, value: nil, serialized: false, allow_blank: false}, {name: sent_at, type: Time, nilable: true, autogenerated: false, value: nil, serialized: false, allow_blank: false}, {name: user_id, type: User::PrimaryKeyType, nilable: false, autogenerated: false, value: nil, serialized: false, allow_blank: false}, {name: event_id, type: Event::PrimaryKeyType, nilable: true, autogenerated: false, value: nil, serialized: false, allow_blank: false}] of Nil
OPERATION_NEEDS = [] of Nil

Constructors

new(record : T, params : Avram::Paramable, id : Int64 | Avram::Nothing = IGNORE, created_at : Time | Avram::Nothing = IGNORE, updated_at : Time | Avram::Nothing = IGNORE, notification_type : Notification::NotificationType | Avram::Nothing = IGNORE, status : Notification::Status | Avram::Nothing = IGNORE, title : String | Avram::Nothing = IGNORE, message : String | Avram::Nothing = IGNORE, scheduled_for : Time | Avram::Nothing | Nil = IGNORE, sent_at : Time | Avram::Nothing | Nil = IGNORE, user_id : User::PrimaryKeyType | Avram::Nothing = IGNORE, event_id : Event::PrimaryKeyType | Avram::Nothing | Nil = IGNORE)

This is called at the end so @type will be of the subclass, and not the parent abstract class.

new(record : T, id : Int64 | Avram::Nothing = IGNORE, created_at : Time | Avram::Nothing = IGNORE, updated_at : Time | Avram::Nothing = IGNORE, notification_type : Notification::NotificationType | Avram::Nothing = IGNORE, status : Notification::Status | Avram::Nothing = IGNORE, title : String | Avram::Nothing = IGNORE, message : String | Avram::Nothing = IGNORE, scheduled_for : Time | Avram::Nothing | Nil = IGNORE, sent_at : Time | Avram::Nothing | Nil = IGNORE, user_id : User::PrimaryKeyType | Avram::Nothing = IGNORE, event_id : Event::PrimaryKeyType | Avram::Nothing | Nil = IGNORE)

This is called at the end so @type will be of the subclass, and not the parent abstract class.

Class methods

delete(record : T, params, id : Int64 | Avram::Nothing = IGNORE, created_at : Time | Avram::Nothing = IGNORE, updated_at : Time | Avram::Nothing = IGNORE, notification_type : Notification::NotificationType | Avram::Nothing = IGNORE, status : Notification::Status | Avram::Nothing = IGNORE, title : String | Avram::Nothing = IGNORE, message : String | Avram::Nothing = IGNORE, scheduled_for : Time | Avram::Nothing | Nil = IGNORE, sent_at : Time | Avram::Nothing | Nil = IGNORE, user_id : User::PrimaryKeyType | Avram::Nothing = IGNORE, event_id : Event::PrimaryKeyType | Avram::Nothing | Nil = IGNORE, &)

This is called at the end so @type will be of the subclass, and not the parent abstract class.

delete(record : T, id : Int64 | Avram::Nothing = IGNORE, created_at : Time | Avram::Nothing = IGNORE, updated_at : Time | Avram::Nothing = IGNORE, notification_type : Notification::NotificationType | Avram::Nothing = IGNORE, status : Notification::Status | Avram::Nothing = IGNORE, title : String | Avram::Nothing = IGNORE, message : String | Avram::Nothing = IGNORE, scheduled_for : Time | Avram::Nothing | Nil = IGNORE, sent_at : Time | Avram::Nothing | Nil = IGNORE, user_id : User::PrimaryKeyType | Avram::Nothing = IGNORE, event_id : Event::PrimaryKeyType | Avram::Nothing | Nil = IGNORE, &)

This is called at the end so @type will be of the subclass, and not the parent abstract class.

delete(record : T, params : Hash, **named_args, &)

This is called at the end so @type will be of the subclass, and not the parent abstract class.

delete!(record : T, params, id : Int64 | Avram::Nothing = IGNORE, created_at : Time | Avram::Nothing = IGNORE, updated_at : Time | Avram::Nothing = IGNORE, notification_type : Notification::NotificationType | Avram::Nothing = IGNORE, status : Notification::Status | Avram::Nothing = IGNORE, title : String | Avram::Nothing = IGNORE, message : String | Avram::Nothing = IGNORE, scheduled_for : Time | Avram::Nothing | Nil = IGNORE, sent_at : Time | Avram::Nothing | Nil = IGNORE, user_id : User::PrimaryKeyType | Avram::Nothing = IGNORE, event_id : Event::PrimaryKeyType | Avram::Nothing | Nil = IGNORE)

This is called at the end so @type will be of the subclass, and not the parent abstract class.

delete!(record : T, id : Int64 | Avram::Nothing = IGNORE, created_at : Time | Avram::Nothing = IGNORE, updated_at : Time | Avram::Nothing = IGNORE, notification_type : Notification::NotificationType | Avram::Nothing = IGNORE, status : Notification::Status | Avram::Nothing = IGNORE, title : String | Avram::Nothing = IGNORE, message : String | Avram::Nothing = IGNORE, scheduled_for : Time | Avram::Nothing | Nil = IGNORE, sent_at : Time | Avram::Nothing | Nil = IGNORE, user_id : User::PrimaryKeyType | Avram::Nothing = IGNORE, event_id : Event::PrimaryKeyType | Avram::Nothing | Nil = IGNORE)

This is called at the end so @type will be of the subclass, and not the parent abstract class.

delete!(record : T, params : Hash, **named_args)

This is called at the end so @type will be of the subclass, and not the parent abstract class.

Instance methods

attributes
created_at
created_at=(_value)
delete_status
delete_status=(delete_status : OperationStatus)
event_id
event_id=(_value)
id
id=(_value)
message
message=(_value)
notification_type
notification_type=(_value)
params
permitted_params
record
required_attributes
scheduled_for
scheduled_for=(_value)
sent_at
sent_at=(_value)
set_attributes(id : Int64 | Avram::Nothing = IGNORE, created_at : Time | Avram::Nothing = IGNORE, updated_at : Time | Avram::Nothing = IGNORE, notification_type : Notification::NotificationType | Avram::Nothing = IGNORE, status : Notification::Status | Avram::Nothing = IGNORE, title : String | Avram::Nothing = IGNORE, message : String | Avram::Nothing = IGNORE, scheduled_for : Time | Avram::Nothing | Nil = IGNORE, sent_at : Time | Avram::Nothing | Nil = IGNORE, user_id : User::PrimaryKeyType | Avram::Nothing = IGNORE, event_id : Event::PrimaryKeyType | Avram::Nothing | Nil = IGNORE)

This is called at the end so @type will be of the subclass, and not the parent abstract class.

set_created_at_from_param(_value)
set_event_id_from_param(_value)
set_id_from_param(_value)
set_message_from_param(_value)
set_notification_type_from_param(_value)
set_scheduled_for_from_param(_value)
set_sent_at_from_param(_value)
set_status_from_param(_value)
set_title_from_param(_value)
set_updated_at_from_param(_value)
set_user_id_from_param(_value)
status
status=(_value)
title
title=(_value)
updated_at
updated_at=(_value)
user_id
user_id=(_value)

Macros

param_key(key)