Skip to content

Commit 5e50c3d

Browse files
authored
Fix ECR action causing collection empty error (#2611)
1 parent 0ae59d2 commit 5e50c3d

File tree

2 files changed

+4
-12
lines changed

2 files changed

+4
-12
lines changed

jetbrains-core/resources/META-INF/plugin.xml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -261,7 +261,6 @@ with what features/services are supported.
261261

262262
<group id="aws.toolkit.explorer.ecr" popup="true" compact="false">
263263
<action id="ecr.repository.create" class="software.aws.toolkits.jetbrains.services.ecr.actions.CreateRepositoryAction"/>
264-
<reference id="ecr.repository.push.group"/>
265264
</group>
266265

267266
<group id="aws.toolkit.explorer.ecr.repository" popup="true" compact="false">

jetbrains-core/src/software/aws/toolkits/jetbrains/services/ecr/actions/PushToRepositoryAction.kt

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ import com.intellij.openapi.actionSystem.LangDataKeys
1616
import com.intellij.openapi.application.ModalityState
1717
import com.intellij.openapi.application.runInEdt
1818
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory
19-
import com.intellij.openapi.project.DumbAwareAction
2019
import com.intellij.openapi.project.Project
2120
import com.intellij.openapi.project.guessProjectDir
2221
import com.intellij.openapi.ui.DialogWrapper
@@ -45,7 +44,7 @@ import software.amazon.awssdk.services.ecr.EcrClient
4544
import software.aws.toolkits.core.utils.error
4645
import software.aws.toolkits.core.utils.getLogger
4746
import software.aws.toolkits.jetbrains.core.awsClient
48-
import software.aws.toolkits.jetbrains.core.explorer.ExplorerDataKeys
47+
import software.aws.toolkits.jetbrains.core.explorer.actions.SingleExplorerNodeAction
4948
import software.aws.toolkits.jetbrains.services.ecr.DockerRunConfiguration
5049
import software.aws.toolkits.jetbrains.services.ecr.DockerfileEcrPushRequest
5150
import software.aws.toolkits.jetbrains.services.ecr.EcrPushRequest
@@ -70,22 +69,16 @@ import javax.swing.JTextField
7069
import javax.swing.plaf.basic.BasicComboBoxEditor
7170

7271
class PushToRepositoryAction :
73-
DumbAwareAction(),
72+
SingleExplorerNodeAction<EcrRepositoryNode>(message("action.ecr.repository.push.text")),
7473
CoroutineScope by ApplicationThreadPoolScope("PushRepositoryAction") {
7574
private val dockerServerRuntime: Deferred<DockerServerRuntimeInstance> =
7675
async(start = CoroutineStart.LAZY) { EcrUtils.getDockerServerRuntimeInstance().runtimeInstance }
7776

78-
override fun actionPerformed(e: AnActionEvent) {
77+
override fun actionPerformed(selected: EcrRepositoryNode, e: AnActionEvent) {
7978
val project = e.getRequiredData(LangDataKeys.PROJECT)
8079
val client: EcrClient = project.awsClient()
8180

82-
val selectedRepository = e.getData(ExplorerDataKeys.SELECTED_NODES)
83-
?.takeIf { it.size == 1 }
84-
?.mapNotNull { it as? EcrRepositoryNode }
85-
?.first()
86-
?.repository
87-
88-
val dialog = PushToEcrDialog(project, selectedRepository, dockerServerRuntime)
81+
val dialog = PushToEcrDialog(project, selected.repository, dockerServerRuntime)
8982
val result = dialog.showAndGet()
9083

9184
if (!result) {

0 commit comments

Comments
 (0)