class Tengine::Resource::Credential

Constants

ALL_FILED_NAMES
AUTH_TYPE_KEY_TO_FIELDS
SECRET_AUTH_VALUES_KEYS

Public Class Methods

find_or_create_by_name!(attrs = {}, &block) click to toggle source
# File lib/tengine/resource/credential.rb, line 147
def find_or_create_by_name!(attrs = {}, &block)
  result = self.where({:name => attrs[:name]}).first
  result ||= self.create!(attrs)
  result
end

Public Instance Methods

connect(*args, &block) click to toggle source
# File lib/tengine/resource/credential.rb, line 142
def connect(*args, &block)
  raise NotImplementedError, "deprecated API"
end
for_launch?() click to toggle source
# File lib/tengine/resource/credential.rb, line 134
def for_launch?
  raise NotImplementedError, "deprecated API"
end
launch_options(connect_options = {}) click to toggle source
# File lib/tengine/resource/credential.rb, line 138
def launch_options(connect_options = {})
  raise NotImplementedError, "deprecated API"
end
prepare_auth_values_default() click to toggle source
# File lib/tengine/resource/credential.rb, line 118
def prepare_auth_values_default
  if auth_type_key
    hash = self.auth_values.stringify_keys!
    fields = AUTH_TYPE_KEY_TO_FIELDS[auth_type_key]
    fields.each do |field|
      if default_value = field.default
        hash[field.name] ||= default_value
      end
    end
    (ALL_FILED_NAMES - AUTH_TYPE_KEY_TO_FIELDS[auth_type_key].map(&:name)).each do |field_name|
      hash.delete(field_name)
      hash.delete(field_name.to_s)
    end
  end
end
secure_auth_values() click to toggle source
# File lib/tengine/resource/credential.rb, line 47
def secure_auth_values
  if result = auth_values.stringify_keys!
    SECRET_AUTH_VALUES_KEYS.each{|key| result.delete(key)}
  end
  result
end
validate_auth_values() click to toggle source
# File lib/tengine/resource/credential.rb, line 107
def validate_auth_values
  if auth_type_key
    hash = self.auth_values.stringify_keys!
    fields = AUTH_TYPE_KEY_TO_FIELDS[auth_type_key]
    fields.each do |field|
      field.validate(self, hash)
    end
  end
end