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


Java IOUtil.getFilesMatchingRegexp方法代码示例

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


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

示例1: MultiTileBclFileUtil

import htsjdk.samtools.util.IOUtil; //导入方法依赖的package包/类
MultiTileBclFileUtil(final File basecallLaneDir, final int lane) {
    // Since these file names do not contain lane number, first two args to ctor are the same.
    super("^(\\d{4}).bcl.bgzf$", ".bcl.bgzf", basecallLaneDir,
            new MultiTileBclFileFaker(), lane);
    this.basecallLaneDir = basecallLaneDir;
    bci = new File(basecallLaneDir, "s_" + lane + ".bci");
    // Do this once rather than when deciding if these files exist and again later.
    final File[] cycleFiles = IOUtil.getFilesMatchingRegexp(base, matchPattern);
    if (bci.exists()) {
        tileIndex = new TileIndex(bci);
        if (cycleFiles != null) {
            for (final File file : cycleFiles) {
                final String fileName = file.getName();
                final String cycleNum = fileName.substring(0, fileName.indexOf('.'));
                final IlluminaFileMap fileMap = new IlluminaFileMap();
                for(final Integer tile : tileIndex.getTiles()) {
                    fileMap.put(tile, file);
                }
                cycleFileMap.put(Integer.valueOf(cycleNum), fileMap);
            }
        }
    } else {
        tileIndex = null;
    }

}
 
开发者ID:broadinstitute,项目名称:picard,代码行数:27,代码来源:MultiTileBclFileUtil.java

示例2: MultiTileFileUtil

import htsjdk.samtools.util.IOUtil; //导入方法依赖的package包/类
MultiTileFileUtil(final String extension, final File base, final File bciDir, final FileFaker fileFaker,
                  final int lane) {
    super(false, extension, base, fileFaker, lane);
    bci = new File(bciDir, "s_" + lane + ".bci");
    if (bci.exists()) {
        tileIndex = new TileIndex(bci);
    } else {
        tileIndex = null;
    }
    final File[] filesMatchingRegexp = IOUtil.getFilesMatchingRegexp(base, matchPattern);
    if (filesMatchingRegexp == null || filesMatchingRegexp.length == 0) {
        dataFile = null;
    } else if (filesMatchingRegexp.length == 1) {
        dataFile = filesMatchingRegexp[0];
    } else {
        throw new PicardException("More than one filter file found in " + base.getAbsolutePath());
    }
}
 
开发者ID:broadinstitute,项目名称:picard,代码行数:19,代码来源:MultiTileFileUtil.java

示例3: fakeFiles

import htsjdk.samtools.util.IOUtil; //导入方法依赖的package包/类
@Override
public List<String> fakeFiles(final List<Integer> expectedTiles, final int[] expectedCycles,
                              final IlluminaFileUtil.SupportedIlluminaFormat format) {
    //we need to fake a bci file for the tile index
    final BciFileFaker bciFileFaker = new BciFileFaker();
    try {
        bciFileFaker.fakeBciFile(bci, expectedTiles);
        tileIndex = new TileIndex(bci);
        faker.fakeFile(base, expectedTiles, lane, extension);
        final File[] filesMatchingRegexp = IOUtil.getFilesMatchingRegexp(base, matchPattern);
        if (filesMatchingRegexp == null || filesMatchingRegexp.length == 0) {
            dataFile = null;
        } else if (filesMatchingRegexp.length == 1) {
            dataFile = filesMatchingRegexp[0];
        } else {
            throw new PicardException("More than one filter file found in " + base.getAbsolutePath());
        }
    } catch (final IOException e) {
        return Collections.singletonList("Could not create tile index file: " + bci.getAbsolutePath());
    }
    return tileIndex.verify(expectedTiles);
}
 
开发者ID:broadinstitute,项目名称:picard,代码行数:23,代码来源:MultiTileFileUtil.java

示例4: renderPhasingMetricsFilesFromBasecallingDirectory

import htsjdk.samtools.util.IOUtil; //导入方法依赖的package包/类
public static Map<Integer, File> renderPhasingMetricsFilesFromBasecallingDirectory(File illuminaRunDirectory) {
    File[] cycleDirs = IOUtil.getFilesMatchingRegexp(new File(illuminaRunDirectory, INTEROP_SUBDIRECTORY_NAME),
            IlluminaFileUtil.CYCLE_SUBDIRECTORY_PATTERN);

    Map<Integer, File> phasingMetrics = new HashMap<>();
    Arrays.asList(cycleDirs)
            .forEach(cycleDir -> {
                File[] filesMatchingRegexp = IOUtil.getFilesMatchingRegexp(
                        cycleDir, "EmpiricalPhasingMetricsOut.bin");
                if (filesMatchingRegexp.length > 0) {
                    phasingMetrics.put(PerTilePerCycleFileUtil.getCycleFromDir(cycleDir),
                            filesMatchingRegexp[0]);
                }
            });
    return phasingMetrics;
}
 
