connectivity/com.nokia.carbide.remoteConnections/src/com/nokia/carbide/remoteconnections/internal/registry/Registry.java
changeset 1846 02332f802224
parent 1558 79c7bcfddffc
child 1966 67581ab567b1
equal deleted inserted replaced
1845:d20c44f1f4b3 1846:02332f802224
    29 import java.util.Comparator;
    29 import java.util.Comparator;
    30 import java.util.HashMap;
    30 import java.util.HashMap;
    31 import java.util.HashSet;
    31 import java.util.HashSet;
    32 import java.util.List;
    32 import java.util.List;
    33 import java.util.Map;
    33 import java.util.Map;
       
    34 import java.util.Map.Entry;
    34 import java.util.Set;
    35 import java.util.Set;
    35 import java.util.TreeSet;
    36 import java.util.TreeSet;
    36 import java.util.UUID;
    37 import java.util.UUID;
    37 import java.util.regex.Matcher;
    38 import java.util.regex.Matcher;
    38 import java.util.regex.Pattern;
    39 import java.util.regex.Pattern;
    57 import com.nokia.carbide.remoteconnections.interfaces.IConnectionsManager;
    58 import com.nokia.carbide.remoteconnections.interfaces.IConnectionsManager;
    58 import com.nokia.carbide.remoteconnections.interfaces.IExtensionFilter;
    59 import com.nokia.carbide.remoteconnections.interfaces.IExtensionFilter;
    59 import com.nokia.carbide.remoteconnections.interfaces.IService;
    60 import com.nokia.carbide.remoteconnections.interfaces.IService;
    60 import com.nokia.carbide.remoteconnections.interfaces.AbstractConnection.ConnectionStatus;
    61 import com.nokia.carbide.remoteconnections.interfaces.AbstractConnection.ConnectionStatus;
    61 import com.nokia.carbide.remoteconnections.internal.api.IConnection2;
    62 import com.nokia.carbide.remoteconnections.internal.api.IConnection2;
       
    63 import com.nokia.carbide.remoteconnections.internal.api.IToggleServicesTestingListener;
    62 import com.nokia.carbide.remoteconnections.internal.api.IConnection2.IConnectionStatus;
    64 import com.nokia.carbide.remoteconnections.internal.api.IConnection2.IConnectionStatus;
    63 import com.nokia.carbide.remoteconnections.internal.api.IConnection2.IConnectionStatusChangedListener;
    65 import com.nokia.carbide.remoteconnections.internal.api.IConnection2.IConnectionStatusChangedListener;
    64 import com.nokia.carbide.remoteconnections.internal.api.IConnection2.IConnectionStatus.EConnectionStatus;
    66 import com.nokia.carbide.remoteconnections.internal.api.IConnection2.IConnectionStatus.EConnectionStatus;
    65 import com.nokia.carbide.remoteconnections.internal.ui.ClientServiceSiteUI2;
    67 import com.nokia.carbide.remoteconnections.internal.ui.ClientServiceSiteUI2;
    66 import com.nokia.carbide.remoteconnections.internal.ui.ConnectionUIUtils;
    68 import com.nokia.carbide.remoteconnections.internal.ui.ConnectionUIUtils;
   117 		loadExtensionFilters();
   119 		loadExtensionFilters();
   118 		loadConnectionTypeExtensions();
   120 		loadConnectionTypeExtensions();
   119 		loadServiceExtensions();
   121 		loadServiceExtensions();
   120 		loadConnectedServiceFactoryExtensions();
   122 		loadConnectedServiceFactoryExtensions();
   121 		mapConnectionTypeToServices();
   123 		mapConnectionTypeToServices();
       
   124 		RemoteConnectionsActivator.getDefault().addToggleServicesTestingListener(new IToggleServicesTestingListener() {
       
   125 			public void servicesTestingToggled(boolean enabled) {
       
   126 				setShouldTestServices(enabled);
       
   127 			}
       
   128 		});
   122 	}
   129 	}
   123 
   130 
   124 	private void loadConnectedServiceFactoryExtensions() {
   131 	private void loadConnectedServiceFactoryExtensions() {
   125 		connectedServiceFactories = new ArrayList<IConnectedServiceFactory>();
   132 		connectedServiceFactories = new ArrayList<IConnectedServiceFactory>();
   126 		String loadError = Messages.getString("Registry.ConnectedServiceFactoryExtensionLoadError"); //$NON-NLS-1$
   133 		String loadError = Messages.getString("Registry.ConnectedServiceFactoryExtensionLoadError"); //$NON-NLS-1$
   336 		connectionToConnectedServices.put(connection, connectedServices);
   343 		connectionToConnectedServices.put(connection, connectedServices);
   337 		fireConnectionStoreChanged();
   344 		fireConnectionStoreChanged();
   338 		fireConnectionAdded(connection);
   345 		fireConnectionAdded(connection);
   339 		
   346 		
   340 		setLastConnectionId(connection.getIdentifier());
   347 		setLastConnectionId(connection.getIdentifier());
       
   348 		for (IConnectedService connectedService : connectedServices) {
       
   349 			connectedService.setEnabled(RemoteConnectionsActivator.getDefault().getShouldTestServices());
       
   350 		}
   341 	}
   351 	}
   342 	
   352 	
   343 	private void ensureUniqueId(IConnection connection) {
   353 	private void ensureUniqueId(IConnection connection) {
   344 		String id = connection.getIdentifier();
   354 		String id = connection.getIdentifier();
   345 		if (id == null || id.length() == 0 || findConnection(id) != null)
   355 		if (id == null || id.length() == 0 || findConnection(id) != null)
   688 			id = currentConnection != null ? currentConnection.getIdentifier() : null;
   698 			id = currentConnection != null ? currentConnection.getIdentifier() : null;
   689 		if (id == null) 
   699 		if (id == null) 
   690 			return;
   700 			return;
   691 		RemoteConnectionsActivator.getDefault().getPreferenceStore().setValue(LAST_CONNECTION_ID, id);
   701 		RemoteConnectionsActivator.getDefault().getPreferenceStore().setValue(LAST_CONNECTION_ID, id);
   692 	}
   702 	}
       
   703 
       
   704 	private void setShouldTestServices(boolean shouldTest) {
       
   705 		for (Entry<IConnection, List<IConnectedService>> entry : connectionToConnectedServices.entrySet()) {
       
   706 			for (IConnectedService connectedService : entry.getValue()) {
       
   707 				connectedService.setEnabled(shouldTest);
       
   708 			}	
       
   709 		}
       
   710 	}
   693 }
   711 }