Beispiel #1
0
    def setup_docs(self):
        """
        Processes args which may be doc objects or filenames with wildcards.
        """
        for arg in self.args:
            self.log.debug("Processing arg %s" % arg)
            if isinstance(arg, dexy.doc.Doc) or isinstance(arg, dexy.doc.PatternDoc):
                doc = arg

            elif isinstance(arg, list):
                if not isinstance(arg[0], basestring):
                    raise Exception("First arg %s should be a string" % arg[0])
                if not isinstance(arg[1], dict):
                    raise Exception("Second arg %s should be a dict" % arg[1])

                if not "*" in arg[0]:
                    doc = dexy.doc.Doc(arg[0], **arg[1])
                else:
                    # This is a pattern doc or real doc TODO better way to verify?
                    doc = dexy.doc.PatternDoc(arg[0], **arg[1])

            elif isinstance(arg, basestring):
                doc = dexy.doc.PatternDoc(arg)

            else:
                raise Exception("unknown arg type %s for arg %s" % (arg.__class__.__name__, arg))

            doc.wrapper = self
            doc.setup()

            self.docs.append(doc)
Beispiel #2
0
    def add_doc(self, doc):
        self.log.debug("Adding additional doc %s" % doc.key)
        doc.created_by_doc = self.hashstring
        doc.runner = self.runner
        doc.setup()

        for task in (doc,):
            for t in task:
                t()

        self.doc.children.append(doc)
Beispiel #3
0
    def add_doc(self, doc):
        self.log.debug("Adding additional doc %s" % doc.key)
        doc.created_by_doc = self.hashstring
        doc.runner = self.runner
        doc.setup()

        for task in (doc, ):
            for t in task:
                t()

        self.doc.children.append(doc)