public async Task <ActionResult> UpdateResourceSet([FromBody] PutResourceSet putResourceSet)
        {
            if (putResourceSet == null)
            {
                return(BuildError(ErrorCodes.InvalidRequestCode, "no parameter in body request", HttpStatusCode.BadRequest));
            }

            var parameter         = putResourceSet.ToParameter();
            var resourceSetExists = await _resourceSetActions.UpdateResourceSet(parameter);

            if (!resourceSetExists)
            {
                return(GetNotFoundResourceSet());
            }

            var response = new UpdateResourceSetResponse
            {
                Id = putResourceSet.Id
            };

            await _representationManager.AddOrUpdateRepresentationAsync(this, Constants.CachingStoreNames.GetResourceStoreName + putResourceSet.Id, false);

            return(new ObjectResult(response)
            {
                StatusCode = (int)HttpStatusCode.OK
            });
        }
示例#2
0
        public async Task <ActionResult> UpdateResourceSet([FromBody] PutResourceSet putResourceSet)
        {
            if (putResourceSet == null)
            {
                throw new ArgumentNullException(nameof(putResourceSet));
            }

            var parameter         = putResourceSet.ToParameter();
            var resourceSetExists = await _resourceSetActions.UpdateResourceSet(parameter);

            if (!resourceSetExists)
            {
                return(GetNotFoundResourceSet());
            }

            var response = new UpdateResourceSetResponse
            {
                Id = putResourceSet.Id
            };

            await _representationManager.AddOrUpdateRepresentationAsync(this, CachingStoreNames.GetResourceStoreName + putResourceSet.Id, false);

            return(new ObjectResult(response)
            {
                StatusCode = (int)HttpStatusCode.OK
            });
        }
示例#3
0
        public async Task <UpdateResourceSetResponse> ExecuteAsync(PutResourceSet request, string url, string token)
        {
            if (request == null)
            {
                throw new ArgumentNullException(nameof(request));
            }

            if (string.IsNullOrWhiteSpace(url))
            {
                throw new ArgumentNullException(nameof(url));
            }

            if (string.IsNullOrWhiteSpace(token))
            {
                throw new ArgumentNullException(nameof(token));
            }

            var httpClient = _httpClientFactory.GetHttpClient();
            var serializedPostResourceSet = JsonConvert.SerializeObject(request);
            var body        = new StringContent(serializedPostResourceSet, Encoding.UTF8, "application/json");
            var httpRequest = new HttpRequestMessage
            {
                Content    = body,
                Method     = HttpMethod.Put,
                RequestUri = new Uri(url)
            };

            httpRequest.Headers.Add("Authorization", "Bearer " + token);
            var httpResult = await httpClient.SendAsync(httpRequest);

            httpResult.EnsureSuccessStatusCode();
            var content = await httpResult.Content.ReadAsStringAsync();

            return(JsonConvert.DeserializeObject <UpdateResourceSetResponse>(content));
        }
示例#4
0
 public static UpdateResourceSetParameter ToParameter(this PutResourceSet putResourceSet)
 {
     return(new UpdateResourceSetParameter
     {
         Id = putResourceSet.Id,
         Name = putResourceSet.Name,
         IconUri = putResourceSet.IconUri,
         Scopes = putResourceSet.Scopes,
         Type = putResourceSet.Type,
         Uri = putResourceSet.Uri
     });
 }
 public static UpdateResourceSetParameter ToParameter(this PutResourceSet putResourceSet)
 {
     return(new UpdateResourceSetParameter
     {
         Id = putResourceSet.Id,
         Name = putResourceSet.Name,
         IconUri = putResourceSet.IconUri,
         Scopes = putResourceSet.Scopes,
         Type = putResourceSet.Type,
         Uri = putResourceSet.Uri,
         Owner = putResourceSet.Owner,
         AcceptPendingRequest = putResourceSet.AcceptPendingRequest
     });
 }
示例#6
0
        public async Task <UpdateResourceSetResponse> UpdateByResolution(PutResourceSet request, string url, string token)
        {
            var configuration = await _getConfigurationOperation.ExecuteAsync(UriHelpers.GetUri(url));

            return(await Update(request, configuration.ResourceRegistrationEndpoint, token));
        }
示例#7
0
 public Task <UpdateResourceSetResponse> Update(PutResourceSet request, string url, string token)
 {
     return(_updateResourceOperation.ExecuteAsync(request, url, token));
 }