当前位置: 首页>>代码示例>>Java>>正文


Java BucketUtils.createFile方法代码示例

本文整理汇总了Java中org.broadinstitute.hellbender.utils.gcs.BucketUtils.createFile方法的典型用法代码示例。如果您正苦于以下问题:Java BucketUtils.createFile方法的具体用法?Java BucketUtils.createFile怎么用?Java BucketUtils.createFile使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.broadinstitute.hellbender.utils.gcs.BucketUtils的用法示例。


在下文中一共展示了BucketUtils.createFile方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: writeMissingReferenceAccessions

import org.broadinstitute.hellbender.utils.gcs.BucketUtils; //导入方法依赖的package包/类
/**
 * Writes accessions contained in a SAM header that do not exist in the taxonomy database
 */
public static void writeMissingReferenceAccessions(final String path, final SAMFileHeader header, final PSTaxonomyDatabase taxDB,
                                                   final Logger logger) {
    if (header != null && header.getSequenceDictionary() != null && header.getSequenceDictionary().getSequences() != null) {
        final Set<String> unknownSequences = header.getSequenceDictionary().getSequences().stream()
                .map(SAMSequenceRecord::getSequenceName)
                .filter(name -> !taxDB.accessionToTaxId.containsKey(name))
                .collect(Collectors.toSet());
        try (final PrintStream file = new PrintStream(BucketUtils.createFile(path))) {
            unknownSequences.stream().forEach(file::print);
            if (file.checkError()) {
                logger.warn("Error writing to header warnings file");
            }
        }
    }

}
 
开发者ID:broadinstitute,项目名称:gatk,代码行数:20,代码来源:PSScorer.java

示例2: writeScoresFile

import org.broadinstitute.hellbender.utils.gcs.BucketUtils; //导入方法依赖的package包/类
/**
 * Output a tab-delimited table of taxonomic scores
 */
public static void writeScoresFile(final Map<Integer, PSPathogenTaxonScore> scores,
                                   final PSTree tree, final String filePath) {
    final String header = "tax_id\ttaxonomy\ttype\tname\t" + PSPathogenTaxonScore.outputHeader;
    try (final PrintStream printStream = new PrintStream(BucketUtils.createFile(filePath))) {
        printStream.println(header);
        for (final int key : scores.keySet()) {
            final String name = tree.getNameOf(key);
            final String rank = tree.getRankOf(key);
            final List<String> path = tree.getPathOf(key).stream().map(tree::getNameOf).collect(Collectors.toList());
            Collections.reverse(path);
            final String taxonomy = String.join("|", path);
            final String line = key + "\t" + taxonomy + "\t" + rank + "\t" + name + "\t" + scores.get(key).toString(tree);
            printStream.println(line.replace(" ", "_"));
        }
        if (printStream.checkError()) {
            throw new UserException.CouldNotCreateOutputFile(filePath, new IOException());
        }
    }
}
 
开发者ID:broadinstitute,项目名称:gatk,代码行数:23,代码来源:PSScorer.java

示例3: runTool

import org.broadinstitute.hellbender.utils.gcs.BucketUtils; //导入方法依赖的package包/类
@Override
protected void runTool( JavaSparkContext ctx ) {
    if (joinStrategy == JoinStrategy.BROADCAST && ! getReference().isCompatibleWithSparkBroadcast()){
        throw new UserException.Require2BitReferenceForBroadcast();
    }

    if (joinStrategy == JoinStrategy.OVERLAPS_PARTITIONER && getHeaderForReads().getSortOrder() != SAMFileHeader.SortOrder.coordinate) {
        throw new UserException.BadInput("Reads must be coordinate sorted when using the overlaps partitioner join strategy.");
    }

    JavaRDD<GATKRead> initialReads = getReads();
    VariantsSparkSource variantsSparkSource = new VariantsSparkSource(ctx);
    JavaRDD<GATKVariant> bqsrKnownVariants = variantsSparkSource.getParallelVariants(knownVariants, getIntervals());

    // TODO: Look into broadcasting the reference to all of the workers. This would make AddContextDataToReadSpark
    // TODO: and ApplyBQSRStub simpler (#855).
    JavaPairRDD<GATKRead, ReadContextData> rddReadContext = AddContextDataToReadSpark.add(ctx, initialReads, getReference(), bqsrKnownVariants, knownVariants, joinStrategy, getHeaderForReads().getSequenceDictionary(), readShardSize, readShardPadding);

    // TODO: broadcast the reads header?
    final RecalibrationReport bqsrReport = BaseRecalibratorSparkFn.apply(rddReadContext, getHeaderForReads(), getReferenceSequenceDictionary(), bqsrArgs);

    try ( final PrintStream reportStream = new PrintStream(BucketUtils.createFile(outputTablesPath)) ) {
        RecalUtils.outputRecalibrationReport(reportStream, bqsrArgs, bqsrReport.getQuantizationInfo(), bqsrReport.getRecalibrationTables(), bqsrReport.getCovariates());
    }
}
 
