Class: Superset::Dashboard::Datasets::List
- Defined in:
- lib/superset/dashboard/datasets/list.rb
Constant Summary
Constants inherited from Request
Instance Attribute Summary collapse
-
#dashboard_id ⇒ Object
readonly
id - dashboard id.
-
#include_catalog_lookup ⇒ Object
readonly
id - dashboard id.
-
#include_filter_datasets ⇒ Object
readonly
id - dashboard id.
Attributes inherited from Request
Instance Method Summary collapse
- #catalogs ⇒ Object
- #databases ⇒ Object
- #datasets_details ⇒ Object
-
#initialize(dashboard_id:, include_filter_datasets: true, include_catalog_lookup: true) ⇒ List
constructor
A new instance of List.
- #perform ⇒ Object
- #rows ⇒ Object
- #schemas ⇒ Object
Methods inherited from Request
call, #query_params, #response, #result, #superset_host
Methods included from Superset::Display
#ids, #list, #result, #table, #to_h
Constructor Details
#initialize(dashboard_id:, include_filter_datasets: true, include_catalog_lookup: true) ⇒ List
Returns a new instance of List.
12 13 14 15 16 |
# File 'lib/superset/dashboard/datasets/list.rb', line 12 def initialize(dashboard_id:, include_filter_datasets: true, include_catalog_lookup: true) @dashboard_id = dashboard_id @include_filter_datasets = include_filter_datasets @include_catalog_lookup = include_catalog_lookup end |
Instance Attribute Details
#dashboard_id ⇒ Object (readonly)
id - dashboard id
10 11 12 |
# File 'lib/superset/dashboard/datasets/list.rb', line 10 def dashboard_id @dashboard_id end |
#include_catalog_lookup ⇒ Object (readonly)
id - dashboard id
10 11 12 |
# File 'lib/superset/dashboard/datasets/list.rb', line 10 def include_catalog_lookup @include_catalog_lookup end |
#include_filter_datasets ⇒ Object (readonly)
id - dashboard id
10 11 12 |
# File 'lib/superset/dashboard/datasets/list.rb', line 10 def include_filter_datasets @include_filter_datasets end |
Instance Method Details
#catalogs ⇒ Object
35 36 37 |
# File 'lib/superset/dashboard/datasets/list.rb', line 35 def catalogs datasets_details.map {|d| d[:catalog] }.compact.uniq end |
#databases ⇒ Object
31 32 33 |
# File 'lib/superset/dashboard/datasets/list.rb', line 31 def databases @databases ||= datasets_details.map {|d| d[:database] }.uniq end |
#datasets_details ⇒ Object
23 24 25 26 27 28 29 |
# File 'lib/superset/dashboard/datasets/list.rb', line 23 def datasets_details @datasets_details ||= begin datasets_list = chart_datasets + Array(additional_filter_datasets) datasets_list = include_catalog_details(datasets_list) if include_catalog_lookup datasets_list.compact end end |
#perform ⇒ Object
18 19 20 21 |
# File 'lib/superset/dashboard/datasets/list.rb', line 18 def perform response self end |
#rows ⇒ Object
43 44 45 46 47 48 49 |
# File 'lib/superset/dashboard/datasets/list.rb', line 43 def rows datasets_details.map do |d| row = [d[:id], d[:datasource_name], d[:database][:backend], d[:database][:id], d[:database][:name]] row << d[:catalog] if include_catalog_lookup row + [d[:schema], d[:filter_only]] end end |
#schemas ⇒ Object
39 40 41 |
# File 'lib/superset/dashboard/datasets/list.rb', line 39 def schemas datasets_details.map {|d| d[:schema] }.compact.uniq end |