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
# File 'app/services/curation_concern/base_actor.rb', line 20

def create
  apply_creation_data_to_curation_concern
  save && assign_remote_identifiers_if_applicable
end

#create!Object



15
16
17
18
# File 'app/services/curation_concern/base_actor.rb', line 15

def create!
  apply_creation_data_to_curation_concern
  save! && assign_remote_identifiers_if_applicable
end

#updateObject



44
45
46
# File 'app/services/curation_concern/base_actor.rb', line 44

def update
  save
end

#update!Object



40
41
42
# File 'app/services/curation_concern/base_actor.rb', line 40

def update!
  save!
end