Class Utils
- java.lang.Object
-
- fr.ens.biologie.genomique.eoulsan.modules.mapping.hadoop.hadoopbamcli.Utils
-
public final class Utils extends Object
-
-
Field Summary
Fields Modifier and Type Field Description static String
HEADERMERGER_INPUTS_PROPERTY
static String
WORK_FILENAME_PROPERTY
-
Constructor Summary
Constructors Constructor Description Utils()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static void
configureSampling(org.apache.hadoop.fs.Path workDir, String outName, org.apache.hadoop.conf.Configuration conf)
static void
correctSAMRecordForMerging(htsjdk.samtools.SAMRecord r, org.apache.hadoop.conf.Configuration conf)
Changes the given SAMRecord as appropriate for being placed in a file whose header is getSAMHeaderMerger(conf).getMergedHeader().static String
getArgv0()
static org.apache.hadoop.fs.Path
getMergeableWorkFile(org.apache.hadoop.fs.Path directory, String basePrefix, String basePostfix, org.apache.hadoop.mapreduce.TaskAttemptContext ctx, String extension)
Returns a name that mergeInto() will recognize as a file to be merged.static htsjdk.samtools.SamFileHeaderMerger
getSAMHeaderMerger(org.apache.hadoop.conf.Configuration conf)
Computes the merger of the SAM headers in the files listed in HEADERMERGER_INPUTS_PROPERTY.static String
getStringencyOptHelp()
static void
mergeInto(OutputStream out, org.apache.hadoop.fs.Path directory, String basePrefix, String basePostfix, org.apache.hadoop.conf.Configuration conf, String commandName)
Merges the files in the given directory that have names given by getMergeableWorkFile() into out.static void
mergeSAMInto(org.apache.hadoop.fs.Path out, org.apache.hadoop.fs.Path directory, String basePrefix, String basePostfix, org.seqdoop.hadoop_bam.SAMFormat format, org.apache.hadoop.conf.Configuration conf, String commandName)
Merges the files in the given directory that have names given by getMergeableWorkFile() into out in the given SAMFormat, using getSAMHeaderMerger().getMergedHeader() as the header.static void
printWrapped(PrintStream out, String str)
static void
printWrapped(PrintStream out, String str, int indent)
static void
printWrapped(PrintStream out, String str, int indent, int wrapAt)
static void
setArgv0Class(Class<?> cl)
static void
setHeaderMergerSortOrder(org.apache.hadoop.conf.Configuration conf, htsjdk.samtools.SAMFileHeader.SortOrder order)
-
-
-
Field Detail
-
WORK_FILENAME_PROPERTY
public static final String WORK_FILENAME_PROPERTY
- See Also:
- Constant Field Values
-
HEADERMERGER_INPUTS_PROPERTY
public static final String HEADERMERGER_INPUTS_PROPERTY
- See Also:
- Constant Field Values
-
-
Method Detail
-
printWrapped
public static void printWrapped(PrintStream out, String str)
-
printWrapped
public static void printWrapped(PrintStream out, String str, int indent)
-
printWrapped
public static void printWrapped(PrintStream out, String str, int indent, int wrapAt)
-
getArgv0
public static String getArgv0()
-
setArgv0Class
public static void setArgv0Class(Class<?> cl)
-
configureSampling
public static void configureSampling(org.apache.hadoop.fs.Path workDir, String outName, org.apache.hadoop.conf.Configuration conf) throws IOException
- Throws:
IOException
-
getMergeableWorkFile
public static org.apache.hadoop.fs.Path getMergeableWorkFile(org.apache.hadoop.fs.Path directory, String basePrefix, String basePostfix, org.apache.hadoop.mapreduce.TaskAttemptContext ctx, String extension)
Returns a name that mergeInto() will recognize as a file to be merged. The filename is the value of WORK_FILENAME_PROPERTY surrounded by basePrefix and basePostfix, followed by the part number and with the given extension.
-
mergeInto
public static void mergeInto(OutputStream out, org.apache.hadoop.fs.Path directory, String basePrefix, String basePostfix, org.apache.hadoop.conf.Configuration conf, String commandName) throws IOException
Merges the files in the given directory that have names given by getMergeableWorkFile() into out. Outputs progress reports if commandName is non-null.- Throws:
IOException
-
setHeaderMergerSortOrder
public static void setHeaderMergerSortOrder(org.apache.hadoop.conf.Configuration conf, htsjdk.samtools.SAMFileHeader.SortOrder order)
-
getSAMHeaderMerger
public static htsjdk.samtools.SamFileHeaderMerger getSAMHeaderMerger(org.apache.hadoop.conf.Configuration conf) throws IOException
Computes the merger of the SAM headers in the files listed in HEADERMERGER_INPUTS_PROPERTY. The sort order of the result is set according to the last call to setHeaderMergerSortOrder, or otherwise to "unsorted". The result is cached locally to prevent it from being recomputed too often.- Throws:
IOException
-
correctSAMRecordForMerging
public static void correctSAMRecordForMerging(htsjdk.samtools.SAMRecord r, org.apache.hadoop.conf.Configuration conf) throws IOException
Changes the given SAMRecord as appropriate for being placed in a file whose header is getSAMHeaderMerger(conf).getMergedHeader().- Throws:
IOException
-
mergeSAMInto
public static void mergeSAMInto(org.apache.hadoop.fs.Path out, org.apache.hadoop.fs.Path directory, String basePrefix, String basePostfix, org.seqdoop.hadoop_bam.SAMFormat format, org.apache.hadoop.conf.Configuration conf, String commandName) throws IOException
Merges the files in the given directory that have names given by getMergeableWorkFile() into out in the given SAMFormat, using getSAMHeaderMerger().getMergedHeader() as the header. Outputs progress reports if commandName is non-null.- Throws:
IOException
-
getStringencyOptHelp
public static String getStringencyOptHelp()
-
-