/// <summary> /// Gets the statements. /// </summary> /// <param name="since">Since a particular date</param> /// <param name="limit">Limit or size of the resultset</param> /// <returns>List<Statement>.</returns> /// <exception cref="System.NotImplementedException"></exception> public async Task <StatementsResultLRSResponse> GetStatements(DateTime since, int limit) { var queryParams = new StatementsQuery { Since = since, Limit = limit }; return(await _lrs.QueryStatementsAsync(queryParams)); }
public async Task TestGetStatementsSince() { var queryParams = new StatementsQuery { Since = new DateTime(2017, 1, 12), Limit = 10 }; var task = await _xAPIWrapper.GetStatements(queryParams); Assert.IsTrue(task.Success); }
public async Task TestGetStatements() { var queryParams = new StatementsQuery { Agent = Support.Agent, VerbId = Support.Verb.ID, ActivityId = Support.Parent.ID, RelatedActivities = true, RelatedAgents = true, Format = StatementsQueryResultFormat.IDS, Limit = 10 }; var task = await _xAPIWrapper.GetStatements(queryParams); Assert.IsTrue(task.Success); }
public async Task TestMoreStatementsAsync() { var query = new StatementsQuery { Format = StatementsQueryResultFormat.IDS, Limit = 2 }; var queryRes = await _lrs.QueryStatementsAsync(query); if (queryRes.Success && queryRes.Content.More != null) { var moreRes = _lrs.MoreStatements(queryRes.Content); Assert.IsTrue(moreRes.Success); Console.WriteLine("TestMoreStatements - statement count: " + moreRes.Content.Statements.Count); } }
public async Task TestQueryStatementsAsync() { var query = new StatementsQuery { Agent = Support.Agent, VerbId = Support.Verb.Id, ActivityId = Support.Parent.Id, RelatedActivities = true, RelatedAgents = true, Format = StatementsQueryResultFormat.Ids, Limit = 10 }; var lrsRes = await _lrs.QueryStatementsAsync(query); Assert.IsTrue(lrsRes.Success); Console.WriteLine("TestQueryStatements - statement count: " + lrsRes.Content.Statements.Count); }
/// <inheritdoc/> public async Task <StatementsResult> GetStatementsResult(StatementsQuery parameters, CancellationToken cancellationToken = default) { HttpRequest request = httpContextAccessor.HttpContext.Request; IQueryCollection requestQuery = request.Query; var cmd = new PagedStatementsQuery() { ActivityId = parameters.ActivityId, Agent = parameters.Agent, Ascending = parameters.Ascending, Attachments = parameters.Attachments, Format = parameters.Format, Registration = parameters.Registration, RelatedActivities = parameters.RelatedActivities, RelatedAgents = parameters.RelatedAgents, Limit = parameters.Limit, Since = parameters.Since, Until = parameters.Until, StatementId = parameters.StatementId, VerbId = parameters.VerbId, VoidedStatementId = parameters.VoidedStatementId }; if (requestQuery.TryGetValue("cursor", out StringValues value)) { cmd.Cursor = (string)value; } var pagedResult = await mediator.Send(cmd, cancellationToken); var result = new StatementsResult() { Statements = mapper.Map <StatementCollection>(pagedResult.Statements) }; if (pagedResult.Cursor != null) { string cursor = pagedResult.Cursor; string relativePath = $"{request.Path}?cursor={cursor}"; result.More = new Uri(relativePath, UriKind.Relative); } return(result); }
/// <summary> /// Gets the statements. /// </summary> /// <param name="searchParams">The search parameters.</param> /// <returns>List<Statement>.</returns> /// <exception cref="System.NotImplementedException"></exception> public async Task <StatementsResultLRSResponse> GetStatements(StatementsQuery searchParams) { return(await _lrs.QueryStatementsAsync(searchParams)); }