private constructor()

in src/extension/src/controller.ts [106:133]


  private constructor(private context: vscode.ExtensionContext, private platform: PLATFORM) {
    Controller.vsContext = context;
    Controller.TelemetryService = new TelemetryService(this.context);
    Controller.RequirementsService = new RequirementsService();
    Controller.TelemetryService.trackEvent(TelemetryEventName.ExtensionLaunch);

    this.Validator = new Validator();
    this.AzureModule = new AzureModule();
    this.Generation = new Generation(Controller.TelemetryService);
    this.loggerModule = new LoggerModule();
    this.dependencies = new DependenciesModule();
    this.CoreTSModule = new CoreTSModule(Controller.RequirementsService);
    this.Telemetry = new Telemetry(Controller.TelemetryService);
    this.Defaults = new Defaults();
    Logger.load(this.context.extensionPath);
    Logger.initializeOutputChannel(getExtensionName(this.context));
    this.defineExtensionModule();
    vscode.window.withProgress(
      {
        location: vscode.ProgressLocation.Notification,
        title: "Launching WebTS",
      },
      async (progress: vscode.Progress<IVSCodeProgressType>) => {
        const launchExperience = new LaunchExperience(progress);
        await this.launchWizard(this.context, launchExperience, this.platform);
      }
    );
  }