Sha256: 4a45594bd89b78ce4a4b47e120990432a2d4d3d519b6b0607ee8ce1eb5bced31

Contents?: true

Size: 915 Bytes

Versions: 1

Compression:

Stored size: 915 Bytes

Contents

unless defined? $__rq_executor__
  module RQ 
#{{{
    LIBDIR = File::dirname(File::expand_path(__FILE__)) + File::SEPARATOR unless
      defined? LIBDIR

    require LIBDIR + 'mainhelper'

    class  Executor < MainHelper
#{{{
    def execute
  #{{{
      set_q
      sql = @argv.join ' '
      if sql.empty? or not STDIN.tty?
        debug{ "reading sql from STDIN" }
        while((buf = STDIN.gets))
          buf.strip!
          buf.gsub! %r/#.*$/o, ''
          next if buf.empty?
          sql << "#{ buf } "
        end
      end
      @q.qdb.transaction_retries = 0
      tuples = @q.transaction{@q.execute sql}
      puts '---'
      fields = nil
      tuples.each do |tuple|
        puts '-'
        fields ||= tuple.fields
        fields.each{|f| puts "#{ f } : #{ tuple[f] }"}
      end
      tuples
  #}}}
    end
#}}}
    end # class Executor
#}}}
  end # module RQ
$__rq_executor__ = __FILE__ 
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rq-0.1.7 lib/rq-0.1.7/executor.rb