def initialize( path = nil, cache_path = nil )
if path then
@path = path
@name = File.basename @path
end
@cache_path = cache_path
@loaded = false
@connection = {}
@entities = []
if @path and @cache_path then
require 'pstore'
@cache_path = File.join(@cache_path, (@name + CACHE_SUFFIX))
if FileTest.exist?(@cache_path) and \
(File.mtime(@path) <= File.mtime(@cache_path)) then
load_from_cache @cache_path
else
load_from_yaml @path
create_cache @cache_path
end
elsif @path then
load_from_yaml @path
end
end