HttpResponse ___response_ocr(HttpRequest request) { if (HandlerCallback.OcrRunning) { return(new HttpResponse(new OCR_RESULT("OCR_ENGINE is busy").getStringJson())); } if (request.Url.Contains("?") == false) { return(new HttpResponse(new OCR_RESULT("QueryString is null").getStringJson())); } string files = string.Empty, front_side = string.Empty, back_side = string.Empty; string queryString = request.Url.Split('?')[1]; if (queryString[0] == '/') { queryString = queryString.Substring(1); } if (!string.IsNullOrEmpty(queryString)) { var paras = System.Web.HttpUtility.ParseQueryString(queryString); if (paras != null && paras.HasKeys()) { HandlerCallback.OcrRunning = true; front_side = paras.Get("front_side"); back_side = paras.Get("back_side"); var f1 = SaveImage(front_side); var f2 = SaveImage(back_side); if (string.IsNullOrEmpty(f1) || string.IsNullOrEmpty(f2)) { HandlerCallback.OcrRunning = false; return(new HttpResponse(new OCR_RESULT("Cannot download images").getStringJson())); } files = f1 + ";" + f2; //Thread.Sleep(1000); HandlerCallback.ocr_request_actractImage2Text(files); } } else { return(new HttpResponse(new OCR_RESULT("QueryString is null").getStringJson())); } _EVENT.WaitOne(); _RESULT.urls = new string[] { front_side, back_side }; return(new HttpResponse(new OCR_RESULT(true, _RESULT).getStringJson())); }
internal override bool Handle(object raw_data) { try { HandlerCallback?.Invoke(raw_data); ProcessAsyncHandler(HandlerCallbackAsync, raw_data); } catch (Exception e) { Owner.InternalLog.Error(e, $"Handler threw an exception"); InformParentOfError(e); } // Always return true. If a HandleAny simply exists // at all then the message was handled. return(true); }
public static IMsBuildAccessor ImplementGetProjectXmlAndXmlChangedEvents(string xml, HandlerCallback subscribeCallback, HandlerCallback unsubscribeCallback) { var mock = new Mock <IMsBuildAccessor>(); mock.Setup(m => m.GetProjectXmlAsync(It.IsAny <UnconfiguredProject>())).Returns(Task.FromResult(xml)); mock.Setup(m => m.SubscribeProjectXmlChangedEventAsync(It.IsAny <UnconfiguredProject>(), It.IsAny <EventHandler <ProjectXmlChangedEventArgs> >())) .Callback <UnconfiguredProject, EventHandler <ProjectXmlChangedEventArgs> >((proj, handler) => subscribeCallback(handler)) .Returns(Task.CompletedTask); mock.Setup(m => m.UnsubscribeProjectXmlChangedEventAsync(It.IsAny <UnconfiguredProject>(), It.IsAny <EventHandler <ProjectXmlChangedEventArgs> >())) .Callback <UnconfiguredProject, EventHandler <ProjectXmlChangedEventArgs> >((proj, handler) => unsubscribeCallback(handler)) .Returns(Task.CompletedTask); return(mock.Object); }