def _get_segmented_image_path(self, wfrun, wfjob_url, page): wfjob_uuid = taskutil.get_uuid_from_url(wfjob_url) wfjob = WorkflowJob.objects.get(pk=wfjob_uuid) source_runjob = RunJob.objects.get(workflow_run=wfrun, workflow_job=wfjob, page=page) source_result = source_runjob.result.get() return source_result.result.path
def get(self, request, pk, *args, **kwargs): print "Glyph Get!" glyph_id = pk classifier_url = request.DATA.get('classifier_url') pageglyphs_url = request.DATA.get('pageglyphs_url') if classifier_url is not None: classifier_pk = get_uuid_from_url(classifier_url) gameraXML = Classifier.objects.get(pk=classifier_pk) elif pageglyphs_url is not None: pageglyphs_pk = get_uuid_from_url(pageglyphs_url) gameraXML = PageGlyphs.objects.get(pk=pageglyphs_pk) else: return Response({"message": "You must supply a url for a classifier or pageglyphs model that contains the glyph."}, status=status.HTTP_400_BAD_REQUEST) xml_file = gameraXML.file_path g = Glyph.from_file_with_id(xml_file, glyph_id) return JsonResponse(g.__dict__) # Also try the glyph serializer. (Try using super... although that wouldn't quite do it)
def patch(self, request, pk, *args, **kwargs): glyph_id = pk classifier_url = request.DATA.get('classifier_url') pageglyphs_url = request.DATA.get('pageglyphs_url') if classifier_url is None and pageglyphs_url is None: return Response({"message": "You must supply a url for a classifier or pageglyphs model that contains the glyph."}, status=status.HTTP_400_BAD_REQUEST) else: if classifier_url is not None: classifier_pk = get_uuid_from_url(classifier_url) classifier = Classifier.objects.get(pk=classifier_pk) xml_file = classifier.file_path g = Glyph.update(request.DATA, xml_file, glyph_id) if pageglyphs_url is not None: pageglyphs_pk = get_uuid_from_url(pageglyphs_url) pageglyphs = PageGlyphs.objects.get(pk=pageglyphs_pk) xml_file = pageglyphs.file_path g = Glyph.update(request.DATA, xml_file, glyph_id) return JsonResponse(g.__dict__)
def post(self, request, *args, **kwargs): print "Glyph Post!" classifier_url = request.DATA.get('classifier_url') if classifier_url is None: return Response({"message": "You must supply a url for a classifier to which the glyph should be added."}, status=status.HTTP_400_BAD_REQUEST) else: classifier_pk = get_uuid_from_url(classifier_url) classifier = Classifier.objects.get(pk=classifier_pk) xml_file = classifier.file_path json_glyph = request.DATA.get('glyph') g = Glyph.create(json_glyph, xml_file) return JsonResponse(g.__dict__)