开发者ID:broadinstitute,项目名称:picard,代码行数:17,代码来源:TileMetricsUtil.java

示例5: hasCbcls

import htsjdk.samtools.util.IOUtil; //导入方法依赖的package包/类
public static boolean hasCbcls(final File basecallDir, final int lane) {
    final File laneDir = new File(basecallDir, IlluminaFileUtil.longLaneStr(lane));
    final File[] cycleDirs = IOUtil.getFilesMatchingRegexp(laneDir, IlluminaFileUtil.CYCLE_SUBDIRECTORY_PATTERN);

    // Either the lane or the cycle directory do not exist!
    if (cycleDirs == null) {
        return false;
    }

    //CBCLs
    final List<File> cbcls = new ArrayList<>();
    Arrays.asList(cycleDirs)
            .forEach(cycleDir -> cbcls.addAll(
                    Arrays.asList(IOUtil.getFilesMatchingRegexp(
                            cycleDir, "^" + IlluminaFileUtil.longLaneStr(lane) + "_(\\d{1,5}).cbcl$"))));

    return cbcls.size() > 0;
}
 
开发者ID:broadinstitute,项目名称:picard,代码行数:19,代码来源:IlluminaFileUtil.java

示例6: getPerTilePerCycleFiles

import htsjdk.samtools.util.IOUtil; //导入方法依赖的package包/类
/**
 * For the given tiles, populate a CycleIlluminaFileMap that contains all these tiles and will iterate through
 * all the files for these tiles in expectedBase
 * Side Effect: Assigns numCycles
 *
 * @return A CycleIlluminaFileMap with the listed (or all) tiles for at least expectedCycles number of cycles(or total available
 * cycles if expectedCycles is null)
 */
protected CycleIlluminaFileMap getPerTilePerCycleFiles() {
    final CycleIlluminaFileMap cycledMap = new CycleIlluminaFileMap();

    final File laneDir = base;
    final File[] tempCycleDirs;
    tempCycleDirs = IOUtil.getFilesMatchingRegexp(laneDir, IlluminaFileUtil.CYCLE_SUBDIRECTORY_PATTERN);
    if (tempCycleDirs == null || tempCycleDirs.length == 0) {
        return cycledMap;
    }

    for (final File tempCycleDir : tempCycleDirs) {
        detectedCycles.add(getCycleFromDir(tempCycleDir));
    }

    final Set<Integer> uniqueTiles = new HashSet<Integer>();

    for (final File cycleDir : tempCycleDirs) {
        final IlluminaFileMap fileMap = getTiledFiles(cycleDir, matchPattern);
        uniqueTiles.addAll(fileMap.keySet());
        cycledMap.put(getCycleFromDir(cycleDir), fileMap);
    }

    this.tiles = new ArrayList<>(uniqueTiles);
    return cycledMap;
}
 
开发者ID:broadinstitute,项目名称:picard,代码行数:34,代码来源:PerTilePerCycleFileUtil.java

示例7: getRunFile

import htsjdk.samtools.util.IOUtil; //导入方法依赖的package包/类
protected File getRunFile(final File baseDirectory, final Pattern pattern) {
    if (baseDirectory.exists()) {
        IOUtil.assertDirectoryIsReadable(baseDirectory);
        final File[] files = IOUtil.getFilesMatchingRegexp(baseDirectory, pattern);
        if (files.length == 1) {
            return files[0];
        }
    }
    return null;
}
 
开发者ID:broadinstitute,项目名称:picard,代码行数:11,代码来源:ParameterizedFileUtil.java

示例8: getTiledFiles

import htsjdk.samtools.util.IOUtil; //导入方法依赖的package包/类
/**
 * Return all files that match pattern of the given file type in the given base directory
 */
