def __init__(self, fabnet_host, security_provider, parallel_put_count=3, \ parallel_get_count=3, cache_dir='/tmp', cache_size=None): if not isinstance(security_provider, AbstractSecurityManager): raise Exception('Invalid security provider type!') self.__parallel_put_count = parallel_put_count self.__parallel_get_count = parallel_get_count self.security_provider = security_provider self.fabnet_gateway = FabnetGateway(fabnet_host, security_provider) prikey = self.security_provider.get_prikey() self.metadata_key = hashlib.sha1(str(prikey)).hexdigest() self.metadata_f_name = 'md-%s.bin' % self.metadata_key self.db_cache = DataBlockCache(cache_dir, cache_size, self.metadata_key) self.journal = None self.metadata = None self.transactions_manager = None self.put_manager = None self.get_manager = None self.delete_manager = None DataBlock.SECURITY_MANAGER = self.security_provider DataBlock.LOCK_MANAGER = DBLocksManager() self.journal = Journal(self.metadata_key, \ self.db_cache.get_static_cache_path('journal.bin'), self.fabnet_gateway)