Class: CurationConcern::BaseActor

Inherits:
Object
  • Object
show all
Defined in:
app/services/curation_concern/base_actor.rb

Overview

The CurationConcern base actor should respond to three primary actions:

  • #create

  • #update

  • #delete

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(curation_concern, user, input_attributes) ⇒ BaseActor

Returns a new instance of BaseActor.



8
9
10
11
12
13
# File 'app/services/curation_concern/base_actor.rb', line 8

def initialize(curation_concern, user, input_attributes)
  @curation_concern = curation_concern
  @user = user
  @attributes = input_attributes.dup.with_indifferent_access
  @visibility = attributes[:visibility]
end

Instance Attribute Details

#attributesObject (readonly)

Returns the value of attribute attributes.



7
8
9
# File 'app/services/curation_concern/base_actor.rb', line 7

def attributes
  @attributes
end

#curation_concernObject (readonly)

Returns the value of attribute curation_concern.



7
8
9
# File 'app/services/curation_concern/base_actor.rb', line 7

def curation_concern
  @curation_concern
end

#userObject (readonly)

Returns the value of attribute user.



7
8
9
# File 'app/services/curation_concern/base_actor.rb', line 7

def user
  @user
end

Instance Method Details

#createObject



20
21
22
23
24
# File 'app/services/curation_concern/base_actor.rb', line 20

def create
  apply_creation_data_to_curation_concern
  apply_save_data_to_curation_concern
  save
end

#updateObject



26
27
28
29
30
# File 'app/services/curation_concern/base_actor.rb', line 26

def update
  apply_update_data_to_curation_concern
  apply_save_data_to_curation_concern
  save
end