/** This method will process each argument and assign new varibles */ public void processArgs(String[] args) { File file = null; Pattern pat = Pattern.compile("-[a-z]"); for (int i = 0; i < args.length; i++) { String lcArg = args[i].toLowerCase(); Matcher mat = pat.matcher(lcArg); if (mat.matches()) { char test = args[i].charAt(1); try { switch (test) { case 'f': file = new File(args[i + 1]); i++; break; case 'v': genomeVersion = args[i + 1]; i++; break; case 's': sumScores = true; break; case 't': threshold = Float.parseFloat(args[++i]); break; case 'h': printDocs(); System.exit(0); default: Misc.printExit("\nError, unknown option! " + mat.group()); } } catch (Exception e) { System.out.print("\nSorry, something doesn't look right with this parameter: -" + test); System.out.println(); System.exit(0); } } } if (file == null || file.exists() == false) Misc.printErrAndExit("Problem finding your bed files!\n"); // pull files File[][] tot = new File[3][]; tot[0] = IO.extractFiles(file, ".bed"); tot[1] = IO.extractFiles(file, ".bed.zip"); tot[2] = IO.extractFiles(file, ".bed.gz"); bedFiles = IO.collapseFileArray(tot); if (bedFiles == null || bedFiles.length == 0) Misc.printErrAndExit("Problem finding your xxx.bed(.zip/.gz OK) files!\n"); // genome version if (genomeVersion == null) Misc.printErrAndExit( "Please enter a genome version (e.g. H_sapiens_Mar_2006, see http://genome.ucsc.edu/FAQ/FAQreleases\n"); }
/** This method will process each argument and assign new varibles */ public void processArgs(String[] args) { Pattern pat = Pattern.compile("-[a-z]"); File dir = null; for (int i = 0; i < args.length; i++) { String lcArg = args[i].toLowerCase(); Matcher mat = pat.matcher(lcArg); if (mat.matches()) { char test = args[i].charAt(1); try { switch (test) { case 'f': dir = new File(args[i + 1]); i++; break; case 'v': genomeVersion = args[i + 1]; i++; break; case 's': strand = args[++i]; break; case 't': stairStep = true; break; case 'h': printDocs(); System.exit(0); default: Misc.printExit("\nError: unknown option! " + mat.group()); } } catch (Exception e) { Misc.printExit( "\nSorry, something doesn't look right with this parameter: -" + test + "\n"); } } } if (dir == null || dir.canRead() == false) Misc.printExit("\nError: cannot find or read your sgr file/ directory.\n"); File[][] tot = new File[3][]; tot[0] = IO.extractFiles(dir, ".sgr"); tot[1] = IO.extractFiles(dir, ".sgr.zip"); tot[2] = IO.extractFiles(dir, ".sgr.gz"); sgrFiles = IO.collapseFileArray(tot); if (sgrFiles == null || sgrFiles.length == 0) Misc.printExit("\nError: cannot find your xxx.sgr.zip file(s)"); if (genomeVersion == null) Misc.printExit( "\nError: you must supply a genome version. Goto http://genome.ucsc.edu/cgi-" + "bin/hgGateway load your organism to find the associated genome version.\n"); }
/** This method will process each argument and assign new variables */ public void processArgs(String[] args) { Pattern pat = Pattern.compile("-[a-z]"); File forExtraction = null; for (int i = 0; i < args.length; i++) { String lcArg = args[i].toLowerCase(); Matcher mat = pat.matcher(lcArg); if (mat.matches()) { char test = args[i].charAt(1); try { switch (test) { case 'v': forExtraction = new File(args[++i]); break; case 'm': minimumSSC = Float.parseFloat(args[++i]); break; case 'a': minimumCount = Integer.parseInt(args[++i]); break; case 'r': minimumAbsFractionChange = Double.parseDouble(args[++i]); break; case 'n': maximumNormalAltFraction = Double.parseDouble(args[++i]); break; default: Misc.printErrAndExit("\nProblem, unknown option! " + mat.group()); } } catch (Exception e) { Misc.printErrAndExit( "\nSorry, something doesn't look right with this parameter: -" + test + "\n"); } } } System.out.println( "\n" + IO.fetchUSeqVersion() + " Arguments: " + Misc.stringArrayToString(args, " ") + "\n"); // pull vcf files if (forExtraction == null || forExtraction.exists() == false) Misc.printErrAndExit( "\nError: please enter a path to a vcf file or directory containing such.\n"); File[][] tot = new File[3][]; tot[0] = IO.extractFiles(forExtraction, ".vcf"); tot[1] = IO.extractFiles(forExtraction, ".vcf.gz"); tot[2] = IO.extractFiles(forExtraction, ".vcf.zip"); vcfFiles = IO.collapseFileArray(tot); if (vcfFiles == null || vcfFiles.length == 0 || vcfFiles[0].canRead() == false) Misc.printExit("\nError: cannot find your xxx.vcf(.zip/.gz OK) file(s)!\n"); }
/** This method will process each argument and assign new variables */ public void processArgs(String[] args) { Pattern pat = Pattern.compile("-[a-z]"); File forExtraction = null; File ucscDir = null; for (int i = 0; i < args.length; i++) { String lcArg = args[i].toLowerCase(); Matcher mat = pat.matcher(lcArg); if (mat.matches()) { char test = args[i].charAt(1); try { switch (test) { case 'b': forExtraction = new File(args[++i]); break; case 'd': ucscDir = new File(args[++i]); break; case 'v': versionedGenome = args[++i]; break; case 'e': verbose = false; break; case 'f': forceConversion = true; break; case 'h': printDocs(); System.exit(0); break; default: USeqUtilities.printExit("\nProblem, unknown option! " + mat.group()); } } catch (Exception e) { USeqUtilities.printExit( "\nSorry, something doesn't look right with this parameter: -" + test + "\n"); } } } if (verbose) System.out.println( "\n" + IO.fetchUSeqVersion() + " Arguments: " + USeqUtilities.stringArrayToString(args, " ") + "\n"); // versioned genome? if (versionedGenome == null) USeqUtilities.printExit( "\nError: you must supply a genome version. Goto http://genome.ucsc.edu/cgi-" + "bin/hgGateway load your organism to find the associated genome version (e.g. H_sapiens_Mar_2006, H_sapiens_Feb_2009).\n"); // make files if (ucscDir == null || ucscDir.isDirectory() == false) USeqUtilities.printExit( "\nCannot find your directory containing the UCSC wig2BigWig and bed2BigBed apps -> " + ucscDir); bigWigToWig = new File(ucscDir, "bigWigToWig"); bigBedToBed = new File(ucscDir, "bigBedToBed"); // check files // if (bigWigToBedGraph.canExecute() == false) USeqUtilities.printExit("\nCannot find or execute // -> "+bigWigToBedGraph+"\n"); if (bigWigToWig.canExecute() == false) USeqUtilities.printExit("\nCannot find or execute -> " + bigWigToWig + "\n"); if (bigBedToBed.canExecute() == false) USeqUtilities.printExit("\nCannot find or execute -> " + bigBedToBed + "\n"); // pull ucsc files if (forExtraction == null || forExtraction.exists() == false) Misc.printExit( "\nError: please enter a bw or bb file or directory containing such to convert!\n"); File[][] tot = new File[2][]; tot[0] = USeqUtilities.fetchFilesRecursively(forExtraction, ".bw"); tot[1] = USeqUtilities.fetchFilesRecursively(forExtraction, ".bb"); ucscArchives = IO.collapseFileArray(tot); if (ucscArchives == null || ucscArchives.length == 0 || ucscArchives[0].canRead() == false) Misc.printExit("\nError: cannot find or read any xxx.bb or xxx.bw file(s)!\n"); }