Mercurial > repos > rliterman > csp2
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 } |