in plugins/toolkit/jetbrains-core/src/software/aws/toolkits/jetbrains/services/lambda/sam/sync/SyncServerlessApplicationDialog.kt [373:438]
fun forceUi(
panel: DialogPanel,
isCreateStack: Boolean? = null,
hasImageFunctions: Boolean? = null,
stacks: List<StackSummary>? = null,
buckets: List<String>? = null,
ecrRepos: List<Repository>? = null,
forceStackName: Boolean = false,
stackName: String? = null,
forceBucket: Boolean = false,
bucket: String? = null,
forceEcrRepo: Boolean = false,
ecrRepo: String? = null,
useContainer: Boolean? = null,
) {
if (stacks != null) {
stackSelector.model = MutableCollectionComboBoxModel(stacks)
stackSelector.forceLoaded()
}
if (isCreateStack == true) {
syncType = SyncType.CREATE
stackNameField.isEnabled = true
stackSelector.isEnabled = false
} else if (isCreateStack == false) {
syncType = SyncType.UPDATE
stackNameField.isEnabled = false
stackSelector.isEnabled = true
}
if (forceStackName || stackName != null) {
if (syncType == SyncType.CREATE) {
newStackName = stackName.orEmpty()
} else {
stackSelector.selectedItem = stacks?.first { it.stackName() == stackName }
}
}
if (buckets != null) {
s3BucketSelector.model = MutableCollectionComboBoxModel(buckets)
s3BucketSelector.forceLoaded()
}
if (forceBucket || bucket != null) {
s3BucketSelector.selectedItem = bucket
}
if (ecrRepos != null) {
ecrRepoSelector.model = MutableCollectionComboBoxModel(ecrRepos)
ecrRepoSelector.forceLoaded()
}
if (hasImageFunctions != null) {
showImageOptions = hasImageFunctions
}
if (forceEcrRepo || ecrRepo != null) {
ecrRepoSelector.selectedItem = ecrRepo
}
if (useContainer != null) {
this.useContainer = useContainer
}
panel.reset()
}