class Azure::ServiceFabric::Mgmt::V2018_02_01::Clusters

Azure Service Fabric Resource Provider API Client

Attributes

client[R]

@return [ServiceFabricManagementClient] reference to the ServiceFabricManagementClient

Private Class Methods

new(client) click to toggle source

Creates and initializes a new instance of the Clusters class. @param client service class for accessing basic functionality.

# File lib/2018-02-01/generated/azure_mgmt_service_fabric/clusters.rb, line 17
def initialize(client)
  @client = client
end

Private Instance Methods

begin_create(resource_group_name, cluster_name, parameters, custom_headers:nil) click to toggle source

Creates or updates a Service Fabric cluster resource.

Create or update a Service Fabric cluster resource with the specified name.

@param resource_group_name [String] The name of the resource group. @param cluster_name [String] The name of the cluster resource. @param parameters [Cluster] The cluster resource. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.

@return [Cluster] operation results.

# File lib/2018-02-01/generated/azure_mgmt_service_fabric/clusters.rb, line 518
def begin_create(resource_group_name, cluster_name, parameters, custom_headers:nil)
  response = begin_create_async(resource_group_name, cluster_name, parameters, custom_headers:custom_headers).value!
  response.body unless response.nil?
end
begin_create_async(resource_group_name, cluster_name, parameters, custom_headers:nil) click to toggle source

Creates or updates a Service Fabric cluster resource.

Create or update a Service Fabric cluster resource with the specified name.

@param resource_group_name [String] The name of the resource group. @param cluster_name [String] The name of the cluster resource. @param parameters [Cluster] The cluster resource. @param [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.

@return [Concurrent::Promise] Promise object which holds the HTTP response.

# File lib/2018-02-01/generated/azure_mgmt_service_fabric/clusters.rb, line 553
def begin_create_async(resource_group_name, cluster_name, parameters, custom_headers:nil)
  fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
  fail ArgumentError, 'cluster_name is nil' if cluster_name.nil?
  @client.api_version = '2018-02-01'
  fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
  fail ArgumentError, 'parameters is nil' if parameters.nil?


  request_headers = {}
  request_headers['Content-Type'] = 'application/json; charset=utf-8'

  # Set Headers
  request_headers['x-ms-client-request-id'] = SecureRandom.uuid
  request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?

  # Serialize Request
  request_mapper = Azure::ServiceFabric::Mgmt::V2018_02_01::Models::Cluster.mapper()
  request_content = @client.serialize(request_mapper,  parameters)
  request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil

  path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}'

  request_url = @base_url || @client.base_url

  options = {
      middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
      path_params: {'resourceGroupName' => resource_group_name,'clusterName' => cluster_name,'subscriptionId' => @client.subscription_id},
      query_params: {'api-version' => @client.api_version},
      body: request_content,
      headers: request_headers.merge(custom_headers || {}),
      base_url: request_url
  }
  promise = @client.make_request_async(:put, path_template, options)

  promise = promise.then do |result|
    http_response = result.response
    status_code = http_response.status
    response_content = http_response.body
    unless status_code == 200 || status_code == 202
      error_model = JSON.load(response_content)
      fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
    end

    result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
    # Deserialize Response
    if status_code == 200
      begin
        parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
        result_mapper = Azure::ServiceFabric::Mgmt::V2018_02_01::Models::Cluster.mapper()
        result.body = @client.deserialize(result_mapper, parsed_response)
      rescue Exception => e
        fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
      end
    end
    # Deserialize Response
    if status_code == 202
      begin
        parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
        result_mapper = Azure::ServiceFabric::Mgmt::V2018_02_01::Models::Cluster.mapper()
        result.body = @client.deserialize(result_mapper, parsed_response)
      rescue Exception => e
        fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
      end
    end

    result
  end

  promise.execute
end
begin_create_with_http_info(resource_group_name, cluster_name, parameters, custom_headers:nil) click to toggle source

Creates or updates a Service Fabric cluster resource.

Create or update a Service Fabric cluster resource with the specified name.

