Пример #1
0
        'SimilarityFilter': (SimilarityFilter, {}),
    }

    old_module = pipeline.modules[module_id]
    if old_module.name in module_remap:
        remap = module_remap[old_module.name]
        new_descriptor = reg.get_descriptor(remap[0])
        try:
            function_remap = remap[1].get('function_remap', {})
            src_port_remap = remap[1].get('src_port_remap', {})
            dst_port_remap = remap[1].get('dst_port_remap', {})
            annotation_remap = remap[1].get('annotation_remap', {})
            action_list = \
                UpgradeWorkflowHandler.replace_module(controller, pipeline,
                                                      module_id, new_descriptor,
                                                      function_remap,
                                                      src_port_remap,
                                                      dst_port_remap,
                                                      annotation_remap)
        except Exception, e:
            import traceback
            traceback.print_exc()
            raise

        return action_list

    # otherwise, just try to automatic upgrade
    # attempt_automatic_upgrade
    return UpgradeWorkflowHandler.attempt_automatic_upgrade(
        controller, pipeline, module_id)
    if old_module.package == 'edu.utah.sci.vistrails.sudswebservices':
        reg = core.modules.module_registry.get_module_registry()
        new_descriptor = reg.get_descriptor_by_name(toSignature(wsdl), name,
                                                    namespace)
        if not new_descriptor:
            return []
        try:
            return UpgradeWorkflowHandler.replace_module(controller, pipeline,
                                                    module_id, new_descriptor)
        except Exception, e:
            import traceback
            traceback.print_exc()
            raise

    return UpgradeWorkflowHandler.attempt_automatic_upgrade(controller, 
                                                            pipeline,
                                                            module_id)

def handle_missing_module(controller, module_id, pipeline):
    global webServicesDict
    global package_cache

    def get_wsdl_from_namespace(m_namespace):
        try:
            wsdl = m_namespace.split("|")
            return wsdl[0]
        except:
            return None
    
    m = pipeline.modules[module_id]
    if m.package == identifier: