Class: OneviewSDK::API300::C7000::ServerHardware
- Inherits:
-
OneviewSDK::API200::ServerHardware
- Object
- Resource
- OneviewSDK::API200::Resource
- OneviewSDK::API200::ServerHardware
- OneviewSDK::API300::C7000::ServerHardware
- Defined in:
- lib/oneview-sdk/resource/api300/c7000/server_hardware.rb
Overview
Server Hardware resource implementation on API300 C7000
Direct Known Subclasses
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::UNIQUE_IDENTIFIERS
Instance Attribute Summary
Attributes inherited from Resource
#api_version, #client, #data, #logger
Instance Method Summary collapse
-
#get_firmware_by_id ⇒ Hash
Get the firmware inventory of a server.
-
#get_firmwares(filters = []) ⇒ Array
Gets a list of firmware inventory across all servers.
-
#initialize(client, params = {}, api_ver = nil) ⇒ ServerHardware
constructor
Create a resource object, associate it with a client, and set its properties.
-
#patch(operation, path, value = nil) ⇒ Object
Performs a specific patch operation for the given server.
Methods inherited from OneviewSDK::API200::ServerHardware
#add, #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_refresh_state, #update, #update_ilo_firmware, #utilization
Methods inherited from Resource
#==, #[], #[]=, build_query, #create, #create!, #delete, #each, #eql?, #exists?, find_by, from_file, get_all, #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.
24 25 26 27 28 29 |
# File 'lib/oneview-sdk/resource/api300/c7000/server_hardware.rb', line 24 def initialize(client, params = {}, api_ver = nil) @data ||= {} # Default values: @data['type'] ||= 'server-hardware-5' super end |
Instance Method Details
#get_firmware_by_id ⇒ Hash
Get the firmware inventory of a server.
33 34 35 36 37 |
# File 'lib/oneview-sdk/resource/api300/c7000/server_hardware.rb', line 33 def get_firmware_by_id ensure_client && ensure_uri response = @client.rest_get(@data['uri'] + '/firmware') @client.response_handler(response) end |
#get_firmwares(filters = []) ⇒ Array
Gets a list of firmware inventory across all servers
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
# File 'lib/oneview-sdk/resource/api300/c7000/server_hardware.rb', line 42 def get_firmwares(filters = []) ensure_client results = [] uri = self.class::BASE_URI + '/*/firmware' uri_generate(uri, filters) unless filters.empty? response = @client.rest_get(uri) body = @client.response_handler(response) loop do members = body['members'] members.each do |member| results.push(member) end break unless body['nextPageUri'] uri = body['nextPageUri'] end results end |
#patch(operation, path, value = nil) ⇒ Object
Performs a specific patch operation for the given server. If the server supports the particular operation, the operation is performed and a response is returned to the caller with the results.
67 68 69 70 71 72 73 74 75 76 |
# File 'lib/oneview-sdk/resource/api300/c7000/server_hardware.rb', line 67 def patch(operation, path, value = nil) ensure_client && ensure_uri body = if value { op: operation, path: path, value: value } else { op: operation, path: path } end response = @client.rest_patch(@data['uri'], { 'body' => [body] }, @api_version) @client.response_handler(response) end |