00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #import <Foundation/Foundation.h>
00017 #import <CommonCrypto/CommonHMAC.h>
00018
00019 #import "../AmazonWebServiceClient.h"
00020
00021 #import "S3Constants.h"
00022 #import "S3AbstractPutRequest.h"
00023 #import "S3AccessControlList.h"
00024 #import "S3AccessControlListUnmarshaller.h"
00025 #import "S3Bucket.h"
00026 #import "S3BucketNameUtilities.h"
00027 #import "S3BucketUnmarshaller.h"
00028 #import "S3CannedACL.h"
00029 #import "S3CopyObjectRequest.h"
00030 #import "S3CopyObjectResponse.h"
00031 #import "S3CreateBucketRequest.h"
00032 #import "S3CreateBucketResponse.h"
00033 #import "S3DeleteBucketRequest.h"
00034 #import "S3DeleteBucketResponse.h"
00035 #import "S3DeleteObjectRequest.h"
00036 #import "S3DeleteObjectResponse.h"
00037 #import "S3ErrorResponseHandler.h"
00038 #import "S3GetACLRequest.h"
00039 #import "S3GetACLResponse.h"
00040 #import "S3GetObjectMetadataRequest.h"
00041 #import "S3GetObjectMetadataResponse.h"
00042 #import "S3GetObjectRequest.h"
00043 #import "S3GetObjectResponse.h"
00044 #import "S3GetPreSignedURLRequest.h"
00045 #import "S3Grant.h"
00046 #import "S3GrantUnmarshaller.h"
00047 #import "S3Grantee.h"
00048 #import "S3ListBucketResultUnmarshaller.h"
00049 #import "S3ListBucketsRequest.h"
00050 #import "S3ListBucketsResponse.h"
00051 #import "S3ListBucketsResult.h"
00052 #import "S3ListBucketsResultUnmarshaller.h"
00053 #import "S3ListObjectsRequest.h"
00054 #import "S3ListObjectsResponse.h"
00055 #import "S3ListObjectsResult.h"
00056 #import "S3LocationConstraintUnmarshaller.h"
00057 #import "S3ObjectSummary.h"
00058 #import "S3ObjectSummaryUnmarshaller.h"
00059 #import "S3Owner.h"
00060 #import "S3OwnerUnmarshaller.h"
00061 #import "S3Permission.h"
00062 #import "S3PutObjectRequest.h"
00063 #import "S3PutObjectResponse.h"
00064 #import "S3Region.h"
00065 #import "S3Request.h"
00066 #import "S3Response.h"
00067 #import "S3ServiceModel.h"
00068 #import "S3ServiceTransform.h"
00069 #import "S3SetACLRequest.h"
00070 #import "S3SetACLResponse.h"
00071
00072
00083 @interface AmazonS3Client : AmazonWebServiceClient {}
00084
00089 -(NSArray *)listBuckets;
00090
00097 -(S3ListBucketsResponse *)listBuckets:(S3ListBucketsRequest *)listBucketsRequest;
00098
00104 -(S3CreateBucketResponse *)createBucket:(S3CreateBucketRequest *)createBucketRequest;
00105
00112 -(S3DeleteBucketResponse *)deleteBucket:(S3DeleteBucketRequest*)deleteBucketRequest;
00113
00120 -(S3Region *)getBucketLocation:(NSString *)bucketName;
00121
00127 -(S3GetObjectMetadataResponse *)getObjectMetadata:(S3GetObjectMetadataRequest *)getObjectMetadataRequest;
00128
00134 -(S3PutObjectResponse *)putObject:(S3PutObjectRequest *)putObjectRequest;
00135
00145 -(S3GetObjectResponse *)getObject:(S3GetObjectRequest *)getObjectRequest;
00146
00153 -(S3DeleteObjectResponse *)deleteObject:(S3DeleteObjectRequest *)deleteObjectRequest;
00154
00160 -(S3ListObjectsResponse *)listObjects:(S3ListObjectsRequest *)listObjectsRequest;
00161
00167 -(NSArray *)listObjectsInBucket:(NSString *)bucketName;
00168
00175 -(S3CopyObjectResponse *)copyObject:(S3CopyObjectRequest *)copyObjectRequest;
00176
00183 -(S3GetACLResponse *)getACL:(S3GetACLRequest *)getACLRequest;
00184
00191 -(S3SetACLResponse *)setACL:(S3SetACLRequest *)setACLRequest;
00192
00206 -(NSURL *)getPreSignedURL:(S3GetPreSignedURLRequest *)preSignedURLRequest;
00207
00209
00210
00211
00212
00213
00214
00215
00216
00224 +(S3Response *)constructResponseFromRequest:(S3Request *)request;
00225
00227 +(void)initializeResponseObjects;
00228
00234 -(S3Response *)invoke:(S3Request *)request;
00235
00237 +(NSString *)apiVersion;
00238 @end