#!/usr/local/bin/ruby
=begin
 ******************************************************************************
 * Copyright 1990-2010 MBARI
 * MBARI Proprietary Information. All rights reserved.
 ******************************************************************************
 * Summary  : Display the component states
 * Filename : comp_states.rb
 * Author   : Henthorn
 * Project  : Benthic Rover
 * Version  : 1
 * Created  : Sept 2010
 ******************************************************************************
=end

# Refer to Rover-code home directory as base
#
require "#{ENV['ROVER_HOME']}/utils/rover_environment"
#
require 'utils/misc'

store = RoverStore.new("#{ENV['ROVER_HOME']}/logs/rover.db")

exit unless(store)

all_comp = store.all_component_states

unless(all_comp)
  puts("No component data in rover.db")
  exit
end

puts("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
RoverStore.component_names.each do |k|
  state = all_comp[k]
  if (state)
    health = "OK" unless (health = state[RoverStore::Health])
    date = state[RoverStore::Date]
    puts("#{k}\t  #{date}\tHealth: #{health}")
  else
    puts("#{k}\t\tno record found")
  end
end
puts("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
