DefaultRouteContext.cs 857 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. using Microsoft.AspNetCore.Http;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Security.Claims;
  6. using System.Threading.Tasks;
  7. namespace JsonRPC4.Router.Defaults
  8. {
  9. public class DefaultRouteContext : IRouteContext
  10. {
  11. public IServiceProvider RequestServices
  12. {
  13. get;
  14. }
  15. public ClaimsPrincipal User
  16. {
  17. get;
  18. }
  19. public IRpcMethodProvider MethodProvider
  20. {
  21. get;
  22. }
  23. public DefaultRouteContext(IServiceProvider serviceProvider, ClaimsPrincipal user, IRpcMethodProvider methodProvider)
  24. {
  25. RequestServices = serviceProvider;
  26. User = user;
  27. MethodProvider = methodProvider;
  28. }
  29. public static IRouteContext FromHttpContext(HttpContext httpContext, IRpcMethodProvider methodProvider)
  30. {
  31. return new DefaultRouteContext(httpContext.RequestServices, httpContext.User, methodProvider);
  32. }
  33. }
  34. }