Class: Rafflesia::Artifacts

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

Instance Method Summary collapse

Constructor Details

#initialize(client) ⇒ Artifacts

Returns a new instance of Artifacts.



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

def initialize(client)
  @client = client
end

Instance Method Details

#archivesImport(associate: nil, import: nil, include_kinds: nil, include_path_substrings: nil, inventory_object_id: nil, inventory_path: nil, max_imports: nil, output_dir: nil, request_options: {}) ⇒ Rafflesia::EnvelopeArchiveArtifactImportData

POST /v1/artifacts/archives/import

Parameters:

  • associate (Boolean, nil) (defaults to: nil)
  • import (Boolean, nil) (defaults to: nil)
  • include_kinds (Array<String>, nil) (defaults to: nil)
  • include_path_substrings (Array<String>, nil) (defaults to: nil)

    Case-insensitive archive path substrings to classify/import; repeatable.

  • inventory_object_id (String, nil) (defaults to: nil)
  • inventory_path (String, nil) (defaults to: nil)
  • max_imports (Integer, nil) (defaults to: nil)
  • output_dir (String, nil) (defaults to: nil)
  • request_options (Hash) (defaults to: {})

    (see Rafflesia::Types::RequestOptions)

Returns:



24
25
26
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
# File 'lib/rafflesia/artifacts.rb', line 24

def archivesImport(
  associate: nil,
  import: nil,
  include_kinds: nil,
  include_path_substrings: nil,
  inventory_object_id: nil,
  inventory_path: nil,
  max_imports: nil,
  output_dir: nil,
  request_options: {}
)
  body = {
    'associate' => associate,
    'import' => import,
    'include_kinds' => include_kinds,
    'include_path_substrings' => include_path_substrings,
    'inventory_object_id' => inventory_object_id,
    'inventory_path' => inventory_path,
    'max_imports' => max_imports,
    'output_dir' => output_dir
  }.compact
  response = @client.request(
    method: :post,
    path: '/v1/artifacts/archives/import',
    auth: true,
    body: body,
    request_options: request_options
  )
  result = Rafflesia::EnvelopeArchiveArtifactImportData.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

#archivesInventory(allow_network: nil, content_type: nil, extract: nil, file_name: nil, include_extensions: nil, include_path_substrings: nil, kind: nil, max_download_bytes: nil, max_extracted_members: nil, max_member_bytes: nil, object_id: nil, output_dir: nil, url: nil, request_options: {}) ⇒ Rafflesia::EnvelopeArchiveInventoryData

POST /v1/artifacts/archives/inventory

Parameters:

  • allow_network (Boolean, nil) (defaults to: nil)

    Allow URL download when url is set

  • content_type (String, nil) (defaults to: nil)

    Object content type override for downloaded archives

  • extract (Boolean, nil) (defaults to: nil)
  • file_name (String, nil) (defaults to: nil)

    Filename hint used for archive format and content-type detection when url has no extension

  • include_extensions (Array<String>, nil) (defaults to: nil)
  • include_path_substrings (Array<String>, nil) (defaults to: nil)
  • kind (String, nil) (defaults to: nil)

    Object kind label for downloaded archives

  • max_download_bytes (Integer, nil) (defaults to: nil)

    Maximum remote archive download size in bytes; defaults to 500 MiB

  • max_extracted_members (Integer, nil) (defaults to: nil)
  • max_member_bytes (Integer, nil) (defaults to: nil)
  • object_id (String, nil) (defaults to: nil)
  • output_dir (String, nil) (defaults to: nil)
  • url (String, nil) (defaults to: nil)

    Remote archive URL to download into object storage before inventory; requires allow_network

  • request_options (Hash) (defaults to: {})

    (see Rafflesia::Types::RequestOptions)

Returns:



73
74
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
101
102
103
104
105
106
107
108
109
110
111
112
113
114
# File 'lib/rafflesia/artifacts.rb', line 73

def archivesInventory(
  allow_network: nil,
  content_type: nil,
  extract: nil,
  file_name: nil,
  include_extensions: nil,
  include_path_substrings: nil,
  kind: nil,
  max_download_bytes: nil,
  max_extracted_members: nil,
  max_member_bytes: nil,
  object_id: nil,
  output_dir: nil,
  url: nil,
  request_options: {}
)
  body = {
    'allow_network' => allow_network,
    'content_type' => content_type,
    'extract' => extract,
    'file_name' => file_name,
    'include_extensions' => include_extensions,
    'include_path_substrings' => include_path_substrings,
    'kind' => kind,
    'max_download_bytes' => max_download_bytes,
    'max_extracted_members' => max_extracted_members,
    'max_member_bytes' => max_member_bytes,
    'object_id' => object_id,
    'output_dir' => output_dir,
    'url' => url
  }.compact
  response = @client.request(
    method: :post,
    path: '/v1/artifacts/archives/inventory',
    auth: true,
    body: body,
    request_options: request_options
  )
  result = Rafflesia::EnvelopeArchiveInventoryData.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

#archivesMembersFind(allow_network: nil, archive_object_id: nil, content_type: nil, extract: nil, file_name: nil, include_extensions: nil, inventory_object_id: nil, inventory_path: nil, kind: nil, max_download_bytes: nil, max_extracted_members: nil, max_matches: nil, max_member_bytes: nil, output_dir: nil, path_substrings: nil, query_names: nil, query_suffixes: nil, url: nil, request_options: {}) ⇒ Rafflesia::EnvelopeArchiveMemberFindData

POST /v1/artifacts/archives/members/find

Parameters:

  • allow_network (Boolean, nil) (defaults to: nil)

    Allow URL download when url is set.

  • archive_object_id (String, nil) (defaults to: nil)

    Archive object id to inventory before matching.

  • content_type (String, nil) (defaults to: nil)

    Object content type override for downloaded archives.

  • extract (Boolean, nil) (defaults to: nil)

    Extract matching regular files into content-addressed objects when an archive source is available.

  • file_name (String, nil) (defaults to: nil)

    Filename hint used for archive format and content-type detection when url has no extension.

  • include_extensions (Array<String>, nil) (defaults to: nil)

    Archive member extensions to include; repeatable.

  • inventory_object_id (String, nil) (defaults to: nil)

    Object id containing an archive inventory manifest.

  • inventory_path (String, nil) (defaults to: nil)

    Archive inventory manifest path to inspect without re-reading the source archive.

  • kind (String, nil) (defaults to: nil)

    Object kind label for downloaded archives.

  • max_download_bytes (Integer, nil) (defaults to: nil)

    Maximum remote archive download size in bytes; defaults to 500 MiB.

  • max_extracted_members (Integer, nil) (defaults to: nil)

    Maximum extracted member count; 0 disables the limit.

  • max_matches (Integer, nil) (defaults to: nil)

    Maximum matching rows to return; missing query rows are still emitted.

  • max_member_bytes (Integer, nil) (defaults to: nil)

    Maximum bytes per extracted member; 0 disables the limit.

  • output_dir (String, nil) (defaults to: nil)

    Directory for generated inventory artifacts when an archive source is scanned.

  • path_substrings (Array<String>, nil) (defaults to: nil)

    Case-insensitive archive path substrings to find; repeatable.

  • query_names (Array<String>, nil) (defaults to: nil)

    Archive member file names to find; repeatable.

  • query_suffixes (Array<String>, nil) (defaults to: nil)

    Archive path suffixes to find; repeatable.

  • url (String, nil) (defaults to: nil)

    Remote archive URL to download into object storage before matching; requires allow_network.

  • request_options (Hash) (defaults to: {})

    (see Rafflesia::Types::RequestOptions)

Returns:



137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
# File 'lib/rafflesia/artifacts.rb', line 137

def archivesMembersFind(
  allow_network: nil,
  archive_object_id: nil,
  content_type: nil,
  extract: nil,
  file_name: nil,
  include_extensions: nil,
  inventory_object_id: nil,
  inventory_path: nil,
  kind: nil,
  max_download_bytes: nil,
  max_extracted_members: nil,
  max_matches: nil,
  max_member_bytes: nil,
  output_dir: nil,
  path_substrings: nil,
  query_names: nil,
  query_suffixes: nil,
  url: nil,
  request_options: {}
)
  body = {
    'allow_network' => allow_network,
    'archive_object_id' => archive_object_id,
    'content_type' => content_type,
    'extract' => extract,
    'file_name' => file_name,
    'include_extensions' => include_extensions,
    'inventory_object_id' => inventory_object_id,
    'inventory_path' => inventory_path,
    'kind' => kind,
    'max_download_bytes' => max_download_bytes,
    'max_extracted_members' => max_extracted_members,
    'max_matches' => max_matches,
    'max_member_bytes' => max_member_bytes,
    'output_dir' => output_dir,
    'path_substrings' => path_substrings,
    'query_names' => query_names,
    'query_suffixes' => query_suffixes,
    'url' => url
  }.compact
  response = @client.request(
    method: :post,
    path: '/v1/artifacts/archives/members/find',
    auth: true,
    body: body,
    request_options: request_options
  )
  result = Rafflesia::EnvelopeArchiveMemberFindData.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

#archivesMembersPairsExport(query_sample_regex:, target_sample_regex:, archive_artifact_manifest_object_id: nil, archive_artifact_manifest_path: nil, database: nil, include_extensions: nil, include_path_substrings: nil, inventory_object_id: nil, inventory_path: nil, max_pairs: nil, output_format: nil, output_relation: nil, partition_by: nil, preview_limit: nil, query_path_substrings: nil, relation: nil, release: nil, sort_by: nil, target_path_substrings: nil, request_options: {}) ⇒ Rafflesia::EnvelopeTableExportData

POST /v1/artifacts/archives/members/pairs/export

Parameters:

  • archive_artifact_manifest_object_id (String, nil) (defaults to: nil)

    Optional content-addressed archive artifact import manifest object id.

  • archive_artifact_manifest_path (String, nil) (defaults to: nil)

    Optional archive artifact import manifest path; when supplied, imported structure ids are copied into pair rows.

  • database (String, nil) (defaults to: nil)

    Database name published with the relation

  • include_extensions (Array<String>, nil) (defaults to: nil)

    Archive member extensions eligible for pairing; repeatable. Empty includes every regular member.

  • include_path_substrings (Array<String>, nil) (defaults to: nil)

    Case-insensitive path substrings applied before role-specific matching; repeatable.

  • inventory_object_id (String, nil) (defaults to: nil)
  • inventory_path (String, nil) (defaults to: nil)
  • max_pairs (Integer, nil) (defaults to: nil)

    Maximum unambiguous paired rows to emit; 0 emits all pairs. Missing and ambiguous groups remain visible.

  • output_format (Rafflesia::Types::ArchiveMemberPairsExportRequestOutputFormat, nil) (defaults to: nil)

    Requested durable relation format; parquet is the initial physical format

  • output_relation (String, nil) (defaults to: nil)

    Local output path or alias for a durable relation artifact

  • partition_by (Array<String>, nil) (defaults to: nil)

    Requested physical partition columns

  • preview_limit (Integer, nil) (defaults to: nil)

    When output_relation is requested, include at most this many rows as a non-pageable preview

  • query_path_substrings (Array<String>, nil) (defaults to: nil)

    Case-insensitive path substrings selecting query/model candidates; repeatable.

  • query_sample_regex (String)

    RE2 regex applied to query archive paths. Use a named sample_id capture group or first capture group.

  • relation (String, nil) (defaults to: nil)

    Requested logical relation name

  • release (String, nil) (defaults to: nil)

    Immutable database release published with the relation

  • sort_by (Array<String>, nil) (defaults to: nil)

    Requested physical sort columns

  • target_path_substrings (Array<String>, nil) (defaults to: nil)

    Case-insensitive path substrings selecting target/reference candidates; repeatable.

  • target_sample_regex (String)

    RE2 regex applied to target archive paths. Use a named sample_id capture group or first capture group.

  • request_options (Hash) (defaults to: {})

    (see Rafflesia::Types::RequestOptions)

