Пример #1
0
 public HtmlFormatter(
     ClientNotifierServiceBase languageServer,
     DocumentVersionCache documentVersionCache)
 {
     _server = languageServer;
     _documentVersionCache = documentVersionCache;
 }
        public DefaultCSharpCodeActionResolver(
            ProjectSnapshotManagerDispatcher projectSnapshotManagerDispatcher,
            DocumentResolver documentResolver,
            ClientNotifierServiceBase languageServer,
            RazorFormattingService razorFormattingService,
            DocumentVersionCache documentVersionCache)
            : base(languageServer)
        {
            if (projectSnapshotManagerDispatcher is null)
            {
                throw new ArgumentNullException(nameof(projectSnapshotManagerDispatcher));
            }

            if (documentResolver is null)
            {
                throw new ArgumentNullException(nameof(documentResolver));
            }

            if (razorFormattingService is null)
            {
                throw new ArgumentNullException(nameof(razorFormattingService));
            }

            if (documentVersionCache is null)
            {
                throw new ArgumentNullException(nameof(documentVersionCache));
            }

            _projectSnapshotManagerDispatcher = projectSnapshotManagerDispatcher;
            _documentResolver       = documentResolver;
            _razorFormattingService = razorFormattingService;
            _documentVersionCache   = documentVersionCache;
        }
Пример #3
0
        private void CreateCodeActionResolver(
            out CSharpCodeActionParams codeActionParams,
            out DefaultCSharpCodeActionResolver csharpCodeActionResolver,
            ClientNotifierServiceBase languageServer      = null,
            DocumentVersionCache documentVersionCache     = null,
            RazorFormattingService razorFormattingService = null)
        {
            var documentPath = "c:/Test.razor";
            var documentUri  = new Uri(documentPath);
            var contents     = string.Empty;
            var codeDocument = CreateCodeDocument(contents, documentPath);

            codeActionParams = new CSharpCodeActionParams()
            {
                Data         = new JObject(),
                RazorFileUri = documentUri
            };

            languageServer ??= CreateLanguageServer();
            documentVersionCache ??= CreateDocumentVersionCache();
            razorFormattingService ??= CreateRazorFormattingService(documentUri);

            csharpCodeActionResolver = new DefaultCSharpCodeActionResolver(
                LegacyDispatcher,
                CreateDocumentResolver(documentPath, codeDocument),
                languageServer,
                razorFormattingService,
                documentVersionCache);
        }
        private void CreateCodeActionResolver(
            out CSharpCodeActionParams codeActionParams,
            out AddUsingsCSharpCodeActionResolver addUsingResolver,
            ClientNotifierServiceBase languageServer  = null,
            DocumentVersionCache documentVersionCache = null)
        {
            var documentPath = "c:/Test.razor";
            var documentUri  = new Uri(documentPath);
            var contents     = string.Empty;
            var codeDocument = CreateCodeDocument(contents, documentPath);

            codeActionParams = new CSharpCodeActionParams()
            {
                Data         = new JObject(),
                RazorFileUri = documentUri
            };

            languageServer ??= CreateLanguageServer();
            documentVersionCache ??= CreateDocumentVersionCache();

            addUsingResolver = new AddUsingsCSharpCodeActionResolver(
                new DefaultForegroundDispatcher(),
                CreateDocumentResolver(documentPath, codeDocument),
                languageServer,
                documentVersionCache);
        }
        public CSharpCodeActionResolver(ClientNotifierServiceBase languageServer)
        {
            if (languageServer is null)
            {
                throw new ArgumentNullException(nameof(languageServer));
            }

            _languageServer = languageServer;
        }
Пример #6
0
        // Need to have a lazy server here because if we try to resolve the server it creates types which create a DefaultTagHelperDescriptionFactory, and we end up StackOverflowing.
        // This lazy can be avoided in the future by using an upcoming ILanguageServerSettings interface, but it doesn't exist/work yet.
        public DefaultLSPTagHelperTooltipFactory(ClientNotifierServiceBase languageServer)
        {
            if (languageServer is null)
            {
                throw new ArgumentNullException(nameof(languageServer));
            }

            LanguageServer = languageServer;
        }
