protected override void ProcessRecord() { base.ProcessRecord(); UpdateOrganizationRequest request; try { request = new UpdateOrganizationRequest { OrganizationId = OrganizationId, UpdateOrganizationDetails = UpdateOrganizationDetails, OpcRequestId = OpcRequestId, IfMatch = IfMatch, OpcRetryToken = OpcRetryToken }; response = client.UpdateOrganization(request).GetAwaiter().GetResult(); WriteOutput(response, CreateWorkRequestObject(response.OpcWorkRequestId)); FinishProcessing(response); } catch (Exception ex) { TerminatingErrorDuringExecution(ex); } }
public async Task <IActionResult> Put([FromBody] UpdateOrganizationRequest request, Guid id) { var organisationDto = _mapper.Map <OrganizationDto>(request); organisationDto.Id = id; await _organizationService.UpdateAsync(organisationDto); return(NoContent()); }
public ActionResult <OperationResult <int?> > Update([FromBody] UpdateOrganizationRequest model) { model.IsDeleted = false; model.UpdatedDate = DateTime.UtcNow; var result = _organizationService.UpdateOrganization(model); return(new OperationResult <int?>() { IsSuccess = result.IsSuccess, Data = result.Data?.ID, Message = result.Message }); }
public void TestUpdateOrganizationRequest() { string json = @"{ ""name"": ""New Organization Name"", ""quota_definition_guid"": ""1bd41263-5150-462d-ada4-073df672295f"" }"; UpdateOrganizationRequest request = new UpdateOrganizationRequest(); request.Name = "New Organization Name"; request.QuotaDefinitionGuid = new Guid("1bd41263-5150-462d-ada4-073df672295f"); string result = JsonConvert.SerializeObject(request, Formatting.None); Assert.AreEqual(TestUtil.ToUnformatedJsonString(json), result); }
public void TestUpdateOrganizationRequest() { string json = @"{ ""name"": ""New Organization Name"", ""quota_definition_guid"": ""d649f908-d093-4689-af80-b5a80cca9352"" }"; UpdateOrganizationRequest request = new UpdateOrganizationRequest(); request.Name = "New Organization Name"; request.QuotaDefinitionGuid = new Guid("d649f908-d093-4689-af80-b5a80cca9352"); string result = JsonConvert.SerializeObject(request, Formatting.None); Assert.AreEqual(TestUtil.ToUnformatedJsonString(json), result); }
public void TestUpdateOrganizationRequest() { string json = @"{ ""name"": ""New Organization Name"", ""quota_definition_guid"": ""fc8e1595-c555-4449-a6c2-8bc4b51b6e11"" }"; UpdateOrganizationRequest request = new UpdateOrganizationRequest(); request.Name = "New Organization Name"; request.QuotaDefinitionGuid = new Guid("fc8e1595-c555-4449-a6c2-8bc4b51b6e11"); string result = JsonConvert.SerializeObject(request, Formatting.None); Assert.AreEqual(TestUtil.ToUnformatedJsonString(json), result); }
public void TestUpdateOrganizationRequest() { string json = @"{ ""name"": ""New Organization Name"", ""quota_definition_guid"": ""20a52a63-0290-4e00-8210-f0e3d34b8fb5"" }"; UpdateOrganizationRequest request = new UpdateOrganizationRequest(); request.Name = "New Organization Name"; request.QuotaDefinitionGuid = new Guid("20a52a63-0290-4e00-8210-f0e3d34b8fb5"); string result = JsonConvert.SerializeObject(request, Formatting.None); Assert.AreEqual(TestUtil.ToUnformatedJsonString(json), result); }
/// <summary> /// Update an Organization /// <para>For detailed information, see online documentation at: "http://apidocs.cloudfoundry.org/250/organizations/update_an_organization.html"</para> /// </summary> public async Task <UpdateOrganizationResponse> UpdateOrganization(Guid?guid, UpdateOrganizationRequest value) { UriBuilder uriBuilder = new UriBuilder(this.Client.CloudTarget); uriBuilder.Path = string.Format(CultureInfo.InvariantCulture, "/v2/organizations/{0}", guid); var client = this.GetHttpClient(); client.Uri = uriBuilder.Uri; client.Method = HttpMethod.Put; client.Content = ((string)JsonConvert.SerializeObject(value)).ConvertToStream(); var expectedReturnStatus = 201; var response = await this.SendAsync(client, expectedReturnStatus); return(Utilities.DeserializeJson <UpdateOrganizationResponse>(await response.Content.ReadAsStringAsync())); }
public OperationResult <OrganizationModel> CreateOrganization(UpdateOrganizationRequest request) { if (request.IncludeHostname) { foreach (var hostName in request.HostNames) { var existingHost = _hostDefinitionRepository.FindByName(hostName); if (existingHost != null) { return(new OperationResult <OrganizationModel>(false, Constants.Messages.ORGANIZATION_DUPLICATE_HOST)); } } } var address = new Address(); address.AddressLine = request.AddressLine; address.CountryId = request.CountryId; address.ProvinceId = request.ProvinceId; address.DistrictId = request.DistrictId; var newAddress = _addressRepository.Insert(address); _addressRepository.SaveChanges(); var organization = request.ToEntity(); organization.AddressId = newAddress.ID; var newOrganization = _organizationRepository.Insert(organization); _organizationRepository.SaveChanges(); if (request.IncludeHostname) { foreach (var hostName in request.HostNames) { _hostDefinitionRepository.Insert(new HostDefinition() { HostName = hostName, OrganizationId = newOrganization.ID }); } _hostDefinitionRepository.SaveChanges(); } return(new OperationResult <OrganizationModel>(newOrganization.ToModel(), true)); }
/// <summary> /// Update an Organization /// <para>For detailed information, see online documentation at: "http://apidocs.cloudfoundry.org/205/organizations/update_an_organization.html"</para> /// </summary> public async Task <UpdateOrganizationResponse> UpdateOrganization(Guid?guid, UpdateOrganizationRequest value) { UriBuilder uriBuilder = new UriBuilder(this.Client.CloudTarget); uriBuilder.Path = string.Format(CultureInfo.InvariantCulture, "/v2/organizations/{0}", guid); var client = this.GetHttpClient(); client.Uri = uriBuilder.Uri; client.Method = HttpMethod.Put; var authHeader = await BuildAuthenticationHeader(); if (!string.IsNullOrWhiteSpace(authHeader.Key)) { client.Headers.Add(authHeader); } client.ContentType = "application/x-www-form-urlencoded"; client.Content = ((string)JsonConvert.SerializeObject(value)).ConvertToStream(); var expectedReturnStatus = 201; var response = await this.SendAsync(client, expectedReturnStatus); return(Utilities.DeserializeJson <UpdateOrganizationResponse>(await response.ReadContentAsStringAsync())); }
public OperationResult <OrganizationModel> UpdateOrganization(UpdateOrganizationRequest request) { var existingOrganization = _organizationRepository.GetById(request.ID); if (existingOrganization == null || existingOrganization.IsDeleted) { return(new OperationResult <OrganizationModel>(false, Constants.Messages.ORGANIZATION_DONT_EXIST)); } if (request.IncludeHostname) { foreach (var hostName in request.HostNames) { var existingHost = _hostDefinitionRepository.FindByName(hostName); if (existingHost != null && existingHost.OrganizationId != existingOrganization.ID) { return(new OperationResult <OrganizationModel>(false, Constants.Messages.ORGANIZATION_DUPLICATE_HOST)); } } } var address = new Address(); address.AddressLine = request.AddressLine; address.CountryId = request.CountryId; address.ProvinceId = request.ProvinceId; address.DistrictId = request.DistrictId; Address newAddress; if (request.AddressId == 0) { newAddress = _addressRepository.Insert(address); } else { address.ID = existingOrganization.AddressId; newAddress = _addressRepository.Update(address); } _addressRepository.SaveChanges(); var organization = request.ToEntity(); organization.AddressId = newAddress.ID; _organizationRepository.Update(organization); _organizationRepository.SaveChanges(); if (request.IncludeHostname) { var organizationHosts = _hostDefinitionRepository.GetByOrganization(existingOrganization.ID); foreach (var oldHost in organizationHosts) { if (request.HostNames.All(x => !x.Equals(oldHost.HostName, StringComparison.OrdinalIgnoreCase))) { _hostDefinitionRepository.Delete(oldHost.ID); } } foreach (var newHost in request.HostNames) { if (organizationHosts.All(x => !x.HostName.Equals(newHost, StringComparison.OrdinalIgnoreCase))) { _hostDefinitionRepository.Insert(new HostDefinition() { HostName = newHost, OrganizationId = existingOrganization.ID }); } } _hostDefinitionRepository.SaveChanges(); } return(new OperationResult <OrganizationModel>(existingOrganization.ToModel(), true)); }
public void UpdateOrganizationTest() { using (ShimsContext.Create()) { MockClients clients = new MockClients(); string json = @"{ ""metadata"": { ""guid"": ""1806ec7c-8a5f-449a-927c-beaf4c0b66c1"", ""url"": ""/v2/organizations/1806ec7c-8a5f-449a-927c-beaf4c0b66c1"", ""created_at"": ""2015-05-19T15:27:20+00:00"", ""updated_at"": ""2015-05-19T15:27:20+00:00"" }, ""entity"": { ""name"": ""New Organization Name"", ""billing_enabled"": false, ""quota_definition_guid"": ""1bd41263-5150-462d-ada4-073df672295f"", ""status"": ""active"", ""quota_definition_url"": ""/v2/quota_definitions/1bd41263-5150-462d-ada4-073df672295f"", ""spaces_url"": ""/v2/organizations/1806ec7c-8a5f-449a-927c-beaf4c0b66c1/spaces"", ""domains_url"": ""/v2/organizations/1806ec7c-8a5f-449a-927c-beaf4c0b66c1/domains"", ""private_domains_url"": ""/v2/organizations/1806ec7c-8a5f-449a-927c-beaf4c0b66c1/private_domains"", ""users_url"": ""/v2/organizations/1806ec7c-8a5f-449a-927c-beaf4c0b66c1/users"", ""managers_url"": ""/v2/organizations/1806ec7c-8a5f-449a-927c-beaf4c0b66c1/managers"", ""billing_managers_url"": ""/v2/organizations/1806ec7c-8a5f-449a-927c-beaf4c0b66c1/billing_managers"", ""auditors_url"": ""/v2/organizations/1806ec7c-8a5f-449a-927c-beaf4c0b66c1/auditors"", ""app_events_url"": ""/v2/organizations/1806ec7c-8a5f-449a-927c-beaf4c0b66c1/app_events"", ""space_quota_definitions_url"": ""/v2/organizations/1806ec7c-8a5f-449a-927c-beaf4c0b66c1/space_quota_definitions"" } }"; clients.JsonResponse = json; clients.ExpectedStatusCode = (HttpStatusCode)201; var cfClient = clients.CreateCloudFoundryClient(); Guid? guid = Guid.NewGuid(); UpdateOrganizationRequest value = new UpdateOrganizationRequest(); var obj = cfClient.Organizations.UpdateOrganization(guid, value).Result; Assert.AreEqual("1806ec7c-8a5f-449a-927c-beaf4c0b66c1", TestUtil.ToTestableString(obj.EntityMetadata.Guid), true); Assert.AreEqual("/v2/organizations/1806ec7c-8a5f-449a-927c-beaf4c0b66c1", TestUtil.ToTestableString(obj.EntityMetadata.Url), true); Assert.AreEqual("2015-05-19T15:27:20+00:00", TestUtil.ToTestableString(obj.EntityMetadata.CreatedAt), true); Assert.AreEqual("2015-05-19T15:27:20+00:00", TestUtil.ToTestableString(obj.EntityMetadata.UpdatedAt), true); Assert.AreEqual("New Organization Name", TestUtil.ToTestableString(obj.Name), true); Assert.AreEqual("false", TestUtil.ToTestableString(obj.BillingEnabled), true); Assert.AreEqual("1bd41263-5150-462d-ada4-073df672295f", TestUtil.ToTestableString(obj.QuotaDefinitionGuid), true); Assert.AreEqual("active", TestUtil.ToTestableString(obj.Status), true); Assert.AreEqual("/v2/quota_definitions/1bd41263-5150-462d-ada4-073df672295f", TestUtil.ToTestableString(obj.QuotaDefinitionUrl), true); Assert.AreEqual("/v2/organizations/1806ec7c-8a5f-449a-927c-beaf4c0b66c1/spaces", TestUtil.ToTestableString(obj.SpacesUrl), true); Assert.AreEqual("/v2/organizations/1806ec7c-8a5f-449a-927c-beaf4c0b66c1/domains", TestUtil.ToTestableString(obj.DomainsUrl), true); Assert.AreEqual("/v2/organizations/1806ec7c-8a5f-449a-927c-beaf4c0b66c1/private_domains", TestUtil.ToTestableString(obj.PrivateDomainsUrl), true); Assert.AreEqual("/v2/organizations/1806ec7c-8a5f-449a-927c-beaf4c0b66c1/users", TestUtil.ToTestableString(obj.UsersUrl), true); Assert.AreEqual("/v2/organizations/1806ec7c-8a5f-449a-927c-beaf4c0b66c1/managers", TestUtil.ToTestableString(obj.ManagersUrl), true); Assert.AreEqual("/v2/organizations/1806ec7c-8a5f-449a-927c-beaf4c0b66c1/billing_managers", TestUtil.ToTestableString(obj.BillingManagersUrl), true); Assert.AreEqual("/v2/organizations/1806ec7c-8a5f-449a-927c-beaf4c0b66c1/auditors", TestUtil.ToTestableString(obj.AuditorsUrl), true); Assert.AreEqual("/v2/organizations/1806ec7c-8a5f-449a-927c-beaf4c0b66c1/app_events", TestUtil.ToTestableString(obj.AppEventsUrl), true); Assert.AreEqual("/v2/organizations/1806ec7c-8a5f-449a-927c-beaf4c0b66c1/space_quota_definitions", TestUtil.ToTestableString(obj.SpaceQuotaDefinitionsUrl), true); } }
/// <summary> /// Update an Organization /// <para>For detailed information, see online documentation at: "http://apidocs.cloudfoundry.org/195/organizations/update_an_organization.html"</para> /// </summary> public async Task<UpdateOrganizationResponse> UpdateOrganization(Guid? guid, UpdateOrganizationRequest value) { UriBuilder uriBuilder = new UriBuilder(this.Client.CloudTarget); uriBuilder.Path = string.Format(CultureInfo.InvariantCulture, "/v2/organizations/{0}", guid); var client = this.GetHttpClient(); client.Uri = uriBuilder.Uri; client.Method = HttpMethod.Put; var authHeader = await BuildAuthenticationHeader(); if (!string.IsNullOrWhiteSpace(authHeader.Key)) { client.Headers.Add(authHeader); } client.ContentType = "application/x-www-form-urlencoded"; client.Content = JsonConvert.SerializeObject(value).ConvertToStream(); var expectedReturnStatus = 201; var response = await this.SendAsync(client, expectedReturnStatus); return Utilities.DeserializeJson<UpdateOrganizationResponse>(await response.ReadContentAsStringAsync()); }