class Jerakia::Encryption
Attributes
loaded[R]
Public Class Methods
config()
click to toggle source
# File lib/jerakia/encryption.rb, line 50 def self.config Jerakia.config[:encryption] || {} end
handler()
click to toggle source
# File lib/jerakia/encryption.rb, line 7 def handler @handler || @handler = self.new end
new(provider=nil)
click to toggle source
# File lib/jerakia/encryption.rb, line 14 def initialize(provider=nil) if provider.nil? provider = config["provider"] end return nil if provider.nil? begin require "jerakia/encryption/#{provider}" rescue LoadError => e raise Jerakia::Error, "Failed to load encryption provider #{provider}" end begin eval "extend Jerakia::Encryption::#{provider.capitalize}" rescue NameError => e raise Jerakia::Error, "Encryption provider #{provider} did not provide class" end @loaded = true end
Public Instance Methods
config()
click to toggle source
# File lib/jerakia/encryption.rb, line 54 def config self.class.config end
features?(feature)
click to toggle source
# File lib/jerakia/encryption.rb, line 39 def features?(feature) case feature when :encrypt respond_to?('encrypt') when :decrypt respond_to?('decrypt') else false end end
loaded?()
click to toggle source
# File lib/jerakia/encryption.rb, line 35 def loaded? loaded end