projects
/
dbuscron
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
483c6ab
)
parse config dirs and files transparently
author
Konstantin Stepanov
<kstep@p-nut.info>
Tue, 21 Dec 2010 18:57:07 +0000
(20:57 +0200)
committer
Konstantin Stepanov
<kstep@p-nut.info>
Tue, 21 Dec 2010 18:57:07 +0000
(20:57 +0200)
dbuscron/parser.py
patch
|
blob
|
history
diff --git
a/dbuscron/parser.py
b/dbuscron/parser.py
index
f31d3ee
..
92b2708
100644
(file)
--- a/
dbuscron/parser.py
+++ b/
dbuscron/parser.py
@@
-44,7
+44,19
@@
class CrontabParserError(SyntaxError):
SyntaxError.__init__(self, msg)
-class CrontabParser(object):
+def CrontabParser(filename):
+ if os.path.isfile(filename):
+ parser_class = FileParser
+
+ elif os.path.isdir(filename):
+ parser_class = DirectoryParser
+
+ else:
+ raise SystemError("I can parse only directories or simple files.")
+
+ return parser_class(filename)
+
+class FileParser(object):
__fields_sep = re.compile(r'\s+')
__envvar_sep = re.compile(r'\s*=\s*')
__fields_chk = {