开发者ID:broadinstitute,项目名称:gatk,代码行数:26,代码来源:BaseRecalibratorSpark.java

示例4: processElement

import org.broadinstitute.hellbender.utils.gcs.BucketUtils; //导入方法依赖的package包/类
@Override
public void processElement(ProcessContext c) throws Exception {
    String dest = c.element();
    logger.info("Saving to " + dest);
    Iterable<GATKRead> reads = c.sideInput(iterableView);
    OutputStream outputStream = BucketUtils.createFile(dest, c.getPipelineOptions());
    try (SAMFileWriter writer = new SAMFileWriterFactory().makeBAMWriter(header, false, outputStream)) {
        for (GATKRead r : reads) {
            final SAMRecord sr = r.convertToSAMRecord(header);
            writer.addAlignment(sr);
        }
    }
}
 
开发者ID:broadinstitute,项目名称:gatk-dataflow,代码行数:14,代码来源:SmallBamWriter.java

示例5: saveMetrics

import org.broadinstitute.hellbender.utils.gcs.BucketUtils; //导入方法依赖的package包/类
/**
 * Write a {@link MetricsFile} to the given path, can be any destination supported by {@link BucketUtils#createFile(String)}
 * @param metricsFile a {@link MetricsFile} object to write to disk
 * @param metricsOutputPath the path (or uri) to write the metrics to
 */
public static void saveMetrics(final MetricsFile<?, ?> metricsFile, String metricsOutputPath) {
    try(PrintWriter out = new PrintWriter(BucketUtils.createFile(metricsOutputPath))) {
        metricsFile.write(out);
    } catch (SAMException e ){
        throw new UserException.CouldNotCreateOutputFile("Could not write metrics to file: " + metricsOutputPath, e);
    }
}
 
开发者ID:broadinstitute,项目名称:gatk,代码行数:13,代码来源:MetricsUtils.java

示例6: saveTextualReport

import org.broadinstitute.hellbender.utils.gcs.BucketUtils; //导入方法依赖的package包/类
public static void saveTextualReport(String output, SAMFileHeader header, RecalibrationTables rt, RecalibrationArgumentCollection recalArgs) throws IOException {
    OutputStream oStream = BucketUtils.createFile(output);
    QuantizationInfo qi = new QuantizationInfo(rt, recalArgs.QUANTIZING_LEVELS);
    if (recalArgs.FORCE_PLATFORM != null) {
        recalArgs.DEFAULT_PLATFORM = recalArgs.FORCE_PLATFORM;
    }
    StandardCovariateList covariates = new StandardCovariateList(recalArgs, header);
    try ( PrintStream reportStream = new PrintStream(oStream) ) {
        RecalUtils.outputRecalibrationReport(reportStream, recalArgs, qi, rt, covariates);
    }
}
 
开发者ID:broadinstitute,项目名称:gatk,代码行数:12,代码来源:BaseRecalibratorEngineSparkWrapper.java

示例7: writeFastqFile

import org.broadinstitute.hellbender.utils.gcs.BucketUtils; //导入方法依赖的package包/类
/** Write a list of FASTQ records into a file. */
public static void writeFastqFile(final String fileName, final Iterator<FastqRead> fastqReadItr ) {
    try ( final OutputStream writer =
                  new BufferedOutputStream(BucketUtils.createFile(fileName)) ) {
        writeFastqStream(writer, fastqReadItr);
    } catch ( final IOException ioe ) {
        throw new GATKException("Can't write "+fileName, ioe);
    }
}
 
开发者ID:broadinstitute,项目名称:gatk,代码行数:10,代码来源:SVFastqUtils.java

示例8: writeVariants

import org.broadinstitute.hellbender.utils.gcs.BucketUtils; //导入方法依赖的package包/类
private static void writeVariants(final String fileName, final List<VariantContext> variantsArrayList,
                                  final SAMSequenceDictionary referenceSequenceDictionary) {
    try (final OutputStream outputStream
                 = new BufferedOutputStream(BucketUtils.createFile(fileName))) {

        final VariantContextWriter vcfWriter = getVariantContextWriter(outputStream, referenceSequenceDictionary);

        vcfWriter.writeHeader(getVcfHeader(referenceSequenceDictionary));
        variantsArrayList.forEach(vcfWriter::add);
        vcfWriter.close();

    } catch (final IOException e) {
        throw new GATKException("Could not create output file", e);
    }
}
 