Пример #7
0
        public DocumentColorEndpoint(ClientNotifierServiceBase languageServer)
        {
            if (languageServer is null)
            {
                throw new ArgumentNullException(nameof(languageServer));
            }

            _languageServer = languageServer;
        }
Пример #8
0
 public TestRazorSemanticTokensInfoService(
     ClientNotifierServiceBase languageServer,
     RazorDocumentMappingService documentMappingService,
     ForegroundDispatcher foregroundDispatcher,
     DocumentResolver documentResolver,
     DocumentVersionCache documentVersionCache,
     LoggerFactory loggerFactory) :
     base(languageServer, documentMappingService, foregroundDispatcher, documentResolver, documentVersionCache, loggerFactory)
 {
 }
 public TestRazorSemanticTokensInfoService(
     ClientNotifierServiceBase languageServer,
     RazorDocumentMappingService documentMappingService,
     ProjectSnapshotManagerDispatcher projectSnapshotManagerDispatcher,
     DocumentResolver documentResolver,
     DocumentVersionCache documentVersionCache,
     LoggerFactory loggerFactory)
     : base(languageServer, documentMappingService, projectSnapshotManagerDispatcher, documentResolver, documentVersionCache, loggerFactory)
 {
 }
 public AddUsingsCSharpCodeActionResolver(
     ForegroundDispatcher foregroundDispatcher,
     DocumentResolver documentResolver,
     ClientNotifierServiceBase languageServer,
     DocumentVersionCache documentVersionCache)
     : base(languageServer)
 {
     _foregroundDispatcher = foregroundDispatcher ?? throw new ArgumentNullException(nameof(foregroundDispatcher));
     _documentResolver     = documentResolver ?? throw new ArgumentNullException(nameof(documentResolver));
     _documentVersionCache = documentVersionCache ?? throw new ArgumentNullException(nameof(documentVersionCache));
 }
Пример #11
0
        private DefaultRazorHoverInfoService GetDefaultRazorHoverInfoService(ClientNotifierServiceBase languageServer = null)
        {
            if (languageServer is null)
            {
                languageServer = LanguageServer;
            }

            var tagHelperDescriptionFactory = new DefaultTagHelperDescriptionFactory(languageServer);

            return(new DefaultRazorHoverInfoService(TagHelperFactsService, tagHelperDescriptionFactory, HtmlFactsService));
        }
Пример #12
0
 public AddUsingsCSharpCodeActionResolver(
     ProjectSnapshotManagerDispatcher projectSnapshotManagerDispatcher,
     DocumentResolver documentResolver,
     ClientNotifierServiceBase languageServer,
     DocumentVersionCache documentVersionCache)
     : base(languageServer)
 {
     _projectSnapshotManagerDispatcher = projectSnapshotManagerDispatcher ?? throw new ArgumentNullException(nameof(projectSnapshotManagerDispatcher));
     _documentResolver     = documentResolver ?? throw new ArgumentNullException(nameof(documentResolver));
     _documentVersionCache = documentVersionCache ?? throw new ArgumentNullException(nameof(documentVersionCache));
 }
        private DefaultRazorHoverInfoService GetDefaultRazorHoverInfoService(ClientNotifierServiceBase languageServer = null)
        {
            if (languageServer is null)
            {
                languageServer = LanguageServer;
            }

            var lspTagHelperTooltipFactory   = new DefaultLSPTagHelperTooltipFactory(languageServer);
            var vsLspTagHelperTooltipFactory = new DefaultVSLSPTagHelperTooltipFactory();

            return(new DefaultRazorHoverInfoService(TagHelperFactsService, lspTagHelperTooltipFactory, vsLspTagHelperTooltipFactory, HtmlFactsService));
        }
