Data.Cloud.AmazonAPI.TAmazonStorageService
Delphi
TAmazonStorageService = class(TAmazonService)
C++
class PASCALIMPLEMENTATION TAmazonStorageService : public TAmazonService
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
class | public | Data.Cloud.AmazonAPI.pas Data.Cloud.AmazonAPI.hpp |
Data.Cloud.AmazonAPI | Data.Cloud.AmazonAPI |
説明
Amazon Simple Storage Service(S3) サービスに接続できるようにします。
このクラスには、バケットとオブジェクトを管理するためのメソッドが用意されています。重要度の高いメソッドには、たとえば次のものがあります。
- CreateBucket
- DeleteBucket
- ListBuckets
- GetBucket
- CopyObject
- DeleteObject
- GetObject
- GetObjectTorrent
- GetObjectProperties
- InitiateMultipartUpload
使用可能なすべてのメソッドの一覧については、TAmazonStorageService API ドキュメントを参照してください。
Amazon Simple Storage Service(S3) API の詳細については、公式の『Amazon Simple Storage Service ドキュメント』を参照してください。
- メモ: Amazon Simple Storage Service(S3)には、フォルダの概念がありません。あたかも "フォルダ構造" を使用しているようにオブジェクトを管理する手段が用意されています。詳細については、「Objects|Object Key and Metadata(オブジェクト|オブジェクトのキーとメタデータ)」(英語版)を参照してください。
次のサンプル コードでは、TAmazonStorageService API を使ってバケットを新しく作成する方法の例を示しています。
Delphi の場合:
var
ResponseInfo: TCloudResponseInfo;
StorageService: TAmazonStorageService;
BucketName:String;
begin
BucketName := 'my-bucket-name-vjsep967w37'; // the bucket name must be unique
StorageService := TAmazonStorageService.Create(AmazonConnectionInfo1);
ResponseInfo := TCloudResponseInfo.Create;
try
if StorageService.CreateBucket(BucketName, amzbaNotSpecified, amzrNotSpecified, ResponseInfo) then
Memo1.Lines.Append('Success! Bucket: ' + BucketName + ' created.')
else
Memo1.Lines.Append(Format('Failure! %s', [ResponseInfo.StatusMessage]));
finally
StorageService.Free;
ResponseInfo.Free;
end;
end;
C++ の場合:
TCloudResponseInfo *ResponseInfo;
String BucketName;
TAmazonStorageService *StorageService;
BucketName = "my-bucket-name-vjsep967w37"; // the bucket name must be unique
StorageService = new TAmazonStorageService(AmazonConnectionInfo1);
ResponseInfo = new TCloudResponseInfo;
try
{
if (StorageService->CreateBucket(BucketName, amzbaNotSpecified, amzrNotSpecified, ResponseInfo))
{
Memo1->Lines->Append("Success! Bucket: " + BucketName + " created.");
}
else
{
TVarRec args[1] = {ResponseInfo->StatusMessage};
Memo1->Lines->Append(Format("Failure! %s", args, 0));
}
}
__finally
{
delete StorageService;
delete ResponseInfo;
}