Ejemplo n.º 1
0
        public CrayonApiClient(HttpClient httpClient)
        {
            _httpClient             = httpClient;
            _jsonSerializerSettings = new JsonSerializerSettings {
                MissingMemberHandling = MissingMemberHandling.Ignore,
                NullValueHandling     = NullValueHandling.Include,
                DefaultValueHandling  = DefaultValueHandling.Include,
                Formatting            = Formatting.Indented
            };

            _assemblyVersion = typeof(CrayonApiClient).GetTypeInfo().Assembly.GetName().Version.ToString();

            Addresses         = new AddressResource(this);
            AgreementProducts = new AgreementProductResource(this);
            Agreements        = new AgreementResource(this);
            BillingStatements = new BillingStatementResource(this);
            BlogItems         = new BlogItemResource(this);
            Clients           = new ClientResource(this);
            CustomerTenants   = new CustomerTenantResource(this);
            InvoiceProfiles   = new InvoiceProfileResource(this);
            Me = new MeResource(this);
            OrganizationAccess = new OrganizationAccessResource(this);
            Organizations      = new OrganizationResource(this);
            Publishers         = new PublisherResource(this);
            Programs           = new ProgramResource(this);
            Regions            = new RegionResource(this);
            Secrets            = new SecretResource(this);
            Subscriptions      = new SubscriptionResource(this);
            Tokens             = new TokenResource(this);
            UsageRecords       = new UsageRecordResource(this);
            Users = new UserResource(this);
        }
Ejemplo n.º 2
0
        public async void PutAsync_CalledWithItem_ReturnsReponse()
        {
            // Given
            var client   = new Mock <IRestClient>();
            var response = new OrganizationResponse {
                Item = new Organization {
                    Name = "blah blah"
                }
            };
            var request = new OrganizationRequest {
                Item = new Organization {
                    Name = "blah blah", Id = 123
                }
            };

            client.Setup(b => b.PutAsync <OrganizationResponse>(
                             It.IsAny <Uri>(),
                             request,
                             "application/json",
                             It.IsAny <string>(),
                             It.IsAny <string>()))
            .Returns(TaskHelper.CreateTaskFromResult(response));

            var resource = new OrganizationResource(client.Object);

            // When
            var result = await resource.PutAsync(request);

            // Then
            Assert.Equal(result, response);
        }
Ejemplo n.º 3
0
        public void SearchByExternalIds_Called_ReturnsResponse()
        {
            // Given
            var response = new OrganizationListResponse
            {
                Results = new[] { new Organization {
                                      Id = 1
                                  } },
                TotalCount = 1
            };

            _client.Setup(b => b.Get <OrganizationListResponse>(
                              It.IsAny <Uri>(),
                              It.IsAny <string>(),
                              It.IsAny <string>()))
            .Returns(response);

            var resource = new OrganizationResource(_client.Object);

            // When
            var result = resource.SearchByExtenalIds("321");

            // Then
            Assert.That(result, Is.EqualTo(response));
        }
