Class: Superset::Dashboard::CascadeOwnership::AddNewOwner

Inherits:
Request
  • Object
show all
Defined in:
lib/superset/dashboard/cascade_ownership/add_new_owner.rb

Constant Summary

Constants inherited from Request

Request::DEFAULT_PAGE_SIZE

Instance Attribute Summary collapse

Attributes inherited from Request

#page_num, #page_size

Instance Method Summary collapse

Methods inherited from Request

call, #query_params, #response, #result, #superset_host

Methods included from Superset::Display

#ids, #list, #list_attributes, #result, #rows, #table, #title, #to_h

Constructor Details

#initialize(dashboard_id:, user_id:) ⇒ AddNewOwner

Returns a new instance of AddNewOwner.



7
8
9
10
# File 'lib/superset/dashboard/cascade_ownership/add_new_owner.rb', line 7

def initialize(dashboard_id:, user_id:)
  @dashboard_id = dashboard_id
  @user_id = user_id
end

Instance Attribute Details

#dashboard_idObject (readonly)

Returns the value of attribute dashboard_id.



5
6
7
# File 'lib/superset/dashboard/cascade_ownership/add_new_owner.rb', line 5

def dashboard_id
  @dashboard_id
end

#user_idObject (readonly)

Returns the value of attribute user_id.



5
6
7
# File 'lib/superset/dashboard/cascade_ownership/add_new_owner.rb', line 5

def user_id
  @user_id
end

Instance Method Details

#performObject



12
13
14
15
16
17
18
19
# File 'lib/superset/dashboard/cascade_ownership/add_new_owner.rb', line 12

def perform
  raise "Error: dashboard_id integer is required" unless dashboard_id.present? && dashboard_id.is_a?(Integer)
  raise "Error: user_id integer is required" unless user_id.present? && user_id.is_a?(Integer)

  add_user_to_dashboard_ownership
  add_user_to_charts_ownership
  add_user_to_datasets_ownership
end