public void FillRequestParameters(Dox42.GeneratorServiceMsg serviceMsg) { serviceMsg.InputParams = _inputParams.ToArray(); if (Operation == Dox42Operation.GenerateDocument) { if (String.IsNullOrWhiteSpace(DocTemplate)) { throw new ArgumentException("No templatePath in request!"); } serviceMsg.DocTemplate = DocTemplate; } else if (Operation == Dox42Operation.GenerateSpreadSheet) { if (String.IsNullOrWhiteSpace(DataMap)) { throw new ArgumentException("No datamapPath in request!"); } serviceMsg.DataMap = DataMap; } else { throw new NotImplementedException("The operation " + Operation.ToString() + " is not implemented!"); } _strategy.FillOutputRequestParmaeter(serviceMsg); }
public override void FillOutputRequestParmaeter(Dox42.GeneratorServiceMsg serviceMsg) { var postGenActions = new List <Dox42.PostGenAction> { new Dox42.PostGenAction() { ActionName = Dox42Request.Dox42OutputAction.EmailAction.ToString(), Params = _returnActionParams.ToArray() } }; serviceMsg.PostGenActions = postGenActions.ToArray(); }
public void ReturnOutputStrategy_Create() { var request = new ReturnOutputStrategy(); request.Format = ReturnOutputStrategy.Dox42ReturnFormat.docx; var svcMsg = new Dox42.GeneratorServiceMsg(); request.FillOutputRequestParmaeter(svcMsg); Assert.AreEqual(svcMsg.PostGenActions.Length, 1); Assert.AreEqual(svcMsg.PostGenActions[0].Params.Length, 1); Assert.AreEqual(svcMsg.PostGenActions[0].ActionName, "ReturnAction"); Assert.AreEqual(svcMsg.PostGenActions[0].Params[0].ParamName, "Format"); Assert.AreEqual(svcMsg.PostGenActions[0].Params[0].Value, "docx"); }
/// <summary> /// executes the report /// </summary> /// <param name="request"></param> /// <returns></returns> public Dox42Response ExecuteReport(Dox42Request request) { Dox42Response response = new Dox42Response(); response.Request = request; try { var serviceMessage = new Dox42.GeneratorServiceMsg(); request.FillRequestParameters(serviceMessage); Dox42.GeneratorServiceResponse serviceResponse = null; if (request.Operation == Dox42Request.Dox42Operation.GenerateDocument) { serviceResponse = _soapSvc.GenerateDocumentAsync(serviceMessage); } else { serviceResponse = _soapSvc.GenerateSpreadSheetAsync(serviceMessage); } if (serviceResponse != null && serviceResponse.ResultMessage == "OK") { response.Success = true; response.Message = "Report successfully created!"; response.Filename = Path.GetFileNameWithoutExtension(request.DocTemplate); response.File = serviceResponse.GeneratedDocs[0].Bytes; } else { response.Success = false; response.Message = serviceResponse.ResultMessage; } } catch (Exception e) { response.Message = "Error while generating the File: " + e.ToString(); response.Success = false; } return(response); }
public abstract void FillOutputRequestParmaeter(Dox42.GeneratorServiceMsg serviceMsg);
public System.Threading.Tasks.Task <Dox42.GeneratorServiceResponse> GenerateSpreadSheetAsync(Dox42.GeneratorServiceMsg msg) { return(base.Channel.GenerateSpreadSheetAsync(msg)); }