Made DatabaseCache.new private, and changes instances in code that call it to use DatabaseCache.use instead.
This commit is contained in:
parent
ddd2ec05d8
commit
cd6f89ca76
@ -12,8 +12,13 @@ class DatabaseCache
|
|||||||
# https://docs.oracle.com/cd/E17276_01/html/api_reference/C/envopen.html
|
# https://docs.oracle.com/cd/E17276_01/html/api_reference/C/envopen.html
|
||||||
DATABASE_MODE = 0664
|
DATABASE_MODE = 0664
|
||||||
|
|
||||||
# Returned value from `initialize` block
|
def self.use(type)
|
||||||
attr_reader :return_value
|
return_value = nil
|
||||||
|
DatabaseCache.new(type) { |db| return_value = yield(db) }
|
||||||
|
return_value
|
||||||
|
end
|
||||||
|
|
||||||
|
private
|
||||||
|
|
||||||
# Opens and yields a database in read/write mode. Closes the database after use
|
# Opens and yields a database in read/write mode. Closes the database after use
|
||||||
#
|
#
|
||||||
@ -22,15 +27,9 @@ class DatabaseCache
|
|||||||
def initialize(name)
|
def initialize(name)
|
||||||
# DBM::WRCREAT: Creates the database if it does not already exist
|
# DBM::WRCREAT: Creates the database if it does not already exist
|
||||||
@db = DBM.open("#{HOMEBREW_CACHE}/#{name}.db", DATABASE_MODE, DBM::WRCREAT)
|
@db = DBM.open("#{HOMEBREW_CACHE}/#{name}.db", DATABASE_MODE, DBM::WRCREAT)
|
||||||
@return_value = yield(@db)
|
yield(@db)
|
||||||
@db.close
|
@db.close
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.use(type)
|
|
||||||
return_value = nil
|
|
||||||
DatabaseCache.new(type) { |db| return_value = yield(db) }
|
|
||||||
return_value
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
#
|
#
|
||||||
|
|||||||
@ -20,7 +20,7 @@ module Homebrew
|
|||||||
module_function
|
module_function
|
||||||
|
|
||||||
def linkage
|
def linkage
|
||||||
DatabaseCache.new(:linkage) do |database_cache|
|
DatabaseCache.use(:linkage) do |database_cache|
|
||||||
ARGV.kegs.each do |keg|
|
ARGV.kegs.each do |keg|
|
||||||
ohai "Checking #{keg.name} linkage" if ARGV.kegs.size > 1
|
ohai "Checking #{keg.name} linkage" if ARGV.kegs.size > 1
|
||||||
|
|
||||||
|
|||||||
@ -66,7 +66,7 @@ module FormulaCellarChecks
|
|||||||
return unless formula.prefix.directory?
|
return unless formula.prefix.directory?
|
||||||
keg = Keg.new(formula.prefix)
|
keg = Keg.new(formula.prefix)
|
||||||
|
|
||||||
DatabaseCache.new(:linkage) do |database_cache|
|
DatabaseCache.use(:linkage) do |database_cache|
|
||||||
use_cache = !ENV["HOMEBREW_LINKAGE_CACHE"].nil?
|
use_cache = !ENV["HOMEBREW_LINKAGE_CACHE"].nil?
|
||||||
checker = LinkageChecker.new(keg, database_cache, use_cache, formula)
|
checker = LinkageChecker.new(keg, database_cache, use_cache, formula)
|
||||||
|
|
||||||
|
|||||||
@ -611,7 +611,7 @@ class FormulaInstaller
|
|||||||
puts summary
|
puts summary
|
||||||
|
|
||||||
# Updates the cache for a particular formula after doing an install
|
# Updates the cache for a particular formula after doing an install
|
||||||
DatabaseCache.new(:linkage) do |database_cache|
|
DatabaseCache.use(:linkage) do |database_cache|
|
||||||
break if database_cache.empty?
|
break if database_cache.empty?
|
||||||
LinkageChecker.new(keg, database_cache, false, formula)
|
LinkageChecker.new(keg, database_cache, false, formula)
|
||||||
end
|
end
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user