annotate CSP2/CSP2_env/env-d9b9114564458d9d-741b3de822f2aaca6c6caa4325c4afce/opt/bbmap-39.01-1/current/sketch/AlignmentJob.java @ 68:5028fdace37b

planemo upload commit 2e9511a184a1ca667c7be0c6321a36dc4e3d116d
author jpayne
date Tue, 18 Mar 2025 16:23:26 -0400
parents
children
rev   line source
jpayne@68 1 package sketch;
jpayne@68 2
jpayne@68 3 import java.util.concurrent.ArrayBlockingQueue;
jpayne@68 4
jpayne@68 5 public class AlignmentJob {
jpayne@68 6
jpayne@68 7 AlignmentJob(Comparison c_, ArrayBlockingQueue<Comparison> dest_){
jpayne@68 8 c=c_;
jpayne@68 9 dest=dest_;
jpayne@68 10 }
jpayne@68 11
jpayne@68 12 void doWork(){
jpayne@68 13 assert(!isPoison());
jpayne@68 14 try {
jpayne@68 15 c.ssuIdentity();
jpayne@68 16 }catch (Throwable t){
jpayne@68 17 t.printStackTrace();
jpayne@68 18 }
jpayne@68 19 put();
jpayne@68 20 }
jpayne@68 21
jpayne@68 22 private void put(){
jpayne@68 23 boolean success=false;
jpayne@68 24 while(!success){
jpayne@68 25 try {
jpayne@68 26 dest.put(c);
jpayne@68 27 success=true;
jpayne@68 28 } catch (InterruptedException e) {
jpayne@68 29 // TODO Auto-generated catch block
jpayne@68 30 e.printStackTrace();
jpayne@68 31 }
jpayne@68 32 }
jpayne@68 33 }
jpayne@68 34
jpayne@68 35 final boolean isPoison(){return c==null;}
jpayne@68 36
jpayne@68 37 final Comparison c;
jpayne@68 38 final ArrayBlockingQueue<Comparison> dest;
jpayne@68 39
jpayne@68 40 }