#------------------------------------------------------------
# Copyright (C) 2010 RoyaltyShare, Inc.   All Rights Reserved
#------------------------------------------------------------
package Job::ChildJob;

use strict;
use warnings;
use Data::Dumper;

use lib '/app/tools/common/lib/';
use Common::Assert;

use lib '/app/tools/job/lib/';
use base 'Job::Job';

sub SubmitJobToQueue {
    my $self = shift;
    my (%args) = @_;

    my $parentJobID = $self->_getParentJobID();

    #    unless( $parentJobID ) {
    #        die "Could not determin parent job id (" . ref($self) . ")\n" .
    #            "  - NOTE: This script must be invoked using the job wrapper script.\n";
    #    }
    #    assert($parentJobID, 'Could not determine parent job id');

    return $self->SUPER::SubmitJobToQueue( %args, parent_job_id => $parentJobID );
}

sub _getParentJobID {
    my $self = shift;
    my $pid  = $$;
    my $host = Common::RSApp::GetRealHostname();

    my $job = Job::DB::Item::Job->Lookup( pid => $pid, run_hostname => $host, end_date => '0000-00-00 00:00:00' );

    return $job ? $job->job_id() : undef;
}

###
1;    #
###
