9756e21
From b49930716f572dc7120f3e12071fd5826d240093 Mon Sep 17 00:00:00 2001
9756e21
From: Jeff Johnston
9756e21
Date: Wed, 3 Jan 2018 17:52:36 -0500
9756e21
Subject: Bug 529390 - Run in Container launch config not resetting err message
9756e21
9756e21
- modify ContainerTab to reset the error message when Docker
9756e21
  Connections/Image changes cause a listener notification and
9756e21
  then look to see if no connections or no images errors exist
9756e21
- modify ContainerTab to reset the error message if the Docker
9756e21
  Connection selected gets changed
9756e21
- bump org.eclipse.cdt.docker.launcher version to 1.1.1
9756e21
9756e21
Change-Id: Iad5051750a5dd53a0eb458d73570fffd9e3867c4
9756e21
---
9756e21
 launch/org.eclipse.cdt.docker.launcher/META-INF/MANIFEST.MF   |  2 +-
9756e21
 .../eclipse/cdt/internal/docker/launcher/ContainerTab.java    | 11 +++++++++++
9756e21
 2 files changed, 12 insertions(+), 1 deletion(-)
9756e21
9756e21
diff --git a/launch/org.eclipse.cdt.docker.launcher/META-INF/MANIFEST.MF b/launch/org.eclipse.cdt.docker.launcher/META-INF/MANIFEST.MF
9756e21
index 97b2ef0..5570d05 100644
9756e21
--- a/launch/org.eclipse.cdt.docker.launcher/META-INF/MANIFEST.MF
9756e21
+++ b/launch/org.eclipse.cdt.docker.launcher/META-INF/MANIFEST.MF
9756e21
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
9756e21
 Bundle-ManifestVersion: 2
9756e21
 Bundle-Name: %Plugin.name
9756e21
 Bundle-SymbolicName: org.eclipse.cdt.docker.launcher;singleton:=true
9756e21
-Bundle-Version: 1.1.0.qualifier
9756e21
+Bundle-Version: 1.1.1.qualifier
9756e21
 Bundle-Activator: org.eclipse.cdt.docker.launcher.DockerLaunchUIPlugin
9756e21
 Bundle-Vendor: %Plugin.vendor
9756e21
 Bundle-Localization: plugin
9756e21
diff --git a/launch/org.eclipse.cdt.docker.launcher/src/org/eclipse/cdt/internal/docker/launcher/ContainerTab.java b/launch/org.eclipse.cdt.docker.launcher/src/org/eclipse/cdt/internal/docker/launcher/ContainerTab.java
9756e21
index 0d69db4..26b6915 100644
9756e21
--- a/launch/org.eclipse.cdt.docker.launcher/src/org/eclipse/cdt/internal/docker/launcher/ContainerTab.java
9756e21
+++ b/launch/org.eclipse.cdt.docker.launcher/src/org/eclipse/cdt/internal/docker/launcher/ContainerTab.java
9756e21
@@ -81,6 +81,7 @@ public class ContainerTab extends AbstractLaunchConfigurationTab implements
4f4b808
 			connection = connections[index];
4f4b808
 			connectionUri = connection.getUri();
4f4b808
 			if (!connectionName.equals(connection.getName())) {
4f4b808
+				setErrorMessage(null);
4f4b808
 				updateLaunchConfigurationDialog();
4f4b808
 				initializeImageCombo();
4f4b808
 			}
9756e21
@@ -521,6 +522,7 @@ public class ContainerTab extends AbstractLaunchConfigurationTab implements
9756e21
 	public void changeEvent(IDockerConnection changedConnection, int type) {
4f4b808
 		String currUri = null;
4f4b808
 		int currIndex = 0;
4f4b808
+		setErrorMessage(null);
4f4b808
 		connections = DockerConnectionManager.getInstance().getConnections();
4f4b808
 		if (connection != null) {
4f4b808
 			currUri = connection.getUri();
9756e21
@@ -542,7 +544,12 @@ public class ContainerTab extends AbstractLaunchConfigurationTab implements
4f4b808
 			connectionSelector.setText(connectionNames[index]);
4f4b808
 			connection = connections[index];
4f4b808
 			connectionUri = connection.getUri();
4f4b808
+			java.util.List<IDockerImage> images = connection.getImages();
4f4b808
+			if (images == null || images.size() == 0) {
4f4b808
+				setErrorMessage(Messages.ContainerTab_Error_No_Images);
4f4b808
+			}
4f4b808
 		} else {
4f4b808
+			setErrorMessage(Messages.ContainerTab_Error_No_Connections);
4f4b808
 			connection = null;
4f4b808
 			connectionUri = "";
4f4b808
 			connectionSelector.setText("");
9756e21
@@ -552,7 +559,11 @@ public class ContainerTab extends AbstractLaunchConfigurationTab implements
4f4b808
 
4f4b808
 	public void listChanged(IDockerConnection c,
4f4b808
 			java.util.List<IDockerImage> list) {
4f4b808
+		setErrorMessage(null);
4f4b808
 		final IDockerImage[] finalList = list.toArray(new IDockerImage[0]);
4f4b808
+		if (finalList.length == 0) {
4f4b808
+			setErrorMessage(Messages.ContainerTab_Error_No_Images);
4f4b808
+		}
4f4b808
 		if (c.getName().equals(connection.getName())) {
4f4b808
 			Display.getDefault().syncExec(new Runnable() {
4f4b808
 				@Override
9756e21
-- 
9756e21
cgit v1.1
9756e21