Exemple #1
0
def unregisterSteps(context, import_steps=None, export_steps=None):
    # This removes steps that are now registered via ZCML so are
    # duplicate.  Optionally, you can pass a list of extra
    # import_steps and/or export_steps to remove.
    if import_steps is None:
        import_steps = set()
    else:
        import_steps = set(import_steps)
    if export_steps is None:
        export_steps = set()
    else:
        export_steps = set(export_steps)
    registry = context.getImportStepRegistry()
    persistent_steps = registry.listSteps()
    zcml_steps = _import_step_registry.listSteps()
    duplicated = set([s for s in persistent_steps if s in zcml_steps])
    remove = duplicated.union(import_steps)
    for step in remove:
        if step in registry._registered:
            registry.unregisterStep(step)
    registry = context.getExportStepRegistry()
    persistent_steps = registry.listSteps()
    zcml_steps = _export_step_registry.listSteps()
    duplicated = set([s for s in persistent_steps if s in zcml_steps])
    remove = duplicated.union(export_steps)
    for step in remove:
        if step in registry._registered:
            registry.unregisterStep(step)
    context._p_changed = True
Exemple #2
0
def unregisterOldSteps(context):
    # remove steps that are now registered via ZCML or gone completely
    _REMOVE_IMPORT_STEPS = [
        'caching_policy_mgr',
        'cookie_authentication',
        'plone-archetypes',
        'plone-site',
        'plone_various',
        'various',
    ]
    registry = context.getImportStepRegistry()
    persistent_steps = registry.listSteps()
    zcml_steps = _import_step_registry.listSteps()
    duplicated = [s for s in persistent_steps if s in zcml_steps]
    remove = duplicated + _REMOVE_IMPORT_STEPS
    for step in remove:
        if step in registry._registered:
            registry.unregisterStep(step)
    _REMOVE_EXPORT_STEPS = [
        'caching_policy_mgr',
        'cookieauth',
        'step_registries',
    ]
    registry = context.getExportStepRegistry()
    persistent_steps = registry.listSteps()
    zcml_steps = _export_step_registry.listSteps()
    duplicated = [s for s in persistent_steps if s in zcml_steps]
    remove = duplicated + _REMOVE_EXPORT_STEPS
    for step in remove:
        if step in registry._registered:
            registry.unregisterStep(step)
    context._p_changed = True
Exemple #3
0
def unregisterSteps(context, import_steps=None, export_steps=None):
    # This removes steps that are now registered via ZCML so are
    # duplicate.  Optionally, you can pass a list of extra
    # import_steps and/or export_steps to remove.
    if import_steps is None:
        import_steps = set()
    else:
        import_steps = set(import_steps)
    if export_steps is None:
        export_steps = set()
    else:
        export_steps = set(export_steps)
    registry = context.getImportStepRegistry()
    persistent_steps = registry.listSteps()
    zcml_steps = _import_step_registry.listSteps()
    duplicated = set([s for s in persistent_steps if s in zcml_steps])
    remove = duplicated.union(import_steps)
    for step in remove:
        if step in registry._registered:
            registry.unregisterStep(step)
    registry = context.getExportStepRegistry()
    persistent_steps = registry.listSteps()
    zcml_steps = _export_step_registry.listSteps()
    duplicated = set([s for s in persistent_steps if s in zcml_steps])
    remove = duplicated.union(export_steps)
    for step in remove:
        if step in registry._registered:
            registry.unregisterStep(step)
    context._p_changed = True
Exemple #4
0
def unregisterOldSteps(context):
    # remove steps that are now registered via ZCML or gone completely
    _REMOVE_IMPORT_STEPS = [
        'caching_policy_mgr',
        'cookie_authentication',
        'plone-archetypes',
        'plone-site',
        'plone_various',
        'various',
    ]
    registry = context.getImportStepRegistry()
    persistent_steps = registry.listSteps()
    zcml_steps = _import_step_registry.listSteps()
    duplicated = [s for s in persistent_steps if s in zcml_steps]
    remove = duplicated + _REMOVE_IMPORT_STEPS
    for step in remove:
        if step in registry._registered:
            registry.unregisterStep(step)
    _REMOVE_EXPORT_STEPS = [
        'caching_policy_mgr',
        'cookieauth',
        'step_registries',
    ]
    registry = context.getExportStepRegistry()
    persistent_steps = registry.listSteps()
    zcml_steps = _export_step_registry.listSteps()
    duplicated = [s for s in persistent_steps if s in zcml_steps]
    remove = duplicated + _REMOVE_EXPORT_STEPS
    for step in remove:
        if step in registry._registered:
            registry.unregisterStep(step)
    context._p_changed = True
Exemple #5
0
 def getSortedImportSteps(self):
     if self._exclude_global_steps:
         steps = set()
     else:
         steps = set(_import_step_registry.listSteps())
     steps.update(set(self._import_registry.listSteps()))
     step_infos = [self.getImportStepMetadata(step) for step in steps]
     return tuple(_computeTopologicalSort(step_infos))
