Skip to content

/AWS1/IF_OMX=>CREATEMULTIPARTREADSETUPLOAD()

About CreateMultipartReadSetUpload

Initiates a multipart read set upload for uploading partitioned source files into a sequence store. You can directly import source files from an EC2 instance and other local compute, or from an S3 bucket. To separate these source files into parts, use the split operation. Each part cannot be larger than 100 MB. If the operation is successful, it provides an uploadId which is required by the UploadReadSetPart API operation to upload parts into a sequence store.

To continue uploading a multipart read set into your sequence store, you must use the UploadReadSetPart API operation to upload each part individually following the steps below:

  • Specify the uploadId obtained from the previous call to CreateMultipartReadSetUpload.

  • Upload parts for that uploadId.

When you have finished uploading parts, use the CompleteMultipartReadSetUpload API to complete the multipart read set upload and to retrieve the final read set IDs in the response.

To learn more about creating parts and the split operation, see Direct upload to a sequence store in the Amazon Web Services HealthOmics User Guide.

Method Signature

IMPORTING

Required arguments:

iv_sequencestoreid TYPE /AWS1/OMXSEQUENCESTOREID /AWS1/OMXSEQUENCESTOREID

The sequence store ID for the store that is the destination of the multipart uploads.

iv_sourcefiletype TYPE /AWS1/OMXFILETYPE /AWS1/OMXFILETYPE

The type of file being uploaded.

iv_subjectid TYPE /AWS1/OMXSUBJECTID /AWS1/OMXSUBJECTID

The source's subject ID.

iv_sampleid TYPE /AWS1/OMXSAMPLEID /AWS1/OMXSAMPLEID

The source's sample ID.

iv_name TYPE /AWS1/OMXREADSETNAME /AWS1/OMXREADSETNAME

The name of the read set.

Optional arguments:

iv_clienttoken TYPE /AWS1/OMXCLIENTTOKEN /AWS1/OMXCLIENTTOKEN

An idempotency token that can be used to avoid triggering multiple multipart uploads.

iv_generatedfrom TYPE /AWS1/OMXGENERATEDFROM /AWS1/OMXGENERATEDFROM

Where the source originated.

iv_referencearn TYPE /AWS1/OMXREFERENCEARN /AWS1/OMXREFERENCEARN

The ARN of the reference.

iv_description TYPE /AWS1/OMXREADSETDESCRIPTION /AWS1/OMXREADSETDESCRIPTION

The description of the read set.

it_tags TYPE /AWS1/CL_OMXTAGMAP_W=>TT_TAGMAP TT_TAGMAP

Any tags to add to the read set.

RETURNING

oo_output TYPE REF TO /aws1/cl_omxcrempreadsetuplo01 /AWS1/CL_OMXCREMPREADSETUPLO01

Domain /AWS1/RT_ACCOUNT_ID
Primitive Type NUMC

Examples

Syntax Example

This is an example of the syntax for calling the method. It includes every possible argument and initializes every possible value. The data provided is not necessarily semantically accurate (for example the value "string" may be provided for something that is intended to be an instance ID, or in some cases two arguments may be mutually exclusive). The syntax shows the ABAP syntax for creating the various data structures.

DATA(lo_result) = lo_client->/aws1/if_omx~createmultipartreadsetupload(
  it_tags = VALUE /aws1/cl_omxtagmap_w=>tt_tagmap(
    (
      VALUE /aws1/cl_omxtagmap_w=>ts_tagmap_maprow(
        key = |string|
        value = new /aws1/cl_omxtagmap_w( |string| )
      )
    )
  )
  iv_clienttoken = |string|
  iv_description = |string|
  iv_generatedfrom = |string|
  iv_name = |string|
  iv_referencearn = |string|
  iv_sampleid = |string|
  iv_sequencestoreid = |string|
  iv_sourcefiletype = |string|
  iv_subjectid = |string|
).

This is an example of reading all possible response values

lo_result = lo_result.
IF lo_result IS NOT INITIAL.
  lv_sequencestoreid = lo_result->get_sequencestoreid( ).
  lv_uploadid = lo_result->get_uploadid( ).
  lv_filetype = lo_result->get_sourcefiletype( ).
  lv_subjectid = lo_result->get_subjectid( ).
  lv_sampleid = lo_result->get_sampleid( ).
  lv_generatedfrom = lo_result->get_generatedfrom( ).
  lv_referencearn = lo_result->get_referencearn( ).
  lv_readsetname = lo_result->get_name( ).
  lv_readsetdescription = lo_result->get_description( ).
  LOOP AT lo_result->get_tags( ) into ls_row.
    lv_key = ls_row-key.
    lo_value = ls_row-value.
    IF lo_value IS NOT INITIAL.
      lv_tagvalue = lo_value->get_value( ).
    ENDIF.
  ENDLOOP.
  lv_timestamp = lo_result->get_creationtime( ).
ENDIF.