예제 #1
0
파일: main.py 프로젝트: kmill/audqueue
 def post(self, function) :
     if function == "songs" :
         self.finish({"result" : self.application.db.get_songs()})
     elif function == "destinations" :
         self.finish({"result" : [(dest[0], dest[1].url()) for dest in self.application.destinations]})
     elif function == "add" :
         try :
             for dest in self.application.destinations :
                 if dest[0] == self.get_argument("destination") :
                     dest[1].add(json.loads(self.get_argument("filenames")))
                     break
             self.finish({"result" : "ok"})
         except Exception as x :
             print x
             self.finish({"error" : "Could not queue."})
     elif function == "rpc" :
         def getMessage() :
             return json.loads(self.get_argument("message"))
         for dest in self.application.destinations :
             if isinstance(dest[1], audacious.AudaciousQueue) :
                 res = minirpc.handle_request(dest[1], getMessage)
                 self.finish({"result" : res})
                 return
         self.finish({"error" : "No local audacious queue"})
     else :
         self.finish({"error" : "No such function."})
예제 #2
0
 def post(self, function) :
     if function == "rpc" :
         def getMessage() :
             return json.loads(self.get_argument("message"))
         res = minirpc.handle_request(self.application.queue, getMessage)
         self.finish({"result" : res})
     else :
         self.finish({"error" : "No such function"})
예제 #3
0
파일: main.py 프로젝트: kmill/metaview2
 def post(self, module) :
     def getMessage() :
         args = json.loads(self.get_argument("message", None))
         args.setdefault("kwargs", {})["user"] = self.current_user
         print repr(args)
         return args
     if module not in rpcmodules.RPC_MODULES :
         logger.error("No such rpc module %s", module)
         self.finish(minirpc.render_exception(KeyError(module)))
     else :
         const_args = {"handler" : self, "channels" : channels}
         self.finish(minirpc.handle_request(rpcmodules.RPC_MODULES[module](**const_args),
                                            getMessage))