Bug 509095 - Remote Java Application page: missing mnemonics

Change-Id: I677d92b30e3802db3865dc8915428f15307afdad
diff --git a/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/debug/ui/launchConfigurations/JavaConnectTab.java b/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/debug/ui/launchConfigurations/JavaConnectTab.java
index 978ff91..0c73fed 100644
--- a/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/debug/ui/launchConfigurations/JavaConnectTab.java
+++ b/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/debug/ui/launchConfigurations/JavaConnectTab.java
@@ -23,6 +23,7 @@
 import org.eclipse.debug.internal.ui.SWTFactory;
 import org.eclipse.debug.ui.DebugUITools;
 import org.eclipse.debug.ui.IDebugUIConstants;
+import org.eclipse.jdi.internal.connect.ConnectMessages;
 import org.eclipse.jdt.core.IJavaElement;
 import org.eclipse.jdt.core.JavaModelException;
 import org.eclipse.jdt.internal.debug.ui.IJavaDebugHelpContextIds;
@@ -364,7 +365,7 @@
 				String value = ((StringFieldEditor)editor).getStringValue();
 				if (!arg.isValid(value)) {
 					StringBuffer label = new StringBuffer(LegacyActionTools.removeMnemonics(arg.label()));
-					if (label.lastIndexOf(":") == label.length() - 1) { //$NON-NLS-1$
+					if (label.lastIndexOf(ConnectMessages.SocketConnectionLabelSeparator) == label.length() - 1) {
 						label = label.deleteCharAt(label.length() - 1);
 					}
 					setErrorMessage(label.toString() + LauncherMessages.JavaConnectTab__is_invalid__5);
diff --git a/org.eclipse.jdt.debug/jdi/org/eclipse/jdi/internal/connect/ConnectMessages.java b/org.eclipse.jdt.debug/jdi/org/eclipse/jdi/internal/connect/ConnectMessages.java
index d8307c0..71a4b3e 100644
--- a/org.eclipse.jdt.debug/jdi/org/eclipse/jdi/internal/connect/ConnectMessages.java
+++ b/org.eclipse.jdt.debug/jdi/org/eclipse/jdi/internal/connect/ConnectMessages.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2016 IBM Corporation and others.
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -76,6 +76,7 @@
 	public static String PacketReceiveManager_0;
 	public static String SocketTransportService_0;
 	public static String SocketTransportService_1;
+	public static String SocketConnectionLabelSeparator;
 
 	static {
 		// load message values from bundle file
diff --git a/org.eclipse.jdt.debug/jdi/org/eclipse/jdi/internal/connect/ConnectMessages.properties b/org.eclipse.jdt.debug/jdi/org/eclipse/jdi/internal/connect/ConnectMessages.properties
index d3ecf1e..99f9ec8 100644
--- a/org.eclipse.jdt.debug/jdi/org/eclipse/jdi/internal/connect/ConnectMessages.properties
+++ b/org.eclipse.jdt.debug/jdi/org/eclipse/jdi/internal/connect/ConnectMessages.properties
@@ -14,10 +14,15 @@
 PacketReceiveManager_Got_IOException_from_Virtual_Machine_2=Got IOException from Virtual Machine
 PacketSendManager_Got_IOException_from_Virtual_Machine_1=Got IOException from Virtual Machine
 SocketAttachingConnectorImpl_Machine_name_to_which_to_attach_for_VM_connections_1=Machine name to which to attach for VM connections
+#Separator for Remote Java application socket attach and listen arguments
+SocketConnectionLabelSeparator=:
+#For translation of separator ":" it should be consistent to the translated value of SocketConnectionLabelSeparator
 SocketAttachingConnectorImpl_Host_2=&Host:
 SocketAttachingConnectorImpl_Port_number_to_which_to_attach_for_VM_connections_3=Port number to which to attach for VM connections
+#For translation of separator ":" it should be consistent to the translated value of SocketConnectionLabelSeparator
 SocketAttachingConnectorImpl_Port_4=Po&rt:
 SocketAttachingConnectorImpl_1=Connection Timeout
+#For translation of separator ":" it should be consistent to the translated value of SocketConnectionLabelSeparator
 SocketAttachingConnectorImpl_2=Connection Timeout:
 SocketAttachingConnectorImpl_Attaches_by_socket_to_other_VMs_5=Attaches by socket to other VMs
 SocketAttachingConnectorImpl_Connection_argument_is_not_of_the_right_type_6=Connection argument is not of the right type
@@ -40,13 +45,16 @@
 SocketLaunchingConnectorImpl_Necessary_connection_argument_is_null_15=Necessary connection argument is null
 SocketLaunchingConnectorImpl_Connection_argument_is_not_a_number_16=Connection argument is not a number
 SocketListeningConnectorImpl_Port_number_at_which_to_listen_for_VM_connections_1=Port number at which to listen for VM connections
+#For translation of separator ":" it should be consistent to the translated value of SocketConnectionLabelSeparator
 SocketListeningConnectorImpl_Port_2=Po&rt:
 SocketListeningConnectorImpl_Timeout_before_accept_returns_3=Timeout before accept returns
+#For translation of separator ":" it should be consistent to the translated value of SocketConnectionLabelSeparator
 SocketListeningConnectorImpl_Timeout_4=Timeout:
 SocketListeningConnectorImpl_Accepts_socket_connections_initiated_by_other_VMs_5=Accepts socket connections initiated by other VMs
 SocketListeningConnectorImpl_Connection_argument_is_not_of_the_right_type_6=Connection argument is not of the right type
 SocketListeningConnectorImpl_Necessary_connection_argument_is_null_7=Necessary connection argument is null
 SocketListeningConnectorImpl_Connection_argument_is_not_a_number_8=Connection argument is not a number
+#For translation of separator ":" it should be consistent to the translated value of SocketConnectionLabelSeparator
 SocketListeningConnectorImpl_Limit=Connection &limit:
 SocketListeningConnectorImpl_Limit_incoming_connections=Limit incoming connections (0 = no limit)
 SocketListeningConnectorImpl_ListeningConnector_Socket_Port=ListeningConnector Socket Port=
@@ -67,4 +75,4 @@
 PacketReceiveManager_Got__0__from_Virtual_Machine___1__1=Got {0} from Virtual Machine: {1}
 PacketReceiveManager_0=Timeout occurred while waiting for packet {0}.
 SocketTransportService_0=Attach Thread
-SocketTransportService_1=Handshake Thread
+SocketTransportService_1=Handshake Thread
\ No newline at end of file