public virtual IHttpActionResult RequestRefresh([FromBody] RefreshParams rp) { return(ExecuteValidatedAction(() => { // manually validating, as api is no longer wired up... ValidatorHelpers.ValidateAndThrow(rp, new RefreshParamsValidator()); // validate AuthClient and RefreshToken JwtConfig config = new JwtConfig(true, RequestLeftPart); AuthClient client = ValidateClient(rp); AuthToken rt = AuthService.RetrieveToken(rp.AuthUserId, rp.AuthClientId, rp.TokenIdentifier); AddNoCacheHeader(); if (client == null || rt == null || rt.AuthClientId != client.Id || !JsonWebToken.GrantNewAccess(config, rt.Token)) { return ImATeapot(); } // get user AuthUser user = AuthService.GetByIdForLogin(rt.AuthUserId); if (user == null) { return ImATeapot(); } CheckSetRoleManager(user); // make sure state is set in RoleManager ILoginResultDto loginResult = CreateTokenResult(user, client, config); // create new tokens, return result return loginResult != null ? (IHttpActionResult)Ok(loginResult) : ImATeapot(); })); }
internal async Task HandleRefreshRequest(RefreshParams refreshParams, RequestContext <bool> context) { try { Logger.Write(LogLevel.Verbose, "HandleRefreshRequest"); Validate.IsNotNull(nameof(refreshParams), refreshParams); Validate.IsNotNull(nameof(context), context); string uri = refreshParams.SessionId; ObjectExplorerSession session = null; if (!sessionMap.TryGetValue(uri, out session)) { Logger.Write(LogLevel.Verbose, $"Cannot expand object explorer node. Couldn't find session for uri. {uri} "); await serviceHost.SendEvent(ExpandCompleteNotification.Type, new ExpandResponse { SessionId = refreshParams.SessionId, NodePath = refreshParams.NodePath, ErrorMessage = $"Couldn't find session for session: {uri}" }); } else { RunExpandTask(session, refreshParams, true); } await context.SendResult(true); } catch (Exception ex) { await context.SendError(ex.ToString()); } }
private void RefreshMaterialDocumentList() { RefreshParams args = new RefreshParams(); args.database = Database; args.dateStart = pickMdDateFrom.Value; args.dateFinish = pickMdDateTo.Value; bgRefreshMaterialDocumentList.RunWorkerAsync(args); }
/// <summary> /// обновляет список заявок на пропуск /// </summary> private void RefreshPlanAppointList() { RefreshParams args = new RefreshParams(); args.database = Database; args.pageNumber = PlanAppointPage; args.dateStart = pickPlanAppointStart.Value; bgRefreshPlanAppointList.RunWorkerAsync(args); }
private void bgRefreshMaterialDocumentList_DoWork(object sender, DoWorkEventArgs e) { RefreshParams args = (RefreshParams)e.Argument; Database database = args.database; RefreshResult result = new RefreshResult(); result.List = MaterialPermit.LoadList((EntryControlDatabase)database, args.dateStart, args.dateFinish); e.Result = result; }
private void bgRefreshPlanAppointList_DoWork(object sender, DoWorkEventArgs e) { RefreshParams args = (RefreshParams)e.Argument; Database database = args.database; RefreshResult result = new RefreshResult(); result.totalPages = PlanAppoint.GetNumberWOPermit(database, args.dateStart); result.List = PlanAppoint.LoadWoPermit(database, args.dateStart, args.pageNumber); e.Result = result; }
private void bgRefresh_DoWork(object sender, DoWorkEventArgs e) { RefreshParams parameters = (RefreshParams)e.Argument; RefreshResult result = new RefreshResult(); result.totalPages = Permit.GetCount(parameters.database, parameters.dateStart, parameters.dateFinish, parameters.entryPoint, parameters.defaultState); result.List = LoadPermitList(parameters.database, parameters.dateStart, parameters.dateFinish, parameters.entryPoint, parameters.defaultState, parameters.pageNumber); e.Result = result; }
/// <summary> /// обновляет список пропусков /// </summary> private void RefreshPermitList() { RefreshParams args = new RefreshParams(); args.database = Database; args.dateStart = pickDateStart.Value; args.dateFinish = pickDateFinish.Value; args.entryPoint = EntryPoint.Empty; //(EntryPoint)rboxEntryPoint.SelectedItem; args.defaultState = (EnumerationItem)cboxPermitType.SelectedItem; args.pageNumber = PermitListPage; bgRefreshPermitList.RunWorkerAsync(args); }
private async Task <ExpandResponse> CallServiceRefresh(RefreshParams expandParams, RequestContext <bool> requestContext) { ExpandResponse result = null; serviceHostMock.AddEventHandling(ExpandCompleteNotification.Type, (et, p) => result = p); await service.HandleRefreshRequest(expandParams, requestContext); Task task = service.ExpandTask; if (task != null) { await task; } return(result); }
public async Task RefreshNodeGivenInvalidSessionShouldReturnEmptyList() { RefreshParams expandParams = new RefreshParams() { SessionId = "invalid session is", NodePath = "Any path" }; // when expanding // then expect the nodes are server children await RunAndVerify <bool, ExpandResponse>( test : (requestContext) => CallServiceRefresh(expandParams, requestContext), verify : (actual => { Assert.Equal(actual.SessionId, expandParams.SessionId); Assert.Null(actual.Nodes); })); }
private void bgLastPlanAppointDate_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) { DateTime lastDate = (DateTime)e.Result; if (lastDate > lastPlanAppouintModifiedDate) { lastPlanAppouintModifiedDate = lastDate; RefreshParams args = new RefreshParams(); args.database = Database; args.pageNumber = planAppointPage; args.dateStart = pickPlanAppointStart.Value; bgRefreshPlanAppointList.RunWorkerAsync(args); } else { StartTimer(); } }
private async Task RefreshAndVerifyServerNodes() { var session = await CreateSession(); RefreshParams expandParams = new RefreshParams() { SessionId = session.SessionId, NodePath = session.RootNode.NodePath }; // when expanding // then expect the nodes are server children await RunAndVerify <bool, ExpandResponse>( test : (requestContext) => CallServiceRefresh(expandParams, requestContext), verify : (actual => { Assert.Equal(actual.SessionId, session.SessionId); Assert.NotNull(actual.SessionId); VerifyServerNodeChildren(actual.Nodes); })); }
private void bgLastMaterialDocumentDate_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) { DateTime lastDate = (DateTime)e.Result; if (lastDate > lastMaterialDocumentModifiedDate) { lastMaterialDocumentModifiedDate = lastDate; RefreshParams args = new RefreshParams(); args.database = Database; args.pageNumber = materialDocumentListPage; args.dateStart = DateTime.MinValue; args.dateFinish = DateTime.MaxValue; bgRefreshMaterialDocumentList.RunWorkerAsync(args); } else { StartTimer(); } }
/// <summary> /// принудительно обновляет данные /// </summary> private void ForceRefreshData() { if (isRefreshing) { return; } isRefreshing = true; refreshTimer.Stop(); string refreshingText = "обновляем..."; lblToRefresh.Text = refreshingText; lblToRefresh2.Text = refreshingText; lblToRefresh3.Text = refreshingText; RefreshParams parameters = new RefreshParams(); parameters.database = Database; parameters.dateStart = pickDateStart.Value; parameters.dateFinish = pickDateFinish.Value; parameters.entryPoint = EntryPoint.Empty; parameters.defaultState = (EnumerationItem)cboxPermitType.SelectedItem; parameters.pageNumber = PermitListPage; bgRefreshPermitList.RunWorkerAsync(parameters); parameters.pageNumber = planAppointPage; bgRefreshPlanAppointList.RunWorkerAsync(parameters); parameters.dateStart = pickMdDateFrom.Value; parameters.dateFinish = pickMdDateTo.Value; parameters.pageNumber = MaterialDocumentListPage; if (ShowMaterialDocuments) { bgRefreshMaterialDocumentList.RunWorkerAsync(parameters); } }
private void bgLastUpdateDate_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) { DateTime lastDate = (DateTime)e.Result; if (lastDate > lastPermitModifiedDate) { lastPermitModifiedDate = lastDate; RefreshParams parameters = new RefreshParams(); parameters.database = Database; parameters.dateStart = pickDateStart.Value; parameters.dateFinish = pickDateFinish.Value; parameters.entryPoint = EntryPoint.Empty; parameters.defaultState = (EnumerationItem)cboxPermitType.SelectedItem; parameters.pageNumber = PermitListPage; bgRefreshPermitList.RunWorkerAsync(parameters); } else { StartTimer(); } }