Example #1
0
        public Visualizer(
            IOptions <NotionVisualizerOptions> visualizerOptions,
            ILogger <Visualizer> logger,
            INotionClient notionClient,
            IEnumerable <IGenerator> generators)
        {
            _logger       = logger;
            _notionClient = notionClient;
            _generators   = generators.ToList();
            _options      = visualizerOptions.Value;

            _graphBuilder = new GraphBuilder();

            if (_options.EdgeDirections.Any())
            {
                _graphBuilder.EdgeFilter = EdgeFilter;
            }

            _edgeDirections = _options.EdgeDirections
                              .GroupBy(e => e.SourceContainer)
                              .ToDictionary(
                e => e.Key,
                v => v.Select(ed => ed).ToArray());
        }
Example #2
0
 public GraphDatabase(Model model, INotionClient notionClient)
 {
     _model        = model;
     _notionClient = notionClient;
     _queryEngine  = new QueryEngineImplementation();
 }