Module: FackUp::DB

Defined in:
lib/fackup/db.rb

Constant Summary collapse

PATH =
File.join(Dir.home, '.fackup_files')

Class Method Summary collapse

Class Method Details

.allObject



35
36
37
38
# File 'lib/fackup/db.rb', line 35

def all
  touch(DB.path)
  CSV.read(DB.path).map(&:first)
end

.delete(path) ⇒ Object



56
57
58
59
60
61
62
63
64
65
66
67
68
# File 'lib/fackup/db.rb', line 56

def delete (path)
  path = File.realpath(path)

  a = all
  return false unless a.include?(path)

  CSV.open(DB.path, 'wb') {|csv|
    (a - [path]).each {|p|
      csv << [p]
    }
  }
  true
end

.each(&blk) ⇒ Object



40
41
42
# File 'lib/fackup/db.rb', line 40

def each (&blk)
  all.each(&blk)
end

.pathObject



31
32
33
# File 'lib/fackup/db.rb', line 31

def path
  @path ||= PATH
end

.path=(p) ⇒ Object



27
28
29
# File 'lib/fackup/db.rb', line 27

def path= (p)
  @path = File.realpath(p)
end

.push(path) ⇒ Object Also known as: <<



44
45
46
47
48
49
50
51
52
53
# File 'lib/fackup/db.rb', line 44

def push (path)
  path = File.realpath(path)

  return false if all.include?(path)

  CSV.open(DB.path, 'ab') {|csv|
    csv << [path]
  }
  true
end