#!/usr/bin/env perl

=pod

=head1 NAME

ingestIPPMOPS - Directly ingest an IPP-MOPS file into a MOPS dataset

=head1 SYNOPSIS

ingest [options]

  --instance=NAME : specify MOPS instance to ingest into
  --debug : test mode
  --help : show man page

=head1 DESCRIPTION

Given a local FITS file in IPP-MOPS format, ingest it directly into
a MOPS dataset.

=cut

use strict;
use warnings;

use Getopt::Long;
use Pod::Usage;
use Cwd;
use File::Slurp;
use Params::Validate;

use File::Path;

use PS::MOPS::Constants qw(:all);
use PS::MOPS::Lib qw(:all);
use PS::MOPS::DC::Instance;
use PS::MOPS::DC::Field;
use PS::MOPS::DC::IngestItem;
use PS::MOPS::DC::Ingestor qw(:all);

use subs qw(
    fetch_fpa_set
    fetch_skycells
);


our $RESULT_SUCCESS = 0;
our $RESULT_NOTHINGTODO = 1;
our $RESULT_FAIL = 99;


my $exitval = 0;        # process exit code; see EXIT VALUE below
my $t0 = time;

my $inst;
my $instance_name;
my $debug;
my $help;
GetOptions(
    'instance=s' => \$instance_name,
    debug => \$debug,
    help => \$help
) or pod2usage(2);
pod2usage(-verbose => 3) if $help;

$inst = PS::MOPS::DC::Instance->new(DBNAME => $instance_name);
my $mops_config = $inst->getConfig;
my $mops_logger = $inst->getLogger;

foreach my $filename (@ARGV) {
    insert_ipp_fpa($inst, $filename);
}

exit;
