private void Initialize()
        {
            var compositionService = ServiceProvider.GlobalProvider.GetService(typeof(SComponentModel)) as IComponentModel;

            // The composition service will only be null in unit tests.
            if (compositionService != null)
            {
                compositionService.DefaultCompositionService.SatisfyImportsOnce(this);

                if (TableManagerProvider == null)
                {
                    TableManagerProvider = compositionService.GetService <ITableManagerProvider>();
                }

                if (TableControlEventProcessorProviders == null)
                {
                    TableControlEventProcessorProviders = new[]
                    { compositionService.GetService <ITableControlEventProcessorProvider>() };
                }

                var manager = TableManagerProvider.GetTableManager(StandardTables.ErrorsTable);
                manager.AddSource(this, StandardTableColumnDefinitions.DetailsExpander,
                                  StandardTableColumnDefinitions.ErrorSeverity, StandardTableColumnDefinitions.ErrorCode,
                                  StandardTableColumnDefinitions.ErrorSource, StandardTableColumnDefinitions.BuildTool,
                                  StandardTableColumnDefinitions.ErrorRank, StandardTableColumnDefinitions.ErrorCategory,
                                  StandardTableColumnDefinitions.Text, StandardTableColumnDefinitions.DocumentName,
                                  StandardTableColumnDefinitions.Line, StandardTableColumnDefinitions.Column);
            }
        }
        private SarifTableDataSource()
        {
            var compositionService = ServiceProvider.GlobalProvider.GetService(typeof(SComponentModel)) as IComponentModel;

            compositionService.DefaultCompositionService.SatisfyImportsOnce(this);

            if (TableManagerProvider == null)
            {
                TableManagerProvider = compositionService.GetService <ITableManagerProvider>();
            }

            if (TableControlEventProcessorProviders == null)
            {
                TableControlEventProcessorProviders = new[] { compositionService.GetService <ITableControlEventProcessorProvider>() };
            }

            var manager = TableManagerProvider.GetTableManager(StandardTables.ErrorsTable);

            manager.AddSource(this, StandardTableColumnDefinitions.DetailsExpander,
                              StandardTableColumnDefinitions.ErrorSeverity, StandardTableColumnDefinitions.ErrorCode,
                              StandardTableColumnDefinitions.ErrorSource, StandardTableColumnDefinitions.BuildTool,
                              StandardTableColumnDefinitions.ErrorRank, StandardTableColumnDefinitions.ErrorCategory,
                              StandardTableColumnDefinitions.Text, StandardTableColumnDefinitions.DocumentName,
                              StandardTableColumnDefinitions.Line, StandardTableColumnDefinitions.Column);


//            var errorList = ServiceProvider.GlobalProvider.GetService(typeof(SVsErrorList)) as IVsErrorList;
        }