protected IlluminaFileMap getTiledFiles(final File baseDirectory, final Pattern pattern) {
    final IlluminaFileMap fileMap = new IlluminaFileMap();
    if (baseDirectory.exists()) {
        IOUtil.assertDirectoryIsReadable(baseDirectory);
        final File[] files = IOUtil.getFilesMatchingRegexp(baseDirectory, pattern);
        for (final File file : files) {
            if (!skipEmptyFiles || file.length() > 0) {
                fileMap.put(fileToTile(file.getName()), file);
            }
        }
    }

    return fileMap;
}
 
开发者ID:broadinstitute,项目名称:picard,代码行数:18,代码来源:ParameterizedFileUtil.java

示例9: getTiledFiles

import htsjdk.samtools.util.IOUtil; //导入方法依赖的package包/类
public static File[] getTiledFiles(final File baseDirectory, final Pattern pattern) {
    return IOUtil.getFilesMatchingRegexp(baseDirectory, pattern);
}
 
开发者ID:broadinstitute,项目名称:picard,代码行数:4,代码来源:NewIlluminaBasecallsConverter.java

示例10: testBarcodeMatching

import htsjdk.samtools.util.IOUtil; //导入方法依赖的package包/类
/**
 * 4 cases tested:
 * * exact match to ACAGTG
 * * inexact match within threshold to TGACCA
 * * inexact match not within threshold to TGACCA
 * * inexact match where the next match is too close to ACAGTG
 *
 * @throws Exception
 */
@Test
public void testBarcodeMatching() throws Exception {
    final int lane = 1;
    final int barcodePosition = 26;
    final MetricsFile<ExtractIlluminaBarcodes.BarcodeMetric, Integer> metricsFile = runIt(lane, "25T8B25T");

    ExtractIlluminaBarcodes.BarcodeMetric metricOne = null;
    ExtractIlluminaBarcodes.BarcodeMetric metricTwo = null;
    ExtractIlluminaBarcodes.BarcodeMetric metricNoMatch = null;
    for (final ExtractIlluminaBarcodes.BarcodeMetric metric : metricsFile.getMetrics()) {
        if (metric.BARCODE.equals(BARCODES[0])) {
            metricOne = metric;
        } else if (metric.BARCODE.equals(BARCODES[2])) {
            metricTwo = metric;
        } else if (metric.BARCODE.equals("NNNNNNNN")) {
            metricNoMatch = metric;
        }
    }
    Assert.assertEquals(metricOne.PERFECT_MATCHES, 5);
    Assert.assertEquals(metricOne.ONE_MISMATCH_MATCHES, 0);
    Assert.assertEquals(metricOne.PF_READS, 3);
    Assert.assertEquals(metricOne.READS, 5);

    // one inexact match
    Assert.assertEquals(metricTwo.READS, 4);
    Assert.assertEquals(metricTwo.ONE_MISMATCH_MATCHES, 0);

    Assert.assertEquals(metricNoMatch.READS, 140);
    Assert.assertEquals(metricNoMatch.PF_READS, 112);

    // Check the barcode files themselves
    final File[] barcodeFiles = IOUtil.getFilesMatchingRegexp(basecallsDir, "s_" + lane + "_\\d{4}_barcode.txt");
    Arrays.sort(barcodeFiles);

    final BasicInputParser barcodeParser = new BasicInputParser(true, barcodeFiles);

    // Exact match
    String[] illuminaFields = barcodeParser.next();
    Assert.assertEquals(illuminaFields[1], "Y");
    Assert.assertEquals(illuminaFields[2], "CAACTCTC");

    // Inexact match
    illuminaFields = barcodeParser.next();
    Assert.assertEquals(illuminaFields[1], "Y");
    Assert.assertEquals(illuminaFields[2], "ACAGGTAT");

    // Too many mismatches
    illuminaFields = barcodeParser.next();
    Assert.assertEquals(illuminaFields[1], "N");

    barcodeParser.close();

    // Tack on test of barcode-informed Illumina Basecall parsing
    final ReadStructure rs = new ReadStructure("25T8B25T");
    final IlluminaDataProviderFactory factory = new IlluminaDataProviderFactory(basecallsDir, lane, rs,
            new BclQualityEvaluationStrategy(BclQualityEvaluationStrategy.ILLUMINA_ALLEGED_MINIMUM_QUALITY),
            IlluminaDataType.BaseCalls, IlluminaDataType.QualityScores, IlluminaDataType.Barcodes);
    testParsing(factory, rs, metricOne, barcodePosition);
}
 
开发者ID:broadinstitute,项目名称:picard,代码行数:69,代码来源:ExtractIlluminaBarcodesTest.java


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