ILanguageClient Interfaccia
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Interfaccia che rappresenta un client linguistico che si connette a un server di linguaggio basato su linguaggio basato su linguaggio.
public interface class ILanguageClient
public interface ILanguageClient
type ILanguageClient = interface
Public Interface ILanguageClient
Commenti
Sequenza normale di attivazione per il ILanguageClient modello seguente:
- Chiamate OnLoadedAsync()di Visual Studio ,
- L'estensione chiama e attende InvokeAsync<TEventArgs>(AsyncEventHandler<TEventArgs>, Object, TEventArgs) l'evento StartAsync prima di restituire da OnLoadedAsync(),
- Chiamate e attese ActivateAsync(CancellationToken) di Visual Studio prima di restituire da OnLoadedAsync(),
- L'estensione avvia il server LSP e restituisce un oggetto Connection a Visual Studio,
- Visual Studio avvia l'inizializzazione asincrona del server usando i messaggi LSP "inizializza" e "inizializzati",
- Visual Studio completa la gestione degli StartAsync eventi,
- L'estensione completa l'esecuzione OnLoadedAsync() ,
- Visual Studio chiama il OnServerInitializedAsync() metodo dopo il messaggio LSP "inizializzato" e "inizializzato" (o il OnServerInitializeFailedAsync(ILanguageClientInitializationInfo) metodo in caso di errore).
Proprietà
ConfigurationSections |
Ottiene i nomi delle sezioni di configurazione per il client di lingua. Questo può essere Null se il client della lingua non fornisce impostazioni. |
FilesToWatch |
Ottiene l'elenco dei nomi di file da watch per le modifiche. Le modifiche verranno inviate al server tramite messaggio 'workspace/didChangeWatchedFiles'. I file da watch devono trovarsi nell'area di lavoro attiva corrente. I nomi dei file possono essere specificati come percorsi relativi al file esatto o come modelli glob che seguono lo standard in .gitignore vedere https://www.kernel.org/pub/software/scm/git/docs/gitignore.html i file. |
InitializationOptions |
Ottiene l'oggetto opzioni di inizializzazione che il client vuole inviare quando viene inviato il messaggio "inizializza". Questo può essere Null se il client non necessita di opzioni di inizializzazione personalizzate. |
Name |
Ottiene il nome del client di lingua (visualizzato all'utente). |
ShowNotificationOnInitializeFailed |
Ottiene un valore che indica se viene visualizzata una bolla di notifica quando il server di lingua non riesce a inizializzare. |
Metodi
ActivateAsync(CancellationToken) |
Questo metodo viene chiamato da Visual Studio per notificare all'estensione che deve essere avviato il server LSP. |
OnLoadedAsync() |
Questo metodo viene chiamato da Visual Studio per notificare all'estensione che il client del linguaggio è stato caricato. L'estensione può avviare immediatamente il server LSP o attendere l'avvio dell'azione dell'utente. Per avviare la chiamata al server e attendere InvokeAsync<TEventArgs>(AsyncEventHandler<TEventArgs>, Object, TEventArgs) l'evento StartAsync prima di restituire da questo metodo. |
OnServerInitializedAsync() |
Questo metodo viene chiamato da Visual Studio per notificare all'estensione che il server LSP è stato inizializzato: i messaggi "inizializza" e "inizializzati" del provider di servizi di rete sono stati scambiati. |
OnServerInitializeFailedAsync(Exception) |
Segnala l'estensione che il server della lingua non è riuscito a inizializzare. |
OnServerInitializeFailedAsync(ILanguageClientInitializationInfo) |
Questo metodo viene chiamato da Visual Studio per notificare all'estensione che l'inizializzazione del server LSP non è riuscita. |
Eventi
StartAsync |
Evento asincrono per indicare a Visual Studio che il server deve essere avviato chiamando ActivateAsync(CancellationToken). Se il server è già stato avviato, questo evento verrà ignorato. |
StopAsync |
Evento asincrono per indicare a Visual Studio che il server deve essere arrestato inviando una richiesta di "arresto" di LSP. Se il server non viene avviato, questo evento verrà ignorato. |