Returns:



212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
# File 'lib/rafflesia/artifacts.rb', line 212

def archivesMembersPairsExport(
  query_sample_regex:,
  target_sample_regex:,
  archive_artifact_manifest_object_id: nil,
  archive_artifact_manifest_path: nil,
  database: nil,
  include_extensions: nil,
  include_path_substrings: nil,
  inventory_object_id: nil,
  inventory_path: nil,
  max_pairs: nil,
  output_format: nil,
  output_relation: nil,
  partition_by: nil,
  preview_limit: nil,
  query_path_substrings: nil,
  relation: nil,
  release: nil,
  sort_by: nil,
  target_path_substrings: nil,
  request_options: {}
)
  body = {
    'archive_artifact_manifest_object_id' => archive_artifact_manifest_object_id,
    'archive_artifact_manifest_path' => archive_artifact_manifest_path,
    'database' => database,
    'include_extensions' => include_extensions,
    'include_path_substrings' => include_path_substrings,
    'inventory_object_id' => inventory_object_id,
    'inventory_path' => inventory_path,
    'max_pairs' => max_pairs,
    'output_format' => output_format,
    'output_relation' => output_relation,
    'partition_by' => partition_by,
    'preview_limit' => preview_limit,
    'query_path_substrings' => query_path_substrings,
    'query_sample_regex' => query_sample_regex,
    'relation' => relation,
    'release' => release,
    'sort_by' => sort_by,
    'target_path_substrings' => target_path_substrings,
    'target_sample_regex' => target_sample_regex
  }.compact
  response = @client.request(
    method: :post,
    path: '/v1/artifacts/archives/members/pairs/export',
    auth: true,
    body: body,
    request_options: request_options
  )
  result = Rafflesia::EnvelopeTableExportData.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

#archivesSourceMetricsExport(database: nil, include_path_substrings: nil, inventory_object_id: nil, inventory_path: nil, max_depth: nil, max_files: nil, max_object_bytes: nil, output_format: nil, output_relation: nil, partition_by: nil, preview_limit: nil, relation: nil, release: nil, sort_by: nil, request_options: {}) ⇒ Rafflesia::EnvelopeTableExportData

POST /v1/artifacts/archives/source-metrics/export

Parameters:

  • database (String, nil) (defaults to: nil)

    Database name published with the relation

  • include_path_substrings (Array<String>, nil) (defaults to: nil)

    Case-insensitive archive path substrings to scan for extracted JSON metric artifacts; repeatable.

  • inventory_object_id (String, nil) (defaults to: nil)
  • inventory_path (String, nil) (defaults to: nil)
  • max_depth (Integer, nil) (defaults to: nil)

    Maximum JSON nesting depth to flatten; 0 uses the server default.

  • max_files (Integer, nil) (defaults to: nil)

    Maximum extracted JSON files to scan; 0 scans all matching files.

  • max_object_bytes (Integer, nil) (defaults to: nil)

    Maximum bytes to read from one JSON metric object; 0 uses the server default.

  • output_format (Rafflesia::Types::ArchiveSourceMetricsExportRequestOutputFormat, nil) (defaults to: nil)

    Requested durable relation format; parquet is the initial physical format

  • output_relation (String, nil) (defaults to: nil)

    Local output path or alias for a durable relation artifact

  • partition_by (Array<String>, nil) (defaults to: nil)

    Requested physical partition columns

  • preview_limit (Integer, nil) (defaults to: nil)

    When output_relation is requested, include at most this many rows as a non-pageable preview

  • relation (String, nil) (defaults to: nil)

    Requested logical relation name

  • release (String, nil) (defaults to: nil)

    Immutable database release published with the relation

  • sort_by (Array<String>, nil) (defaults to: nil)

    Requested physical sort columns

  • request_options (Hash) (defaults to: {})

    (see Rafflesia::Types::RequestOptions)

