def add(self, bucket_name, data, rest_data=''): check_valid_bucket_name(bucket_name) with timed_acquire_mutex(_get_mutex_name(bucket_name)): contents_file = self._get_contents_file(bucket_name) initial_data = self._get_current_data(contents_file) for handle_data in initial_data: # Don't add duplicate data if handle_data['data'] == data: return handle_data = { 'rest_data': rest_data, 'data': data, } initial_data.append(handle_data) with open(contents_file, 'w') as stream: stream.write(json_dumps(initial_data))
def __enter__(self, *args, **kwargs): self._mutex_handle = mutex_handle = timed_acquire_mutex(_get_mutex_name(self._bucket_name)) mutex_handle.__enter__() return self
def clear(self, bucket_name): check_valid_bucket_name(bucket_name) with timed_acquire_mutex(_get_mutex_name(bucket_name)): contents_file = self._get_contents_file(bucket_name) if os.path.exists(contents_file): os.remove(contents_file)
def __enter__(self, *args, **kwargs): self._mutex_handle = mutex_handle = timed_acquire_mutex( _get_mutex_name(self._bucket_name)) mutex_handle.__enter__() return self