@param resource_group_name [String] The name of the resource group. @param cluster_name [String] The name of the cluster resource. @param parameters [Cluster] The cluster resource. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.

@return [MsRestAzure::AzureOperationResponse] HTTP response information.

# File lib/2018-02-01/generated/azure_mgmt_service_fabric/clusters.rb, line 536
def begin_create_with_http_info(resource_group_name, cluster_name, parameters, custom_headers:nil)
  begin_create_async(resource_group_name, cluster_name, parameters, custom_headers:custom_headers).value!
end
begin_update(resource_group_name, cluster_name, parameters, custom_headers:nil) click to toggle source

Updates the configuration of a Service Fabric cluster resource.

Update the configuration of a Service Fabric cluster resource with the specified name.

@param resource_group_name [String] The name of the resource group. @param cluster_name [String] The name of the cluster resource. @param parameters [ClusterUpdateParameters] The parameters which contains the property value and property name which used to update the cluster configuration. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.

@return [Cluster] operation results.

# File lib/2018-02-01/generated/azure_mgmt_service_fabric/clusters.rb, line 640
def begin_update(resource_group_name, cluster_name, parameters, custom_headers:nil)
  response = begin_update_async(resource_group_name, cluster_name, parameters, custom_headers:custom_headers).value!
  response.body unless response.nil?
end
begin_update_async(resource_group_name, cluster_name, parameters, custom_headers:nil) click to toggle source

Updates the configuration of a Service Fabric cluster resource.

Update the configuration of a Service Fabric cluster resource with the specified name.

@param resource_group_name [String] The name of the resource group. @param cluster_name [String] The name of the cluster resource. @param parameters [ClusterUpdateParameters] The parameters which contains the property value and property name which used to update the cluster configuration. @param [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.

@return [Concurrent::Promise] Promise object which holds the HTTP response.

# File lib/2018-02-01/generated/azure_mgmt_service_fabric/clusters.rb, line 681
def begin_update_async(resource_group_name, cluster_name, parameters, custom_headers:nil)
  fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
  fail ArgumentError, 'cluster_name is nil' if cluster_name.nil?
  @client.api_version = '2018-02-01'
  fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
  fail ArgumentError, 'parameters is nil' if parameters.nil?


  request_headers = {}
  request_headers['Content-Type'] = 'application/json; charset=utf-8'

  # Set Headers
  request_headers['x-ms-client-request-id'] = SecureRandom.uuid
  request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?

  # Serialize Request
  request_mapper = Azure::ServiceFabric::Mgmt::V2018_02_01::Models::ClusterUpdateParameters.mapper()
  request_content = @client.serialize(request_mapper,  parameters)
  request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil

  path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}'

  request_url = @base_url || @client.base_url

  options = {
      middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
      path_params: {'resourceGroupName' => resource_group_name,'clusterName' => cluster_name,'subscriptionId' => @client.subscription_id},
      query_params: {'api-version' => @client.api_version},
      body: request_content,
      headers: request_headers.merge(custom_headers || {}),
      base_url: request_url
  }
  promise = @client.make_request_async(:patch, path_template, options)

  promise = promise.then do |result|
    http_response = result.response
    status_code = http_response.status
    response_content = http_response.body
    unless status_code == 200 || status_code == 202
      error_model = JSON.load(response_content)
      fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
    end

    result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
    # Deserialize Response
    if status_code == 200
      begin
        parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
        result_mapper = Azure::ServiceFabric::Mgmt::V2018_02_01::Models::Cluster.mapper()
        result.body = @client.deserialize(result_mapper, parsed_response)
      rescue Exception => e
        fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
      end
    end
    # Deserialize Response
    if status_code == 202
      begin
        parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
        result_mapper = Azure::ServiceFabric::Mgmt::V2018_02_01::Models::Cluster.mapper()
        result.body = @client.deserialize(result_mapper, parsed_response)
      rescue Exception => e
        fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
      end
    end

    result
  end

  promise.execute
