-bp = Biopieces.new
-
-options = bp.parse(ARGV, casts)
-
-tmpdir = bp.mktmpdir
-infile = "#{tmpdir}/in.fna"
-outfile = "#{tmpdir}/out.prodigal"
-
-Fasta.open(infile, mode="w") do |fasta_io|
- bp.each_record do |record|
- bp.puts record
- fasta_io.puts record
+options = Biopieces.options_parse(ARGV, casts)
+
+tmpdir = Biopieces.mktmpdir
+infile = File.join(tmpdir, "in.fna")
+outfile = File.join(tmpdir, "out.prodigal")
+
+Biopieces.open(options[:stream_in], options[:stream_out]) do |input, output|
+ Fasta.open(infile, "w") do |fasta_io|
+ input.each_record do |record|
+ output.puts record
+
+ if record[:SEQ_NAME] and record[:SEQ]
+ seq = Seq.new_bp(record)
+ fasta_io.puts seq.to_fasta
+ end
+ end