Пример #14
0
        protected AbstractTextDocumentPresentationEndpointBase(
            ProjectSnapshotManagerDispatcher projectSnapshotManagerDispatcher,
            DocumentResolver documentResolver,
            RazorDocumentMappingService razorDocumentMappingService,
            ClientNotifierServiceBase languageServer,
            DocumentVersionCache documentVersionCache,
            LanguageServerFeatureOptions languageServerFeatureOptions,
            ILogger logger)
        {
            if (projectSnapshotManagerDispatcher is null)
            {
                throw new ArgumentNullException(nameof(projectSnapshotManagerDispatcher));
            }

            if (documentResolver is null)
            {
                throw new ArgumentNullException(nameof(documentResolver));
            }

            if (razorDocumentMappingService is null)
            {
                throw new ArgumentNullException(nameof(razorDocumentMappingService));
            }

            if (languageServer is null)
            {
                throw new ArgumentNullException(nameof(languageServer));
            }

            if (documentVersionCache is null)
            {
                throw new ArgumentNullException(nameof(documentVersionCache));
            }

            if (languageServerFeatureOptions is null)
            {
                throw new ArgumentNullException(nameof(languageServerFeatureOptions));
            }

            if (logger is null)
            {
                throw new ArgumentNullException(nameof(logger));
            }

            _projectSnapshotManagerDispatcher = projectSnapshotManagerDispatcher;
            _documentResolver            = documentResolver;
            _razorDocumentMappingService = razorDocumentMappingService;
            _languageServer               = languageServer;
            _documentVersionCache         = documentVersionCache;
            _languageServerFeatureOptions = languageServerFeatureOptions;
            _logger = logger;
        }
 public UnformattedRemappingCSharpCodeActionResolver(
     ForegroundDispatcher foregroundDispatcher,
     DocumentResolver documentResolver,
     ClientNotifierServiceBase languageServer,
     DocumentVersionCache documentVersionCache,
     RazorDocumentMappingService documentMappingService)
     : base(languageServer)
 {
     _foregroundDispatcher   = foregroundDispatcher ?? throw new ArgumentNullException(nameof(foregroundDispatcher));
     _documentResolver       = documentResolver ?? throw new ArgumentNullException(nameof(documentResolver));
     _documentVersionCache   = documentVersionCache ?? throw new ArgumentNullException(nameof(documentVersionCache));
     _documentMappingService = documentMappingService ?? throw new ArgumentNullException(nameof(documentMappingService));
 }
        public FormattingContentValidationPass(
            RazorDocumentMappingService documentMappingService,
            FilePathNormalizer filePathNormalizer,
            ClientNotifierServiceBase server,
            ILoggerFactory loggerFactory)
            : base(documentMappingService, filePathNormalizer, server)
        {
            if (loggerFactory is null)
            {
                throw new ArgumentNullException(nameof(loggerFactory));
            }

            _logger = loggerFactory.CreateLogger <FormattingContentValidationPass>();
        }
        public HtmlFormattingPass(
            RazorDocumentMappingService documentMappingService,
            FilePathNormalizer filePathNormalizer,
            ClientNotifierServiceBase server,
            DocumentVersionCache documentVersionCache,
            ILoggerFactory loggerFactory)
            : base(documentMappingService, filePathNormalizer, server)
        {
            if (loggerFactory is null)
            {
                throw new ArgumentNullException(nameof(loggerFactory));
            }

            _logger = loggerFactory.CreateLogger <HtmlFormattingPass>();

            HtmlFormatter = new HtmlFormatter(server, documentVersionCache);
        }
Пример #18
0
 public FoldingRangeEndpoint(
     RazorDocumentMappingService documentMappingService,
     ProjectSnapshotManagerDispatcher projectSnapshotManagerDispatcher,
     DocumentResolver documentResolver,
     ClientNotifierServiceBase languageServer,
     DocumentVersionCache documentVersionCache,
     IEnumerable <RazorFoldingRangeProvider> foldingRangeProviders,
     ILoggerFactory loggerFactory)
 {
     _documentMappingService           = documentMappingService ?? throw new ArgumentNullException(nameof(documentMappingService));
     _languageServer                   = languageServer ?? throw new ArgumentNullException(nameof(languageServer));
     _projectSnapshotManagerDispatcher = projectSnapshotManagerDispatcher ?? throw new ArgumentNullException(nameof(projectSnapshotManagerDispatcher));
     _documentResolver                 = documentResolver ?? throw new ArgumentNullException(nameof(documentResolver));
     _documentVersionCache             = documentVersionCache ?? throw new ArgumentNullException(nameof(documentVersionCache));
     _foldingRangeProviders            = foldingRangeProviders ?? throw new ArgumentNullException(nameof(foldingRangeProviders));
     _logger = loggerFactory.CreateLogger <FoldingRangeEndpoint>();
 }
