class OneviewSDK::API300::Synergy::SASLogicalInterconnect

SAS logical interconnect resource implementation

Constants

BASE_URI

Public Class Methods

new(client, params = {}, api_ver = nil) click to toggle source

Create a resource object, associate it with a client, and set its properties. @param [OneviewSDK::Client] client The client object for the OneView appliance @param [Hash] params The options for this resource (key-value pairs) @param [Integer] api_ver The api version to use when interracting with this resource.

Calls superclass method OneviewSDK::Resource::new
# File lib/oneview-sdk/resource/api300/synergy/sas_logical_interconnect.rb, line 27
def initialize(client, params = {}, api_ver = nil)
  super
end

Public Instance Methods

compliance() click to toggle source

Returns SAS logical interconnects to a consistent state. The current SAS logical interconnect state is compared to the associated SAS logical interconnect group. @return returns the updated object

# File lib/oneview-sdk/resource/api300/synergy/sas_logical_interconnect.rb, line 46
def compliance
  ensure_client && ensure_uri
  update_options = {
    'If-Match' =>  @data['eTag'],
    'body' => { 'type' => 'sas-logical-interconnect' }
  }
  response = @client.rest_put(@data['uri'] + '/compliance', update_options, @api_version)
  body = @client.response_handler(response)
  set_all(body)
end
create(*) click to toggle source

Method is not available @raise [OneviewSDK::MethodUnavailable] method is not available

# File lib/oneview-sdk/resource/api300/synergy/sas_logical_interconnect.rb, line 33
def create(*)
  unavailable_method
end
delete(*) click to toggle source

Method is not available @raise [OneviewSDK::MethodUnavailable] method is not available

# File lib/oneview-sdk/resource/api300/synergy/sas_logical_interconnect.rb, line 39
def delete(*)
  unavailable_method
end
firmware_update(command, firmware_driver, firmware_options) click to toggle source

Update firmware @param [String] command @param [OneviewSDK::FirmwareDriver] firmware_driver @param [Hash] firmware_options @raise [OneviewSDK::IncompleteResource] if the client or uri is not set

# File lib/oneview-sdk/resource/api300/synergy/sas_logical_interconnect.rb, line 70
def firmware_update(command, firmware_driver, firmware_options)
  ensure_client && ensure_uri
  firmware_options['command'] = command
  firmware_options['sppUri'] =  firmware_driver['uri']
  firmware_options['sppName'] = firmware_driver['name']
  update_json = {
    'If-Match' => '*',
    'body' => firmware_options
  }
  response = @client.rest_put(@data['uri'] + '/firmware', update_json)
  @client.response_handler(response)
end
get_firmware() click to toggle source

Gets the installed firmware for a SAS logical interconnect. @return [Hash] Contains all firmware information

# File lib/oneview-sdk/resource/api300/synergy/sas_logical_interconnect.rb, line 59
def get_firmware
  ensure_client && ensure_uri
  response = @client.rest_get(@data['uri'] + '/firmware')
  @client.response_handler(response)
end
replace_drive_enclosure(old_serial_number, new_serial_number) click to toggle source

Initiates the replacement operation after a drive enclosure has been physically replaced. @param [String] old_serial_number @param [String] new_serial_number @raise [OneviewSDK::IncompleteResource] if the client or uri is not set

# File lib/oneview-sdk/resource/api300/synergy/sas_logical_interconnect.rb, line 87
def replace_drive_enclosure(old_serial_number, new_serial_number)
  ensure_client && ensure_uri
  drive_enclosure_options = {
    'oldSerialNumber' => old_serial_number,
    'newSerialNumber' => new_serial_number
  }
  update_json = {
    'If-Match' => '*',
    'body' => drive_enclosure_options
  }
  response = @client.rest_post(@data['uri'] + '/replaceDriveEnclosure', update_json)
  @client.response_handler(response)
end