//public void SendStartProcessing(string requestId, string callbackRouting) //{ // SendCallbackMessage( // callbackRouting, // new ChangeStatusCallbackMessage // { // RequestId = requestId, // NewProcessStep = ProcessStep.Processing // }); //} public void SendCompletedWithResult(string requestId, string callbackRouting, byte[] resultBin, string mimeType) { var msg = new ChangeStatusCallbackMessage { RequestId = requestId, NewProcessStep = ProcessStep.Completed }; switch (mimeType) { case "application/octet-stream": { msg.ResultBin = resultBin; } break; case "application/json": { msg.ResultObjectJson = Encoding.UTF8.GetString(resultBin); } break; default: { throw new UnsupportedMediaTypeException(mimeType); } } SendCallbackMessage( callbackRouting, msg); }
void SendCallbackMessage(string callbackRouting, ChangeStatusCallbackMessage msg) { try { _mqPublisher.Publish(new OutgoingMqEnvelop <ChangeStatusCallbackMessage> { PublishTarget = new PublishTarget { Exchange = _callbackQueue, Routing = callbackRouting }, Message = new MqMessage <ChangeStatusCallbackMessage>(msg) }); } catch (Exception e) { Log.Error("Can't send callback message", e).Write(); } }