protected void putObjectAclImpl(String bucketName, String objectKey, AccessControlList acl)
throws S3ServiceException
{
try {
AmazonS3SoapBindingStub s3SoapBinding = getSoapBinding();
Calendar timestamp = getTimeStamp( System.currentTimeMillis() );
Grant[] grants = convertACLtoGrants(acl);
String signature = ServiceUtils.signWithHmacSha1(getAWSSecretKey(),
Constants.SOAP_SERVICE_NAME + "SetObjectAccessControlPolicy" + convertDateToString(timestamp));
s3SoapBinding.setObjectAccessControlPolicy(bucketName, objectKey, grants,
getAWSAccessKey(), timestamp, signature, null);
} catch (RuntimeException e) {
throw e;
} catch (Exception e) {
throw new S3ServiceException("Unable to Put Object ACL", e);