Class: Workato::Connector::Sdk::AccountProperties
- Inherits:
-
Object
- Object
- Workato::Connector::Sdk::AccountProperties
- Includes:
- Singleton
- Defined in:
- lib/workato/connector/sdk/account_properties.rb
Class Method Summary collapse
- .from_csv(path = './account_properties.csv') ⇒ Object
- .from_encrypted_yaml(path = DEFAULT_ENCRYPTED_ACCOUNT_PROPERTIES_PATH, key_path = nil) ⇒ Object
- .from_yaml(path = DEFAULT_ACCOUNT_PROPERTIES_PATH) ⇒ Object
Instance Method Summary collapse
Class Method Details
.from_csv(path = './account_properties.csv') ⇒ Object
31 32 33 34 35 36 |
# File 'lib/workato/connector/sdk/account_properties.rb', line 31 def self.from_csv(path = './account_properties.csv') props = CSV.foreach(path, headers: true, return_headers: false).to_h do |row| [row[0], row[1]] end instance.load_data(props) end |
.from_encrypted_yaml(path = DEFAULT_ENCRYPTED_ACCOUNT_PROPERTIES_PATH, key_path = nil) ⇒ Object
20 21 22 23 24 25 26 27 28 29 |
# File 'lib/workato/connector/sdk/account_properties.rb', line 20 def self.from_encrypted_yaml(path = DEFAULT_ENCRYPTED_ACCOUNT_PROPERTIES_PATH, key_path = nil) load_data( ActiveSupport::EncryptedConfiguration.new( config_path: path, key_path: key_path || DEFAULT_MASTER_KEY_PATH, env_key: DEFAULT_MASTER_KEY_ENV, raise_if_missing_key: true ).config ) end |
.from_yaml(path = DEFAULT_ACCOUNT_PROPERTIES_PATH) ⇒ Object
14 15 16 17 18 |
# File 'lib/workato/connector/sdk/account_properties.rb', line 14 def self.from_yaml(path = DEFAULT_ACCOUNT_PROPERTIES_PATH) File.open(path) do |f| instance.load_data(YAML.safe_load(ERB.new(f.read).result, permitted_classes: [::Symbol]).to_hash) end end |
Instance Method Details
#get(key) ⇒ Object
45 46 47 48 |
# File 'lib/workato/connector/sdk/account_properties.rb', line 45 def get(key) @data ||= {} @data[key.to_s] end |
#load_data(props = {}) ⇒ Object
55 56 57 |
# File 'lib/workato/connector/sdk/account_properties.rb', line 55 def load_data(props = {}) props.each { |k, v| put(k, v) } end |
#put(key, value) ⇒ Object
50 51 52 53 |
# File 'lib/workato/connector/sdk/account_properties.rb', line 50 def put(key, value) @data ||= {} @data[key.to_s] = value.to_s end |