开发者ID:broadinstitute,项目名称:gatk,代码行数:16,代码来源:SVVCFWriter.java

示例9: writeKmersFile

import org.broadinstitute.hellbender.utils.gcs.BucketUtils; //导入方法依赖的package包/类
/** Write kmers to file. */
public static <KType extends SVKmer> void writeKmersFile(final String kmersFilePath, final int kSize,
                                                         final Collection<KType> kmers) {
    try ( final Writer writer =
                  new BufferedWriter(new OutputStreamWriter(BucketUtils.createFile(kmersFilePath))) ) {
        for ( final KType kmer : kmers ) {
            writer.write(kmer.toString(kSize));
            writer.write('\n');
        }
    }
    catch ( final IOException ioe ) {
        throw new GATKException("Unable to write kmers to " + kmersFilePath, ioe);
    }
}
 
开发者ID:broadinstitute,项目名称:gatk,代码行数:15,代码来源:SVFileUtils.java

示例10: writeIntervalsFile

import org.broadinstitute.hellbender.utils.gcs.BucketUtils; //导入方法依赖的package包/类
/** Write intervals to a file. */
public static void writeIntervalsFile( final String intervalsFilePath,
                                       final Collection<SVInterval> intervals, final List<String> contigNames ) {
    try (final OutputStreamWriter writer = new OutputStreamWriter(new BufferedOutputStream(
            BucketUtils.createFile(intervalsFilePath)))) {
        for (final SVInterval interval : intervals) {
            final String seqName = contigNames.get(interval.getContig());
            writer.write(seqName + "\t" + interval.getStart() + "\t" + interval.getEnd() + "\n");
        }
    } catch (final IOException ioe) {
        throw new GATKException("Can't write intervals file " + intervalsFilePath, ioe);
    }
}
 
开发者ID:broadinstitute,项目名称:gatk,代码行数:14,代码来源:SVFileUtils.java

示例11: apply

import org.broadinstitute.hellbender.utils.gcs.BucketUtils; //导入方法依赖的package包/类
@Override
public AlignedAssemblyOrExcuse apply( final Tuple2<Integer, List<SVFastqUtils.FastqRead>> intervalAndReads ) {
    final int intervalID = intervalAndReads._1();
    final List<SVFastqUtils.FastqRead> readsList = intervalAndReads._2();

    final int fastqSize = readsList.stream().mapToInt(FastqRead -> FastqRead.getBases().length).sum();
    if (fastqSize > maxFastqSize) {
        return new AlignedAssemblyOrExcuse(intervalID, "no assembly -- too big (" + fastqSize + " bytes).");
    }

    if ( fastqDir != null ) {
        final String fastqName = String.format("%s/%s.fastq", fastqDir, AlignedAssemblyOrExcuse.formatAssemblyID(intervalID));
        final ArrayList<SVFastqUtils.FastqRead> sortedReads = new ArrayList<>(readsList);
        sortedReads.sort(Comparator.comparing(SVFastqUtils.FastqRead::getHeader));
        SVFastqUtils.writeFastqFile(fastqName, sortedReads.iterator());
    }
    final long timeStart = System.currentTimeMillis();
    final FermiLiteAssembly assembly = new FermiLiteAssembler().createAssembly(readsList);
    final int secondsInAssembly = (int)((System.currentTimeMillis() - timeStart + 500)/1000);
    if ( fastqDir != null && writeGFAs ) {
        final String gfaName =  String.format("%s/%s.gfa",fastqDir, AlignedAssemblyOrExcuse.formatAssemblyID(intervalID));
        try ( final OutputStream os = BucketUtils.createFile(gfaName) ) {
            assembly.writeGFA(os);
        }
        catch ( final IOException ioe ) {
            throw new GATKException("Can't write "+gfaName, ioe);
        }
    }
    final List<byte[]> tigSeqs =
            assembly.getContigs().stream()
                    .map(FermiLiteAssembly.Contig::getSequence)
                    .collect(SVUtils.arrayListCollector(assembly.getNContigs()));
    try ( final BwaMemAligner aligner = new BwaMemAligner(BwaMemIndexCache.getInstance(alignerIndexFile)) ) {
        aligner.setIntraCtgOptions();
        final List<List<BwaMemAlignment>> alignments = aligner.alignSeqs(tigSeqs);
        return new AlignedAssemblyOrExcuse(intervalID, assembly, secondsInAssembly, alignments);
    }
}
 
