diff options
author | Bryan Ischo <bryan@ischo.com> | 2008-07-14 05:36:28 +0000 |
---|---|---|
committer | Bryan Ischo <bryan@ischo.com> | 2008-07-14 05:36:28 +0000 |
commit | d09cf6f88e36af6decc9b4a22d13acae106c398e (patch) | |
tree | 37d3bb51973d8ba3003589b4e8f28b928db45830 /inc | |
parent | 49c45ed9415c3575cc4772ae9fb699749fadd7b4 (diff) | |
download | ceph-libs3-d09cf6f88e36af6decc9b4a22d13acae106c398e.tar.gz |
* Work in progress. All file operations except for ACL stuff are working.
Diffstat (limited to 'inc')
-rw-r--r-- | inc/libs3.h | 63 | ||||
-rw-r--r-- | inc/request.h | 6 |
2 files changed, 33 insertions, 36 deletions
diff --git a/inc/libs3.h b/inc/libs3.h index 6338a78..81900aa 100644 --- a/inc/libs3.h +++ b/inc/libs3.h @@ -560,17 +560,6 @@ typedef struct S3PutProperties **/ S3CannedAcl cannedAcl; /** - * For copy operations, this identifies the source object; must be - * of the form /source_bucket/source_key. This value is ignored for all - * operations except copy_object. - **/ - const char *sourceObject; - /** - * For copy operations, this gives the metadata directive. This value is - * ignored for all operations except copy_object. - **/ - S3MetaDataDirective metaDataDirective; - /** * This is the number of values in the metaData field. **/ int metaDataCount; @@ -943,7 +932,7 @@ typedef struct S3GetObjectHandler void S3_list_service(S3Protocol protocol, const char *accessKeyId, const char *secretAccessKey, S3RequestContext *requestContext, - S3ListServiceHandler *handler, void *callbackData); + const S3ListServiceHandler *handler, void *callbackData); /** ************************************************************************** @@ -977,7 +966,7 @@ void S3_test_bucket(S3Protocol protocol, S3UriStyle uriStyle, const char *bucketName, int locationConstraintReturnSize, char *locationConstraintReturn, S3RequestContext *requestContext, - S3ResponseHandler *handler, void *callbackData); + const S3ResponseHandler *handler, void *callbackData); /** @@ -999,7 +988,7 @@ void S3_create_bucket(S3Protocol protocol, const char *accessKeyId, const char *secretAccessKey, const char *bucketName, S3CannedAcl cannedAcl, const char *locationConstraint, S3RequestContext *requestContext, - S3ResponseHandler *handler, void *callbackData); + const S3ResponseHandler *handler, void *callbackData); /** @@ -1016,7 +1005,7 @@ void S3_create_bucket(S3Protocol protocol, const char *accessKeyId, void S3_delete_bucket(S3Protocol protocol, S3UriStyle uriStyle, const char *accessKeyId, const char *secretAccessKey, const char *bucketName, S3RequestContext *requestContext, - S3ResponseHandler *handler, void *callbackData); + const S3ResponseHandler *handler, void *callbackData); /** @@ -1039,11 +1028,11 @@ void S3_delete_bucket(S3Protocol protocol, S3UriStyle uriStyle, * @param callbackData will be passed into the callback * @return S3Status ??? **/ -void S3_list_bucket(S3BucketContext *bucketContext, +void S3_list_bucket(const S3BucketContext *bucketContext, const char *prefix, const char *marker, const char *delimiter, int maxkeys, S3RequestContext *requestContext, - S3ListBucketHandler *handler, void *callbackData); + const S3ListBucketHandler *handler, void *callbackData); /** @@ -1057,11 +1046,11 @@ void S3_list_bucket(S3BucketContext *bucketContext, /* // xxx todo - possible Cache-Control */ -void S3_put_object(S3BucketContext *bucketContext, const char *key, +void S3_put_object(const S3BucketContext *bucketContext, const char *key, uint64_t contentLength, const S3PutProperties *putProperties, S3RequestContext *requestContext, - S3PutObjectHandler *handler, void *callbackData); + const S3PutObjectHandler *handler, void *callbackData); /* @@ -1069,12 +1058,13 @@ void S3_put_object(S3BucketContext *bucketContext, const char *key, // destinationKey NULL means the same object key as [key] // if putProperties is NULL, existing properties will not be changed */ -void S3_copy_object(S3BucketContext *bucketContext, +void S3_copy_object(const S3BucketContext *bucketContext, const char *key, const char *destinationBucket, const char *destinationKey, const S3PutProperties *putProperties, - S3RequestContext *requestContext, - S3ResponseHandler *handler, void *callbackData); + time_t *lastModifiedReturn, int eTagReturnSize, + char *eTagReturn, S3RequestContext *requestContext, + const S3ResponseHandler *handler, void *callbackData); /* @@ -1089,22 +1079,22 @@ void S3_copy_object(S3BucketContext *bucketContext, // expect. // ifModifiedSince and ifUnmodifiedSince if > 0 will be used */ -void S3_get_object(S3BucketContext *bucketContext, const char *key, +void S3_get_object(const S3BucketContext *bucketContext, const char *key, const S3GetConditions *getConditions, uint64_t startByte, uint64_t byteCount, S3RequestContext *requestContext, - S3GetObjectHandler *handler, void *callbackData); + const S3GetObjectHandler *handler, void *callbackData); // ifModifiedSince and ifUnmodifiedSince if > 0 will be used -void S3_head_object(S3BucketContext *bucketContext, const char *key, +void S3_head_object(const S3BucketContext *bucketContext, const char *key, S3RequestContext *requestContext, - S3ResponseHandler *handler, void *callbackData); + const S3ResponseHandler *handler, void *callbackData); -void S3_delete_object(S3BucketContext *bucketContext, const char *key, +void S3_delete_object(const S3BucketContext *bucketContext, const char *key, S3RequestContext *requestContext, - S3ResponseHandler *handler, void *callbackData); + const S3ResponseHandler *handler, void *callbackData); /** ************************************************************************** @@ -1116,27 +1106,28 @@ void S3_delete_object(S3BucketContext *bucketContext, const char *key, // aclBuffer must be less than or equal to S3_ACL_BUFFER_MAXLEN bytes in size, // and does not need to be zero-terminated */ -void S3_set_acl(S3BucketContext *bucketContext, const char *key, +void S3_set_acl(const S3BucketContext *bucketContext, const char *key, int aclGrantCount, S3AclGrant *aclGrants, S3RequestContext *requestContext, - S3ResponseHandler *handler, void *callbackData); + const S3ResponseHandler *handler, void *callbackData); -void S3_add_acl_grants(S3BucketContext *bucketContext, const char *key, +void S3_add_acl_grants(const S3BucketContext *bucketContext, const char *key, int aclGrantCount, S3AclGrant *aclGrants, S3RequestContext *requestContext, - S3ResponseHandler *handler, void *callbackData); + const S3ResponseHandler *handler, void *callbackData); -void S3_remove_acl_grants(S3BucketContext *bucketContext, const char *key, - int aclGrantsCount, S3AclGrant *aclGrants, +void S3_remove_acl_grants(const S3BucketContext *bucketContext, const char *key, + int aclGrantsCount, const S3AclGrant *aclGrants, S3RequestContext *requestContext, + const S3ResponseHandler *handler, void *callbackData); -void S3_clear_acl(S3BucketContext *bucketContext, const char *key, +void S3_clear_acl(const S3BucketContext *bucketContext, const char *key, S3RequestContext *requestContext, - S3ResponseHandler *hander, void *callbackData); + const S3ResponseHandler *hander, void *callbackData); /** diff --git a/inc/request.h b/inc/request.h index d61fde8..32e65d6 100644 --- a/inc/request.h +++ b/inc/request.h @@ -73,6 +73,12 @@ typedef struct RequestParams // AWS Secret Access Key const char *secretAccessKey; + // If this is a copy operation, this gives the source bucket + const char *copySourceBucketName; + + // If this is a copy operation, this gives the source key + const char *copySourceKey; + // Get conditions const S3GetConditions *getConditions; |