Sha256: e45bece844dfc4704e5aea2ab3c33de10dba587adad7dc666dc0327ce63349bf
Contents?: true
Size: 866 Bytes
Versions: 7
Compression:
Stored size: 866 Bytes
Contents
# This class is a base class for Docker Container and Image. # It is implementing accessor methods for the models attributes. class Docker::Base include Docker::Error attr_accessor :connection, :info attr_reader :id # The private new method accepts a connection and optional id. def initialize(connection, hash={}) unless connection.is_a?(Docker::Connection) raise ArgumentError, "Expected a Docker::Connection, got: #{connection}." end normalize_hash(hash) @connection, @info, @id = connection, hash, hash['id'] raise ArgumentError, "Must have id, got: #{hash}" unless @id end # The docker-api will some time return "ID" other times it will return "Id" # and other times it will return "id". This method normalize it to "id" def normalize_hash(hash) hash["id"] ||= hash.delete("ID") || hash.delete("Id") end end
Version data entries
7 entries across 7 versions & 1 rubygems