def setup(self): """Create the blob directory and database if necessary, start all desired services""" log.debug("Setting up the lbry session") if self.lbryid is None: self.lbryid = generate_id() if self.wallet is None: self.wallet = PTCWallet(self.db_dir) if self.peer_manager is None: self.peer_manager = PeerManager() if self.use_upnp is True: d = self._try_upnp() else: d = defer.succeed(True) if self.peer_finder is None: d.addCallback(lambda _: self._setup_dht()) else: if self.hash_announcer is None and self.peer_port is not None: log.warning( "The server has no way to advertise its available blobs.") self.hash_announcer = DummyHashAnnouncer() d.addCallback(lambda _: self._setup_other_components()) return d
def get_wallet(): if self.fake_wallet: d = defer.succeed(PTCWallet(self.db_dir)) elif self.lbrycrdd_path is not None: d = defer.succeed(LBRYcrdWallet(self.db_dir, wallet_dir=self.lbrycrd_dir, wallet_conf=self.lbrycrd_conf, lbrycrdd_path=self.lbrycrdd_path)) else: d = defer.succeed(LBRYumWallet(self.db_dir)) d.addCallback(lambda wallet: {"wallet": wallet}) return d