Exemple #1
0
 def __move_corrupt_file(self, key):
     corrupt_path = "corrupt_data_files{}".format(key)
     print "Moving corrupt file '{}' to '{}' for further analysis.".format(
         key, corrupt_path)
     body = self.s3.get_object(
         util.get_path_without_leading_seperator(key))["Body"].read()
     self.s3.put_object(corrupt_path, body)
     self.s3.delete(util.get_path_without_leading_seperator(key))
Exemple #2
0
 def size(self, key):    
     try:
         response = self.__client.head_object(Bucket=self.__bucket, Key=util.get_path_without_leading_seperator(key))
     except ClientError as e:             
         raise e
             
     return response['ContentLength']
Exemple #3
0
 def put_object(self, key, body, expiration=None):
     params = dict({})
     params['Key'] = util.get_path_without_leading_seperator(key)
     params['Body'] = body
     params['Bucket'] = self.__bucket
     if expiration:
         params['Expires'] = expiration
     return self.client.put_object(**params)
Exemple #4
0
 def __delete_wrapper(self, key):
     return {"Key": util.get_path_without_leading_seperator(key)}
Exemple #5
0
 def get_object(self, key):
     params = dict({})
     params['Key'] = util.get_path_without_leading_seperator(key)
     params['Bucket'] = self.__bucket
     return self.client.get_object(**params)
Exemple #6
0
 def read(self, key):
     response = self.__client.get_object(
         Bucket=self.__bucket,
         Key=util.get_path_without_leading_seperator(key))
     return response["Body"].read()
Exemple #7
0
 def __init__(self, key, sep):
     self.__key = util.get_path_without_leading_seperator(key)
     self.__parts = self.__key.split(sep)