#!/usr/bin/env perl

use strict;
use warnings;
use YAML::XS;

use Vulcan::OptConf;

$| ++;

=head1 SYNOPSIS

 $0 [--cache off|on] [--load off|on] [--start|--restart] [--qrw]
 $0 --stop

=cut
my ( $option, %seco );
BEGIN { $option = Vulcan::OptConf->load(); %seco = $option->dump( 'seco' ) }

use lib $seco{lib};
use SECO::Engine::Search;

my %o = $option->get( qw( stop start restart cache=s ) )->dump;
my $seco = SECO::Engine::Search->new();
my %mode = ( mode => 'qrw' ) if $o{qrw};

map { $seco->$_( %mode ) if $o{$_} ||= $o{restart} } qw( stop start );
map { $seco->$_( $o{$_} ) if $o{$_} } qw( cache load ) unless $o{stop};

sleep 1;
YAML::XS::DumpFile \*STDOUT, scalar $seco->status();
