require_relative "db"

class ProjectsActions
  attr :path, :error, :db

  def initialize(path, db)
    @path = nil
    @error = nil
    @db = db
    if File.absolute_path?(path)
      if File.exist?(path)
        @path = path
      end
    else
      apath = File.realpath(path)
      if File.exist?(apath)
        @path = apath
      end
    end
  end

  def get_projects
    prj = []
    File.open("locks/prjcreate", "r") do |f|
      f.flock(File::LOCK_SH)
      prj = @db.proj_list
    end
    prj
  end
end