Class: GhostCrawl::DatasetsClient

Inherits:
Object
  • Object
show all
Defined in:
lib/ghostcrawl/client.rb

Overview

Manage datasets — /v1/datasets.

Instance Method Summary collapse

Constructor Details

#initialize(v1) ⇒ DatasetsClient

Returns a new instance of DatasetsClient.



851
852
853
# File 'lib/ghostcrawl/client.rb', line 851

def initialize(v1)
  @v1 = v1
end

Instance Method Details

#append(name, rows) ⇒ Object

Append rows to a dataset. Delegates to POST /v1/datasets/name/rows/append via the generated builder.



888
889
890
891
# File 'lib/ghostcrawl/client.rb', line 888

def append(name, rows)
  body = AdditionalDataBody.new({ "rows" => rows })
  ResponseHelper.to_hash(@v1.datasets.by_name(name).rows.append.post(body))
end

#create(name:, **opts) ⇒ Object

Create a new dataset. Delegates to POST /v1/datasets via the generated DatasetsRequestBuilder.



869
870
871
872
# File 'lib/ghostcrawl/client.rb', line 869

def create(name:, **opts)
  body = AdditionalDataBody.new({ "name" => name }.merge(opts.transform_keys(&:to_s)))
  ResponseHelper.to_hash(@v1.datasets.post(body))
end

#delete(name) ⇒ Object

Delete a dataset. Delegates to DELETE /v1/datasets/name via the generated builder.



876
877
878
# File 'lib/ghostcrawl/client.rb', line 876

def delete(name)
  ResponseHelper.to_hash(@v1.datasets.by_name(name).delete)
end

#get(name) ⇒ Object

Get a dataset by name. Delegates to GET /v1/datasets/name via the generated builder.



863
864
865
# File 'lib/ghostcrawl/client.rb', line 863

def get(name)
  ResponseHelper.to_hash(@v1.datasets.by_name(name).get)
end

#listObject

List all datasets. Delegates to GET /v1/datasets via the generated DatasetsRequestBuilder.



857
858
859
# File 'lib/ghostcrawl/client.rb', line 857

def list
  ResponseHelper.to_hash(@v1.datasets.get)
end

#rows(name) ⇒ Object

Get rows from a dataset. Delegates to GET /v1/datasets/name/rows via the generated builder.



882
883
884
# File 'lib/ghostcrawl/client.rb', line 882

def rows(name)
  ResponseHelper.to_hash(@v1.datasets.by_name(name).rows.get)
end