aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/software_spec.rb
diff options
context:
space:
mode:
authorMisty De Meo2013-10-21 21:25:42 -0700
committerMisty De Meo2013-12-05 18:24:51 -0800
commitb95f2357d85f7e0029a86b6f37ab7590f489c9c9 (patch)
treec4f1fef17c1fb07e45dad6c805070f4fa6bf0e4a /Library/Homebrew/software_spec.rb
parentb11be1e98b96d50bb974dc31e4ebc08cb226ec70 (diff)
downloadhomebrew-b95f2357d85f7e0029a86b6f37ab7590f489c9c9.tar.bz2
Use BottleCollector in Bottle SoftwareSpec
Diffstat (limited to 'Library/Homebrew/software_spec.rb')
-rw-r--r--Library/Homebrew/software_spec.rb12
1 files changed, 7 insertions, 5 deletions
diff --git a/Library/Homebrew/software_spec.rb b/Library/Homebrew/software_spec.rb
index 4a630dbc1..288db99ca 100644
--- a/Library/Homebrew/software_spec.rb
+++ b/Library/Homebrew/software_spec.rb
@@ -4,6 +4,7 @@ require 'checksum'
require 'version'
require 'build_options'
require 'dependency_collector'
+require 'bottles'
class SoftwareSpec
extend Forwardable
@@ -87,6 +88,7 @@ end
class Bottle < SoftwareSpec
attr_rw :root_url, :prefix, :cellar, :revision
+ attr_accessor :current_tag
def_delegators :@resource, :version=, :url=
@@ -103,16 +105,16 @@ class Bottle < SoftwareSpec
class_eval <<-EOS, __FILE__, __LINE__ + 1
def #{cksum}(val=nil)
return @#{cksum} if val.nil?
- @#{cksum} ||= Hash.new
+ @#{cksum} ||= BottleCollector.new
case val
when Hash
key, value = val.shift
- @#{cksum}[value] = Checksum.new(:#{cksum}, key)
+ @#{cksum}.add(Checksum.new(:#{cksum}, key), value)
end
- if @#{cksum}.has_key? bottle_tag
- @resource.checksum = @#{cksum}[bottle_tag]
- end
+ cksum, current_tag = @#{cksum}.fetch_bottle_for(bottle_tag)
+ @resource.checksum = cksum if cksum
+ @current_tag = current_tag if cksum
end
EOS
end