Source:
private ReadEndsForMarkDuplicates buildReadEnds(final SAMFileHeader header, final long index, final SAMRecord rec, final boolean useBarcodes) { final ReadEndsForMarkDuplicates ends; if (useBarcodes) { ends = new ReadEndsForMarkDuplicatesWithBarcodes(); } else { ends = new ReadEndsForMarkDuplicates(); } ends.read1ReferenceIndex = rec.getReferenceIndex(); ends.read1Coordinate = rec.getReadNegativeStrandFlag() ? rec.getUnclippedEnd() : rec.getUnclippedStart(); ends.orientation = rec.getReadNegativeStrandFlag() ? ReadEnds.R : ReadEnds.F; ends.read1IndexInFile = index; ends.score = DuplicateScoringStrategy.computeDuplicateScore(rec, this.DUPLICATE_SCORING_STRATEGY); if (rec.getReadPairedFlag() && !rec.getMateUnmappedFlag()) { ends.read2ReferenceIndex = rec.getMateReferenceIndex(); } ends.libraryId = libraryIdGenerator.getLibraryId(rec); if (this.opticalDuplicateFinder.addLocationInformation(rec.getReadName(), ends)) { ends.readGroup = 0; final String rg = (String) rec.getAttribute("RG"); final List<SAMReadGroupRecord> readGroups = header.getReadGroups(); if (rg != null && readGroups != null) { for (final SAMReadGroupRecord readGroup : readGroups) { if (readGroup.getReadGroupId().equals(rg)) break; else ends.readGroup++; } } } if (useBarcodes) { ((ReadEndsForMarkDuplicatesWithBarcodes) ends).barcode = getBarcodeValue(rec); if (rec.getFirstOfPairFlag()) { ((ReadEndsForMarkDuplicatesWithBarcodes) ends).readOneBarcode = getReadOneBarcodeValue(rec); } else { ((ReadEndsForMarkDuplicatesWithBarcodes) ends).readTwoBarcode = getReadTwoBarcodeValue(rec); } } return ends; }

Target:
private ReadEndsForMarkDuplicates buildReadEnds(final SAMFileHeader header, final long index, final SAMRecord rec, final boolean useBarcodes) { final ReadEndsForMarkDuplicates ends; if (useBarcodes) { ends = new ReadEndsForMarkDuplicatesWithBarcodes(); } else { ends = new ReadEndsForMarkDuplicates(); } ends.read1ReferenceIndex = rec.getReferenceIndex(); ends.read1Coordinate = rec.getReadNegativeStrandFlag() ? rec.getUnclippedEnd() : rec.getUnclippedStart(); ends.orientation = rec.getReadNegativeStrandFlag() ? ReadEnds.R : ReadEnds.F; ends.read1IndexInFile = index; ends.score = DuplicateScoringStrategy.computeDuplicateScore(rec, this.DUPLICATE_SCORING_STRATEGY); if (rec.getReadPairedFlag() && !rec.getMateUnmappedFlag()) { ends.read2ReferenceIndex = rec.getMateReferenceIndex(); } ends.libraryId = libraryIdGenerator.getLibraryId(rec); if (this.opticalDuplicateFinder.addLocationInformation(rec.getReadName(), ends)) { ends.readGroup = 0; final String rg = (String) rec.getAttribute("RG"); final List<SAMReadGroupRecord> readGroups = header.getReadGroups(); if (rg != null && readGroups != null) { for (final SAMReadGroupRecord readGroup : readGroups) { if (readGroup.getReadGroupId().equals(rg)) break; else ends.readGroup++; } } } if (useBarcodes) { final ReadEndsForMarkDuplicatesWithBarcodes endsWithBarcode = (ReadEndsForMarkDuplicatesWithBarcodes) ends; endsWithBarcode.barcode = getBarcodeValue(rec); if (rec.getFirstOfPairFlag()) { endsWithBarcode.readOneBarcode = getReadOneBarcodeValue(rec); } else { endsWithBarcode.readTwoBarcode = getReadTwoBarcodeValue(rec); } } return ends; }