Exemple #6
0
 def getSortedImportSteps(self):
     if self._exclude_global_steps:
         steps = set()
     else:
         steps = set(_import_step_registry.listSteps())
     steps.update(set(self._import_registry.listSteps()))
     step_infos = [self.getImportStepMetadata(step) for step in steps]
     return tuple(_computeTopologicalSort(step_infos))
 def testOneStepImport(self):
     zcml.load_string(ONE_STEP_ZCML)
     self.assertEqual(_import_step_registry.listSteps(), [u"Products.GenericSetup.teststep"])
     info = _import_step_registry.getStepMetadata(u"Products.GenericSetup.teststep")
     self.assertEqual(info["description"], u"step description")
     self.assertEqual(info["title"], u"step title")
     self.assertEqual(info["handler"], "Products.GenericSetup.initialize")
     self.assertEqual(info["id"], u"Products.GenericSetup.teststep")
Exemple #8
0
 def testOneStepImport(self):
     zcml.load_string(ONE_STEP_ZCML)
     self.assertEqual(_import_step_registry.listSteps(),
                      [u'Products.GenericSetup.teststep'])
     info = _import_step_registry.getStepMetadata(
         u'Products.GenericSetup.teststep')
     self.assertEqual(info['description'], u'step description')
     self.assertEqual(info['title'], u'step title')
     self.assertEqual(info['handler'], 'Products.GenericSetup.initialize')
     self.assertEqual(info['id'], u'Products.GenericSetup.teststep')
Exemple #9
0
 def testOneStepImport(self):
     zcml.load_string(ONE_STEP_ZCML)
     self.assertEqual(_import_step_registry.listSteps(),
                      [u'Products.GenericSetup.teststep'])
     info = _import_step_registry.getStepMetadata(
         u'Products.GenericSetup.teststep')
     self.assertEqual(info['description'],
                      u'step description')
     self.assertEqual(info['title'],
                      u'step title')
     self.assertEqual(info['handler'],
                      'Products.GenericSetup.initialize')
     self.assertEqual(info['id'],
                      u'Products.GenericSetup.teststep')
def cleanup_old_importsteps(setuptool):
    """ remove import steps from global registry """

    qgcomments_steps = ['quintagroup.plonecomments.install',
                        'quintagroup.plonecomments.uninstall']
    registry_tool = setuptool.getImportStepRegistry()
    global_steps = _import_step_registry.listSteps()
    steps = registry_tool.listSteps()

    # check and remove steps duplicate
    double_steps = [step for step in steps if step in global_steps]
    for step in qgcomments_steps:
        if step in double_steps:
            del registry_tool._registered[step]
Exemple #11
0
 def testNoDependencies(self):
     zcml.load_string("""<configure
                           xmlns:genericsetup="http://namespaces.zope.org/genericsetup"
                           i18n_domain="genericsetup">
                          <genericsetup:importStep
                              name="name"
                              title="title"
                              description="description"
                              handler="Products.GenericSetup.tests.test_zcml.dummy_importstep_handler">
                          </genericsetup:importStep>
                         </configure>""")
     self.assertEqual( _import_step_registry.listSteps(), [u'name'])
     data=_import_step_registry.getStepMetadata(u'name')
     self.assertEqual(data["handler"],
             'Products.GenericSetup.tests.test_zcml.dummy_importstep_handler')
     self.assertEqual(data["description"], u"description")
     self.assertEqual(data["title"], u"title")
     self.assertEqual(data["dependencies"], ())
     self.assertEqual(data["id"], u"name")
Exemple #12
0
 def testNoDependencies(self):
     zcml.load_string("""\
     <configure xmlns:genericsetup="http://namespaces.zope.org/genericsetup"
                i18n_domain="genericsetup">
      <genericsetup:importStep
          name="name"
          title="title"
          description="description"
          handler="Products.GenericSetup.tests.test_zcml.dummy_importstep">
      </genericsetup:importStep>
     </configure>""")
     self.assertEqual( _import_step_registry.listSteps(), [u'name'])
     data=_import_step_registry.getStepMetadata(u'name')
     self.assertEqual(data["handler"],
             'Products.GenericSetup.tests.test_zcml.dummy_importstep')
     self.assertEqual(data["description"], u"description")
     self.assertEqual(data["title"], u"title")
     self.assertEqual(data["dependencies"], ())
     self.assertEqual(data["id"], u"name")
Exemple #13
0
 def listImportSteps(self):
     steps = set(self._import_registry.listSteps())
     if not self._exclude_global_steps:
         steps.update(set(_import_step_registry.listSteps()))
     return tuple(steps)
Exemple #14
0
 def listImportSteps(self):
     steps = set(self._import_registry.listSteps())
     if not self._exclude_global_steps:
         steps.update(set(_import_step_registry.listSteps()))
     return tuple(steps)
 def testEmptyImport(self):
     zcml.load_string(EMPTY_ZCML)
     self.assertEqual(len(_import_step_registry.listSteps()), 0)
Exemple #16
0
 def getSortedImportSteps(self):
     steps = _import_step_registry.listSteps() + \
             self._import_registry.listSteps()
     step_infos = [self.getImportStepMetadata(step) for step in set(steps)]
     return tuple(_computeTopologicalSort(step_infos))
Exemple #17
0
 def getSortedImportSteps(self):
     steps = _import_step_registry.listSteps() + \
             self._import_registry.listSteps()
     step_infos = [ self.getImportStepMetadata(step)
                    for step in set(steps) ]
     return tuple(_computeTopologicalSort(step_infos))