Class: MiqRpmPackages

Inherits:
Object
  • Object
show all
Defined in:
lib/metadata/linux/MiqRpmPackages.rb,
lib/metadata/linux/MiqRpmPackages/Bdb.rb,
lib/metadata/linux/MiqRpmPackages/Sqlite.rb

Direct Known Subclasses

Bdb, Sqlite

Defined Under Namespace

Classes: Bdb, Sqlite

Class Method Summary collapse

Class Method Details

.new(fs, dbDir) ⇒ Object



15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/metadata/linux/MiqRpmPackages.rb', line 15

def self.new(fs, dbDir)
  if self == MiqRpmPackages
    if fs.fileExists?(File.join(dbDir, "Packages"))
      MiqRpmPackages::Bdb.new(fs, File.join(dbDir, "Packages"))
    elsif fs.fileExists?(File.join(dbDir, "rpmdb.sqlite"))
      MiqRpmPackages::Sqlite.new(fs, File.join(dbDir, "rpmdb.sqlite"))
    else
      raise ArgumentError, "Invalid RPM database"
    end
  else
    orig_new(fs, dbDir)
  end
end