Class: Rafflesia::DatabaseJoinDrifts

Inherits:
Object
  • Object
show all
Defined in:
lib/rafflesia/database_join_drifts.rb

Instance Method Summary collapse

Constructor Details

#initialize(client) ⇒ DatabaseJoinDrifts

Returns a new instance of DatabaseJoinDrifts.



9
10
11
# File 'lib/rafflesia/database_join_drifts.rb', line 9

def initialize(client)
  @client = client
end

Instance Method Details

#create(baseline_from_release:, baseline_to_release:, candidate_from_release:, candidate_to_release:, from_database:, to_database:, budget: nil, dataset_name: nil, dataset_version: nil, ontology_digest: nil, safety: nil, request_options: {}) ⇒ Rafflesia::EnvelopeDatabaseJoinDriftData

POST /v1/database_join_drifts

Parameters:

  • baseline_from_release (String)
  • baseline_to_release (String)
  • budget (Rafflesia::QueryBudget, nil) (defaults to: nil)
  • candidate_from_release (String)
  • candidate_to_release (String)
  • dataset_name (String, nil) (defaults to: nil)
  • dataset_version (String, nil) (defaults to: nil)
  • from_database (String)
  • ontology_digest (String, nil) (defaults to: nil)
  • safety (Rafflesia::Types::DatabaseJoinDriftRequestSafety, nil) (defaults to: nil)
  • to_database (String)
  • request_options (Hash) (defaults to: {})

    (see Rafflesia::Types::RequestOptions)

Returns:



27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
# File 'lib/rafflesia/database_join_drifts.rb', line 27

def create(
  baseline_from_release:,
  baseline_to_release:,
  candidate_from_release:,
  candidate_to_release:,
  from_database:,
  to_database:,
  budget: nil,
  dataset_name: nil,
  dataset_version: nil,
  ontology_digest: nil,
  safety: nil,
  request_options: {}
)
  body = {
    'baseline_from_release' => baseline_from_release,
    'baseline_to_release' => baseline_to_release,
    'budget' => budget,
    'candidate_from_release' => candidate_from_release,
    'candidate_to_release' => candidate_to_release,
    'dataset_name' => dataset_name,
    'dataset_version' => dataset_version,
    'from_database' => from_database,
    'ontology_digest' => ontology_digest,
    'safety' => safety,
    'to_database' => to_database
  }.compact
  response = @client.request(
    method: :post,
    path: '/v1/database_join_drifts',
    auth: true,
    body: body,
    request_options: request_options
  )
  result = Rafflesia::EnvelopeDatabaseJoinDriftData.new(response.body)
  result.last_response = Rafflesia::Types::ApiResponse.new(http_status: response.code.to_i, http_headers: response.each_header.to_h, request_id: response["x-request-id"])
  result
end