2323
2424namespace Microsoft . PowerShell . EditorServices . Handlers
2525{
26- internal class PsesDocumentSymbolHandler : IDocumentSymbolHandler
26+ internal class PsesDocumentSymbolHandler : DocumentSymbolHandlerBase
2727 {
2828 private readonly ILogger _logger ;
2929 private readonly WorkspaceService _workspaceService ;
30-
3130 private readonly IDocumentSymbolProvider [ ] _providers ;
3231
33- private DocumentSymbolCapability _capability ;
34-
3532 public PsesDocumentSymbolHandler ( ILoggerFactory factory , ConfigurationService configurationService , WorkspaceService workspaceService )
3633 {
3734 _logger = factory . CreateLogger < PsesDocumentSymbolHandler > ( ) ;
@@ -44,15 +41,12 @@ public PsesDocumentSymbolHandler(ILoggerFactory factory, ConfigurationService co
4441 } ;
4542 }
4643
47- public DocumentSymbolRegistrationOptions GetRegistrationOptions ( )
44+ protected override DocumentSymbolRegistrationOptions CreateRegistrationOptions ( DocumentSymbolCapability capability , ClientCapabilities clientCapabilities ) => new DocumentSymbolRegistrationOptions
4845 {
49- return new DocumentSymbolRegistrationOptions
50- {
51- DocumentSelector = LspUtils . PowerShellDocumentSelector
52- } ;
53- }
46+ DocumentSelector = LspUtils . PowerShellDocumentSelector
47+ } ;
5448
55- public Task < SymbolInformationOrDocumentSymbolContainer > Handle ( DocumentSymbolParams request , CancellationToken cancellationToken )
49+ public override Task < SymbolInformationOrDocumentSymbolContainer > Handle ( DocumentSymbolParams request , CancellationToken cancellationToken )
5650 {
5751 ScriptFile scriptFile = _workspaceService . GetFile ( request . TextDocument . Uri ) ;
5852
@@ -92,11 +86,6 @@ public Task<SymbolInformationOrDocumentSymbolContainer> Handle(DocumentSymbolPar
9286 return Task . FromResult ( new SymbolInformationOrDocumentSymbolContainer ( symbols ) ) ;
9387 }
9488
95- public void SetCapability ( DocumentSymbolCapability capability )
96- {
97- _capability = capability ;
98- }
99-
10089 private IEnumerable < ISymbolReference > ProvideDocumentSymbols (
10190 ScriptFile scriptFile )
10291 {
0 commit comments