in rider/src/main/kotlin/com/jetbrains/aspire/rider/run/host/AspireHostConfigurationViewModel.kt [235:302]
fun reset(
projectFilePath: String,
projectTfm: String,
launchProfileName: String,
trackArguments: Boolean,
arguments: String,
trackWorkingDirectory: Boolean,
workingDirectory: String,
trackEnvs: Boolean,
envs: Map<String, String>,
usePodmanRuntime: Boolean,
trackUrl: Boolean,
trackBrowserLaunch: Boolean,
dotNetStartBrowserParameters: DotNetStartBrowserParameters
) {
isLoaded = false
currentEditSessionLifetime = currentEditSessionLifetimeSource.next()
this.trackArguments = trackArguments
this.trackWorkingDirectory = trackWorkingDirectory
this.trackEnvs = trackEnvs
this.trackUrl = trackUrl
this.trackBrowserLaunch = trackBrowserLaunch
currentEditSessionLifetime.launch(Dispatchers.EDT + ModalityState.current().asContextElement()) {
val projectList = runnableProjectsModel
?.projects
?.nextNotNullValue()
?.filter { it.kind == AspireRunnableProjectKinds.AspireHost }
?: return@launch
usePodmanRuntimeFlagEditor.isSelected.set(usePodmanRuntime)
if (projectFilePath.isEmpty() || projectList.none { it.projectFilePath == projectFilePath }) {
dotNetBrowserSettingsEditor.settings.set(
BrowserSettings(
dotNetStartBrowserParameters.startAfterLaunch,
dotNetStartBrowserParameters.withJavaScriptDebugger,
dotNetStartBrowserParameters.browser
)
)
if (projectFilePath.isEmpty()) {
addFirstAspireProject(projectList)
} else {
addFakeProject(projectList, projectFilePath)
}
} else {
addSelectedAspireHostProject(
projectList,
projectFilePath,
projectTfm,
launchProfileName,
trackArguments,
arguments,
trackWorkingDirectory,
workingDirectory,
trackEnvs,
envs,
trackUrl,
trackBrowserLaunch,
dotNetStartBrowserParameters
)
}
isLoaded = true
}
}