class Fsinv::Inventory

Attributes

file_structure[RW]
fshugo_tab[RW]
magic_tab[RW]
mime_tab[RW]
osx_tab[RW]
timestamp[RW]

Public Class Methods

new(file_structure) click to toggle source
# File lib/fsinv/inventory.rb, line 12
def initialize(file_structure)
  @file_structure = file_structure
  @timestamp  = Time.now
  @magic_tab  = Fsinv.magic_tab
  @mime_tab   = Fsinv.mime_tab
  @osx_tab    = Fsinv.osx_tab
  @fshugo_tab = Fsinv.fshugo_tab
end

Public Instance Methods

as_json(options = { }) click to toggle source
# File lib/fsinv/inventory.rb, line 49
def as_json(options = { })
  return to_hash
end
item_count() click to toggle source
# File lib/fsinv/inventory.rb, line 29
def item_count
  count = 0
  file_structure.each do |fs|
    count += fs.item_count
  end
  return count
end
marshal_dump() click to toggle source
# File lib/fsinv/inventory.rb, line 57
def marshal_dump
  return to_hash
end
marshal_load(data) click to toggle source
# File lib/fsinv/inventory.rb, line 61
def marshal_load(data)
  self.file_structure = data['file_structure'] if data['file_structure'].exists?
  self.timestamp = data['timestamp'] if data['timestamp'].exists?
  self.magic_tab = data['magic_tab'] if data['magic_tab'].exists?
  self.mime_tab = data['mime_tab'] if data['mime_tab'].exists?
  self.osx_tab = data['osx_tab'] if data['osx_tab'].exists?
  self.fshugo_tab = data['fshugo_tab'] if data['fshugo_tab'].exists?
end
size() click to toggle source
# File lib/fsinv/inventory.rb, line 21
def size
  size = 0
  file_structure.each do |fs|
    size += fs.bytes
  end
  return size
end
to_hash() click to toggle source
# File lib/fsinv/inventory.rb, line 37
def to_hash
  h = {
    "timestamp" => @timestamp,
    "file_structure" => @file_structure,
  }
  h["mime_tab"] = @mime_tab unless @mime_tab.empty?
  h["magic_tab"] = @magic_tab unless @magic_tab.empty?
  h["osx_tab"] = @osx_tab unless @osx_tab.empty?
  h["fshugo_tab"] = @fshugo_tab unless @fshugo_tab.empty?
  return h
end
to_json(*a) click to toggle source
# File lib/fsinv/inventory.rb, line 53
def to_json(*a)
  as_json.to_json(*a)
end