end
begin_update_with_http_info(resource_group_name, cluster_name, parameters, custom_headers:nil) click to toggle source

Updates the configuration of a Service Fabric cluster resource.

Update the configuration of a Service Fabric cluster resource with the specified name.

@param resource_group_name [String] The name of the resource group. @param cluster_name [String] The name of the cluster resource. @param parameters [ClusterUpdateParameters] The parameters which contains the property value and property name which used to update the cluster configuration. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.

@return [MsRestAzure::AzureOperationResponse] HTTP response information.

# File lib/2018-02-01/generated/azure_mgmt_service_fabric/clusters.rb, line 661
def begin_update_with_http_info(resource_group_name, cluster_name, parameters, custom_headers:nil)
  begin_update_async(resource_group_name, cluster_name, parameters, custom_headers:custom_headers).value!
end
create(resource_group_name, cluster_name, parameters, custom_headers:nil) click to toggle source

Creates or updates a Service Fabric cluster resource.

Create or update a Service Fabric cluster resource with the specified name.

@param resource_group_name [String] The name of the resource group. @param cluster_name [String] The name of the cluster resource. @param parameters [Cluster] The cluster resource. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.

@return [Cluster] operation results.

# File lib/2018-02-01/generated/azure_mgmt_service_fabric/clusters.rb, line 138
def create(resource_group_name, cluster_name, parameters, custom_headers:nil)
  response = create_async(resource_group_name, cluster_name, parameters, custom_headers:custom_headers).value!
  response.body unless response.nil?
end
create_async(resource_group_name, cluster_name, parameters, custom_headers:nil) click to toggle source

@param resource_group_name [String] The name of the resource group. @param cluster_name [String] The name of the cluster resource. @param parameters [Cluster] The cluster resource. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.

@return [Concurrent::Promise] promise which provides async access to http response.

# File lib/2018-02-01/generated/azure_mgmt_service_fabric/clusters.rb, line 153
def create_async(resource_group_name, cluster_name, parameters, custom_headers:nil)
  # Send request
  promise = begin_create_async(resource_group_name, cluster_name, parameters, custom_headers:custom_headers)

  promise = promise.then do |response|
    # Defining deserialization method.
    deserialize_method = lambda do |parsed_response|
      result_mapper = Azure::ServiceFabric::Mgmt::V2018_02_01::Models::Cluster.mapper()
      parsed_response = @client.deserialize(result_mapper, parsed_response)
    end

    # Waiting for response.
    @client.get_long_running_operation_result(response, deserialize_method)
  end

  promise
end
delete(resource_group_name, cluster_name, custom_headers:nil) click to toggle source

Deletes a Service Fabric cluster resource.

Delete a Service Fabric cluster resource with the specified name.

@param resource_group_name [String] The name of the resource group. @param cluster_name [String] The name of the cluster resource. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.

# File lib/2018-02-01/generated/azure_mgmt_service_fabric/clusters.rb, line 233
def delete(resource_group_name, cluster_name, custom_headers:nil)
  response = delete_async(resource_group_name, cluster_name, custom_headers:custom_headers).value!
  nil
end
delete_async(resource_group_name, cluster_name, custom_headers:nil) click to toggle source

Deletes a Service Fabric cluster resource.

Delete a Service Fabric cluster resource with the specified name.

@param resource_group_name [String] The name of the resource group. @param cluster_name [String] The name of the cluster resource. @param [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.

@return [Concurrent::Promise] Promise object which holds the HTTP response.

# File lib/2018-02-01/generated/azure_mgmt_service_fabric/clusters.rb, line 266
def delete_async(resource_group_name, cluster_name, custom_headers:nil)
  fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
  fail ArgumentError, 'cluster_name is nil' if cluster_name.nil?
  @client.api_version = '2018-02-01'
  fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?


  request_headers = {}
  request_headers['Content-Type'] = 'application/json; charset=utf-8'

  # Set Headers
  request_headers['x-ms-client-request-id'] = SecureRandom.uuid
  request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
  path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}'

  request_url = @base_url || @client.base_url

  options = {
      middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
      path_params: {'resourceGroupName' => resource_group_name,'clusterName' => cluster_name,'subscriptionId' => @client.subscription_id},
      query_params: {'api-version' => @client.api_version},
      headers: request_headers.merge(custom_headers || {}),
      base_url: request_url
  }
  promise = @client.make_request_async(:delete, path_template, options)

  promise = promise.then do |result|
    http_response = result.response
    status_code = http_response.status
    response_content = http_response.body
    unless status_code == 200 || status_code == 204
      error_model = JSON.load(response_content)
      fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
    end

    result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?

    result
  end

  promise.execute