Ejemplo n.º 4
0
        public void PutAsync_HasNoId_ThrowsException()
        {
            // Given
            var client   = new Mock <IRestClient>();
            var response = new OrganizationResponse {
                Item = new Organization {
                    Name = "blah blah"
                }
            };
            var request = new OrganizationRequest {
                Item = new Organization {
                    Name = "blah blah"
                }
            };

            client.Setup(b => b.PutAsync <OrganizationResponse>(
                             It.IsAny <Uri>(),
                             request,
                             "application/json",
                             It.IsAny <string>(),
                             It.IsAny <string>()))
            .Returns(TaskHelper.CreateTaskFromResult(response));

            var resource = new OrganizationResource(client.Object);

            // When, Then
            Assert.Throws <ArgumentException>(async() => await resource.PutAsync(request));
        }
        public void Post_CalledWithItem_ReturnsReponse()
        {
            // Given
            var response = new OrganizationResponse {
                Item = new Organization {
                    Name = "blah blah"
                }
            };
            var request = new OrganizationRequest {
                Item = new Organization {
                    Name = "blah blah"
                }
            };

            _client.Setup(b => b.Post <OrganizationResponse>(
                              It.IsAny <Uri>(),
                              request,
                              "application/json",
                              It.IsAny <string>(),
                              It.IsAny <string>()))
            .Returns(response);

            var resource = new OrganizationResource(_client.Object);

            // When
            var result = resource.Post(request);

            // Then
            Assert.That(result, Is.EqualTo(response));
        }
        public void Put_HasNoId_ThrowsException()
        {
            // Given
            var response = new OrganizationResponse {
                Item = new Organization {
                    Name = "blah blah"
                }
            };
            var request = new OrganizationRequest {
                Item = new Organization {
                    Name = "blah blah"
                }
            };

            _client.Setup(b => b.Put <OrganizationResponse>(
                              It.IsAny <Uri>(),
                              request,
                              "application/json",
                              It.IsAny <string>(),
                              It.IsAny <string>()))
            .Returns(response);

            var resource = new OrganizationResource(_client.Object);

            // When, Then
            Assert.Throws <ArgumentException>(() => resource.Put(request));
        }
        public void Put_Called_BuildsUri()
        {
            // Given
            var request = new OrganizationRequest { Item = new Organization { Name = "Organizations", Id = 123 } };
            var resource = new OrganizationResource(_client.Object);

            // When
            resource.Put(request);

            // Then
            _client.Setup(b => b.BuildUri(It.IsAny<string>(), ""));
        }
        public async void GetAsync_Called_CallsBuildUriWithFieldId()
        {
            // Given
            _client.Setup(b => b.BuildUri(It.IsAny<string>(), It.Is<string>(s => s.Contains("321")))).Returns(new Uri("http://search"));
            var resource = new OrganizationResource(_client.Object);

            // When
            await resource.GetAsync(321);

            // Then
            _client.Verify(c => c.BuildUri(It.Is<string>(s => s.Contains("321")), ""));
        }
Ejemplo n.º 9
0
        public void Get_Called_CallsBuildUriWithFieldId()
        {
            // Given
            _client.Setup(b => b.BuildUri(It.IsAny <string>(), It.Is <string>(s => s.Contains("321")))).Returns(new Uri("http://search"));
            var resource = new OrganizationResource(_client.Object);

            // When
            resource.Get(321);

            // Then
            _client.Verify(c => c.BuildUri(It.Is <string>(s => s.Contains("321")), ""));
        }
Ejemplo n.º 10
0
 public ZendeskClient(Uri baseUri, ZendeskDefaultConfiguration configuration, ISerializer serializer = null, IHttpChannel httpChannel = null, ILogAdapter logger = null)
     :base(baseUri, configuration, serializer, httpChannel, logger)
 {
     Tickets = new TicketResource(this);
     TicketComments = new TicketCommentResource(this);
     Organizations = new OrganizationResource(this);
     Search = new SearchResource(this);
     Groups = new GroupsResource(this);
     AssignableGroups = new AssignableGroupResource(this);
     Users = new UserResource(this);
     UserIdentities = new UserIdentityResource(this);
     OrganizationMemberships = new OrganizationMembershipResource(this);
 }
        public void Get_Called_ReturnsResponse()
        {
            // Given
            var response = new OrganizationResponse { Item = new Organization { Id = 1 } };
            _client.Setup(b => b.Get<OrganizationResponse>(It.IsAny<Uri>())).Returns(response);
            var resource = new OrganizationResource(_client.Object);

            // When
            var result = resource.Get(321);

            // Then
            Assert.That(result, Is.EqualTo(response));
        }
