X-Git-Url: http://woldlab.caltech.edu/gitweb/?p=erange.git;a=blobdiff_plain;f=rdsmetadata.py;fp=rdsmetadata.py;h=fc25dfdd024e56910e6f745df064e0b5bddfcccf;hp=1ac458b43540963680b8a9f0315c3648c49dc543;hb=0d3e3112fd04c2e6b44a25cacef1d591658ad181;hpb=5e4ae21098dba3d1edcf11e7279da0d84c3422e4 diff --git a/rdsmetadata.py b/rdsmetadata.py index 1ac458b..fc25dfd 100755 --- a/rdsmetadata.py +++ b/rdsmetadata.py @@ -10,9 +10,10 @@ except: import sys import optparse -from commoncode import readDataset +import ReadDataset +from commoncode import getConfigParser, getConfigBoolOption, getConfigIntOption -print "%prog: version 2.7" +print "rdsmetadata: version 2.8" def main(argv=None): @@ -21,19 +22,7 @@ def main(argv=None): usage = "usage: python %prog rdsfile [propertyName1::propertyValue1] ... [propertyNameN::propertyValueN] [options]" - parser = optparse.OptionParser(usage=usage) - parser.add_option("--defaultcache", type="int", dest="cacheVal") - parser.add_option("--index", action="store_true", dest="buildIndex") - parser.add_option("--dropindex", action="store_true", dest="dropIndex") - parser.add_option("--nocount", action="store_false", dest="doCount") - parser.add_option("--complexity", action="store_true", dest="doComplexity") - parser.add_option("--reset", action="store_true", dest="resetFlags") - parser.add_option("--initrna", action="store_true", dest="rnaDataType") - parser.add_option("--cache", type="int", dest="cachePages") - parser.set_defaults(cacheVal=0, buildIndex=False, dropIndex=False, doCount=True, - doComplexity=False, resetFlags=False, rnaDataType=False, - cachePages=-1) - + parser = makeParser(usage) (options, args) = parser.parse_args(argv[1:]) if len(args) < 1: @@ -55,6 +44,35 @@ def main(argv=None): options.resetFlags, options.rnaDataType, options.cachePages) +def makeParser(usage=""): + parser = optparse.OptionParser(usage=usage) + parser.add_option("--defaultcache", type="int", dest="cacheVal") + parser.add_option("--index", action="store_true", dest="buildIndex") + parser.add_option("--dropindex", action="store_true", dest="dropIndex") + parser.add_option("--nocount", action="store_false", dest="doCount") + parser.add_option("--complexity", action="store_true", dest="doComplexity") + parser.add_option("--reset", action="store_true", dest="resetFlags") + parser.add_option("--initrna", action="store_true", dest="rnaDataType") + parser.add_option("--cache", type="int", dest="cachePages") + + configParser = getConfigParser() + section = "rdsmetadata" + cacheVal = getConfigIntOption(configParser, section, "cacheVal", 0) + buildIndex = getConfigBoolOption(configParser, section, "buildIndex", False) + dropIndex = getConfigBoolOption(configParser, section, "dropIndex", False) + doCount = getConfigBoolOption(configParser, section, "doCount", True) + doComplexity = getConfigBoolOption(configParser, section, "doComplexity", False) + resetFlags = getConfigBoolOption(configParser, section, "resetFlags", False) + rnaDataType = getConfigBoolOption(configParser, section, "rnaDataType", False) + cachePages = getConfigIntOption(configParser, section, "cachePages", -1) + + parser.set_defaults(cacheVal=cacheVal, buildIndex=buildIndex, dropIndex=dropIndex, doCount=doCount, + doComplexity=doComplexity, resetFlags=resetFlags, rnaDataType=rnaDataType, + cachePages=cachePages) + + return parser + + def rdsmetadata(datafile, propertyList=[], cacheVal=0, buildIndex=False, dropIndex=False, doCount=True, doComplexity=False, resetFlags=False, rnaDataType=False, cachePages=-1): @@ -64,9 +82,9 @@ def rdsmetadata(datafile, propertyList=[], cacheVal=0, buildIndex=False, doCache = True if rnaDataType: - rds = readDataset(datafile, initialize=True, datasetType="RNA", verbose=True, cache=doCache) + rds = ReadDataset.ReadDataset(datafile, initialize=True, datasetType="RNA", verbose=True, cache=doCache) else: - rds = readDataset(datafile, verbose=True, reportCount=doCount, cache=doCache) + rds = ReadDataset.ReadDataset(datafile, verbose=True, reportCount=doCount, cache=doCache) if cachePages > rds.getDefaultCacheSize(): rds.setDBcache(cachePages)