class Berta::Utils::OpenNebula::Helper

Class designed to help with working with OpenNebula

Constants

ERRORS

Hash of errors that can be returned by opennebula

Public Class Methods

decode_error(errno) click to toggle source

Decodes OpenNebula error codes into exceptions and returns them

@param errno [OpenNebula::Error] Error code to turn into exception @return [Berta::Errors::OpenNebula::AuthenticationError] @return [Berta::Errors::OpenNebula::UserNotAuthorizedError] @return [Berta::Errors::OpenNebula::ResourceNotFoundError] @return [Berta::Errors::OpenNebula::ResourceStateError] @return [Berta::Errors::OpenNebula::ResourceRetrievalError]

# File lib/berta/utils/opennebula/helper.rb, line 38
def decode_error(errno)
  ERRORS[errno]
end
handle_error() { || ... } click to toggle source

Handles OpenNebula error codes and turns them into exceptions

@raise [Berta::Errors::OpenNebula::AuthenticationError] @raise [Berta::Errors::OpenNebula::UserNotAuthorizedError] @raise [Berta::Errors::OpenNebula::ResourceNotFoundError] @raise [Berta::Errors::OpenNebula::ResourceStateError] @raise [Berta::Errors::OpenNebula::ResourceRetrievalError]

# File lib/berta/utils/opennebula/helper.rb, line 23
def handle_error
  raise Berta::Errors::OpenNebula::StubError, 'OpenNebula service-wrapper was called without a block!' unless block_given?
  return_value = yield
  return return_value unless ::OpenNebula.is_error?(return_value)
  raise decode_error(return_value.errno), return_value.message
end