in package/src/languageServiceManager/kustoLanguageService.ts [2017:2064]
private createRulesProvider(
schema: k.KustoIntelliSenseQuerySchema | CmSchema | undefined,
clusterType: s.ClusterType
) {
let queryParameters: any = new (List(String))();
let availableClusters: any = new (List(String))();
this._parser = new k.CslCommandParser();
if (clusterType == 'Engine') {
const engineSchema = schema as k.KustoIntelliSenseQuerySchema;
this._rulesProvider =
this._languageSettings && this._languageSettings.includeControlCommands
? new k.CslIntelliSenseRulesProvider.$ctor1(
engineSchema.Cluster,
engineSchema,
queryParameters,
availableClusters,
null,
true,
true
)
: new k.CslQueryIntelliSenseRulesProvider.$ctor1(
engineSchema.Cluster,
engineSchema,
queryParameters,
availableClusters,
null,
null,
null
);
return;
}
if (clusterType === 'DataManagement') {
this._rulesProvider = new k.DataManagerIntelliSenseRulesProvider(null);
return;
}
// This is a cluster manger
const { accounts, services, connectionString } = schema as CmSchema;
new k.KustoIntelliSenseAccountEntity();
new k.KustoIntelliSenseServiceEntity();
this._rulesProvider = new k.ClusterManagerIntelliSenseRulesProvider.$ctor1(
new Bridge.ArrayEnumerable(accounts),
new Bridge.ArrayEnumerable(services),
connectionString
);
}