コード例 #1
0
 def listNotifications(self, since):
     user, token = self.getCurrentUser(returnToken=True)
     return list(NotificationModel().get(user,
                                         since,
                                         token=token,
                                         sort=[('updated',
                                                SortDir.ASCENDING)]))
コード例 #2
0
        def streamGen():
            lastUpdate = since
            start = time.time()
            wait = MIN_POLL_INTERVAL
            while cherrypy.engine.state == cherrypy.engine.states.STARTED:
                wait = min(wait + MIN_POLL_INTERVAL, MAX_POLL_INTERVAL)
                for event in NotificationModel().get(user, lastUpdate, token=token):
                    if lastUpdate is None or event['updated'] > lastUpdate:
                        lastUpdate = event['updated']
                    wait = MIN_POLL_INTERVAL
                    start = time.time()
                    yield sseMessage(event)
                if time.time() - start > timeout:
                    break

                time.sleep(wait)