class KPM::System

def kaui_version(kaui_web_path = nil)

def kaui_version(kaui_web_path = nil)
  kaui_search_default_dir = kaui_web_path.nil? ? DEFAULT_KAUI_SEARCH_BASE_DIR : Dir[kaui_web_path][0]
  return nil if kaui_search_default_dir.nil?
  kaui_search_default_dir.gsub!('.war', '')
  version = nil
  gemfile = Dir[kaui_search_default_dir + File::SEPARATOR + 'WEB-INF' + File::SEPARATOR + 'Gemfile']
  unless gemfile[0].nil?
    absolute_gemfile_path = File.absolute_path(gemfile[0])
    version = File.open(absolute_gemfile_path, 'r') do |f|
      f.each_line.detect do |line|
        next unless /kaui/.match(line)
        version = /(\d+)\.(\d+)\.(\d+)/.match(line)
        break unless version.nil?
      end
      version
    end
  end
  version
end