Returns:



284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
# File 'lib/rafflesia/artifacts.rb', line 284

def archivesSourceMetricsExport(
  database: nil,
  include_path_substrings: nil,
  inventory_object_id: nil,
  inventory_path: nil,
  max_depth: nil,
  max_files: nil,
  max_object_bytes: nil,
  output_format: nil,
  output_relation: nil,
  partition_by: nil,
  preview_limit: nil,
  relation: nil,
  release: nil,
  sort_by: nil,
  request_options: {}
)
  body = {
    'database' => database,
    'include_path_substrings' => include_path_substrings,
    'inventory_object_id' => inventory_object_id,
    'inventory_path' => inventory_path,
    'max_depth' => max_depth,
    'max_files' => max_files,
    'max_object_bytes' => max_object_bytes,
    'output_format' => output_format,
    'output_relation' => output_relation,
    'partition_by' => partition_by,
    'preview_limit' => preview_limit,
    'relation' => relation,
    'release' => release,
    'sort_by' => sort_by
  }.compact
  response = @client.request(
    method: :post,
    path: '/v1/artifacts/archives/source-metrics/export',
    auth: true,
    body: body,
    request_options: request_options
  )
  result = Rafflesia::EnvelopeTableExportData.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

#archivesSourceMetricsLinksExport(source_sample_regex:, database: nil, max_links: nil, metric_names: nil, output_format: nil, output_relation: nil, pairs_table_object_id: nil, pairs_table_path: nil, partition_by: nil, preview_limit: nil, relation: nil, release: nil, sort_by: nil, source_metrics_table_object_id: nil, source_metrics_table_path: nil, request_options: {}) ⇒ Rafflesia::EnvelopeTableExportData

POST /v1/artifacts/archives/source-metrics/links/export

Parameters:

  • database (String, nil) (defaults to: nil)

    Database name published with the relation

  • max_links (Integer, nil) (defaults to: nil)

    Maximum linked rows to emit; 0 emits all rows.

  • metric_names (Array<String>, nil) (defaults to: nil)

    Metric names to link, matched case-insensitively. Empty includes every metric.

  • output_format (Rafflesia::Types::SourceMetricLinksExportRequestOutputFormat, nil) (defaults to: nil)

    Requested durable relation format; parquet is the initial physical format

  • output_relation (String, nil) (defaults to: nil)

    Local output path or alias for a durable relation artifact

  • pairs_table_object_id (String, nil) (defaults to: nil)

    Object id containing an archive_member_pairs Parquet table.

  • pairs_table_path (String, nil) (defaults to: nil)

    Local archive_member_pairs Parquet table path.

  • partition_by (Array<String>, nil) (defaults to: nil)

    Requested physical partition columns

  • preview_limit (Integer, nil) (defaults to: nil)

    When output_relation is requested, include at most this many rows as a non-pageable preview

  • relation (String, nil) (defaults to: nil)

    Requested logical relation name

  • release (String, nil) (defaults to: nil)

    Immutable database release published with the relation

  • sort_by (Array<String>, nil) (defaults to: nil)

    Requested physical sort columns

  • source_metrics_table_object_id (String, nil) (defaults to: nil)

    Object id containing a source_metric_records Parquet table.

  • source_metrics_table_path (String, nil) (defaults to: nil)

    Local source_metric_records Parquet table path.

  • source_sample_regex (String)

    RE2 regex applied to source_record_key first and archive_path second. Use a named sample_id capture group or first capture group.

  • request_options (Hash) (defaults to: {})

    (see Rafflesia::Types::RequestOptions)

Returns:



347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
# File 'lib/rafflesia/artifacts.rb', line 347

