Exemple #1
0
    async def remove_connection(self, connection):
        connections_processor = ConnectionsProcessor.instanciate(self)
        connections_processor.remove_connections(connection)

        CertificationsProcessor.instanciate(self).cleanup_connection(connection, connections_processor.pubkeys())
        IdentitiesProcessor.instanciate(self).cleanup_connection(connection)

        SourcesProcessor.instanciate(self).drop_all_of(currency=connection.currency, pubkey=connection.pubkey)

        DividendsProcessor.instanciate(self).cleanup_connection(connection)

        TransactionsProcessor.instanciate(self).cleanup_connection(connection, connections_processor.pubkeys())

        self.db.commit()
        self.connection_removed.emit(connection)
Exemple #2
0
    async def remove_connection(self, connection):
        connections_processor = ConnectionsProcessor.instanciate(self)
        connections_processor.remove_connections(connection)

        CertificationsProcessor.instanciate(self).cleanup_connection(
            connection, connections_processor.pubkeys())
        IdentitiesProcessor.instanciate(self).cleanup_connection(connection)

        SourcesProcessor.instanciate(self).drop_all_of(
            currency=connection.currency, pubkey=connection.pubkey)

        DividendsProcessor.instanciate(self).cleanup_connection(connection)

        TransactionsProcessor.instanciate(self).cleanup_connection(
            connection, connections_processor.pubkeys())

        self.db.commit()
Exemple #3
0
 def __init__(self, app, connection):
     super().__init__()
     self.app = app
     self.connection = connection
     self._connections_processor = ConnectionsProcessor.instanciate(
         self.app)
     self._identities_processor = IdentitiesProcessor.instanciate(self.app)
     self._blockchain_processor = BlockchainProcessor.instanciate(self.app)
Exemple #4
0
 def __attrs_post_init__(self):
     super().__init__()
     self._connections_processor = ConnectionsProcessor.instanciate(
         self.app)
     self._certifications_processor = CertificationsProcessor.instanciate(
         self.app)
     self._identities_processor = IdentitiesProcessor.instanciate(self.app)
     self._blockchain_processor = BlockchainProcessor.instanciate(self.app)
Exemple #5
0
    async def remove_connection(self, connection):
        await self.stop_current_profile()
        connections_processor = ConnectionsProcessor.instanciate(self)
        connections_processor.remove_connections(connection)

        IdentitiesProcessor.instanciate(self).cleanup_connection(connection)

        CertificationsProcessor.instanciate(self).cleanup_connection(connection, connections_processor.pubkeys())

        SourcesProcessor.instanciate(self).drop_all_of(currency=connection.currency, pubkey=connection.pubkey)

        DividendsProcessor.instanciate(self).cleanup_connection(connection)

        TransactionsProcessor.instanciate(self).cleanup_connection(connection, connections_processor.pubkeys())

        if not connections_processor.connections():
            NodesProcessor.instanciate(self).drop_all(self.currency)

        self.db.commit()
        self.start_coroutines()
Exemple #6
0
    def __init__(self, parent, app):
        """

        :param sakia.gui.search_user.controller.NetworkController parent: the controller
        :param sakia.app.Application app: the app
        """
        super().__init__(parent)
        self.app = app
        self.identities_processor = IdentitiesProcessor.instanciate(app)
        self._nodes = list()
        self._current_identity = None
Exemple #7
0
 def instanciate(cls, app):
     """
     Instanciate a blockchain processor
     :param sakia.app.Application app: the app
     """
     return cls(BmaConnector(NodesProcessor(app.db.nodes_repo), app.parameters),
                BlockchainProcessor.instanciate(app),
                IdentitiesProcessor.instanciate(app),
                CertificationsProcessor.instanciate(app),
                TransactionsProcessor.instanciate(app),
                SourcesProcessor.instanciate(app))
Exemple #8
0
 def instanciate(cls, app):
     """
     Instanciate a blockchain processor
     :param sakia.app.Application app: the app
     """
     return cls(BmaConnector(NodesProcessor(app.db.nodes_repo), app.parameters),
                BlockchainProcessor.instanciate(app),
                IdentitiesProcessor.instanciate(app),
                CertificationsProcessor.instanciate(app),
                TransactionsProcessor.instanciate(app),
                SourcesProcessor.instanciate(app))
