Class: OneviewSDK::API600::C7000::ServerHardware

Inherits:
OneviewSDK::API500::C7000::ServerHardware show all
Defined in:
lib/oneview-sdk/resource/api600/c7000/server_hardware.rb

Overview

Server Hardware resource implementation on API600 C7000

Constant Summary

Constants inherited from OneviewSDK::API200::ServerHardware

OneviewSDK::API200::ServerHardware::BASE_URI, OneviewSDK::API200::ServerHardware::UNIQUE_IDENTIFIERS

Constants inherited from Resource

Resource::BASE_URI, Resource::DEFAULT_REQUEST_HEADER, Resource::UNIQUE_IDENTIFIERS

Instance Attribute Summary

Attributes inherited from Resource

#api_version, #client, #data, #logger

Instance Method Summary collapse

Methods inherited from OneviewSDK::API500::C7000::ServerHardware

#get_physical_server_hardware

Methods inherited from OneviewSDK::API300::C7000::ServerHardware

#get_firmware_by_id, #get_firmwares

Methods included from OneviewSDK::API300::C7000::Scope::ScopeHelperMethods

#add_scope, #patch, #remove_scope, #replace_scopes

Methods inherited from OneviewSDK::API200::ServerHardware

#add, #create, #create!, #delete, #environmental_configuration, #exists?, #get_bios, #get_ilo_sso_url, #get_java_remote_sso_url, #get_remote_console_url, #power_off, #power_on, #remove, #retrieve!, #set_power_state, #set_refresh_state, #update, #update_ilo_firmware, #utilization

Methods inherited from Resource

#==, #[], #[]=, build_query, #create, #create!, #deep_merge!, #delete, #each, #eql?, #exists?, find_by, find_with_pagination, from_file, get_all, get_all_with_query, #like?, #refresh, #retrieve!, #schema, schema, #set, #set_all, #to_file, #update

Constructor Details

#initialize(client, params = {}, api_ver = nil) ⇒ ServerHardware

Create a resource object, associate it with a client, and set its properties.

Parameters:

  • client (OneviewSDK::Client)

    The client object for the OneView appliance

  • params (Hash) (defaults to: {})

    The options for this resource (key-value pairs)

  • api_ver (Integer) (defaults to: nil)

    The api version to use when interracting with this resource.



24
25
26
27
28
29
# File 'lib/oneview-sdk/resource/api600/c7000/server_hardware.rb', line 24

def initialize(client, params = {}, api_ver = nil)
  @data ||= {}
  # Default values:
  @data['type'] ||= 'server-hardware-8'
  super
end

Instance Method Details

#add_multiple_serversObject

Adds multiple server hardware using the given data



32
33
34
35
36
37
38
39
40
# File 'lib/oneview-sdk/resource/api600/c7000/server_hardware.rb', line 32

def add_multiple_servers
  ensure_client
  required_attributes = %w[username password licensingIntent mpHostsAndRanges]
  required_attributes.each { |k| raise IncompleteResource, "Missing required attribute: '#{k}'" unless @data.key?(k) }

  optional_attrs = %w[configurationState force restore]
  temp_data = @data.select { |k, _v| required_attributes.include?(k) || optional_attrs.include?(k) }
  @client.rest_post('/rest/server-hardware' + '/discovery', { 'body' => temp_data }, @api_version)
end