def GET(self, jrequest, jresponse): assert isinstance(jrequest, JsonRpcRequest) assert isinstance(jresponse, JsonRpcResponse) jresponse.setId() try: arduinoid = unicode(jrequest.getPathInfo(3)) debug("arduinoid = %s" % arduinoid) data_keys = Data.fetchByFieldAndString("arduinoid", arduinoid) debug("data_keys = %s" % data_keys) except Exception, e: jresponse.setErrorInvalidParameter(e) return
class FieldAndString(JsonRpcDispatcher): def GET(self, jrequest, jresponse): assert isinstance(jrequest, JsonRpcRequest) assert isinstance(jresponse, JsonRpcResponse) jresponse.setId() try: field = unicode(jrequest.getPathInfo(3)) string = unicode(jrequest.getPathInfo(4)) except Exception, e: jresponse.setErrorInvalidParameter(e) return data_keys = Data.fetchByFieldAndString(field, string) if data_keys is None or len(data_keys) == 0: raise EntityNotFound() for data_key in data_keys: data = data_key.get() jresponse.addResult(data)
class _OneDay(JsonRpcDispatcher): def GET(self, jrequest, jresponse): assert isinstance(jrequest, JsonRpcRequest) assert isinstance(jresponse, JsonRpcResponse) jresponse.setId() try: arduino_id = unicode(jrequest.getPathInfo(3)) year = int(jrequest.getPathInfo(4)) month = int(jrequest.getPathInfo(5)) day = int(jrequest.getPathInfo(6)) hour = int(jrequest.getPathInfo(7)) except Exception, e: jresponse.setError( JsonRpcError.INVALID_REQUEST, "Try /record/Arduino/<arduinoid>/<year>/<month>/<day> %s." % e.message()) return try: data_keys = Data.fetchByFieldAndString("arduinoid", arduino_id) except Exception, e: jresponse.setErrorInvalidParameter(e) return