Skip to content

API for AWS Storage Gateway

ABAP Package /AWS1/API_STG_IMPL
ABAP SDK "TLA" STG
ABAP Interface /AWS1/IF_STG

The "TLA" is a Three Letter Abbreviation that appears in ABAP class names, data dictionary objects and other ABAP objects throughout the AWS SDK for SAP ABAP. The TLA for AWS Storage Gateway is STG. This TLA helps squeeze ABAP objects into the 30-character length limit of the ABAP data dictionary.

Installation

To install the AWS SDK for SAP ABAP, import the Core transport, along with the transport for the Storage Gateway module and other API modules you are interested in. A few modules are included in the Core transport itself. For more information, see the Developer Guide guide.

About The Service

Storage Gateway Service

Storage Gateway is the service that connects an on-premises software appliance with cloud-based storage to provide seamless and secure integration between an organization's on-premises IT environment and the Amazon Web Services storage infrastructure. The service enables you to securely upload data to the Amazon Web Services Cloud for cost effective backup and rapid disaster recovery.

Use the following links to get started using the Storage Gateway Service API Reference:

  • Storage Gateway required request headers: Describes the required headers that you must send with every POST request to Storage Gateway.

  • Signing requests: Storage Gateway requires that you authenticate every request you send; this topic describes how sign such a request.

  • Error responses: Provides reference information about Storage Gateway errors.

  • Operations in Storage Gateway: Contains detailed descriptions of all Storage Gateway operations, their request parameters, response elements, possible errors, and examples of requests and responses.

  • Storage Gateway endpoints and quotas: Provides a list of each Amazon Web Services Region and the endpoints available for use with Storage Gateway.

Storage Gateway resource IDs are in uppercase. When you use these resource IDs with the Amazon EC2 API, EC2 expects resource IDs in lowercase. You must change your resource ID to lowercase to use it with the EC2 API. For example, in Storage Gateway the ID for a volume might be vol-AA22BB012345DAF670. When you use this ID with the EC2 API, you must change it to vol-aa22bb012345daf670. Otherwise, the EC2 API might not behave as expected.

IDs for Storage Gateway volumes and Amazon EBS snapshots created from gateway volumes are changing to a longer format. Starting in December 2016, all new volumes and snapshots will be created with a 17-character string. Starting in April 2016, you will be able to use these longer IDs so you can test your systems with the new format. For more information, see Longer EC2 and EBS resource IDs.

For example, a volume Amazon Resource Name (ARN) with the longer volume ID format looks like the following:

arn:aws:storagegateway:us-west-2:111122223333:gateway/sgw-12A3456B/volume/vol-1122AABBCCDDEEFFG.

A snapshot ID with the longer ID format looks like the following: snap-78e226633445566ee.

For more information, see Announcement: Heads-up – Longer Storage Gateway volume and snapshot IDs coming in 2016.

Using the SDK

In your code, create a client using the SDK module for AWS Storage Gateway, which is created with factory method /AWS1/CL_STG_FACTORY=>create(). In this example we will assume you have configured an SDK profile in transaction /AWS1/IMG called ZFINANCE.

DATA(go_session)   = /aws1/cl_rt_session_aws=>create( 'ZFINANCE' ).
DATA(go_stg)       = /aws1/cl_stg_factory=>create( go_session ).

Your variable go_stg is an instance of /AWS1/IF_STG, and all of the operations in the AWS Storage Gateway service are accessed by calling methods in /AWS1/IF_STG.

API Operations

For an overview of ABAP method calls corresponding to API operations in AWS Storage Gateway, see the Operation List.

Factory Method

/AWS1/CL_STG_FACTORY=>create( )

Creates an object of type /AWS1/IF_STG.

IMPORTING

Optional arguments:

IV_PROTOCOL TYPE /AWS1/RT_PROTOCOL /AWS1/RT_PROTOCOL

IO_SESSION TYPE REF TO /AWS1/CL_RT_SESSION_BASE /AWS1/CL_RT_SESSION_BASE

IV_REGION TYPE /AWS1/RT_REGION_ID /AWS1/RT_REGION_ID

IV_CUSTOM_ENDPOINT TYPE /AWS1/RT_ENDPOINT /AWS1/RT_ENDPOINT

RETURNING

OO_CLIENT TYPE REF TO /AWS1/IF_STG /AWS1/IF_STG

/AWS1/IF_STG represents the ABAP client for the Storage Gateway service, representing each operation as a method call. For more information see the API Page page.

Configuring Programmatically

DATA(lo_config) = DATA(go_stg)->get_config( ).

lo_config is a variable of type /AWS1/CL_STG_CONFIG. See the documentation for /AWS1/CL_STG_CONFIG for details on the settings that can be configured.

Paginators

Paginators for AWS Storage Gateway can be created via get_paginator() which returns a paginator object of type /AWS1/IF_STG_PAGINATOR. The operation method that is being paginated is called using the paginator object, which accepts any necessary parameters to provide to the underlying API operation. This returns an iterator object which can be used to iterate over paginated results using has_next() and get_next() methods.

Details about the paginator methods available for service AWS Storage Gateway can be found in interface /AWS1/IF_STG_PAGINATOR.