Method: GoodData::DataSource.create
- Defined in:
- lib/gooddata/models/data_source.rb
.create(opts) ⇒ Object
Create data source from json Expected keys:
- :name (mandatory)
- :alias (optional)
- :prefix (optional)
- :connectionInfo (mandatory)
- :client (mandatory)
75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 |
# File 'lib/gooddata/models/data_source.rb', line 75 def create(opts) ds_name = opts[:name] ds_alias = opts[:alias] ds_prefix = opts[:prefix] ds_connection_info = opts[:connectionInfo] GoodData.logger.info "Creating data source '#{ds_name}'" fail ArgumentError, 'Data source name has to be provided' if ds_name.nil? || ds_name.blank? fail ArgumentError, 'Data source connection info has to be provided' if ds_connection_info.nil? json = { 'dataSource' => { 'name' => ds_name, 'connectionInfo' => ds_connection_info } } json['dataSource']['alias'] = ds_alias if ds_alias json['dataSource']['prefix'] = ds_prefix if ds_prefix # Create data source c = GoodData.get_client(opts) res = c.post(DATA_SOURCES_URL, json) # create the public facing object c.create(DataSource, res) end |