Class: Legion::Extensions::Helpers::SecretAccessor
- Inherits:
-
Object
- Object
- Legion::Extensions::Helpers::SecretAccessor
- Defined in:
- lib/legion/extensions/helpers/secret.rb
Instance Method Summary collapse
- #[](name, shared: false, user: nil) ⇒ Object
- #[]=(name, value) ⇒ Object
- #delete(name, shared: false, user: nil) ⇒ Object
- #exist?(name, shared: false, user: nil) ⇒ Boolean
-
#initialize(lex_name:) ⇒ SecretAccessor
constructor
A new instance of SecretAccessor.
- #write(name, shared: false, user: nil, **data) ⇒ Object
Constructor Details
#initialize(lex_name:) ⇒ SecretAccessor
Returns a new instance of SecretAccessor.
7 8 9 10 |
# File 'lib/legion/extensions/helpers/secret.rb', line 7 def initialize(lex_name:) @lex_name = lex_name @warned = false end |
Instance Method Details
#[](name, shared: false, user: nil) ⇒ Object
12 13 14 15 16 17 18 19 |
# File 'lib/legion/extensions/helpers/secret.rb', line 12 def [](name, shared: false, user: nil) return nil unless crypt_available? Legion::Crypt.get(resolve_path(name, shared: shared, user: user)) rescue StandardError => e log_warn("secret read failed for #{name}: #{e.}") nil end |
#[]=(name, value) ⇒ Object
21 22 23 24 25 26 27 |
# File 'lib/legion/extensions/helpers/secret.rb', line 21 def []=(name, value) return unless crypt_available? Legion::Crypt.write(resolve_path(name, shared: false, user: nil), **value) rescue StandardError => e log_warn("secret write failed for #{name}: #{e.}") end |
#delete(name, shared: false, user: nil) ⇒ Object
47 48 49 50 51 52 53 54 55 |
# File 'lib/legion/extensions/helpers/secret.rb', line 47 def delete(name, shared: false, user: nil) return false unless crypt_available? Legion::Crypt.delete(resolve_path(name, shared: shared, user: user)) true rescue StandardError => e log_warn("secret delete failed for #{name}: #{e.}") false end |
#exist?(name, shared: false, user: nil) ⇒ Boolean
39 40 41 42 43 44 45 |
# File 'lib/legion/extensions/helpers/secret.rb', line 39 def exist?(name, shared: false, user: nil) return false unless crypt_available? Legion::Crypt.exist?(resolve_path(name, shared: shared, user: user)) rescue StandardError false end |
#write(name, shared: false, user: nil, **data) ⇒ Object
29 30 31 32 33 34 35 36 37 |
# File 'lib/legion/extensions/helpers/secret.rb', line 29 def write(name, shared: false, user: nil, **data) return false unless crypt_available? Legion::Crypt.write(resolve_path(name, shared: shared, user: user), **data) true rescue StandardError => e log_warn("secret write failed for #{name}: #{e.}") false end |