Ejemplo n.º 1
0
 def __init__(self, conn, suite):
     self.conn = conn
     self.cursor = StatementCursor(self.conn, name='_Trait_')
     Element.__init__(self, 'trait')
     self.desc_element = TextElement('description', None)
     self.parent_element = Element('parents')
     self.pkg_element = Element('packages')
     self.env_element = Element('environ')
     self.templ_element = Element('templates')
     self.scripts_element = Element('scripts')
     self.debconf_element = DebConfigurationElement()
     self.appendChild(self.desc_element)
     self.appendChild(self.parent_element)
     self.appendChild(self.pkg_element)
     self.appendChild(self.env_element)
     self.appendChild(self.templ_element)
     self.appendChild(self.debconf_element)
     self.appendChild(self.scripts_element)
     self.set_suite(suite)
Ejemplo n.º 2
0
 def __init__(self, conn, suite):
     self.conn = conn
     self.cursor = StatementCursor(self.conn, name='_Trait_')
     Element.__init__(self, 'trait')
     self.desc_element = TextElement('description', None)
     self.parent_element = Element('parents')
     self.pkg_element = Element('packages')
     self.env_element = Element('environ')
     self.templ_element = Element('templates')
     self.scripts_element = Element('scripts')
     self.debconf_element = DebConfigurationElement()
     self.appendChild(self.desc_element)
     self.appendChild(self.parent_element)
     self.appendChild(self.pkg_element)
     self.appendChild(self.env_element)
     self.appendChild(self.templ_element)
     self.appendChild(self.debconf_element)
     self.appendChild(self.scripts_element)
     self.set_suite(suite)
Ejemplo n.º 3
0
class TraitElement(Element):
    def __init__(self, conn, suite):
        self.conn = conn
        self.cursor = StatementCursor(self.conn, name='_Trait_')
        Element.__init__(self, 'trait')
        self.desc_element = TextElement('description', None)
        self.parent_element = Element('parents')
        self.pkg_element = Element('packages')
        self.env_element = Element('environ')
        self.templ_element = Element('templates')
        self.scripts_element = Element('scripts')
        self.debconf_element = DebConfigurationElement()
        self.appendChild(self.desc_element)
        self.appendChild(self.parent_element)
        self.appendChild(self.pkg_element)
        self.appendChild(self.env_element)
        self.appendChild(self.templ_element)
        self.appendChild(self.debconf_element)
        self.appendChild(self.scripts_element)
        self.set_suite(suite)
        
    def set_suite(self, suite):
        self.suite = suite
        self.setAttribute('suite', self.suite)
        self.traitparent = TraitParent(self.conn, self.suite)
        self.traitpackage = TraitPackage(self.conn, self.suite)
        self.traittemplate = TraitTemplate(self.conn, self.suite)
        self.traitdebconf = TraitDebconf(self.conn, self.suite)
        self.traitscripts = TraitScript(self.conn, self.suite)

    def set_environ(self):
        self.environ = TraitEnvironment(self.conn, self.suite, self.name)
        new_element = EnvironElement(self.environ)
        self.replaceChild(new_element, self.env_element)
        self.env_element = new_element

    def set_parents(self):
        self.parents = self.traitparent.parents(self.name)
        while self.parent_element.hasChildNodes():
            del self.parent_element.childNodes[0]
        for parent in self.parents:
            self.parent_element.appendChild(ParentElement(parent.parent))
            
    def set_packages(self):
        self.packages = self.traitpackage.packages([self.name])
        while self.pkg_element.hasChildNodes():
            del self.pkg_element.childNodes[0]
        for package in self.packages:
            pelement = PackageElement(package.package)
            pelement.setAttribute('action', package.action)
            self.pkg_element.appendChild(pelement)

    def set_templates(self):
        self.templates = self.traittemplate.templates(self.name)
        while self.templ_element.hasChildNodes():
            del self.templ_element.childNodes[0]
        for template in self.templates:
            element = TemplateElement(template.package, template.template)
            for att in ['package', 'mode', 'owner', 'grp_owner']:
                element.setAttribute(att, template[att])
            self.templ_element.appendChild(element)

    def set_debconf(self):
        self.debconf = self.traitdebconf.trait_debconf(self.name)
        while self.debconf_element.hasChildNodes():
            del self.debconf_element.childNodes[0]
        for debconf in self.debconf:
            element = DebConfElement(self.name, debconf)
            self.debconf_element.appendChild(element)

    def set_scripts(self):
        self.scripts = [x.script for x in self.traitscripts.scripts(self.name)]
        while self.scripts_element.hasChildNodes():
            del self.scripts_element.childNodes[0]
        for script in self.scripts:
            element = Element('script')
            element.setAttribute('name', script)
            self.scripts_element.appendChild(element)
            

    def set_name(self, name):
        self.name = name
        self.setAttribute('name', self.name)

    def set_priority(self, priority):
        self.priority = priority
        self.setAttribute('priority', self.priority)

    def set(self, name):
        self.set_name(name)
        self.set_suite(self.suite)
        self.set_environ()
        self.set_parents()
        self.set_packages()
        self.set_templates()
        self.set_debconf()
        self.set_scripts()
        
    def str(self):
        print self.toprettyxml()
