def get(self, ticket_id): """Get single ticket details""" response_object = {'status': 'fail', 'message': 'Event does not exist'} try: t = query_ot() t.get(ticket_id) result = serialize(t.xml_result.decode("utf-8")).results[0] ticket = result.res # event = test() if not ticket: return response_object, 404 wrong_type = False unexpected_fields = [] for f in ticket.keys(): if f not in ticket_model.fields: unexpected_fields.append(f) wrong_type = True if wrong_type == True: response_object = { 'status': 'fail', 'message': 'wrong object returned' } return response_object, 400 else: response_object = {'status': 'success', 'data': ticket} return response_object, 200 except: return response_object, 404
def get(self, event_ucid): """Get single event details""" response_object = {'status': 'fail', 'message': 'Event does not exist'} try: e = query_ot() e.GetEventByUCID(event_ucid) result = serialize(e.xml_result.decode("utf-8")) event = result.results[0].res id = result.results[0].id # event = test() if not event: return response_object, 404 wrong_type = False unexpected_fields = [] for f in event.keys(): if f not in event_model.fields: unexpected_fields.append(f) wrong_type = True if wrong_type == True: response_object = { 'status': 'fail', #'message': 'unexpected fields : %s' % (unexpected_fields) 'message': 'wrong object returned' } return response_object, 400 else: response_object = { 'status': 'success', 'id': id, 'data': event } return response_object, 200 except: return response_object, 404
def get(self, object_id): """Get single event details""" response_object = {'status': 'fail', 'message': 'Event does not exist'} try: e = query_ot() e.get(object_id) result = serialize(e.xml_result.decode("utf-8")) # log.info(result) ot_object = result.results[0].metadata if not ot_object: return response_object, 404 else: response_object = { 'status': 'success', 'id': e.id, 'data': ot_object } return response_object, 200 except: return response_object, 404
def post(self, objectid): response_object = {'status': 'fail', 'message': 'Sorry. failed.'} try: post_data = request.get_json() log.error("pulling object %s with field %s" % (objectid, post_data.get('requiredfields'))) # log.info(request.get_json()) if True: r = query_ot() r.getWithFields(objectid, post_data.get('requiredfields')) logging.error(r.xml_result) items = serialize(r.xml_result.decode("utf-8")) if items.results == []: return response_object, 404 log.error("pulling object %s with field %s" % (objectid, post_data.get('requiredfields'))) id = items.results[0].id data = items.results[0].res if data: response_object = { 'status': 'success', 'message': 'object :', 'id': id, 'data': data } return response_object, 201 else: response_object = { 'status': 'fail', 'message': 'Sorry. failed.' } return response_object, 400 except: return response_object, 500
def post(self): post_data = request.get_json() # log.info(request.get_json()) try: r = query_ot() # log.info(post_data) r.getObjectList(post_data.get('objectclass'), post_data.get('filter'), post_data.get('variables'), post_data.get('requiredfields')) items = serialize(r.xml_result.decode("utf-8")).results results = [] for result in items: d = {} d.update({'id': result.id}) d.update({'data': result.res}) results.append(d) if results: response_object = { 'status': 'success', 'message': 'object list :', '%s' % post_data.get('objectclass'): results } return response_object, 201 else: response_object = { 'status': 'fail', 'message': 'Sorry. failed.' } return response_object, 400 except: response_object = {'status': 'fail', 'message': 'Invalid payload.'} return response_object, 400