[med-svn] [Git][med-team/trimmomatic][upstream] New upstream version 0.39+dfsg

Andreas Tille gitlab at salsa.debian.org
Wed Jul 3 08:21:56 BST 2019



Andreas Tille pushed to branch upstream at Debian Med / trimmomatic


Commits:
38d18d35 by Andreas Tille at 2019-07-03T06:48:35Z
New upstream version 0.39+dfsg
- - - - -


3 changed files:

- build.xml
- src/org/usadellab/trimmomatic/trim/HeadCropTrimmer.java
- src/org/usadellab/trimmomatic/trim/TailCropTrimmer.java


Changes:

=====================================
build.xml
=====================================
@@ -1,5 +1,5 @@
 <project name="Trimmomatic" default="dist" basedir=".">
-	<property name="version" value="0.38"/>
+	<property name="version" value="0.39"/>
 	
 	<property name="src" location="src" />
 	<property name="lib" location="lib" />


=====================================
src/org/usadellab/trimmomatic/trim/HeadCropTrimmer.java
=====================================
@@ -2,24 +2,86 @@ package org.usadellab.trimmomatic.trim;
 
 import org.usadellab.trimmomatic.fastq.FastqRecord;
 
-public class HeadCropTrimmer extends AbstractSingleRecordTrimmer
+public class HeadCropTrimmer implements Trimmer
 {
-	private int bases;
-	private int maxLength=Integer.MAX_VALUE/2;
+	private int firstBases;
+	private int midBases;
+	private int lastBases;
+	
+	private int firstMaxLength=Integer.MAX_VALUE/2;
+	private int midMaxLength=Integer.MAX_VALUE/2;
+	private int lastMaxLength=Integer.MAX_VALUE/2;
 
 	public HeadCropTrimmer(String args)
 	{
 		String arg[]=args.split(":");
 	
-		bases=Integer.parseInt(arg[0]);
+		switch(arg.length)
+			{
+			case 1:
+				firstBases=midBases=lastBases=Integer.parseInt(arg[0]);
+				break;
+				
+			case 2:
+				firstBases=midBases=lastBases=Integer.parseInt(arg[0]);
+				firstMaxLength=midMaxLength=lastMaxLength=Integer.parseInt(arg[1]);
+				break;
+				
+			case 4:
+				firstBases=midBases=Integer.parseInt(arg[0]);
+				firstMaxLength=midMaxLength=Integer.parseInt(arg[1]);
+				lastBases=Integer.parseInt(arg[2]);
+				lastMaxLength=Integer.parseInt(arg[3]);
+				break;
+				
+			case 6:
+				firstBases=Integer.parseInt(arg[0]);
+				firstMaxLength=Integer.parseInt(arg[1]);
+				midBases=Integer.parseInt(arg[2]);
+				midMaxLength=Integer.parseInt(arg[3]);
+				lastBases=Integer.parseInt(arg[4]);
+				lastMaxLength=Integer.parseInt(arg[5]);
+				break;
+
+			default:
+				
+			}
 		
-		if(arg.length>1)
-			maxLength=Integer.parseInt(arg[1]);
 			
 	}
 
 	@Override
-	public FastqRecord processRecord(FastqRecord in)
+	public FastqRecord[] processRecords(FastqRecord[] in) {
+		
+		if(in==null)
+			return null; 
+
+		FastqRecord out[]=new FastqRecord[in.length];
+		
+		int lastRecord=in.length-1;
+		
+		if(in.length>0)
+			{
+			if(in[0]!=null)
+				out[0]=processRecord(in[0], firstBases, firstMaxLength);
+			}	
+		
+		for(int i=1;i<lastRecord;i++)
+			{
+			if(in[i]!=null)
+				out[i]=processRecord(in[i], midBases, midMaxLength);
+			}
+		
+		if(lastRecord>0)
+			{
+			if(in[lastRecord]!=null)
+				out[lastRecord]=processRecord(in[lastRecord], lastBases, lastMaxLength);
+			}
+			
+		return out;
+	}
+
+	private FastqRecord processRecord(FastqRecord in, int bases, int maxLength)
 	{
 		int len=in.getSequence().length();
 		


=====================================
src/org/usadellab/trimmomatic/trim/TailCropTrimmer.java
=====================================
@@ -2,44 +2,85 @@ package org.usadellab.trimmomatic.trim;
 
 import org.usadellab.trimmomatic.fastq.FastqRecord;
 
-public class TailCropTrimmer extends AbstractSingleRecordTrimmer
+public class TailCropTrimmer implements Trimmer
 {
-	private int bases;
-	private int maxLength=Integer.MAX_VALUE/2;
-
+	private int firstBases;
+	private int midBases;
+	private int lastBases;
+	
+	private int firstMaxLength=Integer.MAX_VALUE/2;
+	private int midMaxLength=Integer.MAX_VALUE/2;
+	private int lastMaxLength=Integer.MAX_VALUE/2;
+	
 	public TailCropTrimmer(String args)
 	{
 		String arg[]=args.split(":");
-	
-		bases=Integer.parseInt(arg[0]);
 		
-		if(arg.length>1)
-			maxLength=Integer.parseInt(arg[1]);
+		switch(arg.length)
+			{
+			case 1:
+				firstBases=midBases=lastBases=Integer.parseInt(arg[0]);
+				break;
+				
+			case 2:
+				firstBases=midBases=lastBases=Integer.parseInt(arg[0]);
+				firstMaxLength=midMaxLength=lastMaxLength=Integer.parseInt(arg[1]);
+				break;
+				
+			case 4:
+				firstBases=midBases=Integer.parseInt(arg[0]);
+				firstMaxLength=midMaxLength=Integer.parseInt(arg[1]);
+				lastBases=Integer.parseInt(arg[2]);
+				lastMaxLength=Integer.parseInt(arg[3]);
+				break;
+				
+			case 6:
+				firstBases=Integer.parseInt(arg[0]);
+				firstMaxLength=Integer.parseInt(arg[1]);
+				midBases=Integer.parseInt(arg[2]);
+				midMaxLength=Integer.parseInt(arg[3]);
+				lastBases=Integer.parseInt(arg[4]);
+				lastMaxLength=Integer.parseInt(arg[5]);
+				break;
+
+			default:
+				
+			}
 	}
     
         
-/*
- 	@Override
-	public FastqRecord[] processRecords(FastqRecord[] in)
-	{
+	@Override
+	public FastqRecord[] processRecords(FastqRecord[] in) {
+		
 		if(in==null)
 			return null; 
 
 		FastqRecord out[]=new FastqRecord[in.length];
 		
-		for(int i=0;i<in.length;i++)
+		int lastRecord=in.length-1;
+		
+		if(in.length>0)
+			{
+			if(in[0]!=null)
+				out[0]=processRecord(in[0], firstBases, firstMaxLength);
+			}	
+		
+		for(int i=1;i<lastRecord;i++)
 			{
 			if(in[i]!=null)
-				out[i]=processRecord(in[i]);
+				out[i]=processRecord(in[i], midBases, midMaxLength);
 			}
-	
+		
+		if(lastRecord>0)
+			{
+                        if(in[lastRecord]!=null)
+				out[lastRecord]=processRecord(in[lastRecord], lastBases, lastMaxLength);
+			}	
+			
 		return out;
 	}
- */
-        
-        
-	@Override
-	public FastqRecord processRecord(FastqRecord in)
+
+	private FastqRecord processRecord(FastqRecord in, int bases, int maxLength)
 	{
 		int len=in.getSequence().length();
 	



View it on GitLab: https://salsa.debian.org/med-team/trimmomatic/commit/38d18d351ed1668d573f4b9fc5b9b688c3532acb

-- 
View it on GitLab: https://salsa.debian.org/med-team/trimmomatic/commit/38d18d351ed1668d573f4b9fc5b9b688c3532acb
You're receiving this email because of your account on salsa.debian.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/debian-med-commit/attachments/20190703/80865ca9/attachment-0001.html>


More information about the debian-med-commit mailing list