end
delete_with_http_info(resource_group_name, cluster_name, custom_headers:nil) click to toggle source

Deletes a Service Fabric cluster resource.

Delete a Service Fabric cluster resource with the specified name.

@param resource_group_name [String] The name of the resource group. @param cluster_name [String] The name of the cluster resource. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.

@return [MsRestAzure::AzureOperationResponse] HTTP response information.

# File lib/2018-02-01/generated/azure_mgmt_service_fabric/clusters.rb, line 250
def delete_with_http_info(resource_group_name, cluster_name, custom_headers:nil)
  delete_async(resource_group_name, cluster_name, custom_headers:custom_headers).value!
end
get(resource_group_name, cluster_name, custom_headers:nil) click to toggle source

Gets a Service Fabric cluster resource.

Get a Service Fabric cluster resource created or in the process of being created in the specified resource group.

@param resource_group_name [String] The name of the resource group. @param cluster_name [String] The name of the cluster resource. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.

@return [Cluster] operation results.

# File lib/2018-02-01/generated/azure_mgmt_service_fabric/clusters.rb, line 37
def get(resource_group_name, cluster_name, custom_headers:nil)
  response = get_async(resource_group_name, cluster_name, custom_headers:custom_headers).value!
  response.body unless response.nil?
end
get_async(resource_group_name, cluster_name, custom_headers:nil) click to toggle source

Gets a Service Fabric cluster resource.

Get a Service Fabric cluster resource created or in the process of being created in the specified resource group.

@param resource_group_name [String] The name of the resource group. @param cluster_name [String] The name of the cluster resource. @param [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.

@return [Concurrent::Promise] Promise object which holds the HTTP response.

# File lib/2018-02-01/generated/azure_mgmt_service_fabric/clusters.rb, line 72
def get_async(resource_group_name, cluster_name, custom_headers:nil)
  fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
  fail ArgumentError, 'cluster_name is nil' if cluster_name.nil?
  @client.api_version = '2018-02-01'
  fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?


  request_headers = {}
  request_headers['Content-Type'] = 'application/json; charset=utf-8'

  # Set Headers
  request_headers['x-ms-client-request-id'] = SecureRandom.uuid
  request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
  path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}'

  request_url = @base_url || @client.base_url

  options = {
      middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
      path_params: {'resourceGroupName' => resource_group_name,'clusterName' => cluster_name,'subscriptionId' => @client.subscription_id},
      query_params: {'api-version' => @client.api_version},
      headers: request_headers.merge(custom_headers || {}),
      base_url: request_url
  }
  promise = @client.make_request_async(:get, path_template, options)

  promise = promise.then do |result|
    http_response = result.response
    status_code = http_response.status
    response_content = http_response.body
    unless status_code == 200
      error_model = JSON.load(response_content)
      fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
    end

    result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
    # Deserialize Response
    if status_code == 200
      begin
        parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
        result_mapper = Azure::ServiceFabric::Mgmt::V2018_02_01::Models::Cluster.mapper()
        result.body = @client.deserialize(result_mapper, parsed_response)
      rescue Exception => e
        fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
      end
    end

    result
  end

  promise.execute
end
get_with_http_info(resource_group_name, cluster_name, custom_headers:nil) click to toggle source

Gets a Service Fabric cluster resource.

