public async Task<IHttpActionResult> Get()
        {
            var coreMeta = await GetMetadataAsync();
            var data = new Dictionary<string, object>();

            var cp = (ClaimsPrincipal) User;
            var name = cp.Identity.Name;
            data.Add("currentUser", new
            {
                username = name
            });

            var links = new Dictionary<string, object>();

            links["clients"] = Url.Link(Constants.RouteNames.GetClients, null);
            if (coreMeta.ClientMetaData.SupportsCreate)
            {
                links["createClient"] = new CreateClientLink(Url, coreMeta.ClientMetaData);
            }

            links["scopes"] = Url.Link(Constants.RouteNames.GetScopes, null);
            if (coreMeta.ScopeMetaData.SupportsCreate)
            {
                links["createScope"] = new CreateScopeLink(Url, coreMeta.ScopeMetaData);
            }


            return Ok(new
            {
                Data = data,
                Links = links
            });
        }
Пример #2
0
        public async Task <IHttpActionResult> Get()
        {
            var coreMeta = await GetMetadataAsync();

            var data = new Dictionary <string, object>();

            var cp   = (ClaimsPrincipal)User;
            var name = cp.Identity.Name;

            data.Add("currentUser", new
            {
                username = name
            });

            var links = new Dictionary <string, object>();

            links["clients"] = Url.RelativeLink(Constants.RouteNames.GetClients);
            if (coreMeta.ClientMetaData.SupportsCreate)
            {
                links["createClient"] = new CreateClientLink(Url, coreMeta.ClientMetaData);
            }

            links["scopes"] = Url.RelativeLink(Constants.RouteNames.GetScopes);
            if (coreMeta.ScopeMetaData.SupportsCreate)
            {
                links["createScope"] = new CreateScopeLink(Url, coreMeta.ScopeMetaData);
            }

            return(Ok(new
            {
                Data = data,
                Links = links
            }));
        }
        public ScopeQueryResultResource(QueryResult<ScopeSummary> result, UrlHelper url, ScopeMetaData meta)
        {
            if (result == null) throw new ArgumentNullException("result");
            if (url == null) throw new ArgumentNullException("url");
            if (meta == null) throw new ArgumentNullException("meta");

            Data = new ScopeQueryResultResourceData(result, url, meta);

            var links = new Dictionary<string, object>();
            if (meta.SupportsCreate)
            {
                links["create"] = new CreateScopeLink(url, meta);
            };
            Links = links;
        }