Ejemplo n.º 12
0
 public ZendeskClient(Uri baseUri, ZendeskDefaultConfiguration configuration, ISerializer serializer = null, IHttpChannel httpChannel = null, ILogAdapter logger = null)
     : base(baseUri, configuration, serializer, httpChannel, logger)
 {
     Tickets                 = new TicketResource(this);
     TicketComments          = new TicketCommentResource(this);
     Organizations           = new OrganizationResource(this);
     Search                  = new SearchResource(this);
     Groups                  = new GroupsResource(this);
     AssignableGroups        = new AssignableGroupResource(this);
     Users                   = new UserResource(this);
     UserIdentities          = new UserIdentityResource(this);
     OrganizationMemberships = new OrganizationMembershipResource(this);
 }
        public void Put_CalledWithItem_ReturnsReponse()
        {
            // Given
            var response = new OrganizationResponse { Item = new Organization { Name = "blah blah" } };
            var request = new OrganizationRequest { Item = new Organization { Name = "blah blah", Id = 123 } };
            _client.Setup(b => b.Put<OrganizationResponse>(It.IsAny<Uri>(), request, "application/json")).Returns(response);
            var resource = new OrganizationResource(_client.Object);

            // When
            var result = resource.Put(request);

            // Then
            Assert.That(result, Is.EqualTo(response));
        }
Ejemplo n.º 14
0
        public async void DeleteAsync_Called_CallsBuildUriWithFieldId()
        {
            // Given
            var client = new Mock <IRestClient>();

            client.Setup(b => b.BuildUri(It.IsAny <string>(), It.Is <string>(s => s.Contains("321")))).Returns(new Uri("http://search"));
            var resource = new OrganizationResource(client.Object);

            // When
            await resource.DeleteAsync(321);

            // Then
            client.Verify(c => c.BuildUri(It.Is <string>(s => s.Contains("321")), ""));
        }
Ejemplo n.º 15
0
        public void TestResourceLifeCycle()
        {
            {
                var    context      = MockContext.Start(GetType());
                string rgName       = CreateName("confluent-sdk-test-rg");
                string resourceName = CreateName("confluent-sdk-test-resource8350");

                CreateResourceGroup(context, rgName);
                OrganizationResource rp = CreateResource(context, rgName, resourceName);
                Assert.NotNull(rp);

                DeleteResource(context, rgName, resourceName);
                DeleteResourceGroup(context, rgName);
            }
        }
        public async void PostAsync_Called_BuildsUri()
        {
            // Given
            var request = new OrganizationRequest {
                Item = new Organization {
                    Name = "blah blah"
                }
            };
            var resource = new OrganizationResource(_client.Object);

            // When
            await resource.PostAsync(request);

            // Then
            _client.Setup(b => b.BuildUri(It.IsAny <string>(), ""));
        }
Ejemplo n.º 17
0
        public void Put_Called_BuildsUri()
        {
            // Given
            var request = new OrganizationRequest {
                Item = new Organization {
                    Name = "Organizations", Id = 123
                }
            };
            var resource = new OrganizationResource(_client.Object);

            // When
            resource.Put(request);

            // Then
            _client.Setup(b => b.BuildUri(It.IsAny <string>(), ""));
        }
Ejemplo n.º 18
0
        public async void PutAsync_Called_BuildsUri()
        {
            // Given
            var client  = new Mock <IRestClient>();
            var request = new OrganizationRequest {
                Item = new Organization {
                    Name = "Organizations", Id = 123
                }
            };
            var resource = new OrganizationResource(client.Object);

            // When
            await resource.PutAsync(request);

            // Then
            client.Verify(b => b.BuildUri(It.IsAny <string>(), ""));
        }