Exemple #9
0
    def __init__(self, parent, app):
        """

        :param sakia.gui.search_user.controller.NetworkController parent: the controller
        :param sakia.app.Application app: the app
        """
        super().__init__(parent)
        self.app = app
        self.identities_processor = IdentitiesProcessor.instanciate(app)
        self.contacts_processor = ContactsProcessor.instanciate(app)
        self._nodes = list()
        self._current_identity = None
Exemple #10
0
 def create(cls, parent, app):
     """
     Instanciate a AccountConfigController component
     :param sakia.gui.component.controller.ComponentController parent:
     :param sakia.app.Application app:
     :return: a new AccountConfigController controller
     :rtype: AccountConfigController
     """
     view = ConnectionConfigView(parent.view if parent else None)
     model = ConnectionConfigModel(None, app, None,
                                   IdentitiesProcessor.instanciate(app))
     account_cfg = cls(parent, view, model)
     model.setParent(account_cfg)
     view.set_license(app.currency)
     return account_cfg
Exemple #11
0
 def create(cls, parent, app):
     """
     Instanciate a AccountConfigController component
     :param sakia.gui.component.controller.ComponentController parent:
     :param sakia.app.Application app:
     :return: a new AccountConfigController controller
     :rtype: AccountConfigController
     """
     view = ConnectionConfigView(parent.view if parent else None)
     model = ConnectionConfigModel(
         None, app, None,
         IdentitiesProcessor(
             app.db.identities_repo, app.db.blockchains_repo,
             BmaConnector(NodesProcessor(app.db.nodes_repo),
                          app.parameters)))
     account_cfg = cls(parent, view, model)
     model.setParent(account_cfg)
     return account_cfg
Exemple #12
0
    def instanciate_services(self):
        nodes_processor = NodesProcessor(self.db.nodes_repo)
        bma_connector = BmaConnector(nodes_processor, self.parameters)
        connections_processor = ConnectionsProcessor(self.db.connections_repo)
        identities_processor = IdentitiesProcessor(self.db.identities_repo,
                                                   self.db.certifications_repo,
                                                   self.db.blockchains_repo,
                                                   bma_connector)
        certs_processor = CertificationsProcessor(self.db.certifications_repo,
                                                  self.db.identities_repo,
                                                  bma_connector)
        blockchain_processor = BlockchainProcessor.instanciate(self)
        sources_processor = SourcesProcessor.instanciate(self)
        transactions_processor = TransactionsProcessor.instanciate(self)
        dividends_processor = DividendsProcessor.instanciate(self)
        nodes_processor.initialize_root_nodes(self.currency)
        self.db.commit()

        self.documents_service = DocumentsService.instanciate(self)
        self.identities_service = IdentitiesService(
            self.currency, connections_processor, identities_processor,
            certs_processor, blockchain_processor, bma_connector)

        self.transactions_service = TransactionsService(
            self.currency, transactions_processor, dividends_processor,
            identities_processor, connections_processor, bma_connector)

        self.sources_service = SourcesServices(
            self.currency, sources_processor, connections_processor,
            transactions_processor, blockchain_processor, bma_connector)

        self.blockchain_service = BlockchainService(self, self.currency,
                                                    blockchain_processor,
                                                    bma_connector,
                                                    self.identities_service,
                                                    self.transactions_service,
                                                    self.sources_service)

        self.network_service = NetworkService.load(self, self.currency,
                                                   nodes_processor,
                                                   self.blockchain_service,
                                                   self.identities_service)
Exemple #13
0
 async def check_registered(self):
     identities_processor = IdentitiesProcessor.instanciate(self.app)
     return await identities_processor.check_registered(self.connection)
Exemple #14
0
 def __attrs_post_init__(self):
     super().__init__()
     self._connections_processor = ConnectionsProcessor.instanciate(self.app)
     self._certifications_processor = CertificationsProcessor.instanciate(self.app)
     self._identities_processor = IdentitiesProcessor.instanciate(self.app)
     self._blockchain_processor = BlockchainProcessor.instanciate(self.app)