Module: Operationable::Persisters::Database

Included in:
OperationJob
Defined in:
lib/operationable/persisters/database.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.create(q_options, props) ⇒ Object



5
6
7
8
9
# File 'lib/operationable/persisters/database.rb', line 5

def self.create(q_options, props)
  ::OperationCallback.create(
    q_options: q_options, props: props, status: Operationable::Persisters::Base::STATUS_INIT
  )
end

Instance Method Details

#database_statusObject



19
20
21
# File 'lib/operationable/persisters/database.rb', line 19

def database_status
  ::OperationCallback.find(op_cb_id)
end

#database_status=(new_status) ⇒ Object



23
24
25
26
27
# File 'lib/operationable/persisters/database.rb', line 23

def database_status=(new_status)
  ::OperationCallback.find(op_cb_id).update(
    new_status.reduce({uuid: uuid}){ |acc, o| acc.merge(o) }
  )
end

#notify_databaseObject



11
12
13
# File 'lib/operationable/persisters/database.rb', line 11

def notify_database
  self.database_status = [{status: Operationable::Persisters::Base::STATUS_QUEUED}]
end

#op_cb_idObject



15
16
17
# File 'lib/operationable/persisters/database.rb', line 15

def op_cb_id
  arguments.first[:q_options][:op_cb_id]
end