Пример #1
0
    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
Пример #2
0
 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