class Artifactory::Resource::Base

def attribute(key, default = nil)

Returns:
  • (Boolean) -
  • (Object) -

Parameters:
  • default (Object) --
  • value (Object) --
def attribute(key, default = nil)
  key = key.to_sym unless key.is_a?(Symbol)
  # Set this attribute in the top-level hash
  attributes[key] = nil
  define_method(key) do
    value = attributes[key]
    return value unless value.nil?
    if default.nil?
      value
    elsif default.is_a?(Proc)
      default.call
    else
      default
    end
  end
  define_method("#{key}?") do
    !!attributes[key]
  end
  define_method("#{key}=") do |value|
    set(key, value)
  end
end