Module: Agent::Homedir
- Defined in:
- lib/agent/homedir.rb,
lib/agent/homedir.rb,
lib/agent/homedir/entry.rb,
lib/agent/homedir/error.rb,
lib/agent/homedir/version.rb,
lib/agent/homedir/registry.rb,
lib/agent/homedir/resolver.rb,
lib/agent/homedir/unknown_agent.rb,
lib/agent/homedir/home_not_resolvable.rb
Defined Under Namespace
Classes: Entry, Error, HomeNotResolvable, Resolver, UnknownAgent
Constant Summary collapse
- VERSION =
"0.3.0"
Class Method Summary collapse
-
.[](name) ⇒ Agent::Homedir::Entry
Returns the named agent from the default registry.
-
.agents ⇒ Array<Agent::Homedir::Entry>
Returns all known agents in registry order.
-
.default_resolver ⇒ Agent::Homedir::Resolver
Returns the memoized default resolver built from the current environment.
-
.home(name) ⇒ Pathname
Returns the configured home directory for the named agent.
-
.installed ⇒ Array<Agent::Homedir::Entry>
Returns currently installed agents in registry order.
-
.installed?(name) ⇒ Boolean
Returns whether the named agent is currently installed.
-
.names ⇒ Array<Symbol>
Returns all known agent names in registry order.
Class Method Details
.[](name) ⇒ Agent::Homedir::Entry
Returns the named agent from the default registry.
59 60 61 |
# File 'lib/agent/homedir.rb', line 59 def [](name) default_resolver[name] end |
.agents ⇒ Array<Agent::Homedir::Entry>
Returns all known agents in registry order.
66 67 68 |
# File 'lib/agent/homedir.rb', line 66 def agents default_resolver.agents end |
.default_resolver ⇒ Agent::Homedir::Resolver
Returns the memoized default resolver built from the current environment. ENV and HOME are snapshotted on first access and reused for process lifetime.
26 27 28 29 30 31 32 |
# File 'lib/agent/homedir.rb', line 26 def default_resolver return @default_resolver if @default_resolver DEFAULT_RESOLVER_MONITOR.synchronize do @default_resolver ||= Resolver.new end end |
.home(name) ⇒ Pathname
Returns the configured home directory for the named agent.
40 41 42 |
# File 'lib/agent/homedir.rb', line 40 def home(name) default_resolver.home(name) end |
.installed ⇒ Array<Agent::Homedir::Entry>
Returns currently installed agents in registry order.
74 75 76 |
# File 'lib/agent/homedir.rb', line 74 def installed default_resolver.installed end |
.installed?(name) ⇒ Boolean
Returns whether the named agent is currently installed.
50 51 52 |
# File 'lib/agent/homedir.rb', line 50 def installed?(name) default_resolver.installed?(name) end |
.names ⇒ Array<Symbol>
Returns all known agent names in registry order.
81 82 83 |
# File 'lib/agent/homedir.rb', line 81 def names default_resolver.names end |