Ejemplo n.º 19
0
        public void PostTransactionTest()
        {
            using (JKEFactory factory = ServiceManager.CreateFactory())
            {
                IJKEService target = factory.CreateChannel();
                string      userId = "jbrown";

                AccountResource[] accounts = target.GetUserAccounts(userId);
                Assert.IsNotNull(accounts);
                Assert.IsTrue(accounts.Length > 0);
                AccountResource account = accounts[0];

                OrganizationResource[] organizations = target.GetOrganizations();
                Assert.IsNotNull(organizations);
                Assert.IsTrue(organizations.Length > 0);
                OrganizationResource organization = organizations[0];

                TransactionResource[] transactions = target.GetTransactionsForAccount(userId, account.Type);
                Assert.IsNotNull(transactions);
                int before = transactions.Length;

                double percentage = 2;
                double amount     = account.Dividends * percentage / 100;

                string today = DateTime.Now.ToShortDateString();

                TransactionResource newTransaction = target.PostTransaction(account.AccountNumber, organization.Name, today, percentage);
                Assert.IsNotNull(newTransaction);

                Assert.AreEqual(amount, newTransaction.Amount);
                Assert.AreEqual(account.AccountNumber, newTransaction.AccountNumber);

                DateTime newDate = Convert.ToDateTime(newTransaction.Date, CultureInfo.InvariantCulture);
                Assert.AreEqual(today, newDate.ToShortDateString());

                Assert.AreEqual(organization.Name, newTransaction.Source);
                Assert.AreEqual(account.Balance - amount, newTransaction.PostBalance);

                transactions = target.GetTransactionsForAccount(userId, account.Type);
                Assert.IsNotNull(transactions);
                int after = transactions.Length;

                Assert.AreEqual(before + 1, after);
            }
        }
Ejemplo n.º 20
0
        public void Delete_Called_CallsDeleteOnClient()
        {
            // Given
            var response = new OrganizationResponse {
                Item = new Organization {
                    Id = 1
                }
            };

            _client.Setup(b => b.Get <OrganizationResponse>(It.IsAny <Uri>())).Returns(response);
            var resource = new OrganizationResource(_client.Object);

            // When
            resource.Delete(321);

            // Then
            _client.Verify(c => c.Delete(It.IsAny <Uri>()));
        }
        public async void GetAsync_Called_ReturnsResponse()
        {
            // Given
            var response = new OrganizationResponse {
                Item = new Organization {
                    Id = 1
                }
            };

            _client.Setup(b => b.GetAsync <OrganizationResponse>(It.IsAny <Uri>())).Returns(TaskHelper.CreateTaskFromResult(response));
            var resource = new OrganizationResource(_client.Object);

            // When
            var result = await resource.GetAsync(321);

            // Then
            Assert.That(result, Is.EqualTo(response));
        }
        public async void GetAsync_Called_ReturnsResponse()
        {
            // Given
            var response = new OrganizationResponse { Item = new Organization { Id = 1 } };
            _client.Setup(b => b.GetAsync<OrganizationResponse>(
                It.IsAny<Uri>(),
                It.IsAny<string>(),
                It.IsAny<string>()))
                .Returns(TaskHelper.CreateTaskFromResult(response));

            var resource = new OrganizationResource(_client.Object);

            // When
            var result = await resource.GetAsync(321);

            // Then
            Assert.That(result, Is.EqualTo(response));
        }
        public async void DeleteAsync_Called_CallsDeleteOnClient()
        {
            // Given
            var response = new OrganizationResponse {
                Item = new Organization {
                    Id = 1
                }
            };

            _client.Setup(b => b.GetAsync <OrganizationResponse>(It.IsAny <Uri>())).Returns(TaskHelper.CreateTaskFromResult(response));
            var resource = new OrganizationResource(_client.Object);

            // When
            await resource.DeleteAsync(321);

            // Then
            _client.Verify(c => c.DeleteAsync(It.IsAny <Uri>()));
        }
