Example #1
0
 def __init__(self, basic_config=BasicConfig(), *args, **kwargs):
     BaseModuleListSupply.__init__(self, *args, **kwargs)
     self.__logger = logging.getLogger(self.__class__.__module__)
     self.__module_files_to_names = dict()
     self.__modules_to_files = dict()
     self.__basic_config = basic_config
     # TODO the project file base dir might not be equal to the local source base dir when project files 
     # are generated (as it is already the case for C++/cmake)
     self.__project_dir_resolver = basic_config.get_local_source_resolver()
     self.__analysis_base_dirs = basic_config.get_local_source_base_dir_subset()
     self.__diagnostics = dict()
     self.__module_diagnostics = None
     self.__modules_in_solution_files = dict()
     self.__source_files = dict()
     self.__global_results = list()
     self.__initialized = False
     self.__checked_rules = None
     self.__source_file_results = list()
Example #2
0
                                     GraphicalGraphOutputter, GraphDecorator)
from commons.graph.output_util import (GraphCollapser, EdgeGroupDecorator,
                                       NodeGroupDecorator)
from commons.os_util import PathTools
from commons.scm_default import FallbackVersionDescriber
from commons.scm_if import VersionDescriber
from itertools import ifilter
import logging
import math
import os.path
import posixpath
import types
import warnings

config_outputter_configuration = OutputterConfiguration()
config_basic = BasicConfig()
config_module_group_conf = NodeGroupingConfiguration
config_module_grouper = ModuleGrouper
config_version_describer = VersionDescriber()


class NodeGroupNodeGrouperDecorator(ModuleGrouper):
    def __init__(self, decoratee):
        self.__decoratee = decoratee
        self.__node_groups = None

    def configure_nodes(self, nodes):
        node_set = set(nodes)
        self.__node_groups = set(node for node in node_set
                                 if isinstance(node, NodeGroup))
        self.__decoratee.configure_nodes(node for node in node_set
Example #3
0
from base.dependency.dependency_base import NullModuleGrouper
from base.dependency.dependency_if import ModuleGrouper
from base.dependency.dependency_output_util import (
    DependencyFilterOutputterTools, DependencyFilterOutputter)
from base.dependency.dependency_util import GraphDescriptionImpl
from commons.configurator import Configurator
from commons.graph.attrgraph_util import MutableAttributeGraph
from commons.graph.output_if import NodeGroupingConfiguration
import logging
import sys
from base.basic_config_if import BasicConfig

config_dependency_filter_outputter = DependencyFilterOutputter
config_module_group_conf = NodeGroupingConfiguration
config_module_grouper = ModuleGrouper
config_basic_config = BasicConfig()


class GraphGenerationProbe(object):
    def __init__(self, *args, **kwargs):
        self.__logger = logging.getLogger(self.__class__.__module__)

    def __test(self):
        description = GraphDescriptionImpl(description="Test",
                                           basename="test",
                                           section="test")
        graph = MutableAttributeGraph()
        graph.add_edge_and_nodes("a", "b")
        module_group_conf = config_module_group_conf(
            module_grouper=config_module_grouper())
        DependencyFilterOutputterTools.output_detail_and_overview_graph(