Class: EY::Serverside::Source
- Inherits:
-
Object
- Object
- EY::Serverside::Source
- Defined in:
- lib/engineyard-serverside/source.rb
Defined Under Namespace
Class Attribute Summary collapse
-
.required_opts ⇒ Object
readonly
Returns the value of attribute required_opts.
Instance Attribute Summary collapse
-
#opts ⇒ Object
readonly
Returns the value of attribute opts.
-
#ref ⇒ Object
readonly
Returns the value of attribute ref.
-
#shell ⇒ Object
readonly
Returns the value of attribute shell.
-
#source_cache ⇒ Object
(also: #repository_cache)
readonly
Returns the value of attribute source_cache.
-
#uri ⇒ Object
readonly
Returns the value of attribute uri.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(shell, opts = {}) ⇒ Source
constructor
A new instance of Source.
Constructor Details
#initialize(shell, opts = {}) ⇒ Source
Returns a new instance of Source.
16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/engineyard-serverside/source.rb', line 16 def initialize(shell, opts={}) @shell = shell @opts = opts missing = self.class.required_opts && self.class.required_opts.reject {|name| @opts[name] } if missing and missing.any? raise ArgumentError, "Internal error: Missing keys #{missing.join(',')}. Required: #{self.class.required_opts.join(', ')}" end @ref = @opts[:ref].to_s.strip @uri = @opts[:uri].to_s if @opts[:uri] @source_cache = Pathname.new(@opts[:repository_cache]) if @opts[:repository_cache] end |
Class Attribute Details
.required_opts ⇒ Object (readonly)
Returns the value of attribute required_opts.
9 10 11 |
# File 'lib/engineyard-serverside/source.rb', line 9 def required_opts @required_opts end |
Instance Attribute Details
#opts ⇒ Object (readonly)
Returns the value of attribute opts.
5 6 7 |
# File 'lib/engineyard-serverside/source.rb', line 5 def opts @opts end |
#ref ⇒ Object (readonly)
Returns the value of attribute ref.
5 6 7 |
# File 'lib/engineyard-serverside/source.rb', line 5 def ref @ref end |
#shell ⇒ Object (readonly)
Returns the value of attribute shell.
5 6 7 |
# File 'lib/engineyard-serverside/source.rb', line 5 def shell @shell end |
#source_cache ⇒ Object (readonly) Also known as: repository_cache
Returns the value of attribute source_cache.
5 6 7 |
# File 'lib/engineyard-serverside/source.rb', line 5 def source_cache @source_cache end |
#uri ⇒ Object (readonly)
Returns the value of attribute uri.
5 6 7 |
# File 'lib/engineyard-serverside/source.rb', line 5 def uri @uri end |
Class Method Details
.require_opts(*names) ⇒ Object
10 11 12 13 |
# File 'lib/engineyard-serverside/source.rb', line 10 def require_opts(*names) @required_opts ||= [] @required_opts += names end |