Ejemplo n.º 24
0
        public void Get_Called_ReturnsResponse()
        {
            // Given
            var response = new OrganizationResponse {
                Item = new Organization {
                    Id = 1
                }
            };

            _client.Setup(b => b.Get <OrganizationResponse>(It.IsAny <Uri>())).Returns(response);
            var resource = new OrganizationResource(_client.Object);

            // When
            var result = resource.Get(321);

            // Then
            Assert.That(result, Is.EqualTo(response));
        }
        public async void PostAsync_CalledWithItem_ReturnsReponse()
        {
            // Given
            var response = new OrganizationResponse {
                Item = new Organization {
                    Name = "blah blah"
                }
            };
            var request = new OrganizationRequest {
                Item = new Organization {
                    Name = "blah blah"
                }
            };

            _client.Setup(b => b.PostAsync <OrganizationResponse>(It.IsAny <Uri>(), request, "application/json")).Returns(TaskHelper.CreateTaskFromResult(response));
            var resource = new OrganizationResource(_client.Object);

            // When
            var result = await resource.PostAsync(request);

            // Then
            Assert.That(result, Is.EqualTo(response));
        }
Ejemplo n.º 26
0
        public async void GetAsync_Called_ReturnsResponse()
        {
            // Given
            var client   = new Mock <IRestClient>();
            var response = new OrganizationResponse {
                Item = new Organization {
                    Id = 1
                }
            };

            client.Setup(b => b.GetAsync <OrganizationResponse>(
                             It.IsAny <Uri>(),
                             It.IsAny <string>(),
                             It.IsAny <string>()))
            .Returns(TaskHelper.CreateTaskFromResult(response));

            var resource = new OrganizationResource(client.Object);

            // When
            var result = await resource.GetAsync(321);

            // Then
            Assert.Equal(result, response);
        }
        public async void DeleteAsync_Called_CallsDeleteOnClient()
        {
            // Given
            var response = new OrganizationResponse { Item = new Organization { Id = 1 } };
            _client.Setup(b => b.GetAsync<OrganizationResponse>(
                It.IsAny<Uri>(),
                It.IsAny<string>(),
                It.IsAny<string>()))
                .Returns(TaskHelper.CreateTaskFromResult(response));

            var resource = new OrganizationResource(_client.Object);

            // When
            await resource.DeleteAsync(321);

            // Then
            _client.Verify(c => c.DeleteAsync<object>(It.IsAny<Uri>(), It.IsAny<object>(), It.IsAny<string>(), It.IsAny<string>(), It.IsAny<string>()));
        }
Ejemplo n.º 28
0
 /// <summary>
 /// Organization Validate proxy resource
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='resourceGroupName'>
 /// Resource group name
 /// </param>
 /// <param name='organizationName'>
 /// Organization resource name
 /// </param>
 /// <param name='body'>
 /// Organization resource model
 /// </param>
 public static OrganizationResource ValidateOrganization(this IValidationsOperations operations, string resourceGroupName, string organizationName, OrganizationResource body)
 {
     return(operations.ValidateOrganizationAsync(resourceGroupName, organizationName, body).GetAwaiter().GetResult());
 }
Ejemplo n.º 29
0
        public async Task <IActionResult> CreateAsync(string subscriptionId, string resourceGroupName, string organizationName, OrganizationResource resource)
        {
            _logger.LogInformation("CreateAsync()");
            resource = resource ?? throw new ArgumentNullException(nameof(resource));

            if (Request == null)
            {
                _logger.LogError($"Http request is null");
                return(BadRequest("Http request is null"));
            }

            return(await OnCreateAsync(subscriptionId, resourceGroupName, organizationName, resource, Request));
        }
