Skip to content

/AWS1/IF_TCE=>CREATEREGISTRY()

About CreateRegistry

Creates a new registry, a catalog that organizes registry records and defines their discovery authorization and record approval behavior. Creation is asynchronous: the registry begins in the CREATING status and becomes usable once it reaches READY.

Method Signature

METHODS /AWS1/IF_TCE~CREATEREGISTRY
  IMPORTING
    !IV_NAME TYPE /AWS1/TCEREGISTRYNAME OPTIONAL
    !IV_DESCRIPTION TYPE /AWS1/TCEDESCRIPTION OPTIONAL
    !IO_ENCRYPTIONCONFIGURATION TYPE REF TO /AWS1/CL_TCEENCRYPTIONCONF OPTIONAL
    !IO_DISCOVERYCONFIGURATION TYPE REF TO /AWS1/CL_TCEDISCOVERYCONF OPTIONAL
    !IV_CLIENTTOKEN TYPE /AWS1/TCECLIENTTOKEN OPTIONAL
    !IT_TAGS TYPE /AWS1/CL_TCETAGSMAP_W=>TT_TAGSMAP OPTIONAL
    !IO_APPROVALCONFIGURATION TYPE REF TO /AWS1/CL_TCEAPPROVALCONF OPTIONAL
    !IO_AUTODETECTIONCONF TYPE REF TO /AWS1/CL_TCEAUTODETECTIONCONF OPTIONAL
  RETURNING
    VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_tcecreateregresponse
  RAISING
    /AWS1/CX_TCEACCESSDENIEDEX
    /AWS1/CX_TCECONFLICTEXCEPTION
    /AWS1/CX_TCEINTERNALSERVEREX
    /AWS1/CX_TCESERVICEQUOTAEXCDEX
    /AWS1/CX_TCETHROTTLINGEX
    /AWS1/CX_TCEVLDTNEXCEPTION
    /AWS1/CX_TCECLIENTEXC
    /AWS1/CX_TCESERVEREXC
    /AWS1/CX_RT_TECHNICAL_GENERIC
    /AWS1/CX_RT_SERVICE_GENERIC.

IMPORTING

Required arguments:

iv_name TYPE /AWS1/TCEREGISTRYNAME /AWS1/TCEREGISTRYNAME

The name of the registry

Optional arguments:

iv_description TYPE /AWS1/TCEDESCRIPTION /AWS1/TCEDESCRIPTION

The description of the registry

io_encryptionconfiguration TYPE REF TO /AWS1/CL_TCEENCRYPTIONCONF /AWS1/CL_TCEENCRYPTIONCONF

The optional server-side encryption configuration for the registry. When you provide this field, the specified customer-managed Amazon Web Services KMS key encrypts the registry's content. Omit this field to use an Amazon Web Services-owned encryption key. You cannot change the encryption configuration after registry creation.

io_discoveryconfiguration TYPE REF TO /AWS1/CL_TCEDISCOVERYCONF /AWS1/CL_TCEDISCOVERYCONF

Discovery configuration for the registry

iv_clienttoken TYPE /AWS1/TCECLIENTTOKEN /AWS1/TCECLIENTTOKEN

A unique, case-sensitive identifier to ensure that the operation completes no more than one time. If this token matches a previous request, the service ignores the request, but does not return an error.

it_tags TYPE /AWS1/CL_TCETAGSMAP_W=>TT_TAGSMAP TT_TAGSMAP

Tags to associate with the registry

io_approvalconfiguration TYPE REF TO /AWS1/CL_TCEAPPROVALCONF /AWS1/CL_TCEAPPROVALCONF

Approval configuration for registry records

io_autodetectionconf TYPE REF TO /AWS1/CL_TCEAUTODETECTIONCONF /AWS1/CL_TCEAUTODETECTIONCONF

The optional auto-detection configuration for the registry. When provided, the registry is automatically populated with resources discovered according to the configuration. Omit this field for registries whose records are managed exclusively through the Agent Registry Control API.

RETURNING

