コード例 #1
0
    def start_imap_service(self, userid, offline=False):
        """
        Start IMAP service.

        :param userid: user id, in the form "user@provider"
        :type userid: str
        :param offline: whether imap should start in offline mode or not.
        :type offline: bool
        """
        logger.debug('Starting imap service')

        soledad_sessions = {userid: self._soledad}
        self.imap_port, self.imap_factory = imap.start_imap_service(
            soledad_sessions)

        def start_and_assign_incoming_service(incoming_mail):
            # this returns a deferred that will be called when the looping call
            # is stopped, we could add any shutdown/cleanup callback to that
            # deferred, but unused by the moment.
            incoming_mail.startService()
            self.incoming_mail_service = incoming_mail
            return incoming_mail

        if offline is False:
            d = imap.start_incoming_mail_service(
                self._keymanager, self._soledad,
                userid)
            d.addCallback(start_and_assign_incoming_service)
            d.addErrback(lambda f: logger.error(f.printTraceback()))
コード例 #2
0
    def start_imap_service(self, userid, offline=False):
        """
        Start IMAP service.

        :param userid: user id, in the form "user@provider"
        :type userid: str
        :param offline: whether imap should start in offline mode or not.
        :type offline: bool
        """
        logger.debug('Starting imap service')

        self.imap_port, self.imap_factory = imap.start_imap_service(
            self._soledad,
            userid=userid)

        def start_incoming_service(incoming_mail):
            d = incoming_mail.startService()
            d.addCallback(lambda started: incoming_mail)
            return d

        def assign_incoming_service(incoming_mail):
            self.incoming_mail_service = incoming_mail
            return incoming_mail

        if offline is False:
            d = imap.start_incoming_mail_service(
                self._keymanager,
                self._soledad,
                self.imap_factory,
                userid)
            d.addCallback(start_incoming_service)
            d.addCallback(assign_incoming_service)
            d.addErrback(lambda f: logger.error(f.printTraceback()))
コード例 #3
0
    def start_imap_service(self):
        """
        Starts imap service.
        """
        from leap.bitmask.config import flags

        logger.debug('Starting imap service')
        leap_assert(sameProxiedObjects(self._soledad, None)
                    is not True,
                    "We need a non-null soledad for initializing imap service")
        leap_assert(sameProxiedObjects(self._keymanager, None)
                    is not True,
                    "We need a non-null keymanager for initializing imap "
                    "service")

        offline = flags.OFFLINE
        self.imap_service, self.imap_port, \
            self.imap_factory = imap.start_imap_service(
                self._soledad,
                self._keymanager,
                userid=self.userid,
                offline=offline)

        if offline is False:
            logger.debug("Starting loop")
            self.imap_service.start_loop()
コード例 #4
0
    def start_imap_service(self, userid, offline=False):
        """
        Start IMAP service.

        :param userid: user id, in the form "user@provider"
        :type userid: str
        :param offline: whether imap should start in offline mode or not.
        :type offline: bool
        """
        logger.debug('Starting imap service')

        soledad_sessions = {userid: self._soledad}
        self.imap_port, self.imap_factory = imap.start_imap_service(
            soledad_sessions)

        def start_and_assign_incoming_service(incoming_mail):
            # this returns a deferred that will be called when the looping call
            # is stopped, we could add any shutdown/cleanup callback to that
            # deferred, but unused by the moment.
            incoming_mail.startService()
            self.incoming_mail_service = incoming_mail
            return incoming_mail

        if offline is False:
            d = imap.start_incoming_mail_service(self._keymanager,
                                                 self._soledad, userid)
            d.addCallback(start_and_assign_incoming_service)
            d.addErrback(lambda f: logger.error(f.printTraceback()))
コード例 #5
0
    def start_imap_service(self):
        """
        Starts imap service.
        """
        logger.debug('Starting imap service')
        leap_assert(sameProxiedObjects(self._soledad, None)
                    is not True,
                    "We need a non-null soledad for initializing imap service")
        leap_assert(sameProxiedObjects(self._keymanager, None)
                    is not True,
                    "We need a non-null keymanager for initializing imap "
                    "service")

        self.imap_service, self.imap_port, \
            self.imap_factory = imap.start_imap_service(
                self._soledad,
                self._keymanager,
                userid=self.userid)
        self.imap_service.start_loop()
コード例 #6
0
    def start_imap_service(self, userid, offline=False):
        """
        Start IMAP service.

        :param userid: user id, in the form "user@provider"
        :type userid: str
        :param offline: whether imap should start in offline mode or not.
        :type offline: bool
        """
        logger.debug('Starting imap service')

        self.imap_service, self.imap_port, \
            self.imap_factory = imap.start_imap_service(
                self._soledad,
                self._keymanager,
                userid=userid,
                offline=offline)

        if offline is False:
            logger.debug("Starting loop")
            self.imap_service.start_loop()
コード例 #7
0
    def start_imap_service(self, userid, offline=False):
        """
        Start IMAP service.

        :param userid: user id, in the form "user@provider"
        :type userid: str
        :param offline: whether imap should start in offline mode or not.
        :type offline: bool
        """
        logger.debug('Starting imap service')

        self.imap_service, self.imap_port, \
            self.imap_factory = imap.start_imap_service(
                self._soledad,
                self._keymanager,
                userid=userid,
                offline=offline)

        if offline is False:
            logger.debug("Starting loop")
            self.imap_service.start_loop()