示例#1
0
文件: handler.py 项目: johnner/wsrpc
    def on_close(self):
            if self.id in self._CLIENTS:
                self._CLIENTS.pop(self.id)
            for name, obj in iteritems(self.__handlers):
                self.ioloop.add_callback(obj._onclose)

            log.info('Client "{0}" disconnected'.format(self.id))
示例#2
0
 def write_tags(self, tags):
     for key, value in iteritems(tags):
         value = xml.sax.saxutils.quoteattr(value)
         self.output.write(('\t\t<tag k="' + key + '" v=' + value + '/>\n'
                            )  #.encode("utf-8")
                           )
示例#3
0
 def attrs_str(self, attrs):
     return ("".join([
         ' ' + key + '=' + xml.sax.saxutils.quoteattr(value)
         for key, value in iteritems(attrs)
     ]))  #.encode("utf-8")
示例#4
0
文件: handler.py 项目: johnner/wsrpc
    def broadcast(cls, func, callback=WebSocketRoute.placebo, **kwargs):
        ioloop = tornado.ioloop.IOLoop.current()

        for client_id, client in iteritems(cls._CLIENTS):
            ioloop.add_callback(client.call, func, callback, **kwargs)