oo_output TYPE REF TO /aws1/cl_tcecreateregresponse /AWS1/CL_TCECREATEREGRESPONSE

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->createregistry(
  io_approvalconfiguration = new /aws1/cl_tceapprovalconf(
    it_autoapprovalrules = VALUE /aws1/cl_tceautoapprrulelist_w=>tt_autoapprovalrulelist(
      ( new /aws1/cl_tceautoapprrulelist_w( |string| ) )
    )
  )
  io_autodetectionconf = new /aws1/cl_tceautodetectionconf(
    iv_enabled = ABAP_TRUE
    iv_scope = |string|
  )
  io_discoveryconfiguration = new /aws1/cl_tcediscoveryconf(
    io_authorizerconfiguration = new /aws1/cl_tceauthorizerconf(
      io_customjwtauthorizer = new /aws1/cl_tcecustomjwtauthrconf(
        io_privateendpoint = new /aws1/cl_tceprivateendpoint(
          io_managedvpcresource = new /aws1/cl_tcemanagedvpcresource(
            it_securitygroupids = VALUE /aws1/cl_tcesecuritygroupids_w=>tt_securitygroupids(
              ( new /aws1/cl_tcesecuritygroupids_w( |string| ) )
            )
            it_subnetids = VALUE /aws1/cl_tcesubnetids_w=>tt_subnetids(
              ( new /aws1/cl_tcesubnetids_w( |string| ) )
            )
            it_tags = VALUE /aws1/cl_tcetagsmap_w=>tt_tagsmap(
              (
                VALUE /aws1/cl_tcetagsmap_w=>ts_tagsmap_maprow(
                  key = |string|
                  value = new /aws1/cl_tcetagsmap_w( |string| )
                )
              )
            )
            iv_endpointipaddresstype = |string|
            iv_routingdomain = |string|
            iv_vpcidentifier = |string|
          )
          io_selfmanagedlatticeres = new /aws1/cl_tceselfmngdlattceres( |string| )
        )
        it_allowedaudience = VALUE /aws1/cl_tceallowedaudnclist_w=>tt_allowedaudiencelist(
          ( new /aws1/cl_tceallowedaudnclist_w( |string| ) )
        )
        it_allowedclients = VALUE /aws1/cl_tcealwdclientslist_w=>tt_allowedclientslist(
          ( new /aws1/cl_tcealwdclientslist_w( |string| ) )
        )
        it_allowedscopes = VALUE /aws1/cl_tcealwdscopestype_w=>tt_allowedscopestype(
          ( new /aws1/cl_tcealwdscopestype_w( |string| ) )
        )
        it_customclaims = VALUE /aws1/cl_tcecustclaimvldtntype=>tt_customclaimvalidationstype(
          (
            new /aws1/cl_tcecustclaimvldtntype(
              io_authzclaimmatchvalue = new /aws1/cl_tceauthzclmmtchvaltyp(
                io_claimmatchvalue = new /aws1/cl_tceclaimmatchvaltype(
                  it_matchvaluestringlist = VALUE /aws1/cl_tcematchvalstrlist_w=>tt_matchvaluestringlist(
                    ( new /aws1/cl_tcematchvalstrlist_w( |string| ) )
                  )
                  iv_matchvaluestring = |string|
                )
                iv_claimmatchoperator = |string|
              )
              iv_inboundtokenclaimname = |string|
              iv_indbtokenclaimvaluetype = |string|
            )
          )
        )
        it_privateendpointoverrides = VALUE /aws1/cl_tceprivateendptovrd=>tt_privateendpointoverrides(
          (
            new /aws1/cl_tceprivateendptovrd(
              io_privateendpoint = new /aws1/cl_tceprivateendpoint(
                io_managedvpcresource = new /aws1/cl_tcemanagedvpcresource(
                  it_securitygroupids = VALUE /aws1/cl_tcesecuritygroupids_w=>tt_securitygroupids(
                    ( new /aws1/cl_tcesecuritygroupids_w( |string| ) )
                  )
                  it_subnetids = VALUE /aws1/cl_tcesubnetids_w=>tt_subnetids(
                    ( new /aws1/cl_tcesubnetids_w( |string| ) )
                  )
                  it_tags = VALUE /aws1/cl_tcetagsmap_w=>tt_tagsmap(
                    (
                      VALUE /aws1/cl_tcetagsmap_w=>ts_tagsmap_maprow(
                        key = |string|
                        value = new /aws1/cl_tcetagsmap_w( |string| )
                      )
                    )
                  )
                  iv_endpointipaddresstype = |string|
                  iv_routingdomain = |string|
                  iv_vpcidentifier = |string|
                )
                io_selfmanagedlatticeres = new /aws1/cl_tceselfmngdlattceres( |string| )
              )
              iv_domain = |string|
            )
          )
        )
        iv_discoveryurl = |string|
      )
    )
    iv_authorizertype = |string|
  )
  io_encryptionconfiguration = new /aws1/cl_tceencryptionconf( |string| )
  it_tags = VALUE /aws1/cl_tcetagsmap_w=>tt_tagsmap(
    (
      VALUE /aws1/cl_tcetagsmap_w=>ts_tagsmap_maprow(
        key = |string|
        value = new /aws1/cl_tcetagsmap_w( |string| )
      )
    )
  )
  iv_clienttoken = |string|
  iv_description = |string|
  iv_name = |string|
).

This is an example of reading all possible response values

lo_result = lo_result.
IF lo_result IS NOT INITIAL.
  lv_registryarn = lo_result->get_registryarn( ).
ENDIF.