Class: Sufia::Arkivo::CreateSubscriptionJob

Inherits:
Object
  • Object
show all
Defined in:
lib/sufia/arkivo/create_subscription_job.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(user_key) ⇒ CreateSubscriptionJob

Returns a new instance of CreateSubscriptionJob.



13
14
15
16
# File 'lib/sufia/arkivo/create_subscription_job.rb', line 13

def initialize(user_key)
  @user = ::User.find_by_user_key(user_key)
  validate_user!
end

Instance Attribute Details

#userObject (readonly)

Returns the value of attribute user.



7
8
9
# File 'lib/sufia/arkivo/create_subscription_job.rb', line 7

def user
  @user
end

Instance Method Details

#queue_nameObject



9
10
11
# File 'lib/sufia/arkivo/create_subscription_job.rb', line 9

def queue_name
  :arkivo_subscription
end

#runObject



18
19
20
21
22
23
24
25
26
# File 'lib/sufia/arkivo/create_subscription_job.rb', line 18

def run
  # post json to API
  response = post_to_api
  # parse results
  subscription_path = response.headers['Location']
  # create subscription
  user.arkivo_subscription = subscription_path
  user.save
end