开发者ID:broadinstitute,项目名称:gatk,代码行数:39,代码来源:FermiLiteAssemblyHandler.java

示例12: writeQNames

import org.broadinstitute.hellbender.utils.gcs.BucketUtils; //导入方法依赖的package包/类
/**
 * write template names and interval IDs to a file.
 */
public static void writeQNames( final String qNameFile,
                                final Iterable<QNameAndInterval> qNames ) {
    try ( final OutputStreamWriter writer =
                  new OutputStreamWriter(new BufferedOutputStream(BucketUtils.createFile(qNameFile))) ) {
        for ( final QNameAndInterval qnameAndInterval : qNames ) {
            writer.write(qnameAndInterval.toString() + "\n");
        }
    } catch ( final IOException ioe ) {
        throw new GATKException("Can't write qname intervals file " + qNameFile, ioe);
    }
}
 
开发者ID:broadinstitute,项目名称:gatk,代码行数:15,代码来源:QNameAndInterval.java

示例13: readChunkToHdfs

import org.broadinstitute.hellbender.utils.gcs.BucketUtils; //导入方法依赖的package包/类
private static final Tuple2<Integer, String> readChunkToHdfs(final String inputGCSPathFinal, final long chunkSize, final Integer chunkNum, final String outputDirectory) {
    final Path gcsPath = IOUtils.getPath(inputGCSPathFinal);
    final String basename = gcsPath.getName(gcsPath.getNameCount() - 1).toString();
    org.apache.hadoop.fs.Path outputPath = new org.apache.hadoop.fs.Path(outputDirectory);
    final String chunkPath = outputPath + "/" + basename + ".chunk." + chunkNum;

    try (SeekableByteChannel channel = Files.newByteChannel(gcsPath);
         final OutputStream outputStream = new BufferedOutputStream(BucketUtils.createFile(chunkPath))){

        final long start = chunkSize * (long) chunkNum;
        channel.position(start);
        ByteBuffer byteBuffer = ByteBuffer.allocateDirect((int) Math.min(SIXTY_FOUR_MIB, chunkSize));
        long bytesRead = 0;
        while(channel.read(byteBuffer) > 0) {
            byteBuffer.flip();
            while (byteBuffer.hasRemaining() && bytesRead < chunkSize) {
                byte b = byteBuffer.get();
                outputStream.write(b);
                bytesRead++;
            }
            if (bytesRead == chunkSize) {
                break;
            }
            if (bytesRead > chunkSize) {
                throw new GATKException("Encountered an unknown error condition and read too many bytes; output file may be corrupt");
            }
            byteBuffer.clear();
        }
    } catch (IOException e) {
        throw new GATKException(e.getMessage() + "; inputGCSPathFinal = " + inputGCSPathFinal, e);
    }
    return new Tuple2<>(chunkNum, chunkPath);
}
 
开发者ID:broadinstitute,项目名称:gatk,代码行数:34,代码来源:ParallelCopyGCSDirectoryIntoHDFSSpark.java

示例14: runTool

import org.broadinstitute.hellbender.utils.gcs.BucketUtils; //导入方法依赖的package包/类
@Override
protected void runTool(final JavaSparkContext ctx) {
    final JavaRDD<GATKRead> reads = getReads();

    final FlagStatus result = reads.aggregate(new FlagStatus(), FlagStatus::add, FlagStatus::merge);
    System.out.println(result);

    if(out != null ) {
        try ( final PrintStream ps = new PrintStream(BucketUtils.createFile(out)) ) {
            ps.print(result);
        }
    }
}
 
开发者ID:broadinstitute,项目名称:gatk,代码行数:14,代码来源:FlagStatSpark.java

示例15: runTool

import org.broadinstitute.hellbender.utils.gcs.BucketUtils; //导入方法依赖的package包/类
@Override
protected void runTool(final JavaSparkContext ctx) {
    final VariantsSparkSource vss = new VariantsSparkSource(ctx);
    final JavaRDD<VariantContext> variants = vss.getParallelVariantContexts(input, getIntervals());

    final long count = variants.count();
    System.out.println(count);

    if( out != null) {
        try (final PrintStream ps = new PrintStream(BucketUtils.createFile(out))) {
            ps.print(count);
        }
    }
}
 
开发者ID:broadinstitute,项目名称:gatk,代码行数:15,代码来源:CountVariantsSpark.java


注:本文中的org.broadinstitute.hellbender.utils.gcs.BucketUtils.createFile方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。