Ejemplo n.º 30
0
 internal override Task <IActionResult> OnCreateAsync(string subscriptionId, string resourceGroupName, string organizationName, OrganizationResource resource, HttpRequest request)
 {
     throw new NotImplementedException();
 }
        public void Delete_Called_CallsDeleteOnClient()
        {
            // Given
            var response = new OrganizationResponse { Item = new Organization { Id = 1 } };
            _client.Setup(b => b.Get<OrganizationResponse>(
                It.IsAny<Uri>(),
                It.IsAny<string>(),
                It.IsAny<string>())).Returns(response);
            var resource = new OrganizationResource(_client.Object);

            // When
            resource.Delete(321);

            // Then
            _client.Verify(c => c.Delete<object>(It.IsAny<Uri>(), It.IsAny<object>(), It.IsAny<string>(), It.IsAny<string>(), It.IsAny<string>()));
        }
        public async void PostAsync_CalledWithItem_ReturnsReponse()
        {
            // Given
            var response = new OrganizationResponse { Item = new Organization { Name = "blah blah" } };
            var request = new OrganizationRequest { Item = new Organization { Name = "blah blah" } };
            _client.Setup(b => b.PostAsync<OrganizationResponse>(
                It.IsAny<Uri>(),
                request,
                "application/json",
                It.IsAny<string>(),
                It.IsAny<string>()))
                .Returns(TaskHelper.CreateTaskFromResult(response));

            var resource = new OrganizationResource(_client.Object);

            // When
            var result = await resource.PostAsync(request);

            // Then
            Assert.That(result, Is.EqualTo(response));
        }
        /// <summary>
        /// Organization Validate proxy resource
        /// </summary>
        /// <param name='resourceGroupName'>
        /// Resource group name
        /// </param>
        /// <param name='organizationName'>
        /// Organization resource name
        /// </param>
        /// <param name='body'>
        /// Organization resource model
        /// </param>
        /// <param name='customHeaders'>
        /// Headers that will be added to request.
        /// </param>
        /// <param name='cancellationToken'>
        /// The cancellation token.
        /// </param>
        /// <exception cref="ResourceProviderDefaultErrorResponseException">
        /// Thrown when the operation returned an invalid status code
        /// </exception>
        /// <exception cref="SerializationException">
        /// Thrown when unable to deserialize the response
        /// </exception>
        /// <exception cref="ValidationException">
        /// Thrown when a required parameter is null
        /// </exception>
        /// <exception cref="System.ArgumentNullException">
        /// Thrown when a required parameter is null
        /// </exception>
        /// <return>
        /// A response object containing the response body and response headers.
        /// </return>
        public async Task <AzureOperationResponse <OrganizationResource> > ValidateOrganizationWithHttpMessagesAsync(string resourceGroupName, string organizationName, OrganizationResource body, Dictionary <string, List <string> > customHeaders = null, CancellationToken cancellationToken = default(CancellationToken))
        {
            if (Client.SubscriptionId == null)
            {
                throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.SubscriptionId");
            }
            if (resourceGroupName == null)
            {
                throw new ValidationException(ValidationRules.CannotBeNull, "resourceGroupName");
            }
            if (organizationName == null)
            {
                throw new ValidationException(ValidationRules.CannotBeNull, "organizationName");
            }
            if (body == null)
            {
                throw new ValidationException(ValidationRules.CannotBeNull, "body");
            }
            if (body != null)
            {
                body.Validate();
            }
            // Tracing
            bool   _shouldTrace  = ServiceClientTracing.IsEnabled;
            string _invocationId = null;

            if (_shouldTrace)
            {
                _invocationId = ServiceClientTracing.NextInvocationId.ToString();
                Dictionary <string, object> tracingParameters = new Dictionary <string, object>();
                tracingParameters.Add("resourceGroupName", resourceGroupName);
                tracingParameters.Add("organizationName", organizationName);
                tracingParameters.Add("body", body);
                tracingParameters.Add("cancellationToken", cancellationToken);
                ServiceClientTracing.Enter(_invocationId, this, "ValidateOrganization", tracingParameters);
            }
            // Construct URL
            var _baseUrl = Client.BaseUri.AbsoluteUri;
            var _url     = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Confluent/validations/{organizationName}/orgvalidate").ToString();

            _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Client.SubscriptionId));
            _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName));
            _url = _url.Replace("{organizationName}", System.Uri.EscapeDataString(organizationName));
            List <string> _queryParameters = new List <string>();

            if (Client.ApiVersion != null)
            {
                _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(Client.ApiVersion)));
            }
            if (_queryParameters.Count > 0)
            {
                _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters);
            }
            // Create HTTP transport objects
            var _httpRequest = new HttpRequestMessage();
            HttpResponseMessage _httpResponse = null;

            _httpRequest.Method     = new HttpMethod("POST");
            _httpRequest.RequestUri = new System.Uri(_url);
            // Set Headers
            if (Client.GenerateClientRequestId != null && Client.GenerateClientRequestId.Value)
            {
                _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString());
            }
            if (Client.AcceptLanguage != null)
            {
                if (_httpRequest.Headers.Contains("accept-language"))
                {
                    _httpRequest.Headers.Remove("accept-language");
                }
                _httpRequest.Headers.TryAddWithoutValidation("accept-language", Client.AcceptLanguage);
            }


            if (customHeaders != null)
            {
                foreach (var _header in customHeaders)
                {
                    if (_httpRequest.Headers.Contains(_header.Key))
                    {
                        _httpRequest.Headers.Remove(_header.Key);
                    }
                    _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value);
                }
            }

            // Serialize Request
            string _requestContent = null;

            if (body != null)
            {
                _requestContent      = Rest.Serialization.SafeJsonConvert.SerializeObject(body, Client.SerializationSettings);
                _httpRequest.Content = new StringContent(_requestContent, System.Text.Encoding.UTF8);
                _httpRequest.Content.Headers.ContentType = System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8");
            }
            // Set Credentials
            if (Client.Credentials != null)
            {
                cancellationToken.ThrowIfCancellationRequested();
                await Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false);
            }
            // Send Request
            if (_shouldTrace)
            {
                ServiceClientTracing.SendRequest(_invocationId, _httpRequest);
            }
            cancellationToken.ThrowIfCancellationRequested();
            _httpResponse = await Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false);

            if (_shouldTrace)
            {
                ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse);
            }
            HttpStatusCode _statusCode = _httpResponse.StatusCode;

            cancellationToken.ThrowIfCancellationRequested();
            string _responseContent = null;

            if ((int)_statusCode != 200)
            {
                var ex = new ResourceProviderDefaultErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode));
                try
                {
                    _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false);

                    ResourceProviderDefaultErrorResponse _errorBody = Rest.Serialization.SafeJsonConvert.DeserializeObject <ResourceProviderDefaultErrorResponse>(_responseContent, Client.DeserializationSettings);
                    if (_errorBody != null)
                    {
                        ex.Body = _errorBody;
                    }
                }
                catch (JsonException)
                {
                    // Ignore the exception
                }
                ex.Request  = new HttpRequestMessageWrapper(_httpRequest, _requestContent);
                ex.Response = new HttpResponseMessageWrapper(_httpResponse, _responseContent);
                if (_shouldTrace)
                {
                    ServiceClientTracing.Error(_invocationId, ex);
                }
                _httpRequest.Dispose();
                if (_httpResponse != null)
                {
                    _httpResponse.Dispose();
                }
                throw ex;
            }
            // Create Result
            var _result = new AzureOperationResponse <OrganizationResource>();

            _result.Request  = _httpRequest;
            _result.Response = _httpResponse;
            if (_httpResponse.Headers.Contains("x-ms-request-id"))
            {
                _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault();
            }
            // Deserialize Response
            if ((int)_statusCode == 200)
            {
                _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false);

                try
                {
                    _result.Body = Rest.Serialization.SafeJsonConvert.DeserializeObject <OrganizationResource>(_responseContent, Client.DeserializationSettings);
                }
                catch (JsonException ex)
                {
                    _httpRequest.Dispose();
                    if (_httpResponse != null)
                    {
                        _httpResponse.Dispose();
                    }
                    throw new SerializationException("Unable to deserialize the response.", _responseContent, ex);
                }
            }
            if (_shouldTrace)
            {
                ServiceClientTracing.Exit(_invocationId, _result);
            }
            return(_result);
        }
