From b4105be21e967f79d819749c44eff6ed4311f65d Mon Sep 17 00:00:00 2001 From: Aldo Cortesi Date: Sat, 28 Apr 2012 12:42:03 +1200 Subject: Initial checkin. --- libpathod/utils.py | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 libpathod/utils.py (limited to 'libpathod/utils.py') diff --git a/libpathod/utils.py b/libpathod/utils.py new file mode 100644 index 00000000..104ee148 --- /dev/null +++ b/libpathod/utils.py @@ -0,0 +1,31 @@ +import copy, os + +class Data: + def __init__(self, name): + m = __import__(name) + dirname, _ = os.path.split(m.__file__) + self.dirname = os.path.abspath(dirname) + + def path(self, path): + """ + Returns a path to the package data housed at 'path' under this + module.Path can be a path to a file, or to a directory. + + This function will raise ValueError if the path does not exist. + """ + fullpath = os.path.join(self.dirname, path) + if not os.path.exists(fullpath): + raise ValueError, "dataPath: %s does not exist."%fullpath + return fullpath + + def read(self, path): + """ + Returns a path to the package data housed at 'path' under this + module.Path can be a path to a file, or to a directory. + + This function will raise ValueError if the path does not exist. + """ + p = self.path(path) + return open(p).read() + +data = Data(__name__) -- cgit v1.2.3