Sha256: 9a1ad1463ee169db5b476a279f4be53be6230b4261bb473c6598c7a44a01ef36

Contents?: true

Size: 1.31 KB

Versions: 6

Compression:

Stored size: 1.31 KB

Contents

module EY
  class CloudClient
    class Error < RuntimeError
    end

    class RequestFailed          < Error; end
    class InvalidCredentials     < RequestFailed; end
    class ResourceNotFound       < RequestFailed; end
    class InvalidInstanceRole    < Error; end
    class InstanceNotProvisioned < Error; end
    class MultipleMatchesError   < RequestFailed; end
    class InvalidInstanceName    < Error; end

    class BadEndpointError < Error
      def initialize(endpoint)
        super "#{endpoint.inspect} is not a valid endpoint URI. Endpoint must be an absolute URI."
      end
    end

    class AttributeRequiredError < Error
      def initialize(attribute_name, klass = nil)
        if klass
          super "Attribute '#{attribute_name}' of class #{klass} is required for this action."
        else
          super "Attribute '#{attribute_name}' is required for this action."
        end
      end
    end

    class NoBridgeError < Error
      def initialize(env_name)
        super "The environment '#{env_name}' does not have a master instance."
      end
    end

    class BadBridgeStatusError < Error
      def initialize(bridge_status, endpoint)
        super %|Application master's status is not "running" (green); it is "#{bridge_status}". Go to #{endpoint} to address this problem.|
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
engineyard-cloud-client-2.1.1 lib/engineyard-cloud-client/errors.rb
engineyard-cloud-client-2.1.0 lib/engineyard-cloud-client/errors.rb
engineyard-cloud-client-1.0.16 lib/engineyard-cloud-client/errors.rb
engineyard-cloud-client-2.0.1 lib/engineyard-cloud-client/errors.rb
engineyard-cloud-client-2.0.0 lib/engineyard-cloud-client/errors.rb
engineyard-cloud-client-1.0.15 lib/engineyard-cloud-client/errors.rb