private void TransactionReachedUtilityThenReverse(Transaction trans, PostResponse utilityResp) { DatabaseHandler dh = new DatabaseHandler(); BusinessLogic bll = new BusinessLogic(); PostResponse bankResp = bll.ReverseTransactionAtStanbic(trans); //log bank response LogBankResponse(bankResp, trans); //reversed successfully at bank if (bankResp.StatusCode == "0") { string Reason = utilityResp.StatusDescription; string Status = "REVERSED"; dh.ReverseTransactionAndCharges(trans.VendorTransactionRef, trans.VendorCode, Reason, bankResp.PegPayPostId); } else if (bankResp.StatusCode == "100") { //failed to reverse at Bank //lets leave this transaction pending } else { //unknown error //lets leave this transaction pending } }
public async Task <IActionResult> Create([FromBody] CreatePostRequest request) { IdentityUser author = await _userManager.FindByIdAsync(HttpContext.GetUserId()); var post = new Post { Title = request.Title, UserId = HttpContext.GetUserId(), Author = author.UserName, Date = request.Date, Image = request.Image, Content = request.Content, Tags = request.Tags }; await _postService.CreatePostAsync(post); var baseUrl = $"{HttpContext.Request.Scheme}://{HttpContext.Request.Host.ToUriComponent()}"; var locationUri = baseUrl + "/" + ApiRoutes.Posts.Get.Replace("{postId}", post.Id.ToString()); var response = new PostResponse { Id = post.Id }; return(Created(locationUri, response)); }
protected void addDocumentType(object sender, DirectEventArgs e) { if (string.IsNullOrEmpty(dtId.Text)) { return; } CompanyDocumentType dept = new CompanyDocumentType(); dept.name = dtId.Text; PostRequest <CompanyDocumentType> depReq = new PostRequest <CompanyDocumentType>(); depReq.entity = dept; PostResponse <CompanyDocumentType> response = _systemService.ChildAddOrUpdate <CompanyDocumentType>(depReq); if (response.Success) { dept.recordId = response.recordId; FillDocumentType(); dtId.Select(dept.recordId); } else { X.MessageBox.ButtonText.Ok = Resources.Common.Ok; Common.errorMessage(response); return; } }
protected void addNA(object sender, DirectEventArgs e) { Nationality dept = new Nationality(); dept.name = naId.Text; PostRequest <Nationality> depReq = new PostRequest <Nationality>(); depReq.entity = dept; PostResponse <Nationality> response = _systemService.ChildAddOrUpdate <Nationality>(depReq); if (response.Success) { dept.recordId = response.recordId; FillNationality(); naId.Select(response.recordId); } else { X.MessageBox.ButtonText.Ok = Resources.Common.Ok; Common.errorMessage(response); return; } }
public async Task <IActionResult> Create([FromBody] CreatePostRequest postRequest) { var post = new Post { Name = postRequest.Name, UserId = HttpContext.GetUserId() }; var created = await _postService.CreatePostAsync(post); if (!created) { return(BadRequest(new ErrorResponse { Errors = new List <ErrorModel> { new ErrorModel { Message = "Unable to create post" } } })); } var baseUrl = $"{HttpContext.Request.Scheme}://{HttpContext.Request.Host.ToUriComponent()}"; var locationUri = baseUrl + "/" + ApiRoutes.Posts.Get.Replace("{postId}", post.Id.ToString()); //user bunu nereden retrieve eder var postResponse = new PostResponse { Id = post.Id }; return(Created(locationUri, postResponse)); }
public object ValidateSave(bool isPhantom, string obj, JsonObject values) { if (!values.ContainsKey("comment")) { return(new { valid = false, msg = "Error in call" }); } PostRequest <CaseComment> req = new PostRequest <CaseComment>(); CaseComment note = JsonConvert.DeserializeObject <List <CaseComment> >(obj)[0]; //note.recordId = id; note.caseId = Convert.ToInt32(currentCase.Text); note.comment = values["comment"].ToString(); int bulk; req.entity = note; PostResponse <CaseComment> resp = _caseService.ChildAddOrUpdate <CaseComment>(req); if (!resp.Success) { X.Msg.Alert(Resources.Common.Error, GetGlobalResourceObject("Errors", resp.ErrorCode) != null ? GetGlobalResourceObject("Errors", resp.ErrorCode).ToString() + "<br>" + GetGlobalResourceObject("Errors", "ErrorLogId") + resp.LogId : resp.Summary).Show(); return(new { valid = false }); } caseComments_RefreshData(note.caseId); return(new { valid = true }); }
protected void SavePattern(object sender, DirectEventArgs e) { string day = e.ExtraParams["pattern"]; SchedulePattern b = JSON.Deserialize <SchedulePattern>(day); b.scId = Convert.ToInt32(CurrentSchedule.Text); PostRequest <SchedulePattern> request = new PostRequest <SchedulePattern>(); request.entity = b; PostResponse <SchedulePattern> response = _branchService.ChildAddOrUpdate <SchedulePattern>(request); if (!response.Success)//it maybe another check { X.MessageBox.ButtonText.Ok = Resources.Common.Ok; X.Msg.Alert(Resources.Common.ErrorUpdatingRecord, GetGlobalResourceObject("Errors", response.ErrorCode) != null ? GetGlobalResourceObject("Errors", response.ErrorCode).ToString() + "<br>" + GetGlobalResourceObject("Errors", "ErrorLogId") + response.LogId : response.Summary).Show(); return; } else { Store1.Reload(); Notification.Show(new NotificationConfig { Title = Resources.Common.Notification, Icon = Icon.Information, Html = Resources.Common.PatternAppliedSucc }); this.patternWindow.Close(); } }
protected void addCountry(object sender, DirectEventArgs e) { if (string.IsNullOrEmpty(countryIdCombo.Text)) { return; } Nationality obj = new Nationality(); obj.name = countryIdCombo.Text; PostRequest <Nationality> req = new PostRequest <Nationality>(); req.entity = obj; PostResponse <Nationality> response = _systemService.ChildAddOrUpdate <Nationality>(req); if (response.Success) { obj.recordId = response.recordId; FillCountry(); countryIdCombo.Select(obj.recordId); } else { X.MessageBox.ButtonText.Ok = Resources.Common.Ok; Common.errorMessage(response); return; } }
protected void addCl(object sender, DirectEventArgs e) { CertificateLevel dept = new CertificateLevel(); dept.name = clId.Text; PostRequest <CertificateLevel> depReq = new PostRequest <CertificateLevel>(); depReq.entity = dept; PostResponse <CertificateLevel> response = _employeeService.ChildAddOrUpdate <CertificateLevel>(depReq); if (response.Success) { dept.recordId = response.recordId; FillCertificateLevels(); clId.Select(response.recordId); } else { X.MessageBox.ButtonText.Ok = Resources.Common.Ok; Common.errorMessage(response); return; } }
public async Task <IActionResult> CreateAsync([FromBody] CreatePostRequest postRequest) { var post = new Post { Id = Guid.NewGuid(), Name = postRequest.Name, UserId = HttpContext.GetUserId() }; if (post.Id != Guid.Empty) { post.Id = Guid.NewGuid(); } await _postService.CreatePostAsync(post); var baseUri = $"{HttpContext.Request.Scheme}://{HttpContext.Request.Host.ToUriComponent()}"; var locationUri = baseUri + "/" + ApiRoutes.Posts.Get.Replace("{postId}", post.Id.ToString()); var response = new PostResponse { Id = post.Id }; return(Created(locationUri, post)); }
protected override void ProcessElement(Department item) { PostRequest <Department> req = new PostRequest <Department>(); req.entity = item; if (!departmentsIds.ContainsKey(item.parentRef) || string.IsNullOrEmpty(item.parentRef)) { item.parentId = null; } else { item.parentId = Convert.ToInt32(departmentsIds[item.parentRef]); } PostResponse <Department> resp = service.ChildAddOrUpdate <Department>(req); if (!resp.Success) { errors.Add(item); errorMessages.Add(resp.Summary); return; } if (!departmentsIds.ContainsKey(item.departmentRef)) { departmentsIds.Add(item.departmentRef, resp.recordId); } }
public IHttpActionResult Post([FromBody] PostData value) { if (value.Numero == 351) { var resp = new PostResponse() { Nombre = value.Nombre, Numero = value.Numero, Mensaje = "Ya Existe." }; string jsonR = JsonConvert.SerializeObject(resp); HttpResponseMessage responseG = Request.CreateResponse(HttpStatusCode.SeeOther); responseG.Content = new StringContent(jsonR, Encoding.UTF8, "application/json"); responseG.Headers.Location = new Uri(Request.RequestUri.ToString() + "/" + value.Numero); return(base.ResponseMessage(responseG)); } else { var resp = new PostResponse() { Nombre = value.Nombre, Numero = value.Numero, Mensaje = "Alta Correcta." }; string jsonR = JsonConvert.SerializeObject(resp); HttpResponseMessage responseG = Request.CreateResponse(HttpStatusCode.Created); responseG.Content = new StringContent(jsonR, Encoding.UTF8, "application/json"); responseG.Headers.Location = new Uri(Request.RequestUri.ToString() + "/" + value.Numero); return(base.ResponseMessage(responseG)); } }
protected void addStatus(object sender, DirectEventArgs e) { EmploymentStatus dept = new EmploymentStatus(); dept.name = statusId.Text; PostRequest <EmploymentStatus> depReq = new PostRequest <EmploymentStatus>(); depReq.entity = dept; PostResponse <EmploymentStatus> response = _employeeService.ChildAddOrUpdate <EmploymentStatus>(depReq); if (response.Success) { dept.recordId = response.recordId; FillEHStatus(); statusId.Select(dept.recordId); } else { X.MessageBox.ButtonText.Ok = Resources.Common.Ok; Common.errorMessage(response); return; } }
private void LogBankResponse(PostResponse response, Transaction tran) { DatabaseHandler dh = new DatabaseHandler(); string OtherData = "PegPayId = " + response.PegPayPostId + ", TransactionId = " + response.StatusCode; dh.InsertIntoBankResponseLogs(tran.VendorCode, tran.VendorTransactionRef, response.StatusCode, response.StatusDescription, OtherData); }
public async Task <IActionResult> Create([FromBody] CreatePostRequest postRequest) { var newPostId = Guid.NewGuid(); var post = new Post { id = newPostId, Name = postRequest.Name, UserId = HttpContext.GetUserId(), Tags = postRequest.Tags.Select(x => new PostTag { PostId = newPostId, TagName = x }).ToList() }; await _postService.CreatePostAsync(post); var locationUri = _uriService.GetPostUri(post.id.ToString()); var response = new PostResponse { id = post.id, Name = post.Name, Tags = post.Tags.Select(x => new TagResponse { Name = x.TagName }) }; return(Created(locationUri, new Response <PostResponse>(_mapper.Map <PostResponse>(post)))); }
protected void addCalendar(object sender, DirectEventArgs e) { if (string.IsNullOrEmpty(caId.Text)) { return; } WorkingCalendar dept = new WorkingCalendar(); dept.name = caId.Text; PostRequest <WorkingCalendar> depReq = new PostRequest <WorkingCalendar>(); depReq.entity = dept; PostResponse <WorkingCalendar> response = _timeAttendanceService.ChildAddOrUpdate <WorkingCalendar>(depReq); if (response.Success) { dept.recordId = response.recordId; FillCalendars(); caId.Select(dept.recordId); } else { X.MessageBox.ButtonText.Ok = Resources.Common.Ok; Common.errorMessage(response); return; } }
private void LogUtilityResponse(PostResponse response, Transaction tran) { DatabaseHandler dh = new DatabaseHandler(); string OtherData = "UtilityCode = " + tran.UtilityCode + ", UtilityRef = " + response.PegPayPostId + ", StatusCode = " + response.StatusCode + " StatusDesc = " + response.StatusDescription; dh.InsertIntoUtilityResponseLogs(tran.VendorCode, tran.VendorTransactionRef, response.StatusCode, response.StatusDescription, OtherData); }
public async Task <IActionResult> Create([FromBody] CreatePostRequest postRequest) // The FromBody attribute gives the framework a clue as to where the posted data is (from the body in this case) { // Make sure to map the request to your domain object! This is why we created an additional CreatePostRequest class // What we expose to the client is a (versioned) contract/interface. Never mix up your contracts with domain objects, // as you may want to change the contract, but keep the domain objects the same in the future. var newPostId = Guid.NewGuid(); var post = new Post { Id = newPostId, Name = postRequest.Name, UserId = HttpContext.GetUserId(), Tags = postRequest.Tags.Select(tagName => new PostTag { TagName = tagName, PostId = newPostId }).ToList() }; await this.postService.CreateAsync(post); var baseUrl = $"{HttpContext.Request.Scheme}://{HttpContext.Request.Host.ToUriComponent()}"; var locationUri = $"{baseUrl}/{ApiRoutes.Posts.Get.Replace("{postId}", post.Id.ToString())}"; // As with the request object, also make sure to use a versioned contract class for the response. // Both request and response look the same right now, but this could easily change in the future! var response = new PostResponse { Id = post.Id, Name = post.Name, Tags = post.Tags.Select(postTag => postTag.TagName) }; return(Created(locationUri, response)); }
protected void addFolder(object sender, DirectEventArgs e) { SystemFolder dept = new SystemFolder(); dept.name = folderId.Text; PostRequest <SystemFolder> depReq = new PostRequest <SystemFolder>(); depReq.entity = dept; PostResponse <SystemFolder> response = _systemService.ChildAddOrUpdate <SystemFolder>(depReq); if (response.Success) { dept.recordId = response.recordId; dtStore.DataSource = GetFolders(); folderId.Select(response.recordId); } else { X.MessageBox.ButtonText.Ok = Resources.Common.Ok; X.Msg.Alert(Resources.Common.Error, GetGlobalResourceObject("Errors", response.ErrorCode) != null ? GetGlobalResourceObject("Errors", response.ErrorCode).ToString() + "<br>" + GetGlobalResourceObject("Errors", "ErrorLogId") + response.LogId : response.Summary).Show(); return; } }
protected void SaveAssetPOReception(object sender, DirectEventArgs e) { try { List <AssetManagementAsset> values = JsonConvert.DeserializeObject <List <AssetManagementAsset> >(e.ExtraParams["values"]); PostRequest <AssetManagementAsset> request = new PostRequest <AssetManagementAsset>(); values.ForEach(x => { request.entity = x; PostResponse <AssetManagementAsset> resp = _assetManagementService.ChildAddOrUpdate <AssetManagementAsset>(request); if (!resp.Success) { Common.errorMessage(resp); } }); Notification.Show(new NotificationConfig { Title = Resources.Common.Notification, Icon = Icon.Information, Html = Resources.Common.RecordSavingSucc }); } catch (Exception exp) { if (!string.IsNullOrEmpty(exp.Message)) { X.MessageBox.Alert(GetGlobalResourceObject("Common", "Error").ToString(), exp.Message); } } }
public async Task <IActionResult> Create([FromBody] CreatePostRequest postRequest) { var newPostId = Guid.NewGuid(); var post = new Post { Id = newPostId, Name = postRequest.Name, UserId = HttpContext.GetUserId(), Tags = postRequest.Tags.Select(x => new PostTag { PostId = newPostId, TagName = x }).ToList() }; await _posts.CreatePost(post); var baseUrl = $"{HttpContext.Request.Scheme}://{HttpContext.Request.Host.ToUriComponent()}"; var locationUrl = baseUrl + "/" + ApiRoutes.Posts.Get.Replace("{postId}", post.Id.ToString()); var response = new PostResponse { Id = post.Id }; return(Created(locationUrl, response)); }
protected void addDivision(object sender, DirectEventArgs e) { if (string.IsNullOrEmpty(divisionId.Text)) { return; } Division dept = new Division(); dept.name = divisionId.Text; dept.isInactive = false; PostRequest <Division> depReq = new PostRequest <Division>(); depReq.entity = dept; PostResponse <Division> response = _companyStructureService.ChildAddOrUpdate <Division>(depReq); if (response.Success) { dept.recordId = response.recordId; FillDivision(); divisionId.Select(dept.recordId); } else { X.MessageBox.ButtonText.Ok = Resources.Common.Ok; Common.errorMessage(response); return; } }
protected void addST(object sender, DirectEventArgs e) { State dept = new State(); dept.name = stId.Text; PostRequest <State> depReq = new PostRequest <State>(); depReq.entity = dept; PostResponse <State> response = _systemService.ChildAddOrUpdate <State>(depReq); if (response.Success) { dept.recordId = response.recordId; FillState(); stId.Select(response.recordId); } else { X.MessageBox.ButtonText.Ok = Resources.Common.Ok; Common.errorMessage(response); return; } }
public async Task UpdateAsync_ShouldReturnResponseSeccessFalse_WhenPostDoesNotExist() { //Arange var id = Guid.NewGuid().ToString(); var name = "Post for test"; var content = "Content for testing"; var post = new Post { Id = id, Name = name, Content = content }; name = "Name to update"; content = "Content to update"; var postU = new Post { Name = name, Content = content }; _postRepoMock.Setup(x => x.GetAsync(id)).ReturnsAsync(() => null); //Act PostResponse pr = await _sut.UpdateAsync(id, postU); //Assert Assert.False(pr.Success); }
private PostResponse GetExceptionResponse(Exception ex) { PostResponse resp = new PostResponse(); string errorMsg = ex.Message.ToUpper().Trim(); if (errorMsg.Contains("UNABLE TO CONNECT")) { //signal to skip this transaction resp.PegPayPostId = ""; resp.StatusCode = "100"; resp.StatusDescription = ex.Message; } else if (errorMsg.Contains("SERVER WAS UNABLE TO PROCESS")) { //signal to skip this transaction resp.PegPayPostId = ""; resp.StatusCode = "100"; resp.StatusDescription = ex.Message; } else if (errorMsg.Contains("TIME OUT") || errorMsg.Contains("TIMED OUT")) { //signal to skip this transaction resp.PegPayPostId = ""; resp.StatusCode = "500"; resp.StatusDescription = ex.Message; } else { //signal to skip this transaction resp.PegPayPostId = ""; resp.StatusCode = "100"; resp.StatusDescription = ex.Message; } return(resp); }
public async Task UpdateAsync_ShouldMuch_WhenPostUpdated() { //Arange var id = Guid.NewGuid().ToString(); var name = "Post for test"; var content = "Content for testing"; var post = new Post { Id = id, Name = name, Content = content }; name = "Name to update"; content = "Content to update"; var postU = new Post { Name = name, Content = content }; _postRepoMock.Setup(x => x.GetAsync(id)).ReturnsAsync(post); //Act PostResponse pr = await _sut.UpdateAsync(id, postU); //Assert Assert.Equal(name, pr.Resource.Name); Assert.Equal(content, pr.Resource.Content); }
protected void saveDocumentTransfer(object sender, DirectEventArgs e) { string seqNo = e.ExtraParams["seqNo"]; string doId = e.ExtraParams["doId"]; string status = e.ExtraParams["status"]; AdminDocTransfer t = new AdminDocTransfer(); t.seqNo = seqNo; t.doId = Convert.ToInt32(doId); t.apStatus = status.Trim('\"'); t.employeeId = _systemService.SessionHelper.GetEmployeeId(); t.departmentId = "0"; PostRequest <AdminDocTransfer> req = new PostRequest <AdminDocTransfer>(); req.entity = t; PostResponse <AdminDocTransfer> resp = _selfServiceService.ChildAddOrUpdate <AdminDocTransfer>(req); if (!resp.Success) { //Show an error saving... X.MessageBox.ButtonText.Ok = Resources.Common.Ok; Common.errorMessage(resp); return; } DocumentTransferWindow.Close(); documentsTransfersStore.Reload(); }
public ActionResult Startuserjz(int uid, double fmoney) { PostResponse _Respone = new PostResponse() { IsSuccess = false }; if (LinkTokenSQ.MvcApplication.Syspar["OpeanLuckdraw"].keyvalue == "0") { _Respone.Message = LinkTokenSQ.MvcApplication.Syspar["OpeanLuckdraw"].keydes; return(Json(_Respone)); } var uinfo = this.GetUser(); try { if (fmoney <= 0) { _Respone.Message = "捐赠数额要>0 "; return(Json(_Respone)); } if (uid == uinfo.uid) { string info = ""; var acc = uaccountDal.GetByKeyId(uid, ref info); if (acc.accountmony < fmoney) { _Respone.Message = "用户积分余额不足,谢谢支持."; return(Json(_Respone)); } acc.accountmony -= fmoney; if (uaccountDal.Update(acc)) { jz_userdetailEntity jzo = new jz_userdetailEntity(); jzo.createtime = DateTime.Now; jzo.fmoney = fmoney; jzo.uid = uid; jzo.remark = "用户捐赠"; jz_userdetailDal.Insert(jzo); uchangedetailEntity ch = new uchangedetailEntity(); ch.remark = "用户捐赠"; ch.ftype = 30; ch.uid = uid; ch.fmoney = fmoney; ch.datachange_lasttime = DateTime.Now; uchangedetailDal.Inert(ch); _Respone.IsSuccess = true; } else { _Respone.Message = "捐赠失败,请重试看看,谢谢支持."; } } } catch (Exception ex) { _Respone.Message = ex.Message; } return(Json(_Respone)); }
protected void addBranch(object sender, DirectEventArgs e) { if (string.IsNullOrEmpty(branchId.Text)) { return; } Branch dept = new Branch(); dept.name = branchId.Text; // dept.timeZone = _systemService.SessionHelper.GetDefaultTimeZone(); PostRequest <Branch> depReq = new PostRequest <Branch>(); depReq.entity = dept; PostResponse <Branch> response = _companyService.ChildAddOrUpdate <Branch>(depReq); if (response.Success) { dept.recordId = response.recordId; FillBranch(); branchId.Select(dept.recordId); } else { X.MessageBox.ButtonText.Ok = Resources.Common.Ok; Common.errorMessage(response); return; } }
protected void ADDNewRecordComments(object sender, DirectEventArgs e) { string noteText = e.ExtraParams["noteText"]; X.Call("ClearNoteText"); PostRequest <CaseComment> req = new PostRequest <CaseComment>(); CaseComment note = new CaseComment(); note.recordId = null; note.comment = noteText; note.date = DateTime.Now; note.caseId = Convert.ToInt32(currentCase.Text); req.entity = note; PostResponse <CaseComment> resp = _caseService.ChildAddOrUpdate <CaseComment>(req); if (!resp.Success) { X.Msg.Alert(Resources.Common.Error, GetGlobalResourceObject("Errors", resp.ErrorCode) != null ? GetGlobalResourceObject("Errors", resp.ErrorCode).ToString() + "<br>" + GetGlobalResourceObject("Errors", "ErrorLogId") + resp.LogId : resp.Summary).Show(); } caseComments_RefreshData(Convert.ToInt32(currentCase.Text)); //Reset all values of the relative object }
public PostResponse CreatePost(string message,string emailAddress) { PostResponse response = new PostResponse(); try { response.post = new PostDataAccessLayer().CreatePost(message, emailAddress); } catch(Exception ex) { response.hasErrorOccured = true; response.errorDetails = ex.Message; } return response; }
public PostResponse GetPosts(int Id) { PostResponse response = new PostResponse(); try { response.lstPosts = new PostDataAccessLayer().GetPostByUserId(Id); } catch (Exception ex) { response.hasErrorOccured = true; response.errorDetails = ex.Message; } return response; }
public PostResponse GetPosts(string emailAddress) { PostResponse response = new PostResponse(); try { response.lstPosts = new PostDataAccessLayer().GetPosts(emailAddress); } catch (Exception ex) { response.hasErrorOccured = true; response.errorDetails = ex.Message; } return response; }
public static PostResponse Post(string uri, System.Collections.Specialized.NameValueCollection pairs) { byte[] rawData = null; var response = new PostResponse(); try { using (WebClient client = new WebClient()) { rawData = client.UploadValues(uri, pairs); } response.String = System.Text.Encoding.UTF8.GetString(rawData); } catch (Exception ex) { response.Exception = ex; } return response; }
public override void Configure(Container container) { LogManager.LogFactory = new Log4NetFactory(true); container.Register(_dbConnectionFactory); var basicAuthProvider = new BasicAuthProvider(); container.Register(basicAuthProvider); Plugins.Add(new AuthFeature( () => new AuthUserSession(), new IAuthProvider[] {basicAuthProvider, }, SystemConstants.LoginUrl )); var userRepo = new OrmLiteAuthRepository(_dbConnectionFactory); container.Register<IAuthRepository>(userRepo); var cacheClient = new MemoryCacheClient(); container.Register(cacheClient); var currencyTypeRepository = new CurrencyTypeRepository { DbConnectionFactory = _dbConnectionFactory }; var transactionTypeRepository = new TransactionTypeRepository { DbConnectionFactory = _dbConnectionFactory }; var transactionStatusTypeRepository = new TransactionStatusTypeRepository { DbConnectionFactory = _dbConnectionFactory }; var transactionNotificationStatusTypeRepository = new TransactionNotificationStatusTypeRepository { DbConnectionFactory = _dbConnectionFactory }; var transactionRepository = new TransactionRepository { DbConnectionFactory = _dbConnectionFactory }; var currencyTypeLogic = new CurrencyTypeLogic { Repository = currencyTypeRepository }; var transactionTypeLogic = new TransactionTypeLogic { Repository = transactionTypeRepository }; var transactionStatusTypeLogic = new TransactionStatusTypeLogic { Repository = transactionStatusTypeRepository }; var transactionNotificationStatusTypeLogic = new TransactionNotificationStatusTypeLogic { Repository = transactionNotificationStatusTypeRepository }; var transactionLogic = new TransactionLogic {Repository = transactionRepository}; container.Register<IRest<CurrencyType, GetCurrencyTypes>>(currencyTypeLogic); container.Register<IRest<TransactionType, GetTransactionTypes>>(transactionTypeLogic); container.Register<IRest<TransactionStatusType, GetTransactionStatusTypes>>(transactionStatusTypeLogic); container.Register<IRest<TransactionNotificationStatusType, GetTransactionNotificationStatusTypes>>(transactionNotificationStatusTypeLogic); container.Register<IRest<Transaction, GetTransactions>>(transactionLogic); CatchAllHandlers.Add((httpMethod, pathInfo, filePath) => pathInfo.StartsWith("/favicon.ico") ? new FavIconHandler() : null); var redisLocation = ConfigurationManager.AppSettings["ReddisService"]; Container.Register<IRedisClientsManager>(new PooledRedisClientManager(redisLocation)); var mqService = new RedisMqServer(container.Resolve<IRedisClientsManager>()); var messagingHandlers = new MessageService { Log = new Logger(typeof(MessageService).Name) }; Func<IMessage, IMessage> filterSecureRequests = (message) => { /* var tag = message.Tag; if (string.IsNullOrWhiteSpace(tag)) return message; if (tag.StartsWith("basic ", StringComparison.InvariantCultureIgnoreCase)) { var creds = Encoding.UTF8.GetString(Convert.FromBase64String(tag.Substring(5))); var i = creds.IndexOf(':'); var userName = creds.Substring(0, i); var userPass = creds.Substring(i + 1); if (userName != SystemConstants.AllowedUser || userPass != SystemConstants.AllowedPass) { message.Tag = null; return message; } _currentSessionGuid = Guid.NewGuid(); var sessionKey = userName + "/" + _currentSessionGuid.ToString("N"); SessionContext = new SessionContext { SessionKey = sessionKey, Username = userName }; container.Register(SessionContext); message.Tag = sessionKey; return message; } message.Tag = null;*/ return message; }; mqService.RequestFilter = filterSecureRequests; Func<IMessage<Transaction>, PostResponse<Transaction>> handlePostTransactions = (message) => { var service = new TransactionWebService { Logic = transactionLogic }; var request = new BasicRequest {Message = message, Dto = message.GetBody()}; var response = new BasicResponse(request); //userRepo.TryAuthenticate() service.SessionFactory.GetOrCreateSession(request, response); var session = service.GetSession(); session.UserName = "******"; var results = new PostResponse<Transaction> {Result = (Transaction) service.Post(message.GetBody())}; return results; }; // Dto Get Operations mqService.RegisterHandler<GetCurrencyTypes>(m => messagingHandlers.MessagingGetWrapper(m.GetBody(), currencyTypeLogic)); mqService.RegisterHandler<GetTransactions>(m => messagingHandlers.MessagingGetWrapper(m.GetBody(), transactionLogic)); mqService.RegisterHandler<GetTransactionStatusTypes>(m => messagingHandlers.MessagingGetWrapper(m.GetBody(), transactionStatusTypeLogic)); mqService.RegisterHandler<GetTransactionNotificationStatusTypes>(m => messagingHandlers.MessagingGetWrapper(m.GetBody(), transactionNotificationStatusTypeLogic)); mqService.RegisterHandler<GetTransactionTypes>(m => messagingHandlers.MessagingGetWrapper(m.GetBody(), transactionTypeLogic)); // Dto Post Operations mqService.RegisterHandler<CurrencyType>(m => messagingHandlers.MessagingPostRequest(m.GetBody(), currencyTypeLogic.Post)); mqService.RegisterHandler<Transaction>(handlePostTransactions); mqService.RegisterHandler<TransactionStatusType>(m => messagingHandlers.MessagingPostRequest(m.GetBody(), transactionStatusTypeLogic.Post)); mqService.RegisterHandler<TransactionNotificationStatusType>(m => messagingHandlers.MessagingPostRequest(m.GetBody(), transactionNotificationStatusTypeLogic.Post)); mqService.RegisterHandler<TransactionType>(m => messagingHandlers.MessagingPostRequest(m.GetBody(), transactionTypeLogic.Post)); // Dto Put Opertations mqService.RegisterHandler<DeleteCurrencyType>(m => messagingHandlers.MessagingDeleteWrapper(m.GetBody(), currencyTypeLogic)); mqService.RegisterHandler<DeleteTransaction>(m => messagingHandlers.MessagingDeleteWrapper(m.GetBody(), transactionLogic)); mqService.RegisterHandler<DeleteTransactionStatusType>(m => messagingHandlers.MessagingDeleteWrapper(m.GetBody(), transactionStatusTypeLogic)); mqService.RegisterHandler<DeleteTransactionNotificationStatusType>(m => messagingHandlers.MessagingDeleteWrapper(m.GetBody(), transactionNotificationStatusTypeLogic)); mqService.RegisterHandler<DeleteTransactionType>(m => messagingHandlers.MessagingDeleteWrapper(m.GetBody(), transactionTypeLogic)); mqService.Start(); }