Пример #19
0
        public HtmlFormatter(
            ClientNotifierServiceBase languageServer,
            FilePathNormalizer filePathNormalizer)
        {
            if (languageServer is null)
            {
                throw new ArgumentNullException(nameof(languageServer));
            }

            if (filePathNormalizer is null)
            {
                throw new ArgumentNullException(nameof(filePathNormalizer));
            }

            _server             = languageServer;
            _filePathNormalizer = filePathNormalizer;
        }
 public CodeActionEndpoint(
     RazorDocumentMappingService documentMappingService,
     IEnumerable <RazorCodeActionProvider> razorCodeActionProviders,
     IEnumerable <CSharpCodeActionProvider> csharpCodeActionProviders,
     ForegroundDispatcher foregroundDispatcher,
     DocumentResolver documentResolver,
     ClientNotifierServiceBase languageServer,
     LanguageServerFeatureOptions languageServerFeatureOptions)
 {
     _documentMappingService       = documentMappingService ?? throw new ArgumentNullException(nameof(documentMappingService));
     _razorCodeActionProviders     = razorCodeActionProviders ?? throw new ArgumentNullException(nameof(razorCodeActionProviders));
     _csharpCodeActionProviders    = csharpCodeActionProviders ?? throw new ArgumentNullException(nameof(csharpCodeActionProviders));
     _foregroundDispatcher         = foregroundDispatcher ?? throw new ArgumentNullException(nameof(foregroundDispatcher));
     _documentResolver             = documentResolver ?? throw new ArgumentNullException(nameof(documentResolver));
     _languageServer               = languageServer ?? throw new ArgumentNullException(nameof(languageServer));
     _languageServerFeatureOptions = languageServerFeatureOptions ?? throw new ArgumentNullException(nameof(languageServerFeatureOptions));
 }
Пример #21
0
 public TextDocumentTextPresentationEndpoint(
     ProjectSnapshotManagerDispatcher projectSnapshotManagerDispatcher,
     DocumentResolver documentResolver,
     RazorDocumentMappingService razorDocumentMappingService,
     ClientNotifierServiceBase languageServer,
     DocumentVersionCache documentVersionCache,
     LanguageServerFeatureOptions languageServerFeatureOptions,
     ILoggerFactory loggerFactory)
     : base(projectSnapshotManagerDispatcher,
            documentResolver,
            razorDocumentMappingService,
            languageServer,
            documentVersionCache,
            languageServerFeatureOptions,
            loggerFactory.CreateLogger <TextDocumentTextPresentationEndpoint>())
 {
 }