Get a Service Fabric cluster resource created or in the process of being created in the specified resource group.

@param resource_group_name [String] The name of the resource group. @param cluster_name [String] The name of the cluster resource. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.

@return [MsRestAzure::AzureOperationResponse] HTTP response information.

# File lib/2018-02-01/generated/azure_mgmt_service_fabric/clusters.rb, line 55
def get_with_http_info(resource_group_name, cluster_name, custom_headers:nil)
  get_async(resource_group_name, cluster_name, custom_headers:custom_headers).value!
end
list(custom_headers:nil) click to toggle source

Gets the list of Service Fabric cluster resources created in the specified subscription.

Gets all Service Fabric cluster resources created or in the process of being created in the subscription.

@param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.

@return [ClusterListResult] operation results.

# File lib/2018-02-01/generated/azure_mgmt_service_fabric/clusters.rb, line 421
def list(custom_headers:nil)
  response = list_async(custom_headers:custom_headers).value!
  response.body unless response.nil?
end
list_async(custom_headers:nil) click to toggle source

Gets the list of Service Fabric cluster resources created in the specified subscription.

Gets all Service Fabric cluster resources created or in the process of being created in the subscription.

@param [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.

@return [Concurrent::Promise] Promise object which holds the HTTP response.

# File lib/2018-02-01/generated/azure_mgmt_service_fabric/clusters.rb, line 454
def list_async(custom_headers:nil)
  @client.api_version = '2018-02-01'
  fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?


  request_headers = {}
  request_headers['Content-Type'] = 'application/json; charset=utf-8'

  # Set Headers
  request_headers['x-ms-client-request-id'] = SecureRandom.uuid
  request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
  path_template = 'subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/clusters'

  request_url = @base_url || @client.base_url

  options = {
      middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
      path_params: {'subscriptionId' => @client.subscription_id},
      query_params: {'api-version' => @client.api_version},
      headers: request_headers.merge(custom_headers || {}),
      base_url: request_url
  }
  promise = @client.make_request_async(:get, path_template, options)

  promise = promise.then do |result|
    http_response = result.response
    status_code = http_response.status
    response_content = http_response.body
    unless status_code == 200
      error_model = JSON.load(response_content)
      fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
    end

    result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
    # Deserialize Response
    if status_code == 200
      begin
        parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
        result_mapper = Azure::ServiceFabric::Mgmt::V2018_02_01::Models::ClusterListResult.mapper()
        result.body = @client.deserialize(result_mapper, parsed_response)
      rescue Exception => e
        fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
      end
    end

    result
  end

  promise.execute
end
list_by_resource_group(resource_group_name, custom_headers:nil) click to toggle source

Gets the list of Service Fabric cluster resources created in the specified resource group.

Gets all Service Fabric cluster resources created or in the process of being created in the resource group.

@param resource_group_name [String] The name of the resource group. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.

@return [ClusterListResult] operation results.

# File lib/2018-02-01/generated/azure_mgmt_service_fabric/clusters.rb, line 322
def list_by_resource_group(resource_group_name, custom_headers:nil)
  response = list_by_resource_group_async(resource_group_name, custom_headers:custom_headers).value!
  response.body unless response.nil?
end
list_by_resource_group_async(resource_group_name, custom_headers:nil) click to toggle source

Gets the list of Service Fabric cluster resources created in the specified resource group.

Gets all Service Fabric cluster resources created or in the process of being created in the resource group.

@param resource_group_name [String] The name of the resource group. @param [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.

@return [Concurrent::Promise] Promise object which holds the HTTP response.

# File lib/2018-02-01/generated/azure_mgmt_service_fabric/clusters.rb, line 357
def list_by_resource_group_async(resource_group_name, custom_headers:nil)
  fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
  @client.api_version = '2018-02-01'
  fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?


  request_headers = {}
  request_headers['Content-Type'] = 'application/json; charset=utf-8'

  # Set Headers
  request_headers['x-ms-client-request-id'] = SecureRandom.uuid
  request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
  path_template = 'subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters'

  request_url = @base_url || @client.base_url

  options = {
      middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
      path_params: {'resourceGroupName' => resource_group_name,'subscriptionId' => @client.subscription_id},
      query_params: {'api-version' => @client.api_version},
      headers: request_headers.merge(custom_headers || {}),
      base_url: request_url
  }
  promise = @client.make_request_async(:get, path_template, options)

  promise = promise.then do |result|
    http_response = result.response
    status_code = http_response.status
    response_content = http_response.body
    unless status_code == 200
      error_model = JSON.load(response_content)
      fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
    end

    result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
    # Deserialize Response
    if status_code == 200
      begin
        parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
        result_mapper = Azure::ServiceFabric::Mgmt::V2018_02_01::Models::ClusterListResult.mapper()
        result.body = @client.deserialize(result_mapper, parsed_response)
      rescue Exception => e
        fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
      end
    end

    result
  end

  promise.execute
end
list_by_resource_group_with_http_info(resource_group_name, custom_headers:nil) click to toggle source

Gets the list of Service Fabric cluster resources created in the specified resource group.

Gets all Service Fabric cluster resources created or in the process of being created in the resource group.

@param resource_group_name [String] The name of the resource group. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.

@return [MsRestAzure::AzureOperationResponse] HTTP response information.

# File lib/2018-02-01/generated/azure_mgmt_service_fabric/clusters.rb, line 340
def list_by_resource_group_with_http_info(resource_group_name, custom_headers:nil)
  list_by_resource_group_async(resource_group_name, custom_headers:custom_headers).value!
end
list_with_http_info(custom_headers:nil) click to toggle source

Gets the list of Service Fabric cluster resources created in the specified subscription.

Gets all Service Fabric cluster resources created or in the process of being created in the subscription.

@param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.

@return [MsRestAzure::AzureOperationResponse] HTTP response information.

# File lib/2018-02-01/generated/azure_mgmt_service_fabric/clusters.rb, line 438
def list_with_http_info(custom_headers:nil)
  list_async(custom_headers:custom_headers).value!
end
update(resource_group_name, cluster_name, parameters, custom_headers:nil) click to toggle source

Updates the configuration of a Service Fabric cluster resource.

Update the configuration of a Service Fabric cluster resource with the specified name.

@param resource_group_name [String] The name of the resource group. @param cluster_name [String] The name of the cluster resource. @param parameters [ClusterUpdateParameters] The parameters which contains the property value and property name which used to update the cluster configuration. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.

@return [Cluster] operation results.

# File lib/2018-02-01/generated/azure_mgmt_service_fabric/clusters.rb, line 187
def update(resource_group_name, cluster_name, parameters, custom_headers:nil)
  response = update_async(resource_group_name, cluster_name, parameters, custom_headers:custom_headers).value!
  response.body unless response.nil?
end
update_async(resource_group_name, cluster_name, parameters, custom_headers:nil) click to toggle source

@param resource_group_name [String] The name of the resource group. @param cluster_name [String] The name of the cluster resource. @param parameters [ClusterUpdateParameters] The parameters which contains the property value and property name which used to update the cluster configuration. @param custom_headers [Hash{String => String}] A hash of custom headers that will be added to the HTTP request.

@return [Concurrent::Promise] promise which provides async access to http response.

# File lib/2018-02-01/generated/azure_mgmt_service_fabric/clusters.rb, line 204
def update_async(resource_group_name, cluster_name, parameters, custom_headers:nil)
  # Send request
  promise = begin_update_async(resource_group_name, cluster_name, parameters, custom_headers:custom_headers)

  promise = promise.then do |response|
    # Defining deserialization method.
    deserialize_method = lambda do |parsed_response|
      result_mapper = Azure::ServiceFabric::Mgmt::V2018_02_01::Models::Cluster.mapper()
      parsed_response = @client.deserialize(result_mapper, parsed_response)
    end

    # Waiting for response.
    @client.get_long_running_operation_result(response, deserialize_method)
  end

  promise
end