def archivesSourceMetricsLinksExport(
  source_sample_regex:,
  database: nil,
  max_links: nil,
  metric_names: nil,
  output_format: nil,
  output_relation: nil,
  pairs_table_object_id: nil,
  pairs_table_path: nil,
  partition_by: nil,
  preview_limit: nil,
  relation: nil,
  release: nil,
  sort_by: nil,
  source_metrics_table_object_id: nil,
  source_metrics_table_path: nil,
  request_options: {}
)
  body = {
    'database' => database,
    'max_links' => max_links,
    'metric_names' => metric_names,
    'output_format' => output_format,
    'output_relation' => output_relation,
    'pairs_table_object_id' => pairs_table_object_id,
    'pairs_table_path' => pairs_table_path,
    'partition_by' => partition_by,
    'preview_limit' => preview_limit,
    'relation' => relation,
    'release' => release,
    'sort_by' => sort_by,
    'source_metrics_table_object_id' => source_metrics_table_object_id,
    'source_metrics_table_path' => source_metrics_table_path,
    'source_sample_regex' => source_sample_regex
  }.compact
  response = @client.request(
    method: :post,
    path: '/v1/artifacts/archives/source-metrics/links/export',
    auth: true,
    body: body,
    request_options: request_options
  )
  result = Rafflesia::EnvelopeTableExportData.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

#import(manifest_path:, allow_network: nil, fetch_structures: nil, request_options: {}) ⇒ Rafflesia::EnvelopeArtifactManifestImportData

POST /v1/artifacts/import

Parameters:

  • allow_network (Boolean, nil) (defaults to: nil)
  • fetch_structures (Boolean, nil) (defaults to: nil)
  • manifest_path (String)
  • request_options (Hash) (defaults to: {})

    (see Rafflesia::Types::RequestOptions)

Returns:



400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
# File 'lib/rafflesia/artifacts.rb', line 400

def import(
  manifest_path:,
  allow_network: nil,
  fetch_structures: nil,
  request_options: {}
)
  body = {
    'allow_network' => allow_network,
    'fetch_structures' => fetch_structures,
    'manifest_path' => manifest_path
  }.compact
  response = @client.request(
    method: :post,
    path: '/v1/artifacts/import',
    auth: true,
    body: body,
    request_options: request_options
  )
  result = Rafflesia::EnvelopeArtifactManifestImportData.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

#materialize(manifest_path:, allow_network: nil, associate_map_models: nil, download_emdb_maps: nil, max_download_bytes: nil, output_dir: nil, request_options: {}) ⇒ Rafflesia::EnvelopeArtifactMaterializeData

POST /v1/artifacts/materialize

Parameters:

  • allow_network (Boolean, nil) (defaults to: nil)
  • associate_map_models (Boolean, nil) (defaults to: nil)
  • download_emdb_maps (Boolean, nil) (defaults to: nil)
  • manifest_path (String)
  • max_download_bytes (Integer, nil) (defaults to: nil)
  • output_dir (String, nil) (defaults to: nil)
  • request_options (Hash) (defaults to: {})

    (see Rafflesia::Types::RequestOptions)

Returns:



432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
# File 'lib/rafflesia/artifacts.rb', line 432

def materialize(
  manifest_path:,
  allow_network: nil,
  associate_map_models: nil,
  download_emdb_maps: nil,
  max_download_bytes: nil,
  output_dir: nil,
  request_options: {}
)
  body = {
    'allow_network' => allow_network,
    'associate_map_models' => associate_map_models,
    'download_emdb_maps' => download_emdb_maps,
    'manifest_path' => manifest_path,
    'max_download_bytes' => max_download_bytes,
    'output_dir' => output_dir
  }.compact
  response = @client.request(
    method: :post,
    path: '/v1/artifacts/materialize',
    auth: true,
    body: body,
    request_options: request_options
  )
  result = Rafflesia::EnvelopeArtifactMaterializeData.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