Ejemplo n.º 34
0
 internal abstract Task <IActionResult> OnCreateAsync(string subscriptionId, string resourceGroupName, string organizationName, OrganizationResource resource, HttpRequest request);
Ejemplo n.º 35
0
 /// <summary>
 /// Organization Validate proxy resource
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='resourceGroupName'>
 /// Resource group name
 /// </param>
 /// <param name='organizationName'>
 /// Organization resource name
 /// </param>
 /// <param name='body'>
 /// Organization resource model
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <OrganizationResource> ValidateOrganizationAsync(this IValidationsOperations operations, string resourceGroupName, string organizationName, OrganizationResource body, CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.ValidateOrganizationWithHttpMessagesAsync(resourceGroupName, organizationName, body, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
Ejemplo n.º 36
0
 internal override Task <ValidationResponse> OnValidatePatch(string subscriptionId, string resourceGroupName, string organizationName, OrganizationResource resource, HttpRequest request)
 {
     throw new NotImplementedException();
 }
Ejemplo n.º 37
0
 internal abstract Task <ValidationResponse> OnValidatePatch(string subscriptionId, string resourceGroupName, string organizationName, OrganizationResource resource, HttpRequest request);
        public void Put_HasNoId_ThrowsException()
        {
            // Given
            var response = new OrganizationResponse { Item = new Organization { Name = "blah blah" } };
            var request = new OrganizationRequest { Item = new Organization { Name = "blah blah" } };
            _client.Setup(b => b.Put<OrganizationResponse>(
                It.IsAny<Uri>(), 
                request, 
                "application/json",
                It.IsAny<string>(),
                It.IsAny<string>()))
                .Returns(response);

            var resource = new OrganizationResource(_client.Object);

            // When, Then
            Assert.Throws<ArgumentException>(() => resource.Put(request));
        }
Ejemplo n.º 39
0
        public async Task <ValidationResponse> ValidatePatchAsync(
            string subscriptionId, string resourceGroupName, string organizationName, OrganizationResource resource)
        {
            _logger.LogInformation("ValidatePatchAsync()");
            var modelValidation = ValidationHelpers.ValidatePatchModel(resource);

            if (modelValidation.Valid)
            {
                modelValidation = await OnValidatePatch(subscriptionId, resourceGroupName, organizationName, resource, Request);
            }

            return(modelValidation);
        }
        public void PutAsync_HasNoId_ThrowsException()
        {
            // Given
            var response = new OrganizationResponse { Item = new Organization { Name = "blah blah" } };
            var request = new OrganizationRequest { Item = new Organization { Name = "blah blah" } };
            _client.Setup(b => b.PutAsync<OrganizationResponse>(
                It.IsAny<Uri>(), 
                request, 
                "application/json",
                It.IsAny<string>(),
                It.IsAny<string>()))
                .Returns(TaskHelper.CreateTaskFromResult(response));

            var resource = new OrganizationResource(_client.Object);

            // When, Then
            Assert.Throws<ArgumentException>(async () => await resource.PutAsync(request));
        }
        public async void PostAsync_Called_BuildsUri()
        {
            // Given
            var request = new OrganizationRequest { Item = new Organization { Name = "blah blah" } };
            var resource = new OrganizationResource(_client.Object);
            
            // When
            await resource.PostAsync(request);

            // Then
            _client.Setup(b => b.BuildUri(It.IsAny<string>(), ""));
        }
Ejemplo n.º 42
0
 /// <summary>
 /// Create Organization resource
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='resourceGroupName'>
 /// Resource group name
 /// </param>
 /// <param name='organizationName'>
 /// Organization resource name
 /// </param>
 /// <param name='body'>
 /// Organization resource model
 /// </param>
 public static OrganizationResource BeginCreate(this IOrganizationOperationsOperations operations, string resourceGroupName, string organizationName, OrganizationResource body = default(OrganizationResource))
 {
     return(operations.BeginCreateAsync(resourceGroupName, organizationName, body).GetAwaiter().GetResult());
 }