Пример #22
0
    public InlineCompletionEndpoint(
        ProjectSnapshotManagerDispatcher projectSnapshotManagerDispatcher,
        DocumentResolver documentResolver,
        RazorDocumentMappingService documentMappingService,
        ClientNotifierServiceBase languageServer,
        AdhocWorkspaceFactory adhocWorkspaceFactory,
        ILoggerFactory loggerFactory)
    {
        if (projectSnapshotManagerDispatcher is null)
        {
            throw new ArgumentNullException(nameof(projectSnapshotManagerDispatcher));
        }

        if (documentResolver is null)
        {
            throw new ArgumentNullException(nameof(documentResolver));
        }

        if (documentMappingService is null)
        {
            throw new ArgumentNullException(nameof(documentMappingService));
        }

        if (languageServer is null)
        {
            throw new ArgumentNullException(nameof(languageServer));
        }

        if (adhocWorkspaceFactory is null)
        {
            throw new ArgumentNullException(nameof(adhocWorkspaceFactory));
        }

        if (loggerFactory is null)
        {
            throw new ArgumentNullException(nameof(loggerFactory));
        }

        _projectSnapshotManagerDispatcher = projectSnapshotManagerDispatcher;
        _documentResolver       = documentResolver;
        _documentMappingService = documentMappingService;
        _languageServer         = languageServer;
        _adhocWorkspaceFactory  = adhocWorkspaceFactory;
        _logger = loggerFactory.CreateLogger <InlineCompletionEndpoint>();
    }
        public CodeActionEndpoint(
            RazorDocumentMappingService documentMappingService,
            IEnumerable <RazorCodeActionProvider> razorCodeActionProviders,
            IEnumerable <CSharpCodeActionProvider> csharpCodeActionProviders,
            ProjectSnapshotManagerDispatcher projectSnapshotManagerDispatcher,
            DocumentResolver documentResolver,
            ClientNotifierServiceBase languageServer,
            LanguageServerFeatureOptions languageServerFeatureOptions)
        {
            _documentMappingService           = documentMappingService ?? throw new ArgumentNullException(nameof(documentMappingService));
            _razorCodeActionProviders         = razorCodeActionProviders ?? throw new ArgumentNullException(nameof(razorCodeActionProviders));
            _csharpCodeActionProviders        = csharpCodeActionProviders ?? throw new ArgumentNullException(nameof(csharpCodeActionProviders));
            _projectSnapshotManagerDispatcher = projectSnapshotManagerDispatcher ?? throw new ArgumentNullException(nameof(projectSnapshotManagerDispatcher));
            _documentResolver             = documentResolver ?? throw new ArgumentNullException(nameof(documentResolver));
            _languageServer               = languageServer ?? throw new ArgumentNullException(nameof(languageServer));
            _languageServerFeatureOptions = languageServerFeatureOptions ?? throw new ArgumentNullException(nameof(languageServerFeatureOptions));

            _allAvailableCodeActionNames = GetAllAvailableCodeActionNames();
        }
        public DefaultRazorSemanticTokensInfoService(
            ClientNotifierServiceBase languageServer,
            RazorDocumentMappingService documentMappingService,
            ProjectSnapshotManagerDispatcher projectSnapshotManagerDispatcher,
            DocumentResolver documentResolver,
            DocumentVersionCache documentVersionCache,
            ILoggerFactory loggerFactory)
        {
            _languageServer                   = languageServer ?? throw new ArgumentNullException(nameof(languageServer));
            _documentMappingService           = documentMappingService ?? throw new ArgumentNullException(nameof(documentMappingService));
            _projectSnapshotManagerDispatcher = projectSnapshotManagerDispatcher ?? throw new ArgumentNullException(nameof(projectSnapshotManagerDispatcher));
            _documentResolver                 = documentResolver ?? throw new ArgumentNullException(nameof(documentResolver));
            _documentVersionCache             = documentVersionCache ?? throw new ArgumentNullException(nameof(documentVersionCache));

            if (loggerFactory is null)
            {
                throw new ArgumentNullException(nameof(loggerFactory));
            }

            _logger = loggerFactory.CreateLogger <DefaultRazorSemanticTokensInfoService>();
        }
Пример #25
0
        public FormattingPassBase(
            RazorDocumentMappingService documentMappingService,
            FilePathNormalizer filePathNormalizer,
            ClientNotifierServiceBase server)
        {
            if (documentMappingService is null)
            {
                throw new ArgumentNullException(nameof(documentMappingService));
            }

            if (filePathNormalizer is null)
            {
                throw new ArgumentNullException(nameof(filePathNormalizer));
            }

            if (server is null)
            {
                throw new ArgumentNullException(nameof(server));
            }

            DocumentMappingService = documentMappingService;
        }
