예제 #1
0
        private TProviderResource GetProviderById(int id)
        {
            var definition = _providerFactory.Get(id);

            _providerFactory.SetProviderCharacteristics(definition);

            return(_resourceMapper.ToResource(definition));
        }
        public async Task <IActionResult> RedirectToProvider(string provider)
        {
            var authProvider     = _providerFactory.Get(provider);
            var redirectSettings = await authProvider.GenerateStartRequestUrl(Request);

            // Store stuff so that we know we initiated this
            // Todo: Probably can't rely on session if we want this to be flexible
            HttpContext.Session.SetString("secret", redirectSettings.secret);

            return(Redirect(redirectSettings.url));
        }
예제 #3
0
        private TProviderResource GetProviderById(int id)
        {
            var definition = _providerFactory.Get(id);
            var resource   = definition.InjectTo <TProviderResource>();

            resource.InjectFrom(_providerFactory.GetProviderCharacteristics(_providerFactory.GetInstance(definition), definition));

            return(resource);
        }
예제 #4
0
        public override void Process(TagHelperContext context, TagHelperOutput output)
        {
            var provider = _providerFactory.Get(Provider);

            var routeName  = $"NogginAuth_Redirect_{Provider}";
            var tagBuilder = _generator.GenerateRouteLink(ViewContext, "Provider link", routeName, null, null, null, null, null);

            output.TagName = "a";
            //output.MergeAttributes(tagBuilder);
            output.Attributes.SetAttribute("href", tagBuilder.Attributes["href"]);
        }
예제 #5
0
        private TProviderResource GetProviderById(int id)
        {
            var definition = _providerFactory.Get(id);

            _providerFactory.SetProviderCharacteristics(definition);

            var resource = new TProviderResource();

            MapToResource(resource, definition);

            return(resource);
        }
예제 #6
0
 private TProviderResource GetProviderById(int id)
 {
     return(_providerFactory.Get(id).InjectTo <TProviderResource>());
 }