Ejemplo n.º 4
0
class TraitElement(Element):
    def __init__(self, conn, suite):
        self.conn = conn
        self.cursor = StatementCursor(self.conn, name='_Trait_')
        Element.__init__(self, 'trait')
        self.desc_element = TextElement('description', None)
        self.parent_element = Element('parents')
        self.pkg_element = Element('packages')
        self.env_element = Element('environ')
        self.templ_element = Element('templates')
        self.scripts_element = Element('scripts')
        self.debconf_element = DebConfigurationElement()
        self.appendChild(self.desc_element)
        self.appendChild(self.parent_element)
        self.appendChild(self.pkg_element)
        self.appendChild(self.env_element)
        self.appendChild(self.templ_element)
        self.appendChild(self.debconf_element)
        self.appendChild(self.scripts_element)
        self.set_suite(suite)
        
    def set_suite(self, suite):
        self.suite = suite
        self.setAttribute('suite', self.suite)
        self.traitparent = TraitParent(self.conn, self.suite)
        self.traitpackage = TraitPackage(self.conn, self.suite)
        self.traittemplate = TraitTemplate(self.conn, self.suite)
        self.traitdebconf = TraitDebconf(self.conn, self.suite)
        self.traitscripts = TraitScript(self.conn, self.suite)

    def set_environ(self):
        self.environ = TraitEnvironment(self.conn, self.suite, self.name)
        new_element = EnvironElement(self.environ)
        self.replaceChild(new_element, self.env_element)
        self.env_element = new_element

    def set_parents(self):
        self.parents = self.traitparent.parents(self.name)
        while self.parent_element.hasChildNodes():
            del self.parent_element.childNodes[0]
        for parent in self.parents:
            self.parent_element.appendChild(ParentElement(parent.parent))
            
    def set_packages(self):
        self.packages = self.traitpackage.packages([self.name])
        while self.pkg_element.hasChildNodes():
            del self.pkg_element.childNodes[0]
        for package in self.packages:
            pelement = PackageElement(package.package)
            pelement.setAttribute('action', package.action)
            self.pkg_element.appendChild(pelement)

    def set_templates(self):
        self.templates = self.traittemplate.templates(self.name)
        while self.templ_element.hasChildNodes():
            del self.templ_element.childNodes[0]
        for template in self.templates:
            element = TemplateElement(template.package, template.template)
            for att in ['package', 'mode', 'owner', 'grp_owner']:
                element.setAttribute(att, template[att])
            self.templ_element.appendChild(element)

    def set_debconf(self):
        self.debconf = self.traitdebconf.trait_debconf(self.name)
        while self.debconf_element.hasChildNodes():
            del self.debconf_element.childNodes[0]
        for debconf in self.debconf:
            element = DebConfElement(self.name, debconf)
            self.debconf_element.appendChild(element)

    def set_scripts(self):
        self.scripts = [x.script for x in self.traitscripts.scripts(self.name)]
        while self.scripts_element.hasChildNodes():
            del self.scripts_element.childNodes[0]
        for script in self.scripts:
            element = Element('script')
            element.setAttribute('name', script)
            self.scripts_element.appendChild(element)
            

    def set_name(self, name):
        self.name = name
        self.setAttribute('name', self.name)

    def set_priority(self, priority):
        self.priority = priority
        self.setAttribute('priority', self.priority)

    def set(self, name):
        self.set_name(name)
        self.set_suite(self.suite)
        self.set_environ()
        self.set_parents()
        self.set_packages()
        self.set_templates()
        self.set_debconf()
        self.set_scripts()
        
    def str(self):
        print self.toprettyxml()