Пример #26
0
        public RazorHoverEndpoint(
            ProjectSnapshotManagerDispatcher projectSnapshotManagerDispatcher,
            DocumentResolver documentResolver,
            RazorHoverInfoService hoverInfoService,
            ClientNotifierServiceBase languageServer,
            ILoggerFactory loggerFactory)
        {
            if (projectSnapshotManagerDispatcher is null)
            {
                throw new ArgumentNullException(nameof(projectSnapshotManagerDispatcher));
            }

            if (documentResolver is null)
            {
                throw new ArgumentNullException(nameof(documentResolver));
            }

            if (hoverInfoService is null)
            {
                throw new ArgumentNullException(nameof(hoverInfoService));
            }

            if (languageServer is null)
            {
                throw new ArgumentNullException(nameof(languageServer));
            }

            if (loggerFactory is null)
            {
                throw new ArgumentNullException(nameof(loggerFactory));
            }

            _projectSnapshotManagerDispatcher = projectSnapshotManagerDispatcher;
            _documentResolver = documentResolver;
            _hoverInfoService = hoverInfoService;
            _languageServer   = languageServer;
            _logger           = loggerFactory.CreateLogger <RazorHoverEndpoint>();
        }
        public WrapWithTagEndpoint(
            ClientNotifierServiceBase languageServer,
            ProjectSnapshotManagerDispatcher projectSnapshotManagerDispatcher,
            DocumentResolver documentResolver,
            RazorDocumentMappingService razorDocumentMappingService,
            ILoggerFactory loggerFactory)
        {
            if (languageServer is null)
            {
                throw new ArgumentNullException(nameof(languageServer));
            }

            if (projectSnapshotManagerDispatcher is null)
            {
                throw new ArgumentNullException(nameof(projectSnapshotManagerDispatcher));
            }

            if (documentResolver is null)
            {
                throw new ArgumentNullException(nameof(documentResolver));
            }

            if (razorDocumentMappingService is null)
            {
                throw new ArgumentNullException(nameof(razorDocumentMappingService));
            }

            if (loggerFactory is null)
            {
                throw new ArgumentNullException(nameof(loggerFactory));
            }

            _languageServer = languageServer;
            _projectSnapshotManagerDispatcher = projectSnapshotManagerDispatcher;
            _documentResolver            = documentResolver;
            _razorDocumentMappingService = razorDocumentMappingService;
            _logger = loggerFactory.CreateLogger <WrapWithTagEndpoint>();
        }
Пример #28
0
        public CSharpFormatter(
            RazorDocumentMappingService documentMappingService,
            ClientNotifierServiceBase languageServer,
            FilePathNormalizer filePathNormalizer)
        {
            if (documentMappingService is null)
            {
                throw new ArgumentNullException(nameof(documentMappingService));
            }

            if (languageServer is null)
            {
                throw new ArgumentNullException(nameof(languageServer));
            }

            if (filePathNormalizer is null)
            {
                throw new ArgumentNullException(nameof(filePathNormalizer));
            }

            _documentMappingService = documentMappingService;
            _server             = languageServer;
            _filePathNormalizer = filePathNormalizer;
        }
Пример #29
0
        public TextDocumentUriPresentationEndpoint(
            ProjectSnapshotManagerDispatcher projectSnapshotManagerDispatcher,
            DocumentResolver documentResolver,
            RazorDocumentMappingService razorDocumentMappingService,
            RazorComponentSearchEngine razorComponentSearchEngine,
            ClientNotifierServiceBase languageServer,
            DocumentVersionCache documentVersionCache,
            LanguageServerFeatureOptions languageServerFeatureOptions,
            ILoggerFactory loggerFactory)
            : base(projectSnapshotManagerDispatcher,
                   documentResolver,
                   razorDocumentMappingService,
                   languageServer,
                   documentVersionCache,
                   languageServerFeatureOptions,
                   loggerFactory.CreateLogger <TextDocumentUriPresentationEndpoint>())
        {
            if (razorComponentSearchEngine is null)
            {
                throw new ArgumentNullException(nameof(razorComponentSearchEngine));
            }

            _razorComponentSearchEngine = razorComponentSearchEngine;
        }
 protected CSharpFormattingPassBase(RazorDocumentMappingService documentMappingService, FilePathNormalizer filePathNormalizer, ClientNotifierServiceBase server)
     : base(documentMappingService, filePathNormalizer, server)
 {
     CSharpFormatter = new CSharpFormatter(documentMappingService, server, filePathNormalizer);
 }