erange version 4.0a dev release
[erange.git] / checkrmask.py
index 9f58983195902265c5981d720487a4283d1ca870..99d74a50cdc3faec378b17070862ad90da99a954 100755 (executable)
@@ -4,12 +4,14 @@ try:
 except:
     pass
 
-import sqlite3 as sqlite
-import sys, string, optparse
+import sys
+import string
+import optparse
 import os.path
-from commoncode import writeLog
+import sqlite3 as sqlite
+from commoncode import writeLog, getConfigParser, getConfigOption, getConfigIntOption
 
-versionString = "%prog: version 3.5"
+versionString = "checkrmask: version 3.6"
 print versionString
 
 
@@ -19,11 +21,7 @@ def main(argv=None):
 
     usage = "usage: python %prog dbfile infile outfile goodfile [--startField field] [--cache numPages] [--log logfile]"
 
-    parser = optparse.OptionParser(usage=usage)
-    parser.add_option("--cache", type="int", dest="cachePages")
-    parser.add_option("--startField", type="int", dest="startField")
-    parser.add_option("--log", dest="logfilename")
-    parser.set_defaults(cachePages=500000, startField=0, logfilename=None)
+    parser = makeParser(usage)
     (options, args) = parser.parse_args(argv[1:])
 
     if len(args) < 4:
@@ -38,6 +36,23 @@ def main(argv=None):
     checkrmask(dbfile, filename, outfile, goodfile, options.startField, options.cachePages, options.logfilename)
 
 
+def makeParser(usage=""):
+    parser = optparse.OptionParser(usage=usage)
+    parser.add_option("--cache", type="int", dest="cachePages")
+    parser.add_option("--startField", type="int", dest="startField")
+    parser.add_option("--log", dest="logfilename")
+
+    configParser = getConfigParser()
+    section = "checkrmask"
+    cachePages = getConfigIntOption(configParser, section, "cachePages", 500000)
+    startField = getConfigIntOption(configParser, section, "startField", 0)
+    logfilename = getConfigOption(configParser, section, "logfilename", None)
+
+    parser.set_defaults(cachePages=cachePages, startField=startField, logfilename=logfilename)
+
+    return parser
+
+
 def checkrmask(dbfile, filename, outFileName, goodFileName, startField=0, cachePages=500000, logfilename=None):
 
     outfile = open(outFileName, "w")