public async Task <IActionResult> Post([FromBody] ApiResourceApiDto apiResourceApi)
        {
            var apiResourceDto = apiResourceApi.ToApiResourceApiModel <ApiResourceDto>();
            await _apiResourceService.AddApiResourceAsync(apiResourceDto);

            return(Ok());
        }
Beispiel #2
0
        public async Task <bool> CreateResource(APIResource req)
        {
            if (req.ResName == string.Empty)
            {
                return(false);
            }

            var apires = new ApiResourceApiDto()
            {
                Description = req.Description,
                DisplayName = req.ResName,
                Enabled     = true,
                Name        = req.ResName
            };
            var res = await apiLao.CreateApiResource(apires);

            if (res)
            {
                req.ResID = apires.Id;
                var result = await couchContext.InsertAsync <APIResource>(couchDbHelper, req);

                return(result.IsSuccess);
            }

            return(false);
        }
Beispiel #3
0
        public async Task <bool> CreateApiResource(ApiResourceApiDto resourceApiDto)
        {
            // discover endpoints from metadata
            var client = new HttpClient();
            var disco  = await client.GetDiscoveryDocumentAsync(IdentityEndpoint.Discovery);

            if (disco.IsError)
            {
                return(false);
            }

            // request token
            var req = new PasswordTokenRequest
            {
                Address = disco.TokenEndpoint,

                ClientId     = IdentityEndpoint.ClientID,
                ClientSecret = IdentityEndpoint.Secret,
                Scope        = IdentityEndpoint.Scopes,
                UserName     = IdentityEndpoint.UserName,
                Password     = IdentityEndpoint.Password
            };
            var tokenResponse = await client.RequestPasswordTokenAsync(req);

            if (tokenResponse.IsError)
            {
                return(false);
            }

            var apiClient = new HttpClient();

            apiClient.SetBearerToken(tokenResponse.AccessToken);

            var dataJson      = JsonSerializer.Serialize(resourceApiDto);
            var stringContent = new StringContent(dataJson, Encoding.UTF8, "application/json");

            var response = await apiClient.PostAsync(IdentityEndpoint.ResourceUri, stringContent);

            if (response.IsSuccessStatusCode)
            {
                var resDeserialize = await JsonHelper.Deserialize <ApiResourceApiDto>(response, defaultOptions);

                resourceApiDto.Id = resDeserialize.Id;
            }
            return(response.IsSuccessStatusCode);
        }
Beispiel #4
0
        public async Task <bool> UpdateResource(ApiResourceApiDto apiResourceApiDto, APIResourceDto aPIResource)
        {
            if (aPIResource.Id == string.Empty)
            {
                return(false);
            }
            if (aPIResource.Revision == string.Empty)
            {
                return(false);
            }

            var res = await apiLao.UpdateResource(apiResourceApiDto);

            if (res)
            {
                var result = await couchContext.EditAsync <APIResourceDto>(couchDbHelper, aPIResource);

                return(result.IsSuccess);
            }
            return(false);
        }
Beispiel #5
0
        public async Task <IActionResult> Post([FromBody] ApiResourceApiDto apiResourceApi)
        {
            var apiResourceDto = apiResourceApi.ToApiResourceApiModel <ApiResourceDto>();

            if (!apiResourceDto.Id.Equals(default))