Exemplo n.º 1
0
 def PUT(self, name, attrib=None):
     session = cherrypy.request.db
     cherrypy.response.headers['content-type'] = 'text/plain'
     body = cherrypy.request.body.read().decode()
     if (cherrypy.request.process_request_body == True):
         if attrib == None:
             element = Room.import_one(session, body, name=name)
             if isinstance(element, Room):
                 element = Room.add_one(session, element)
                 if isinstance(element, Room):
                     client_com.send_requests_process({"backend": None, "monitor": None, "user": None}, "PUT", "room", name, attrib, body, "text/xml")
                     return "Room %s added" % name
                 elif element == Room.ERROR_ELEMENT_ALREADY_EXISTS:
                     raise cherrypy.HTTPError("403", "Room %s already exists" % name)
             elif element == Room.ERROR_TAG_NOT_VALID:
                 raise cherrypy.HTTPError("400", "Tag not valid")
         else:
             element = Room.get_one(session, name)
             if isinstance(element, Room):
                 element = Room.edit_one(session, element, attrib, body)
                 if isinstance(element, Room):
                     client_com.send_requests_process({"backend": None, "monitor": None, "user": None}, "PUT", "room", name, attrib, body, "text/plain")
                     return "Room %s attribute %s value %s changed" % (name, attrib, body)
                 elif element == Room.ERROR_ATTRIB_NOT_VALID:
                     raise cherrypy.HTTPError("404", "Attribute % not found" % attrib)
             elif element == Room.ERROR_ELEMENT_NOT_EXISTS:
                 raise cherrypy.HTTPError("404", "Room %s not found" % name)
     else:
         raise cherrypy.HTTPError("400", "No body specified")
Exemplo n.º 2
0
 def POST(self, name):
     session = cherrypy.request.db
     cherrypy.response.headers['content-type'] = 'text/plain'
     body = cherrypy.request.body.read().decode()
     if (cherrypy.request.process_request_body == True):
         element = Room.get_one(session, name)
         if isinstance(element, Room):
             element = Room.import_one(session, body, element=element)
             if isinstance(element, Room):
                 client_com.send_requests_process({"backend": None, "monitor": None, "user": None}, "POST", "room", name, None, body, "text/xml")
                 return "Room %s updated" % name
             elif element == Room.ERROR_TAG_NOT_VALID:
                 raise cherrypy.HTTPError("400", "Tag not valid")
         elif element == Room.ERROR_ELEMENT_NOT_EXISTS:
             raise cherrypy.HTTPError("404", "Room %s not found" % name)
     else:
         raise cherrypy.HTTPError("400", "No body specified")