def runner(self,
               incl_rec_spec=None,
               excl_rec_spec=None,
               incl_col_spec=None,
               excl_col_spec=None,
               options=None):

        in_fqfn = self.std_7x7_fqfn
        out_fqfn = self.out_fqfn
        irs = comm.coalesce(' ', "%(incl_rec_spec)s" % locals())
        ers = comm.coalesce(' ', "%(excl_rec_spec)s" % locals())
        ics = comm.coalesce(' ', "%(incl_col_spec)s" % locals())
        ecs = comm.coalesce(' ', "%(excl_col_spec)s" % locals())
        opt = comm.coalesce(' ', "%(options)s" % locals())
        pgm = fq_pgm  # get it local for string formatting

        cmd = '''%(pgm)s %(in_fqfn)s     \
                         -o %(out_fqfn)s \
                         %(irs)s         \
                         %(ers)s         \
                         %(ics)s         \
                         %(ecs)s         \
                         %(opt)s         \
              ''' % locals()
        r = envoy.run(cmd)
        if r.status_code:
            print 'Status Code:  %d' % r.status_code
        p_recs = []
        for rec in fileinput.input(self.out_fqfn):
            p_recs.append(rec[:-1])
        fileinput.close()

        return p_recs
    def runner(self, incl_rec_spec=None, excl_rec_spec=None, 
                     incl_col_spec=None, excl_col_spec=None,
                     options=None):

        in_fqfn  = self.std_7x7_fqfn
        out_fqfn = self.out_fqfn
        irs = comm.coalesce(' ', "%(incl_rec_spec)s" % locals())
        ers = comm.coalesce(' ', "%(excl_rec_spec)s" % locals())
        ics = comm.coalesce(' ', "%(incl_col_spec)s" % locals())
        ecs = comm.coalesce(' ', "%(excl_col_spec)s" % locals())
        opt = comm.coalesce(' ', "%(options)s"       % locals())
        pgm = fq_pgm  # get it local for string formatting

        cmd = '''%(pgm)s %(in_fqfn)s     \
                         -o %(out_fqfn)s \
                         %(irs)s         \
                         %(ers)s         \
                         %(ics)s         \
                         %(ecs)s         \
                         %(opt)s         \
              ''' % locals()
        r = envoy.run(cmd)
        if r.status_code:
            print 'Status Code:  %d' % r.status_code
        p_recs = []
        for rec in fileinput.input(self.out_fqfn):
            p_recs.append(rec[:-1])

        return p_recs
    def runner(self,
               incl_rec_spec=None,
               excl_rec_spec=None,
               incl_col_spec=None,
               excl_col_spec=None,
               quoted_file=False,
               options=None,
               runtype='arg'):

        assert runtype in ['arg', 'stdin']

        if quoted_file:
            in_fqfn = self.q_fqfn
        else:
            in_fqfn = self.nq_fqfn

        irs = comm.coalesce(' ', "'%(incl_rec_spec)s'" % locals())
        ers = comm.coalesce(' ', "'%(excl_rec_spec)s'" % locals())
        ics = comm.coalesce(' ', "'%(incl_col_spec)s'" % locals())
        ecs = comm.coalesce(' ', "'%(excl_col_spec)s'" % locals())
        opt = comm.coalesce(' ', "%(options)s" % locals())
        pgm = fq_pgm  # get it local for string formatting
        out_fqfn = self.out_fqfn

        def run_cmd(cmd):
            r = envoy.run(cmd)
            recs = []
            for rec in fileinput.input(self.out_fqfn):
                recs.append(rec[:-1])
            fileinput.close()
            return r.status_code, recs

        if runtype == 'arg':
            arg_cmd = '''%(pgm)s    %(in_fqfn)s             \
                                    -o %(out_fqfn)s         \
                                    %(irs)s                 \
                                    %(ers)s                 \
                                    %(ics)s                 \
                                    %(ecs)s                 \
                                    %(opt)s                 \
                      ''' % locals()
            rc, recs = run_cmd(arg_cmd)
        else:
            stdin_cmd = '''cat %(in_fqfn)s | %(pgm)s        \
                                    -o %(out_fqfn)s         \
                                    %(irs)s                 \
                                    %(ers)s                 \
                                    %(ics)s                 \
                                    %(ecs)s                 \
                                    %(opt)s                 \
                        ''' % locals()
            rc, recs = run_cmd(stdin_cmd)

        return rc, recs
    def runner(self, incl_rec_spec=None, excl_rec_spec=None,
                     incl_col_spec=None, excl_col_spec=None,
                     quoted_file=False,
                     options=None,
                     runtype='arg'):

        assert runtype in ['arg','stdin']

        if quoted_file:
            in_fqfn = self.q_fqfn
        else:
            in_fqfn = self.nq_fqfn

        irs      = comm.coalesce(' ', "'%(incl_rec_spec)s'" % locals())
        ers      = comm.coalesce(' ', "'%(excl_rec_spec)s'" % locals())
        ics      = comm.coalesce(' ', "'%(incl_col_spec)s'" % locals())
        ecs      = comm.coalesce(' ', "'%(excl_col_spec)s'" % locals())
        opt      = comm.coalesce(' ', "%(options)s"         % locals())
        pgm      = fq_pgm  # get it local for string formatting
        out_fqfn = self.out_fqfn


        def run_cmd(cmd):
            r    = envoy.run(cmd)
            recs = []
            for rec in fileinput.input(self.out_fqfn):
                recs.append(rec[:-1])
            fileinput.close()
            return r.status_code, recs


        if runtype == 'arg':
            arg_cmd = '''%(pgm)s    %(in_fqfn)s             \
                                    -o %(out_fqfn)s         \
                                    %(irs)s                 \
                                    %(ers)s                 \
                                    %(ics)s                 \
                                    %(ecs)s                 \
                                    %(opt)s                 \
                      ''' % locals()
            rc, recs = run_cmd(arg_cmd)
        else:
            stdin_cmd = '''cat %(in_fqfn)s | %(pgm)s        \
                                    -o %(out_fqfn)s         \
                                    %(irs)s                 \
                                    %(ers)s                 \
                                    %(ics)s                 \
                                    %(ecs)s                 \
                                    %(opt)s                 \
                        ''' % locals()
            rc, recs = run_cmd(stdin_cmd)

        return rc, recs