Add support in discovery UI for search providers supporting no
destination categories.
This commit is very huge because of refactoring sets to lists in UI
components input
diff --git a/bundles/org.eclipse.platform.discovery.compatibility/src/org/eclipse/platform/discovery/compatibility/internal/readers/impl/SearchPageParser.java b/bundles/org.eclipse.platform.discovery.compatibility/src/org/eclipse/platform/discovery/compatibility/internal/readers/impl/SearchPageParser.java
index 83a935d..f11b016 100644
--- a/bundles/org.eclipse.platform.discovery.compatibility/src/org/eclipse/platform/discovery/compatibility/internal/readers/impl/SearchPageParser.java
+++ b/bundles/org.eclipse.platform.discovery.compatibility/src/org/eclipse/platform/discovery/compatibility/internal/readers/impl/SearchPageParser.java
@@ -10,8 +10,8 @@
*******************************************************************************/
package org.eclipse.platform.discovery.compatibility.internal.readers.impl;
-import java.util.HashSet;
-import java.util.Set;
+import java.util.ArrayList;
+import java.util.List;
import org.eclipse.core.runtime.IConfigurationElement;
import org.eclipse.core.runtime.IExtensionRegistry;
@@ -32,8 +32,8 @@
}
@Override
- public Set<ISearchPageDescription> readContributions() {
- Set<ISearchPageDescription> result = new HashSet<ISearchPageDescription>();
+ public List<ISearchPageDescription> readContributions() {
+ final List<ISearchPageDescription> result = new ArrayList<ISearchPageDescription>();
for(IConfigurationElement element: getConfigurationElements()) {
//note that according to the javadoc of IConfigurationElement, the obtained attributes will be automatically translated
String label = element.getAttribute(LABEL);
diff --git a/bundles/org.eclipse.platform.discovery.core/src/org/eclipse/platform/discovery/core/internal/SearchConsoleController.java b/bundles/org.eclipse.platform.discovery.core/src/org/eclipse/platform/discovery/core/internal/SearchConsoleController.java
index d560e56..29f4a24 100644
--- a/bundles/org.eclipse.platform.discovery.core/src/org/eclipse/platform/discovery/core/internal/SearchConsoleController.java
+++ b/bundles/org.eclipse.platform.discovery.core/src/org/eclipse/platform/discovery/core/internal/SearchConsoleController.java
@@ -10,36 +10,37 @@
*******************************************************************************/
package org.eclipse.platform.discovery.core.internal;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.platform.discovery.core.api.ISearchConsoleMasterController;
-import org.eclipse.platform.discovery.core.api.ISearchContext;
-import org.eclipse.platform.discovery.core.api.SearchEvent;
-import org.eclipse.platform.discovery.core.internal.console.ISearchConsoleController;
-import org.eclipse.platform.discovery.core.internal.console.ISearchConsoleControllerOutputView;
-import org.eclipse.platform.discovery.core.internal.events.handlers.ISearchEventHandler;
-import org.eclipse.platform.discovery.core.internal.plugin.text.DiscoveryCoreMessages;
-import org.eclipse.platform.discovery.runtime.api.GroupingHierarchy;
-import org.eclipse.platform.discovery.runtime.api.ISearchDestination;
-import org.eclipse.platform.discovery.runtime.api.ISearchParameters;
-import org.eclipse.platform.discovery.runtime.api.ISearchProvider;
-import org.eclipse.platform.discovery.runtime.api.ISearchQuery;
-import org.eclipse.platform.discovery.runtime.api.ISearchSubdestination;
-import org.eclipse.platform.discovery.runtime.api.SearchCancelledException;
-import org.eclipse.platform.discovery.runtime.api.SearchFailedException;
-import org.eclipse.platform.discovery.runtime.internal.DestinationCategoryNotFoundException;
-import org.eclipse.platform.discovery.runtime.internal.ISearchProviderConfiguration;
-import org.eclipse.platform.discovery.runtime.internal.ProviderNotFoundException;
-import org.eclipse.platform.discovery.runtime.internal.impl.DescriptionsUtil;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDescriptionsUtil;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IObjectTypeDescription;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.ISearchProviderDescription;
-import org.eclipse.platform.discovery.util.api.env.IDiscoveryEnvironment;
-import org.eclipse.platform.discovery.util.internal.session.ISessionManager;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.platform.discovery.core.api.ISearchConsoleMasterController;
+import org.eclipse.platform.discovery.core.api.ISearchContext;
+import org.eclipse.platform.discovery.core.api.SearchEvent;
+import org.eclipse.platform.discovery.core.internal.console.ISearchConsoleController;
+import org.eclipse.platform.discovery.core.internal.console.ISearchConsoleControllerOutputView;
+import org.eclipse.platform.discovery.core.internal.events.handlers.ISearchEventHandler;
+import org.eclipse.platform.discovery.core.internal.plugin.text.DiscoveryCoreMessages;
+import org.eclipse.platform.discovery.runtime.api.GroupingHierarchy;
+import org.eclipse.platform.discovery.runtime.api.ISearchDestination;
+import org.eclipse.platform.discovery.runtime.api.ISearchParameters;
+import org.eclipse.platform.discovery.runtime.api.ISearchProvider;
+import org.eclipse.platform.discovery.runtime.api.ISearchQuery;
+import org.eclipse.platform.discovery.runtime.api.ISearchSubdestination;
+import org.eclipse.platform.discovery.runtime.api.SearchCancelledException;
+import org.eclipse.platform.discovery.runtime.api.SearchFailedException;
+import org.eclipse.platform.discovery.runtime.internal.DestinationCategoryNotFoundException;
+import org.eclipse.platform.discovery.runtime.internal.ISearchProviderConfiguration;
+import org.eclipse.platform.discovery.runtime.internal.ProviderNotFoundException;
+import org.eclipse.platform.discovery.runtime.internal.impl.DescriptionsUtil;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDescriptionsUtil;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IObjectTypeDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.ISearchProviderDescription;
+import org.eclipse.platform.discovery.util.api.env.IDiscoveryEnvironment;
+import org.eclipse.platform.discovery.util.internal.session.ISessionManager;
/**
@@ -79,7 +80,7 @@
public void objectTypeSelected(final IObjectTypeDescription selectedObject)
{
if(selectedObject == null) return;
- final Set<IDestinationCategoryDescription> destinationCategories = searchProviderConfiguration.getAvailableDestinationCategoriesForObjectType(selectedObject);
+ final List<IDestinationCategoryDescription> destinationCategories = searchProviderConfiguration.getAvailableDestinationCategoriesForObjectType(selectedObject);
view.showDestinationsCategories(destinationCategories);
}
@@ -123,9 +124,9 @@
}
}
- private Set<ISearchSubdestination> filterActiveSubdestinations(final Set<ISearchSubdestination> allSubdestinations, final IObjectTypeDescription objectType, final IDestinationCategoryDescription destCategory, ISearchProviderDescription searchProvider)
+ private List<ISearchSubdestination> filterActiveSubdestinations(final List<ISearchSubdestination> allSubdestinations, final IObjectTypeDescription objectType, final IDestinationCategoryDescription destCategory, ISearchProviderDescription searchProvider)
{
- final Set<ISearchSubdestination> result = new HashSet<ISearchSubdestination>();
+ final List<ISearchSubdestination> result = new ArrayList<ISearchSubdestination>();
for(ISearchSubdestination subDest : allSubdestinations)
{
if(searchProviderConfiguration.isSubdestinationActive(subDest, objectType, destCategory, searchProvider))
@@ -145,19 +146,20 @@
}
else
{
- view.showGroupingHierarchies(new HashSet<GroupingHierarchy>());
+ view.showGroupingHierarchies(new ArrayList<GroupingHierarchy>());
}
}
- private Set<GroupingHierarchy> determineGroupingHierarchy(final IObjectTypeDescription objectType, final ISearchDestination destination)
+ private List<GroupingHierarchy> determineGroupingHierarchy(final IObjectTypeDescription objectType, final ISearchDestination destination)
{
try
{
final ISearchProviderDescription searchProviderDescr = searchProviderConfiguration.getActiveSearchProvider(objectType, getDestinationCategory(destination));
final ISearchProvider providerInstance = searchProviderDescr.createInstance();
- final Set<ISearchSubdestination> allSubdestintations = searchProviderConfiguration.getAvailableSearchSubdestinations(objectType, getDestinationCategory(destination), searchProviderDescr);
- final Set<ISearchSubdestination> activeSubdestinations = filterActiveSubdestinations(allSubdestintations, objectType, getDestinationCategory(destination), searchProviderDescr);
- return providerInstance.getGroupingHierarchies(destination, activeSubdestinations);
+ final List<ISearchSubdestination> allSubdestintations = searchProviderConfiguration.getAvailableSearchSubdestinations(objectType, getDestinationCategory(destination), searchProviderDescr);
+ final List<ISearchSubdestination> activeSubdestinations = filterActiveSubdestinations(allSubdestintations, objectType, getDestinationCategory(destination), searchProviderDescr);
+
+ return new ArrayList<GroupingHierarchy>(providerInstance.getGroupingHierarchies(destination, new HashSet<ISearchSubdestination>(activeSubdestinations)));
}
catch(ProviderNotFoundException e)
{
@@ -174,7 +176,7 @@
{
public void handleSearch(final SearchEvent event) throws ProviderNotFoundException, SearchFailedException
{
- final Set<IDestinationCategoryDescription> destCategories = destinationCategories(event.getSearchParameters().getSearchDestination());
+ final List<IDestinationCategoryDescription> destCategories = destinationCategories(event.getSearchParameters().getSearchDestination());
final IDestinationCategoryDescription category = destCategories.iterator().next();
final ISearchQuery searchQuery = createQuery(event.getSearchParameters());
final IObjectTypeDescription objectType = descriptionsUtil.objectTypeForId(event.getSearchParameters().getObjectTypeId());
@@ -241,9 +243,9 @@
return sc;
}
- private Set<IDestinationCategoryDescription> destinationCategories(final ISearchDestination destination)
+ private List<IDestinationCategoryDescription> destinationCategories(final ISearchDestination destination)
{
- final Set<IDestinationCategoryDescription> destCategories;
+ final List<IDestinationCategoryDescription> destCategories;
try
{
destCategories = searchProviderConfiguration.getDestinationCategoriesForDestination(destination);
diff --git a/bundles/org.eclipse.platform.discovery.core/src/org/eclipse/platform/discovery/core/internal/console/ISearchConsoleControllerOutputView.java b/bundles/org.eclipse.platform.discovery.core/src/org/eclipse/platform/discovery/core/internal/console/ISearchConsoleControllerOutputView.java
index 54df6a3..f9a4aa6 100644
--- a/bundles/org.eclipse.platform.discovery.core/src/org/eclipse/platform/discovery/core/internal/console/ISearchConsoleControllerOutputView.java
+++ b/bundles/org.eclipse.platform.discovery.core/src/org/eclipse/platform/discovery/core/internal/console/ISearchConsoleControllerOutputView.java
@@ -10,7 +10,7 @@
*******************************************************************************/
package org.eclipse.platform.discovery.core.internal.console;
-import java.util.Set;
+import java.util.List;
import org.eclipse.platform.discovery.core.api.ISearchContext;
import org.eclipse.platform.discovery.runtime.api.GroupingHierarchy;
@@ -29,7 +29,7 @@
* @param objectTypes
* a set of object types to be shown by the view
*/
- public void showObjectTypes(final Set<IObjectTypeDescription> objectTypes);
+ public void showObjectTypes(final List<IObjectTypeDescription> objectTypes);
/**
* Show the destination categories specified
@@ -37,7 +37,7 @@
* @param destinations
* a set of destinations to be displayed by the view
*/
- public void showDestinationsCategories(final Set<IDestinationCategoryDescription> destinationCategories);
+ public void showDestinationsCategories(final List<IDestinationCategoryDescription> destinationCategories);
/**
* Show the result of the search query
@@ -56,7 +56,7 @@
* Shows the grouping hierarchies specified
* @param groupingHierarchies a set of hierarchies. never null;
*/
- public void showGroupingHierarchies(final Set<GroupingHierarchy> groupingHierarchies);
+ public void showGroupingHierarchies(final List<GroupingHierarchy> groupingHierarchies);
/**
* Sets the string specified as status message
diff --git a/bundles/org.eclipse.platform.discovery.core/src/org/eclipse/platform/discovery/core/internal/selectors/IStatefulItemsSelector.java b/bundles/org.eclipse.platform.discovery.core/src/org/eclipse/platform/discovery/core/internal/selectors/IItemSelector.java
similarity index 74%
rename from bundles/org.eclipse.platform.discovery.core/src/org/eclipse/platform/discovery/core/internal/selectors/IStatefulItemsSelector.java
rename to bundles/org.eclipse.platform.discovery.core/src/org/eclipse/platform/discovery/core/internal/selectors/IItemSelector.java
index fe40499..4c0ab3d 100644
--- a/bundles/org.eclipse.platform.discovery.core/src/org/eclipse/platform/discovery/core/internal/selectors/IStatefulItemsSelector.java
+++ b/bundles/org.eclipse.platform.discovery.core/src/org/eclipse/platform/discovery/core/internal/selectors/IItemSelector.java
@@ -10,9 +10,9 @@
*******************************************************************************/
package org.eclipse.platform.discovery.core.internal.selectors;
-import java.util.Set;
-
-import org.eclipse.platform.discovery.core.api.IEnablable;
+import java.util.List;
+
+import org.eclipse.platform.discovery.core.api.IEnablable;
/**
@@ -23,30 +23,29 @@
* @param <T> the type of elements which will be returned by the selector
* @param <K> the type of the elements which will be set to its input
*/
-public interface IStatefulItemsSelector<T, K> extends IEnablable
+public interface IItemSelector<T, K> extends IEnablable
{
/**
- * Retrieve a set of currently selected items
- *
- * @return a set of currently selected items or an empty set if no items are selected
+ * Retrieves the item currently selected or null if no item is selected
*/
- public Set<T> getSelectedItems();
+ public T getSelectedItem();
/**
* Sets the input set of items to be selected from. Input may change at any time
*
* @param input
*/
- public void setInput(Set<K> input);
+ public void setInput(List<K> input);
/**
* Handle selection change
- * @param newSelection a set of newly selected elements
+ * @param newSelection the newly selected element or null if the selection is cleared
*/
- public void handleSelectionChange(final Set<T> newSelection);
+ public void handleSelectionChange(final T newSelection);
/**
* Updates the selector
*/
public void update();
}
+
\ No newline at end of file
diff --git a/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/ViewCustXpParser.java b/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/ViewCustXpParser.java
index 4dc705b..45b24f9 100644
--- a/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/ViewCustXpParser.java
+++ b/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/ViewCustXpParser.java
@@ -10,18 +10,17 @@
*******************************************************************************/
package org.eclipse.platform.discovery.integration.internal;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionRegistry;
-import org.eclipse.platform.discovery.runtime.internal.impl.XpParsersFactory;
-import org.eclipse.platform.discovery.runtime.internal.xp.IContributionsReader;
-import org.eclipse.platform.discovery.runtime.internal.xp.IGenericXpParser;
-import org.eclipse.platform.discovery.util.internal.logging.ILogger;
-import org.eclipse.platform.discovery.util.internal.logging.Logger;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.core.runtime.IExtensionRegistry;
+import org.eclipse.platform.discovery.runtime.internal.impl.XpParsersFactory;
+import org.eclipse.platform.discovery.runtime.internal.xp.IContributionsReader;
+import org.eclipse.platform.discovery.runtime.internal.xp.IGenericXpParser;
+import org.eclipse.platform.discovery.util.internal.logging.ILogger;
+import org.eclipse.platform.discovery.util.internal.logging.Logger;
/**
@@ -54,9 +53,9 @@
@SuppressWarnings("unchecked")
@Override
- public Set<T> readContributions()
+ public List<T> readContributions()
{
- final Set<T> result = new HashSet<T>();
+ final List<T> result = new ArrayList<T>();
final List<IConfigurationElement> configElements = genericXpParser().getConfigurationElements(extensionRegistry, xpId(), elementName());
for (IConfigurationElement configElem : configElements)
{
diff --git a/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/plugin/DiscoveryIntegrationPlugin.java b/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/plugin/DiscoveryIntegrationPlugin.java
index faee216..a7e2e05 100644
--- a/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/plugin/DiscoveryIntegrationPlugin.java
+++ b/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/plugin/DiscoveryIntegrationPlugin.java
@@ -10,68 +10,69 @@
*******************************************************************************/
package org.eclipse.platform.discovery.integration.internal.plugin;
-import java.io.File;
-import java.io.IOException;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.ISchedulingRule;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.platform.discovery.core.api.IContributedAction;
-import org.eclipse.platform.discovery.core.api.ISearchConsoleMasterController;
-import org.eclipse.platform.discovery.core.api.ISearchConsoleSlaveController;
-import org.eclipse.platform.discovery.core.api.ISearchFavoritesMasterController;
-import org.eclipse.platform.discovery.core.api.ISearchFavoritesSlaveController;
-import org.eclipse.platform.discovery.core.api.ISlaveController;
-import org.eclipse.platform.discovery.core.internal.IDiscoveryView;
-import org.eclipse.platform.discovery.core.internal.ISearchConsoleView;
-import org.eclipse.platform.discovery.core.internal.ISearchSession;
-import org.eclipse.platform.discovery.core.internal.SearchConsoleController;
-import org.eclipse.platform.discovery.core.internal.console.ISearchConsoleController;
-import org.eclipse.platform.discovery.core.internal.console.ISearchConsoleControllerOutputView;
-import org.eclipse.platform.discovery.core.internal.favorites.IPersistenceUtil;
-import org.eclipse.platform.discovery.core.internal.favorites.ISearchFavoritesControllerOutputView;
-import org.eclipse.platform.discovery.core.internal.favorites.SearchFavoritesContentManager;
-import org.eclipse.platform.discovery.core.internal.favorites.SearchFavoritesController;
-import org.eclipse.platform.discovery.core.internal.favorites.SearchFavoritesPersistenceUtil;
-import org.eclipse.platform.discovery.core.internal.favorites.SearchFavoritesPersistenceUtil.IPersistenceContext;
-import org.eclipse.platform.discovery.integration.internal.slavecontrollers.SlaveControllersConfiguration;
-import org.eclipse.platform.discovery.integration.internal.viewcustomization.ViewCustomizationConfiguration;
-import org.eclipse.platform.discovery.runtime.api.persistence.DestinationItemPair;
-import org.eclipse.platform.discovery.runtime.internal.ISearchProviderConfiguration;
-import org.eclipse.platform.discovery.runtime.internal.SearchProviderConfigurationFactory;
-import org.eclipse.platform.discovery.runtime.internal.persistence.IMementoContentManager;
-import org.eclipse.platform.discovery.runtime.internal.persistence.MementoContentManagerException;
-import org.eclipse.platform.discovery.runtime.internal.persistence.util.IPersistenceProviderRegistry;
-import org.eclipse.platform.discovery.ui.api.IGenericViewCustomization;
-import org.eclipse.platform.discovery.ui.api.IMasterDiscoveryView;
-import org.eclipse.platform.discovery.ui.api.IViewUiContext;
-import org.eclipse.platform.discovery.ui.api.impl.DefaultSessionIds;
-import org.eclipse.platform.discovery.ui.api.impl.ErrorHandler;
-import org.eclipse.platform.discovery.ui.internal.view.ICustomizableView;
-import org.eclipse.platform.discovery.ui.internal.view.SearchConsoleView;
-import org.eclipse.platform.discovery.util.api.env.IDiscoveryEnvironment;
-import org.eclipse.platform.discovery.util.api.env.IErrorHandler;
-import org.eclipse.platform.discovery.util.api.longop.ILongOperationRunner;
-import org.eclipse.platform.discovery.util.internal.logging.Logger;
-import org.eclipse.platform.discovery.util.internal.longop.ModalContextLongOpRunner;
-import org.eclipse.platform.discovery.util.internal.session.ISessionManager;
-import org.eclipse.platform.discovery.util.internal.session.SessionManager;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.IPartListener2;
-import org.eclipse.ui.IPartService;
-import org.eclipse.ui.IStartup;
-import org.eclipse.ui.IViewReference;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchPartReference;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.WorkbenchException;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.osgi.framework.BundleContext;
+import java.io.File;
+import java.io.IOException;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.jobs.ISchedulingRule;
+import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.platform.discovery.core.api.IContributedAction;
+import org.eclipse.platform.discovery.core.api.ISearchConsoleMasterController;
+import org.eclipse.platform.discovery.core.api.ISearchConsoleSlaveController;
+import org.eclipse.platform.discovery.core.api.ISearchFavoritesMasterController;
+import org.eclipse.platform.discovery.core.api.ISearchFavoritesSlaveController;
+import org.eclipse.platform.discovery.core.api.ISlaveController;
+import org.eclipse.platform.discovery.core.internal.IDiscoveryView;
+import org.eclipse.platform.discovery.core.internal.ISearchConsoleView;
+import org.eclipse.platform.discovery.core.internal.ISearchSession;
+import org.eclipse.platform.discovery.core.internal.SearchConsoleController;
+import org.eclipse.platform.discovery.core.internal.console.ISearchConsoleController;
+import org.eclipse.platform.discovery.core.internal.console.ISearchConsoleControllerOutputView;
+import org.eclipse.platform.discovery.core.internal.favorites.IPersistenceUtil;
+import org.eclipse.platform.discovery.core.internal.favorites.ISearchFavoritesControllerOutputView;
+import org.eclipse.platform.discovery.core.internal.favorites.SearchFavoritesContentManager;
+import org.eclipse.platform.discovery.core.internal.favorites.SearchFavoritesController;
+import org.eclipse.platform.discovery.core.internal.favorites.SearchFavoritesPersistenceUtil;
+import org.eclipse.platform.discovery.core.internal.favorites.SearchFavoritesPersistenceUtil.IPersistenceContext;
+import org.eclipse.platform.discovery.integration.internal.slavecontrollers.SlaveControllersConfiguration;
+import org.eclipse.platform.discovery.integration.internal.viewcustomization.ViewCustomizationConfiguration;
+import org.eclipse.platform.discovery.runtime.api.persistence.DestinationItemPair;
+import org.eclipse.platform.discovery.runtime.internal.ISearchProviderConfiguration;
+import org.eclipse.platform.discovery.runtime.internal.SearchProviderConfigurationFactory;
+import org.eclipse.platform.discovery.runtime.internal.persistence.IMementoContentManager;
+import org.eclipse.platform.discovery.runtime.internal.persistence.MementoContentManagerException;
+import org.eclipse.platform.discovery.runtime.internal.persistence.util.IPersistenceProviderRegistry;
+import org.eclipse.platform.discovery.ui.api.IGenericViewCustomization;
+import org.eclipse.platform.discovery.ui.api.IMasterDiscoveryView;
+import org.eclipse.platform.discovery.ui.api.IViewUiContext;
+import org.eclipse.platform.discovery.ui.api.impl.DefaultSessionIds;
+import org.eclipse.platform.discovery.ui.api.impl.ErrorHandler;
+import org.eclipse.platform.discovery.ui.internal.view.ICustomizableView;
+import org.eclipse.platform.discovery.ui.internal.view.SearchConsoleView;
+import org.eclipse.platform.discovery.util.api.env.IDiscoveryEnvironment;
+import org.eclipse.platform.discovery.util.api.env.IErrorHandler;
+import org.eclipse.platform.discovery.util.api.longop.ILongOperationRunner;
+import org.eclipse.platform.discovery.util.internal.logging.Logger;
+import org.eclipse.platform.discovery.util.internal.longop.ModalContextLongOpRunner;
+import org.eclipse.platform.discovery.util.internal.session.ISessionManager;
+import org.eclipse.platform.discovery.util.internal.session.SessionManager;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.ui.IPartListener2;
+import org.eclipse.ui.IPartService;
+import org.eclipse.ui.IStartup;
+import org.eclipse.ui.IViewReference;
+import org.eclipse.ui.IWorkbenchPart;
+import org.eclipse.ui.IWorkbenchPartReference;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.WorkbenchException;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.BundleContext;
/**
@@ -325,7 +326,7 @@
consoleView.setDefaultSessionId(DefaultSessionIds.mainSearchSessionId);
consoleController = createSearchConsoleController(consoleView.getControllerView(), searchProviderConfiguration(), environment);
- final Set<ISearchConsoleSlaveController> slaveControllers = slaveControllersConfig().availableSearchConsoleSlaveControllers();
+ final List<ISearchConsoleSlaveController> slaveControllers = slaveControllersConfig().availableSearchConsoleSlaveControllers();
configureSlaveControllers(consoleController, slaveControllers);
final Set<IGenericViewCustomization> viewCust = new HashSet<IGenericViewCustomization>(viewCustomizationsConfig().availableSearchConsoleCustomizations());
@@ -375,7 +376,7 @@
final IMasterDiscoveryView masterView = getMasterViewFromPart(wbPart);
- final Set<ISearchFavoritesSlaveController> slaveControllers = slaveControllersConfig().availableSearchFavoritesSlaveControllers();
+ final List<ISearchFavoritesSlaveController> slaveControllers = slaveControllersConfig().availableSearchFavoritesSlaveControllers();
final Set<IGenericViewCustomization> viewCust = new HashSet<IGenericViewCustomization>(viewCustomizationsConfig().availableSearchFavoritesCustomizations());
searchFavoritesController = createSearchFavoritesController(favoritesView.getControllerView(), env);
favoritesView.registerController(searchFavoritesController);
@@ -482,7 +483,7 @@
}
}
- private void configureSlaveControllers(final ISearchConsoleMasterController masterController, final Set<ISearchConsoleSlaveController> slaveControllers)
+ private void configureSlaveControllers(final ISearchConsoleMasterController masterController, final List<ISearchConsoleSlaveController> slaveControllers)
{
for(ISearchConsoleSlaveController slave : slaveControllers)
{
diff --git a/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/plugin/ISlaveControllersConfiguration.java b/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/plugin/ISlaveControllersConfiguration.java
index 7fe99b9..a6c2177 100644
--- a/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/plugin/ISlaveControllersConfiguration.java
+++ b/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/plugin/ISlaveControllersConfiguration.java
@@ -10,11 +10,11 @@
*******************************************************************************/
package org.eclipse.platform.discovery.integration.internal.plugin;
-import java.util.Set;
-
-import org.eclipse.platform.discovery.core.api.ISearchConsoleSlaveController;
-import org.eclipse.platform.discovery.core.api.ISearchFavoritesSlaveController;
-import org.eclipse.platform.discovery.integration.internal.ICustomizationConfig;
+import java.util.List;
+
+import org.eclipse.platform.discovery.core.api.ISearchConsoleSlaveController;
+import org.eclipse.platform.discovery.core.api.ISearchFavoritesSlaveController;
+import org.eclipse.platform.discovery.integration.internal.ICustomizationConfig;
public interface ISlaveControllersConfiguration extends ICustomizationConfig
@@ -22,10 +22,10 @@
/**
* Retrieves a set of available search console "slave" controllers
*/
- public Set<ISearchConsoleSlaveController> availableSearchConsoleSlaveControllers();
+ public List<ISearchConsoleSlaveController> availableSearchConsoleSlaveControllers();
/**
* Retrieves a set of available search favorites "slave" controllers
*/
- public Set<ISearchFavoritesSlaveController> availableSearchFavoritesSlaveControllers();
+ public List<ISearchFavoritesSlaveController> availableSearchFavoritesSlaveControllers();
}
\ No newline at end of file
diff --git a/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/plugin/IViewCustomizationConfiguration.java b/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/plugin/IViewCustomizationConfiguration.java
index 5f1c3c8..492860e 100644
--- a/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/plugin/IViewCustomizationConfiguration.java
+++ b/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/plugin/IViewCustomizationConfiguration.java
@@ -10,11 +10,12 @@
*******************************************************************************/
package org.eclipse.platform.discovery.integration.internal.plugin;
-import java.util.Set;
-import org.eclipse.platform.discovery.integration.internal.ICustomizationConfig;
-import org.eclipse.platform.discovery.ui.api.ISearchFavoritesViewCustomization;
-import org.eclipse.platform.discovery.ui.api.ISearchConsoleCustomization;
+import java.util.List;
+
+import org.eclipse.platform.discovery.integration.internal.ICustomizationConfig;
+import org.eclipse.platform.discovery.ui.api.ISearchConsoleCustomization;
+import org.eclipse.platform.discovery.ui.api.ISearchFavoritesViewCustomization;
/**
@@ -26,10 +27,10 @@
/**
* Retrieve a set of available search console view customizations or an empty set if none
*/
- public Set<ISearchConsoleCustomization> availableSearchConsoleCustomizations();
+ public List<ISearchConsoleCustomization> availableSearchConsoleCustomizations();
/**
* Retrieve a set of available search favorites view customizations or an empty set if none
*/
- public Set<ISearchFavoritesViewCustomization> availableSearchFavoritesCustomizations();
+ public List<ISearchFavoritesViewCustomization> availableSearchFavoritesCustomizations();
}
diff --git a/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/slavecontrollers/SlaveControllersConfiguration.java b/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/slavecontrollers/SlaveControllersConfiguration.java
index 29843ba..2585b65 100644
--- a/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/slavecontrollers/SlaveControllersConfiguration.java
+++ b/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/slavecontrollers/SlaveControllersConfiguration.java
@@ -10,7 +10,7 @@
*******************************************************************************/
package org.eclipse.platform.discovery.integration.internal.slavecontrollers;
-import java.util.Set;
+import java.util.List;
import org.eclipse.core.runtime.Platform;
import org.eclipse.platform.discovery.core.api.ISearchConsoleSlaveController;
@@ -73,12 +73,12 @@
};
}
- public Set<ISearchConsoleSlaveController> availableSearchConsoleSlaveControllers()
+ public List<ISearchConsoleSlaveController> availableSearchConsoleSlaveControllers()
{
return seXpParser().readContributions();
}
- public Set<ISearchFavoritesSlaveController> availableSearchFavoritesSlaveControllers()
+ public List<ISearchFavoritesSlaveController> availableSearchFavoritesSlaveControllers()
{
return sbXpParser().readContributions();
}
diff --git a/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/viewcustomization/SaveInFavoritesMenuAction.java b/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/viewcustomization/SaveInFavoritesMenuAction.java
index cc00048..806bd0d 100644
--- a/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/viewcustomization/SaveInFavoritesMenuAction.java
+++ b/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/viewcustomization/SaveInFavoritesMenuAction.java
@@ -10,19 +10,20 @@
*******************************************************************************/
package org.eclipse.platform.discovery.integration.internal.viewcustomization;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.Set;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.platform.discovery.core.api.ISearchContext;
-import org.eclipse.platform.discovery.ui.api.ISearchFavoritesViewCustomization;
-import org.eclipse.platform.discovery.ui.internal.view.ISearchFavoritesItemsAdder;
-import org.eclipse.platform.discovery.ui.internal.view.SearchFavoritesItemsAdder;
-import org.eclipse.platform.discovery.util.api.env.IDiscoveryEnvironment;
-import org.eclipse.platform.discovery.util.api.longop.ILongOperationRunner;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.jface.action.Action;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.platform.discovery.core.api.ISearchContext;
+import org.eclipse.platform.discovery.ui.api.ISearchFavoritesViewCustomization;
+import org.eclipse.platform.discovery.ui.internal.view.ISearchFavoritesItemsAdder;
+import org.eclipse.platform.discovery.ui.internal.view.SearchFavoritesItemsAdder;
+import org.eclipse.platform.discovery.util.api.env.IDiscoveryEnvironment;
+import org.eclipse.platform.discovery.util.api.longop.ILongOperationRunner;
/**
@@ -50,7 +51,7 @@
* @param environment
* environment
*/
- public SaveInFavoritesMenuAction(final IConfigurableContributedAction contributedAction, final ISelection selection, final ISearchContext searchContext, final Set<ISearchFavoritesViewCustomization> sbViewCustomizations, final IDiscoveryEnvironment environment)
+ public SaveInFavoritesMenuAction(final IConfigurableContributedAction contributedAction, final ISelection selection, final ISearchContext searchContext, final List<ISearchFavoritesViewCustomization> sbViewCustomizations, final IDiscoveryEnvironment environment)
{
super();
this.selection = selection;
@@ -74,7 +75,7 @@
itemsAdder.addItems(this.selection);
}
- protected ISearchFavoritesItemsAdder createSbAdder(final IConfigurableContributedAction saveAction, final Set<ISearchFavoritesViewCustomization> sbViewCustomizations, final IDiscoveryEnvironment environment, final ISelection selection, final ISearchContext searchCtx)
+ protected ISearchFavoritesItemsAdder createSbAdder(final IConfigurableContributedAction saveAction, final List<ISearchFavoritesViewCustomization> sbViewCustomizations, final IDiscoveryEnvironment environment, final ISelection selection, final ISearchContext searchCtx)
{
return new SearchFavoritesItemsAdder(sbViewCustomizations, environment.operationRunner())
{
diff --git a/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/viewcustomization/SaveInFavoritesViewCustomization.java b/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/viewcustomization/SaveInFavoritesViewCustomization.java
index f42fc87..4a160fa 100644
--- a/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/viewcustomization/SaveInFavoritesViewCustomization.java
+++ b/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/viewcustomization/SaveInFavoritesViewCustomization.java
@@ -10,19 +10,19 @@
*******************************************************************************/
package org.eclipse.platform.discovery.integration.internal.viewcustomization;
-import java.util.Set;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.platform.discovery.core.api.IContributedAction;
-import org.eclipse.platform.discovery.core.api.ISearchContext;
-import org.eclipse.platform.discovery.integration.internal.plugin.DiscoveryIntegrationMessages;
-import org.eclipse.platform.discovery.integration.internal.plugin.IViewCustomizationConfiguration;
-import org.eclipse.platform.discovery.ui.api.IMasterDiscoveryView;
-import org.eclipse.platform.discovery.ui.api.IResultsViewAccessor;
-import org.eclipse.platform.discovery.ui.api.ISearchFavoritesViewCustomization;
-import org.eclipse.platform.discovery.ui.api.ISearchConsoleCustomization;
-import org.eclipse.platform.discovery.ui.api.impl.GenericViewCustomizationImpl;
-import org.eclipse.platform.discovery.util.api.env.IDiscoveryEnvironment;
+import java.util.List;
+
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.platform.discovery.core.api.IContributedAction;
+import org.eclipse.platform.discovery.core.api.ISearchContext;
+import org.eclipse.platform.discovery.integration.internal.plugin.DiscoveryIntegrationMessages;
+import org.eclipse.platform.discovery.integration.internal.plugin.IViewCustomizationConfiguration;
+import org.eclipse.platform.discovery.ui.api.IMasterDiscoveryView;
+import org.eclipse.platform.discovery.ui.api.IResultsViewAccessor;
+import org.eclipse.platform.discovery.ui.api.ISearchConsoleCustomization;
+import org.eclipse.platform.discovery.ui.api.ISearchFavoritesViewCustomization;
+import org.eclipse.platform.discovery.ui.api.impl.GenericViewCustomizationImpl;
+import org.eclipse.platform.discovery.util.api.env.IDiscoveryEnvironment;
public class SaveInFavoritesViewCustomization extends GenericViewCustomizationImpl implements ISearchConsoleCustomization
@@ -39,7 +39,7 @@
final ISelection selection = viewAccessor.getTreeViewer().getSelection();
final ISearchContext searchCtx = (ISearchContext) viewAccessor.getTreeViewer().getInput();
- final Set<ISearchFavoritesViewCustomization> favoritesViewCustomizations = viewCustomizationConfiguration().availableSearchFavoritesCustomizations();
+ final List<ISearchFavoritesViewCustomization> favoritesViewCustomizations = viewCustomizationConfiguration().availableSearchFavoritesCustomizations();
final IActionWithAvailability action = createSaveAction(contributedAction, selection, searchCtx, favoritesViewCustomizations, this.masterView.getEnvironment());
@@ -64,7 +64,7 @@
this.masterView = masterView;
}
- protected IActionWithAvailability createSaveAction(final IContributedAction contributedAction, final ISelection selection, final ISearchContext searchContext, final Set<ISearchFavoritesViewCustomization> sbCustomizations, final IDiscoveryEnvironment environment)
+ protected IActionWithAvailability createSaveAction(final IContributedAction contributedAction, final ISelection selection, final ISearchContext searchContext, final List<ISearchFavoritesViewCustomization> sbCustomizations, final IDiscoveryEnvironment environment)
{
assert contributedAction instanceof SaveInFavoritesContributedAction;
return new SaveInFavoritesMenuAction((SaveInFavoritesContributedAction) contributedAction, selection, searchContext, sbCustomizations, environment);
diff --git a/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/viewcustomization/ViewCustomizationConfiguration.java b/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/viewcustomization/ViewCustomizationConfiguration.java
index 0c5f359..2a1bb22 100644
--- a/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/viewcustomization/ViewCustomizationConfiguration.java
+++ b/bundles/org.eclipse.platform.discovery.integration/src/org/eclipse/platform/discovery/integration/internal/viewcustomization/ViewCustomizationConfiguration.java
@@ -10,14 +10,15 @@
*******************************************************************************/
package org.eclipse.platform.discovery.integration.internal.viewcustomization;
-import java.util.Set;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.platform.discovery.integration.internal.ViewCustXpParser;
-import org.eclipse.platform.discovery.integration.internal.plugin.IViewCustomizationConfiguration;
-import org.eclipse.platform.discovery.runtime.internal.xp.IContributionsReader;
-import org.eclipse.platform.discovery.ui.api.ISearchFavoritesViewCustomization;
-import org.eclipse.platform.discovery.ui.api.ISearchConsoleCustomization;
+import java.util.List;
+
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.platform.discovery.integration.internal.ViewCustXpParser;
+import org.eclipse.platform.discovery.integration.internal.plugin.IViewCustomizationConfiguration;
+import org.eclipse.platform.discovery.runtime.internal.xp.IContributionsReader;
+import org.eclipse.platform.discovery.ui.api.ISearchConsoleCustomization;
+import org.eclipse.platform.discovery.ui.api.ISearchFavoritesViewCustomization;
public class ViewCustomizationConfiguration implements IViewCustomizationConfiguration
@@ -73,12 +74,12 @@
};
}
- public Set<ISearchConsoleCustomization> availableSearchConsoleCustomizations()
+ public List<ISearchConsoleCustomization> availableSearchConsoleCustomizations()
{
return seXpParser().readContributions();
}
- public Set<ISearchFavoritesViewCustomization> availableSearchFavoritesCustomizations()
+ public List<ISearchFavoritesViewCustomization> availableSearchFavoritesCustomizations()
{
return sbXpParser().readContributions();
}
diff --git a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/ISearchProviderConfiguration.java b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/ISearchProviderConfiguration.java
index f21147a..c20f59b 100644
--- a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/ISearchProviderConfiguration.java
+++ b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/ISearchProviderConfiguration.java
@@ -10,7 +10,7 @@
*******************************************************************************/
package org.eclipse.platform.discovery.runtime.internal;
-import java.util.Set;
+import java.util.List;
import org.eclipse.platform.discovery.runtime.api.IDestinationsProvider;
import org.eclipse.platform.discovery.runtime.api.ISearchDestination;
@@ -35,7 +35,7 @@
* the object type
* @return a set of descriptions for all search providers which are capable of searching for the specified object type or an empty set if none
*/
- public Set<ISearchProviderDescription> getAvailableSearchProviderDescriptions(IObjectTypeDescription searchObjectType);
+ public List<ISearchProviderDescription> getAvailableSearchProviderDescriptions(IObjectTypeDescription searchObjectType);
/**
* Retrieves a set of destination categories which can be searched by all the currently registered search providers
@@ -44,7 +44,7 @@
* the object type
* @return a set of destination categories which can be searched or empty set if none
*/
- public Set<IDestinationCategoryDescription> getAvailableDestinationCategoriesForObjectType(final IObjectTypeDescription objectType);
+ public List<IDestinationCategoryDescription> getAvailableDestinationCategoriesForObjectType(final IObjectTypeDescription objectType);
/**
* Retrieves a set of destination provider descriptions which can provide search destinations for the destination category specified
@@ -53,13 +53,13 @@
* the destination category
* @return a set of destination provider descriptions or an empty set if none
*/
- public Set<IDestinationsProviderDescription> getDestinationProvidersForCategory(final IDestinationCategoryDescription category);
+ public List<IDestinationsProviderDescription> getDestinationProvidersForCategory(final IDestinationCategoryDescription category);
/**
* Retrieves a set of available destination providers
* @return
*/
- public Set<IDestinationsProviderDescription> getAvailableDestinationProviders();
+ public List<IDestinationsProviderDescription> getAvailableDestinationProviders();
/**
* Gets the description of the active search provider which can search for the specified object type in the specified destination category<br>
@@ -83,14 +83,14 @@
*
* @return a set of all registered object types or an empty set if none
*/
- public Set<IObjectTypeDescription> getObjectTypes();
+ public List<IObjectTypeDescription> getObjectTypes();
/**
* Retrieves a set of descriptions for all registered destination categories
*
* @return a set of descriptions of all registered destinations or an empty set if none
*/
- public Set<IDestinationCategoryDescription> getDestinationCategories();
+ public List<IDestinationCategoryDescription> getDestinationCategories();
/**
* Gets the available search subdestinations for the combination object type - destination category - search provider.
@@ -103,7 +103,7 @@
* search provider
* @return a set of currently active subdestinations for the input parameters specified or an empty set if none
*/
- public Set<ISearchSubdestination> getAvailableSearchSubdestinations(final IObjectTypeDescription objectType,
+ public List<ISearchSubdestination> getAvailableSearchSubdestinations(final IObjectTypeDescription objectType,
final IDestinationCategoryDescription destinationCategory, final ISearchProviderDescription searchProvider);
/**
@@ -134,7 +134,7 @@
* @throws DestinationCategoryNotFoundException
* when such a destination category was not found
*/
- public Set<IDestinationCategoryDescription> getDestinationCategoriesForDestination(final ISearchDestination destination)
+ public List<IDestinationCategoryDescription> getDestinationCategoriesForDestination(final ISearchDestination destination)
throws DestinationCategoryNotFoundException;
/**
@@ -164,7 +164,7 @@
* the search destination provider description
* @return a set of search destinations or an empty set if none
*/
- public Set<ISearchDestination> getSearchDestinations(final IDestinationCategoryDescription category,
+ public List<ISearchDestination> getSearchDestinations(final IDestinationCategoryDescription category,
final IDestinationsProvider destinationsProvider);
}
diff --git a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/ISubdestinationsActivationConfig.java b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/ISubdestinationsActivationConfig.java
index 84ca4d4..8b53052 100644
--- a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/ISubdestinationsActivationConfig.java
+++ b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/ISubdestinationsActivationConfig.java
@@ -10,12 +10,13 @@
*******************************************************************************/
package org.eclipse.platform.discovery.runtime.internal;
-import java.util.Set;
-import org.eclipse.platform.discovery.runtime.api.ISearchSubdestination;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IObjectTypeDescription;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.ISearchProviderDescription;
+import java.util.List;
+
+import org.eclipse.platform.discovery.runtime.api.ISearchSubdestination;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IObjectTypeDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.ISearchProviderDescription;
/**
@@ -31,7 +32,7 @@
* @param searchProvider search provider
* @return a set of active
*/
- public Set<ISearchSubdestination> getAvailableSearchSubdestinations(final IObjectTypeDescription objectType, final IDestinationCategoryDescription destinationCategory, final ISearchProviderDescription searchProvider);
+ public List<ISearchSubdestination> getAvailableSearchSubdestinations(final IObjectTypeDescription objectType, final IDestinationCategoryDescription destinationCategory, final ISearchProviderDescription searchProvider);
/**
* Activates/de-activate a sub-destinations for the combination object type - destination category - provider descriptions. This method should persist the
diff --git a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/SubdestinationsActivationConfig.java b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/SubdestinationsActivationConfig.java
index 9234230..0b22064 100644
--- a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/SubdestinationsActivationConfig.java
+++ b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/SubdestinationsActivationConfig.java
@@ -10,19 +10,18 @@
*******************************************************************************/
package org.eclipse.platform.discovery.runtime.internal;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.platform.discovery.runtime.api.IConflict;
-import org.eclipse.platform.discovery.runtime.api.ISearchSubdestination;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IObjectTypeDescription;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.ISearchProviderDescription;
-import org.eclipse.platform.discovery.runtime.internal.xp.ISearchSubdestinationExtensionParser;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.platform.discovery.runtime.api.IConflict;
+import org.eclipse.platform.discovery.runtime.api.ISearchSubdestination;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IObjectTypeDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.ISearchProviderDescription;
+import org.eclipse.platform.discovery.runtime.internal.xp.ISearchSubdestinationExtensionParser;
public class SubdestinationsActivationConfig implements ISubdestinationsActivationConfig
@@ -39,7 +38,7 @@
public void activateSubdestination(final IObjectTypeDescription searchObjectType, final IDestinationCategoryDescription destinationCategory,
final ISearchProviderDescription searchProviderDescription, final ISearchSubdestination subDestination, final boolean activate)
{
- Set<ISearchSubdestination> availableSearchSubdestinations = getAvailableSearchSubdestinations(searchObjectType, destinationCategory, searchProviderDescription);
+ List<ISearchSubdestination> availableSearchSubdestinations = getAvailableSearchSubdestinations(searchObjectType, destinationCategory, searchProviderDescription);
Map<String, ISearchSubdestination> subdMap = getIdToSubdestinationMap(availableSearchSubdestinations);
activate:if(activate) {
//first check cache
@@ -85,9 +84,9 @@
}
}
- public Set<ISearchSubdestination> getAvailableSearchSubdestinations(final IObjectTypeDescription objectType, final IDestinationCategoryDescription destinationCategory, final ISearchProviderDescription searchProvider)
+ public List<ISearchSubdestination> getAvailableSearchSubdestinations(final IObjectTypeDescription objectType, final IDestinationCategoryDescription destinationCategory, final ISearchProviderDescription searchProvider)
{
- final Set<ISearchSubdestination> result = new HashSet<ISearchSubdestination>();
+ final List<ISearchSubdestination> result = new ArrayList<ISearchSubdestination>();
for (ISearchSubdestination subDest : this.subdestinationsParser.readContributions())
{
if (subDest.getObjectTypeId().equals(objectType.getId()) && subDest.getDestinationCategoryId().equals(destinationCategory.getId()))
@@ -114,7 +113,7 @@
}
/*utility method*/
- private Map<String, ISearchSubdestination> getIdToSubdestinationMap(Set<ISearchSubdestination> subdestinations) {
+ private Map<String, ISearchSubdestination> getIdToSubdestinationMap(List<ISearchSubdestination> subdestinations) {
Map<String, ISearchSubdestination> retVal = new HashMap<String, ISearchSubdestination>();
for(ISearchSubdestination current: subdestinations) {
retVal.put(current.getId(), current);
diff --git a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/impl/SearchProviderConfiguration.java b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/impl/SearchProviderConfiguration.java
index edfd3b5..20ab0de 100644
--- a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/impl/SearchProviderConfiguration.java
+++ b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/impl/SearchProviderConfiguration.java
@@ -10,26 +10,26 @@
*******************************************************************************/
package org.eclipse.platform.discovery.runtime.internal.impl;
-import java.util.Collections;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.platform.discovery.runtime.api.IDestinationsProvider;
-import org.eclipse.platform.discovery.runtime.api.ISearchDestination;
-import org.eclipse.platform.discovery.runtime.api.ISearchSubdestination;
-import org.eclipse.platform.discovery.runtime.internal.DestinationCategoryNotFoundException;
-import org.eclipse.platform.discovery.runtime.internal.ISearchProviderActivationConfig;
-import org.eclipse.platform.discovery.runtime.internal.ISearchProviderConfiguration;
-import org.eclipse.platform.discovery.runtime.internal.ISubdestinationsActivationConfig;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.platform.discovery.runtime.api.IDestinationsProvider;
+import org.eclipse.platform.discovery.runtime.api.ISearchDestination;
+import org.eclipse.platform.discovery.runtime.api.ISearchSubdestination;
+import org.eclipse.platform.discovery.runtime.internal.DestinationCategoryNotFoundException;
+import org.eclipse.platform.discovery.runtime.internal.ISearchProviderActivationConfig;
+import org.eclipse.platform.discovery.runtime.internal.ISearchProviderConfiguration;
+import org.eclipse.platform.discovery.runtime.internal.ISubdestinationsActivationConfig;
import org.eclipse.platform.discovery.runtime.internal.IXPParsersFactory;
-import org.eclipse.platform.discovery.runtime.internal.ProviderNotFoundException;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationsProviderDescription;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IObjectTypeDescription;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.ISearchProviderDescription;
-import org.eclipse.platform.discovery.runtime.internal.xp.ISearchProvidersExtensionParser;
-import org.eclipse.platform.discovery.util.internal.logging.ILogger;
-import org.eclipse.platform.discovery.util.internal.logging.Logger;
+import org.eclipse.platform.discovery.runtime.internal.ProviderNotFoundException;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationsProviderDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IObjectTypeDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.ISearchProviderDescription;
+import org.eclipse.platform.discovery.runtime.internal.xp.ISearchProvidersExtensionParser;
+import org.eclipse.platform.discovery.util.internal.logging.ILogger;
+import org.eclipse.platform.discovery.util.internal.logging.Logger;
/**
@@ -75,11 +75,11 @@
return parsersFactory.createSearchProviderParser();
}
- public Set<ISearchProviderDescription> getAvailableSearchProviderDescriptions(IObjectTypeDescription searchObjectType)
+ public List<ISearchProviderDescription> getAvailableSearchProviderDescriptions(IObjectTypeDescription searchObjectType)
{
- final Set<ISearchProviderDescription> allProviders = searchProvidersExtensionParser().readContributions();
+ final List<ISearchProviderDescription> allProviders = searchProvidersExtensionParser().readContributions();
- final Set<ISearchProviderDescription> result = new HashSet<ISearchProviderDescription>();
+ final List<ISearchProviderDescription> result = new ArrayList<ISearchProviderDescription>();
for (ISearchProviderDescription provider : allProviders)
{
if (provider.getObjectType().getId().equals(searchObjectType.getId()))
@@ -91,7 +91,7 @@
return result;
}
- public Set<IObjectTypeDescription> getObjectTypes()
+ public List<IObjectTypeDescription> getObjectTypes()
{
return parsersFactory.createObjectTypeParser().readContributions();
}
@@ -109,9 +109,9 @@
return destinationCategory!=null ? searchProviderActivationConfig.getActiveSearchProviderDescription(objectType, destinationCategory) : searchProviderActivationConfig.getActiveSearchProviderDescription(objectType);
}
- public Set<IDestinationCategoryDescription> getAvailableDestinationCategoriesForObjectType(IObjectTypeDescription objectType)
+ public List<IDestinationCategoryDescription> getAvailableDestinationCategoriesForObjectType(IObjectTypeDescription objectType)
{
- final Set<IDestinationCategoryDescription> result = new HashSet<IDestinationCategoryDescription>();
+ final List<IDestinationCategoryDescription> result = new ArrayList<IDestinationCategoryDescription>();
for(IDestinationCategoryDescription category : getDestinationCategories())
{
try
@@ -128,22 +128,22 @@
return result;
}
- public Set<ISearchSubdestination> getAvailableSearchSubdestinations(final IObjectTypeDescription objectType, final IDestinationCategoryDescription destinationCategory, final ISearchProviderDescription provider)
+ public List<ISearchSubdestination> getAvailableSearchSubdestinations(final IObjectTypeDescription objectType, final IDestinationCategoryDescription destinationCategory, final ISearchProviderDescription provider)
{
return this.subdestinationsActivationConfig.getAvailableSearchSubdestinations(objectType, destinationCategory, provider);
}
- public Set<IDestinationCategoryDescription> getDestinationCategories()
+ public List<IDestinationCategoryDescription> getDestinationCategories()
{
return this.parsersFactory.createDestinationsCategoryParser().readContributions();
}
- public Set<IDestinationsProviderDescription> getDestinationProvidersForCategory(final IDestinationCategoryDescription category)
+ public List<IDestinationsProviderDescription> getDestinationProvidersForCategory(final IDestinationCategoryDescription category)
{
- final Set<IDestinationsProviderDescription> result = new HashSet<IDestinationsProviderDescription>();
+ final List<IDestinationsProviderDescription> result = new ArrayList<IDestinationsProviderDescription>();
for(IDestinationsProviderDescription destProvider : getAvailableDestinationProviders())
- {
+ {
if(category.getDestinationProviderIds().contains(destProvider.getId()))
{
result.add(destProvider);
@@ -153,9 +153,9 @@
return result;
}
- public Set<ISearchDestination> getSearchDestinations(final IDestinationCategoryDescription category, final IDestinationsProvider destinationsProvider)
+ public List<ISearchDestination> getSearchDestinations(final IDestinationCategoryDescription category, final IDestinationsProvider destinationsProvider)
{
- final Set<ISearchDestination> result = new HashSet<ISearchDestination>();
+ final List<ISearchDestination> result = new ArrayList<ISearchDestination>();
final Class<?> expectedDestinationClass = category.getDestinationsClass();
for(ISearchDestination dest : destinationsProvider.getSearchDestinations())
{
@@ -172,11 +172,11 @@
return result;
}
- public Set<IDestinationCategoryDescription> getDestinationCategoriesForDestination(final ISearchDestination destination) throws DestinationCategoryNotFoundException
+ public List<IDestinationCategoryDescription> getDestinationCategoriesForDestination(final ISearchDestination destination) throws DestinationCategoryNotFoundException
{
- final HashSet<IDestinationCategoryDescription> result = new HashSet<IDestinationCategoryDescription>();
+ final List<IDestinationCategoryDescription> result = new ArrayList<IDestinationCategoryDescription>();
- final Set<String> destinationProvidersIds = new HashSet<String>();
+ final List<String> destinationProvidersIds = new ArrayList<String>();
for(IDestinationsProviderDescription providerDescription : getAvailableDestinationProviders())
{
if(providerDescription.createProvider().getSearchDestinations().contains(destination))
@@ -208,7 +208,7 @@
return this.subdestinationsActivationConfig.isSubdestinationActive(subdestination, objectType, destCategory, searchProvider);
}
- public Set<IDestinationsProviderDescription> getAvailableDestinationProviders()
+ public List<IDestinationsProviderDescription> getAvailableDestinationProviders()
{
return parsersFactory.createDestinationsProviderParser().readContributions();
}
diff --git a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/model/descriptions/IDestinationCategoryDescription.java b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/model/descriptions/IDestinationCategoryDescription.java
index fc60c08..a0188d0 100644
--- a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/model/descriptions/IDestinationCategoryDescription.java
+++ b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/model/descriptions/IDestinationCategoryDescription.java
@@ -10,10 +10,11 @@
*******************************************************************************/
package org.eclipse.platform.discovery.runtime.internal.model.descriptions;
-import java.util.Set;
-import org.eclipse.platform.discovery.runtime.api.IDescriptiveObject;
-import org.eclipse.platform.discovery.runtime.api.ISearchDestination;
+import java.util.List;
+
+import org.eclipse.platform.discovery.runtime.api.IDescriptiveObject;
+import org.eclipse.platform.discovery.runtime.api.ISearchDestination;
/**
@@ -25,9 +26,9 @@
public interface IDestinationCategoryDescription extends IDescriptiveObject
{
/**
- * Retrieves a set of destination provider ids which which can provider destinations for this category category
+ * Retrieves a list of destination provider ids which which can provider destinations for this category category
*/
- public Set<String> getDestinationProviderIds();
+ public List<String> getDestinationProviderIds();
/**
* Gets the destination class name specified via the "destinaionclass" attribute of the destinations category extension point
diff --git a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/persistence/util/PersistenceProviderRegistryImpl.java b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/persistence/util/PersistenceProviderRegistryImpl.java
index aa69491..1ebfadb 100644
--- a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/persistence/util/PersistenceProviderRegistryImpl.java
+++ b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/persistence/util/PersistenceProviderRegistryImpl.java
@@ -11,6 +11,7 @@
package org.eclipse.platform.discovery.runtime.internal.persistence.util;
import java.util.HashSet;
+import java.util.List;
import java.util.Set;
import org.eclipse.platform.discovery.runtime.api.persistence.DestinationItemPair;
@@ -51,7 +52,7 @@
final Set<IMementoLoadProvider> resultSet = new HashSet<IMementoLoadProvider>();
IMementoLoadProvider resultItem = null;
- final Set<IMementoLoadProviderDescription> descriptionSet = xpPersistenceFactory.createMementoLoadProviderParser().readContributions();
+ final List<IMementoLoadProviderDescription> descriptionSet = xpPersistenceFactory.createMementoLoadProviderParser().readContributions();
for (IMementoLoadProviderDescription description : descriptionSet)
{
resultItem = description.createInstance();
@@ -67,7 +68,7 @@
final Set<IMementoStoreProvider> resultSet = new HashSet<IMementoStoreProvider>();
IMementoStoreProvider resultItem = null;
- final Set<IMementoStoreProviderDescription> descriptionSet = xpPersistenceFactory.createMementoStoreProviderParser().readContributions();
+ final List<IMementoStoreProviderDescription> descriptionSet = xpPersistenceFactory.createMementoStoreProviderParser().readContributions();
for (IMementoStoreProviderDescription description : descriptionSet)
{
resultItem = description.createInstance();
diff --git a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/persistence/xp/MementoLoadProvidersExtensionParser.java b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/persistence/xp/MementoLoadProvidersExtensionParser.java
index 451896e..93a6c7e 100644
--- a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/persistence/xp/MementoLoadProvidersExtensionParser.java
+++ b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/persistence/xp/MementoLoadProvidersExtensionParser.java
@@ -10,15 +10,15 @@
*******************************************************************************/
package org.eclipse.platform.discovery.runtime.internal.persistence.xp;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.platform.discovery.runtime.api.persistence.IMementoLoadProvider;
-import org.eclipse.platform.discovery.runtime.internal.persistence.model.descriptions.IMementoLoadProviderDescription;
-import org.eclipse.platform.discovery.runtime.internal.xp.impl.AbstractExtensionPointParser;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.platform.discovery.runtime.api.persistence.IMementoLoadProvider;
+import org.eclipse.platform.discovery.runtime.internal.persistence.model.descriptions.IMementoLoadProviderDescription;
+import org.eclipse.platform.discovery.runtime.internal.xp.impl.AbstractExtensionPointParser;
/**
@@ -39,9 +39,9 @@
}
@Override
- public Set<IMementoLoadProviderDescription> readContributions()
- {
- final Set<IMementoLoadProviderDescription> result = new HashSet<IMementoLoadProviderDescription>();
+ public List<IMementoLoadProviderDescription> readContributions()
+ {
+ final List<IMementoLoadProviderDescription> result = new ArrayList<IMementoLoadProviderDescription>();
for (IConfigurationElement element : getConfigurationElements())
{
result.add(createMementoLoadProvider(element));
diff --git a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/persistence/xp/MementoStoreProvidersExtensionParser.java b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/persistence/xp/MementoStoreProvidersExtensionParser.java
index e9bd780..61b2ca2 100644
--- a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/persistence/xp/MementoStoreProvidersExtensionParser.java
+++ b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/persistence/xp/MementoStoreProvidersExtensionParser.java
@@ -10,15 +10,15 @@
*******************************************************************************/
package org.eclipse.platform.discovery.runtime.internal.persistence.xp;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.platform.discovery.runtime.api.persistence.IMementoStoreProvider;
-import org.eclipse.platform.discovery.runtime.internal.persistence.model.descriptions.IMementoStoreProviderDescription;
-import org.eclipse.platform.discovery.runtime.internal.xp.impl.AbstractExtensionPointParser;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.platform.discovery.runtime.api.persistence.IMementoStoreProvider;
+import org.eclipse.platform.discovery.runtime.internal.persistence.model.descriptions.IMementoStoreProviderDescription;
+import org.eclipse.platform.discovery.runtime.internal.xp.impl.AbstractExtensionPointParser;
/**
* Implementation of the {@link IMementoStoreProviderExtensionParser} interface.
@@ -38,9 +38,9 @@
}
@Override
- public Set<IMementoStoreProviderDescription> readContributions()
+ public List<IMementoStoreProviderDescription> readContributions()
{
- final Set<IMementoStoreProviderDescription> result = new HashSet<IMementoStoreProviderDescription>();
+ final List<IMementoStoreProviderDescription> result = new ArrayList<IMementoStoreProviderDescription>();
for (IConfigurationElement element : getConfigurationElements())
{
result.add(createMementoStoreProvider(element));
diff --git a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/xp/IContributionsReader.java b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/xp/IContributionsReader.java
index f5d39dd..e0aca62 100644
--- a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/xp/IContributionsReader.java
+++ b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/xp/IContributionsReader.java
@@ -10,7 +10,8 @@
*******************************************************************************/
package org.eclipse.platform.discovery.runtime.internal.xp;
-import java.util.Set;
+import java.util.List;
+
/**
* Interface for reading contributions
@@ -27,5 +28,5 @@
*
* @return a set of contributions or an empty set if none
*/
- public Set<T> readContributions();
+ public List<T> readContributions();
}
diff --git a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/xp/impl/DestinationsCategoryExtensionParser.java b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/xp/impl/DestinationsCategoryExtensionParser.java
index ac1e86d..00487f5 100644
--- a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/xp/impl/DestinationsCategoryExtensionParser.java
+++ b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/xp/impl/DestinationsCategoryExtensionParser.java
@@ -10,17 +10,17 @@
*******************************************************************************/
package org.eclipse.platform.discovery.runtime.internal.xp.impl;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.platform.discovery.runtime.api.ISearchDestination;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationsProviderDescription;
-import org.eclipse.platform.discovery.runtime.internal.xp.IDestinationCategoryExtensionParser;
-import org.eclipse.platform.discovery.runtime.internal.xp.IDestinationsProviderExtensionParser;
-import org.osgi.framework.Bundle;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.platform.discovery.runtime.api.ISearchDestination;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationsProviderDescription;
+import org.eclipse.platform.discovery.runtime.internal.xp.IDestinationCategoryExtensionParser;
+import org.eclipse.platform.discovery.runtime.internal.xp.IDestinationsProviderExtensionParser;
+import org.osgi.framework.Bundle;
/**
@@ -45,9 +45,9 @@
this.destinationsProviderExtParser = destProviderExtParser;
}
- public Set<IDestinationCategoryDescription> readContributions()
+ public List<IDestinationCategoryDescription> readContributions()
{
- final Set<IDestinationCategoryDescription> categories = new HashSet<IDestinationCategoryDescription>();
+ final List<IDestinationCategoryDescription> categories = new ArrayList<IDestinationCategoryDescription>();
for (IConfigurationElement element : getConfigurationElements())
{
categories.add(createCategory(element));
@@ -60,7 +60,7 @@
{
return new IDestinationCategoryDescription() {
- public Set<String> getDestinationProviderIds()
+ public List<String> getDestinationProviderIds()
{
return getDestProviderIds(getId());
}
@@ -82,9 +82,9 @@
};
}
- private Set<String> getDestProviderIds(final String categoryId)
+ private List<String> getDestProviderIds(final String categoryId)
{
- final Set<String> result = new HashSet<String>();
+ final List<String> result = new ArrayList<String>();
for (IDestinationsProviderDescription provider : destinationsProviderExtParser.readContributions())
{
if (provider.getDestinationCategoryId().equals(categoryId))
diff --git a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/xp/impl/DestinationsProviderExtensionParser.java b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/xp/impl/DestinationsProviderExtensionParser.java
index 5eada5a..058c6f7 100644
--- a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/xp/impl/DestinationsProviderExtensionParser.java
+++ b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/xp/impl/DestinationsProviderExtensionParser.java
@@ -10,16 +10,16 @@
*******************************************************************************/
package org.eclipse.platform.discovery.runtime.internal.xp.impl;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.platform.discovery.runtime.api.IDestinationChangeHandler;
-import org.eclipse.platform.discovery.runtime.api.IDestinationsProvider;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationsProviderDescription;
-import org.eclipse.platform.discovery.runtime.internal.xp.IDestinationsProviderExtensionParser;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.platform.discovery.runtime.api.IDestinationChangeHandler;
+import org.eclipse.platform.discovery.runtime.api.IDestinationsProvider;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationsProviderDescription;
+import org.eclipse.platform.discovery.runtime.internal.xp.IDestinationsProviderExtensionParser;
/**
@@ -42,9 +42,9 @@
super(Platform.getExtensionRegistry(), XP_ID, XP_ELEMENT_NAME);
}
- public Set<IDestinationsProviderDescription> readContributions()
+ public List<IDestinationsProviderDescription> readContributions()
{
- final Set<IDestinationsProviderDescription> result = new HashSet<IDestinationsProviderDescription>();
+ final List<IDestinationsProviderDescription> result = new ArrayList<IDestinationsProviderDescription>();
for (IConfigurationElement element : getConfigurationElements())
{
result.add(createProvderDescr(element));
diff --git a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/xp/impl/ObjectTypeExtensionParser.java b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/xp/impl/ObjectTypeExtensionParser.java
index 8821e49..a6b28b7 100644
--- a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/xp/impl/ObjectTypeExtensionParser.java
+++ b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/xp/impl/ObjectTypeExtensionParser.java
@@ -10,15 +10,15 @@
*******************************************************************************/
package org.eclipse.platform.discovery.runtime.internal.xp.impl;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.core.runtime.IConfigurationElement;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.runtime.IConfigurationElement;
import org.eclipse.core.runtime.IExtensionRegistry;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IObjectTypeDescription;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IObjectTypeDescription;
import org.eclipse.platform.discovery.runtime.internal.model.descriptions.impl.ObjectTypeDescription;
-import org.eclipse.platform.discovery.runtime.internal.xp.IObjectTypeExtensionParser;
+import org.eclipse.platform.discovery.runtime.internal.xp.IObjectTypeExtensionParser;
public class ObjectTypeExtensionParser extends AbstractExtensionPointParser implements IObjectTypeExtensionParser
@@ -33,9 +33,9 @@
super(registry, XP_ID, XP_ELEMENT_NAME);
}
- public Set<IObjectTypeDescription> readContributions()
+ public List<IObjectTypeDescription> readContributions()
{
- final Set<IObjectTypeDescription> result = new HashSet<IObjectTypeDescription>();
+ final List<IObjectTypeDescription> result = new ArrayList<IObjectTypeDescription>();
for(IConfigurationElement element : getConfigurationElements())
{
result.add(createObjectType(element));
diff --git a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/xp/impl/SearchProvidersExtensionParser.java b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/xp/impl/SearchProvidersExtensionParser.java
index a35bdde..4c86099 100644
--- a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/xp/impl/SearchProvidersExtensionParser.java
+++ b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/xp/impl/SearchProvidersExtensionParser.java
@@ -10,19 +10,21 @@
*******************************************************************************/
package org.eclipse.platform.discovery.runtime.internal.xp.impl;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.platform.discovery.runtime.api.ISearchProvider;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IObjectTypeDescription;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.ISearchProviderDescription;
-import org.eclipse.platform.discovery.runtime.internal.xp.IDestinationCategoryExtensionParser;
-import org.eclipse.platform.discovery.runtime.internal.xp.IObjectTypeExtensionParser;
-import org.eclipse.platform.discovery.runtime.internal.xp.ISearchProvidersExtensionParser;
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.platform.discovery.runtime.api.ISearchProvider;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IObjectTypeDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.ISearchProviderDescription;
+import org.eclipse.platform.discovery.runtime.internal.xp.IDestinationCategoryExtensionParser;
+import org.eclipse.platform.discovery.runtime.internal.xp.IObjectTypeExtensionParser;
+import org.eclipse.platform.discovery.runtime.internal.xp.ISearchProvidersExtensionParser;
/**
@@ -53,9 +55,9 @@
this.objTypeExtParser = objectTypeExtParser;
}
- public Set<ISearchProviderDescription> readContributions()
+ public List<ISearchProviderDescription> readContributions()
{
- final Set<ISearchProviderDescription> result = new HashSet<ISearchProviderDescription>();
+ final List<ISearchProviderDescription> result = new ArrayList<ISearchProviderDescription>();
for (IConfigurationElement element : getConfigurationElements())
{
result.add(createSearchProvider(element));
diff --git a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/xp/impl/SearchSubdestinationExtensionParser.java b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/xp/impl/SearchSubdestinationExtensionParser.java
index 32b64e2..a916767 100644
--- a/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/xp/impl/SearchSubdestinationExtensionParser.java
+++ b/bundles/org.eclipse.platform.discovery.runtime/src/org/eclipse/platform/discovery/runtime/internal/xp/impl/SearchSubdestinationExtensionParser.java
@@ -10,14 +10,16 @@
*******************************************************************************/
package org.eclipse.platform.discovery.runtime.internal.xp.impl;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.platform.discovery.runtime.api.IConflict;
-import org.eclipse.platform.discovery.runtime.api.ISearchSubdestination;
-import org.eclipse.platform.discovery.runtime.internal.xp.ISearchSubdestinationExtensionParser;
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.platform.discovery.runtime.api.IConflict;
+import org.eclipse.platform.discovery.runtime.api.ISearchSubdestination;
+import org.eclipse.platform.discovery.runtime.internal.xp.ISearchSubdestinationExtensionParser;
/**
@@ -42,9 +44,9 @@
super(Platform.getExtensionRegistry(), XP_ID, XP_ELEMENT_NAME);
}
- public Set<ISearchSubdestination> readContributions()
+ public List<ISearchSubdestination> readContributions()
{
- final Set<ISearchSubdestination> result = new HashSet<ISearchSubdestination>();
+ final List<ISearchSubdestination> result = new ArrayList<ISearchSubdestination>();
for (IConfigurationElement element : getConfigurationElements())
{
diff --git a/bundles/org.eclipse.platform.discovery.ui/plugin.properties b/bundles/org.eclipse.platform.discovery.ui/plugin.properties
index 5431fa8..9a8c858 100644
--- a/bundles/org.eclipse.platform.discovery.ui/plugin.properties
+++ b/bundles/org.eclipse.platform.discovery.ui/plugin.properties
@@ -11,4 +11,4 @@
Bundle-Vendor.0 = Eclipse.org
Bundle-Name.0 = Search Console UI Plugin
-Extension-Point-Name.0 = Custom search UI contribution
\ No newline at end of file
+Extension-Point-Name.0 = Custom search results UI contribution
\ No newline at end of file
diff --git a/bundles/org.eclipse.platform.discovery.ui/schema/org.eclipse.platform.discovery.ui.customresultui.exsd b/bundles/org.eclipse.platform.discovery.ui/schema/org.eclipse.platform.discovery.ui.customresultui.exsd
index 7d96a10..f4ac09f 100644
--- a/bundles/org.eclipse.platform.discovery.ui/schema/org.eclipse.platform.discovery.ui.customresultui.exsd
+++ b/bundles/org.eclipse.platform.discovery.ui/schema/org.eclipse.platform.discovery.ui.customresultui.exsd
@@ -1,116 +1,116 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.platform.discovery.ui" xmlns="http://www.w3.org/2001/XMLSchema">
-<annotation>
- <appInfo>
- <meta.schema plugin="org.eclipse.platform.discovery.ui" id="org.eclipse.platform.discovery.ui.customresultui" name="Custom search UI contribution"/>
- </appInfo>
- <documentation>
- Contributors can provide a custom UI which displays the result of a search provider. The framework supports up to one such contributor per a search provider. If there are more than one contributors for a single search provider, the framework will throw a runtime exception
- </documentation>
- </annotation>
-
- <element name="extension">
- <annotation>
- <appInfo>
- <meta.element />
- </appInfo>
- </annotation>
- <complexType>
- <sequence>
- <element ref="contributor"/>
- </sequence>
- <attribute name="point" type="string" use="required">
- <annotation>
- <documentation>
-
- </documentation>
- </annotation>
- </attribute>
- <attribute name="id" type="string">
- <annotation>
- <documentation>
-
- </documentation>
- </annotation>
- </attribute>
- <attribute name="name" type="string">
- <annotation>
- <documentation>
-
- </documentation>
- <appInfo>
- <meta.attribute translatable="true"/>
- </appInfo>
- </annotation>
- </attribute>
- </complexType>
- </element>
-
- <element name="contributor">
- <complexType>
- <attribute name="id" type="string" use="required">
- <annotation>
- <documentation>
- The unique ID of this contributor
- </documentation>
- </annotation>
- </attribute>
- <attribute name="searchproviderid" type="string" use="required">
- <annotation>
- <documentation>
- The ID of the search provider for which this contributor shows search result
- </documentation>
- </annotation>
- </attribute>
- <attribute name="creator" type="string" use="required">
- <annotation>
- <documentation>
- The ISearchResultCustomUiCreator implementation which will create the UI to display the result
- </documentation>
- <appInfo>
- <meta.attribute kind="java" basedOn=":org.eclipse.platform.discovery.ui.api.ISearchResultCustomUiCreator"/>
- </appInfo>
- </annotation>
- </attribute>
- </complexType>
- </element>
-
- <annotation>
- <appInfo>
- <meta.section type="since"/>
- </appInfo>
- <documentation>
- [Enter the first release in which this extension point appears.]
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="examples"/>
- </appInfo>
- <documentation>
- [Enter extension point usage example here.]
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="apiinfo"/>
- </appInfo>
- <documentation>
- [Enter API information here.]
- </documentation>
- </annotation>
-
- <annotation>
- <appInfo>
- <meta.section type="implementation"/>
- </appInfo>
- <documentation>
- [Enter information about supplied implementation of this extension point.]
- </documentation>
- </annotation>
-
-
-</schema>
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="org.eclipse.platform.discovery.ui" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+ <appInfo>
+ <meta.schema plugin="org.eclipse.platform.discovery.ui" id="org.eclipse.platform.discovery.ui.customresultui" name="Custom search results UI contribution"/>
+ </appInfo>
+ <documentation>
+ Contributors can provide a custom UI which displays the result of a search provider. The framework supports up to one such contributor per a search provider. If there are more than one contributors for a single search provider, the framework will throw a runtime exception
+ </documentation>
+ </annotation>
+
+ <element name="extension">
+ <annotation>
+ <appInfo>
+ <meta.element />
+ </appInfo>
+ </annotation>
+ <complexType>
+ <sequence>
+ <element ref="contributor"/>
+ </sequence>
+ <attribute name="point" type="string" use="required">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="id" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="name" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ <appInfo>
+ <meta.attribute translatable="true"/>
+ </appInfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <element name="contributor">
+ <complexType>
+ <attribute name="id" type="string" use="required">
+ <annotation>
+ <documentation>
+ The unique ID of this contributor
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="searchproviderid" type="string" use="required">
+ <annotation>
+ <documentation>
+ The ID of the search provider for which this contributor shows search result
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="creator" type="string" use="required">
+ <annotation>
+ <documentation>
+ The ISearchResultCustomUiCreator implementation which will create the UI to display the result
+ </documentation>
+ <appInfo>
+ <meta.attribute kind="java" basedOn=":org.eclipse.platform.discovery.ui.api.ISearchResultCustomUiCreator"/>
+ </appInfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <annotation>
+ <appInfo>
+ <meta.section type="since"/>
+ </appInfo>
+ <documentation>
+ [Enter the first release in which this extension point appears.]
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appInfo>
+ <meta.section type="examples"/>
+ </appInfo>
+ <documentation>
+ [Enter extension point usage example here.]
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appInfo>
+ <meta.section type="apiinfo"/>
+ </appInfo>
+ <documentation>
+ [Enter API information here.]
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appInfo>
+ <meta.section type="implementation"/>
+ </appInfo>
+ <documentation>
+ [Enter information about supplied implementation of this extension point.]
+ </documentation>
+ </annotation>
+
+
+</schema>
diff --git a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/api/ISearchParametersUI.java b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/api/ISearchParametersUI.java
index e6edb06..2cae418 100644
--- a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/api/ISearchParametersUI.java
+++ b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/api/ISearchParametersUI.java
@@ -10,8 +10,8 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.api;
+import java.util.List;
import java.util.Map;
-import java.util.Set;
import org.eclipse.platform.discovery.runtime.api.GroupingHierarchy;
import org.eclipse.platform.discovery.runtime.api.ISearchDestination;
@@ -90,8 +90,14 @@
*/
public void createUI(final Composite parent, final FormToolkit toolkit, final IConsoleContext consoleContext);
- public void destinationSelected(final Set<ISearchDestination> destinations);
+ /**
+ * Notifies the parameters UI that a search provider has been selected. Implementors may perform some UI related routines (e.g. enable/disable UI elements) based on the search provider specified.
+ * @param destination - the selected search provider. May be null if the user has selected a destination category (instead of destination) therefore unselecting destination, and effectively unselecting the search provider.
+ */
+ public void searchProviderSelected(final ISearchProviderDescription selectedProvider);
+
+
/**
* Gets specific parameters. The parameters are passed to the search provider, when performing search.
* @see ISearchParameters#getCustomParameters()
@@ -113,5 +119,5 @@
/**
* Displays the hierarchies which can be used to present the search result
*/
- public void showGroupingHierarchies(final Set<GroupingHierarchy> groupingHierarchies);
+ public void showGroupingHierarchies(final List<GroupingHierarchy> groupingHierarchies);
}
diff --git a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/SearchParametersUI.java b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/SearchParametersUI.java
index a3f2ad5..98686f5 100644
--- a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/SearchParametersUI.java
+++ b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/SearchParametersUI.java
@@ -10,10 +10,10 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.internal;
+import java.util.ArrayList;
import java.util.Collections;
-import java.util.HashSet;
+import java.util.List;
import java.util.Map;
-import java.util.Set;
import org.eclipse.jface.resource.ImageRegistry;
import org.eclipse.platform.discovery.runtime.api.GroupingHierarchy;
@@ -27,9 +27,6 @@
import org.eclipse.platform.discovery.ui.internal.view.SearchConsoleView;
import org.eclipse.platform.discovery.ui.internal.view.impl.SubdestinationsSelectedListener;
import org.eclipse.platform.discovery.ui.internal.view.impl.TextControl;
-import org.eclipse.platform.discovery.util.internal.property.IPropertyAttributeListener;
-import org.eclipse.platform.discovery.util.internal.property.Property;
-import org.eclipse.platform.discovery.util.internal.property.PropertyAttributeChangedEvent;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
@@ -45,64 +42,17 @@
import org.eclipse.ui.forms.widgets.FormToolkit;
public class SearchParametersUI implements ISearchParametersUI {
+
private final static String DROP_DOWN_ICON_LOCATION = "icon-dropdown-keyword-ALT.gif"; //$NON-NLS-1$
private static final int UI_IN_CONTROL_SPACING = 5;
private Label openSubdestinationsButton;
private TextControl keywordTextControl;
- private final Property<Set<ISearchDestination>> destinations;
-
private IConsoleContext consoleContext;
private InteractiveComboSelector<GroupingHierarchy> groupingHierarchySelector;
- public SearchParametersUI()
- {
- destinations = new Property<Set<ISearchDestination>>();
- destinations.registerValueListener(new IPropertyAttributeListener<Set<ISearchDestination>>() {
-
- @Override
- public void attributeChanged(PropertyAttributeChangedEvent<Set<ISearchDestination>> event) {
- final ISearchProviderDescription currentSearchProvider = consoleContext.searchProvider();
- final Set<ISearchDestination> newSelection = event.getNewAttribute();
- keywordTextControl.setEnabled((!newSelection.isEmpty()) && (currentSearchProvider == null ? false : currentSearchProvider.supportsTextSearch()));
- updateKeywordTextMessage(newSelection);
-
- if (newSelection.isEmpty() || currentSearchProvider == null)
- {
- openSubdestinationsButton.setEnabled(false);
- } else
- {
- final Set<ISearchSubdestination> allSubdestintations = consoleContext.searchProviderConfiguration().getAvailableSearchSubdestinations(consoleContext.selectedObjectType(), consoleContext.destinationCategory(), consoleContext.searchProvider());
- openSubdestinationsButton.setEnabled(allSubdestintations.size() > 0);
- }
-
- consoleContext.notifyComplete(isComplete());
- }
-
- private void updateKeywordTextMessage(final Set<ISearchDestination> selectedDestinations)
- {
- if(selectedDestinations.isEmpty())
- {
- keywordTextControl.setMessage(DiscoveryUIMessages.SearchConsoleView_NoDestinationSelectedHint);
- return;
- }
-
- final ISearchProviderDescription currentSearchProvider = SearchParametersUI.this.consoleContext.searchProvider();
- if(currentSearchProvider != null && currentSearchProvider.supportsTextSearch())
- {
- keywordTextControl.setMessage(DiscoveryUIMessages.SearchConsoleView_EnterKeywordHint);
- }
- else
- {
- keywordTextControl.setMessage(DiscoveryUIMessages.SearchConsoleView_UnsupportedTextSearch);
- }
- }
-
- }, false);
- }
-
@Override
public void createUI(Composite parent, FormToolkit formToolkit, final IConsoleContext consoleContext) {
parent.setLayout(new FormLayout());
@@ -132,7 +82,7 @@
final TextControl control = new TextControl(keywordText, leftNeighbour);
control.setEnabled(false);
- control.setMessage(DiscoveryUIMessages.SearchConsoleView_NoDestinationSelectedHint);
+ control.setMessage(DiscoveryUIMessages.SearchConsoleView_NoObjectTypeSelectedHint);
control.getControl().addModifyListener(new ModifyListener() {
@Override
public void modifyText(ModifyEvent e) {
@@ -161,7 +111,7 @@
private boolean isComplete()
{
- return !destinations.get().isEmpty() && !keywordTextControl.get().isEmpty();
+ return (consoleContext.searchProvider() != null) && !keywordTextControl.get().isEmpty();
}
@Override
@@ -197,20 +147,61 @@
private void createGroupByComposite(final Composite parent, final FormToolkit formToolkit, final int leftLabelsSize, final Control upperNeighbour)
{
- groupingHierarchySelector = new InteractiveComboSelector<GroupingHierarchy>(parent, formToolkit, new HashSet<GroupingHierarchy>(), DiscoveryUIMessages.GROUP_BY_LABEL, leftLabelsSize , upperNeighbour);
+ groupingHierarchySelector = new InteractiveComboSelector<GroupingHierarchy>(parent, formToolkit, new ArrayList<GroupingHierarchy>(), DiscoveryUIMessages.GROUP_BY_LABEL, leftLabelsSize , upperNeighbour);
groupingHierarchySelector.setEnabled(false);
}
@Override
- public void showGroupingHierarchies(final Set<GroupingHierarchy> groupingHierarchies) {
+ public void showGroupingHierarchies(final List<GroupingHierarchy> groupingHierarchies) {
groupingHierarchySelector.setInput(groupingHierarchies);
}
@Override
- public void destinationSelected(final Set<ISearchDestination> destinations) {
- final Set<ISearchDestination> copy = new HashSet<ISearchDestination>(destinations);
- this.destinations.set(copy);
+ public void searchProviderSelected(ISearchProviderDescription provider) {
+
+
+ final ISearchDestination destination = consoleContext.searchDestination();
+ keywordTextControl.setEnabled((provider == null ? false : provider.supportsTextSearch()));
+ updateKeywordTextMessage(provider, destination);
+
+ if (destination == null || provider == null)
+ {
+ openSubdestinationsButton.setEnabled(false);
+ } else
+ {
+ final List<ISearchSubdestination> allSubdestintations = consoleContext.searchProviderConfiguration().getAvailableSearchSubdestinations(consoleContext.selectedObjectType(), consoleContext.destinationCategory(), consoleContext.searchProvider());
+ openSubdestinationsButton.setEnabled(allSubdestintations.size() > 0);
+ }
+
+ consoleContext.notifyComplete(isComplete());
}
-
+ private void updateKeywordTextMessage(ISearchProviderDescription provider, final ISearchDestination destination)
+ {
+ if(provider==null)
+ {
+ if(consoleContext.selectedObjectType()==null)
+ {
+ keywordTextControl.setMessage(DiscoveryUIMessages.SearchConsoleView_NoObjectTypeSelectedHint);
+ return;
+ }
+
+ assert destination==null;
+ keywordTextControl.setMessage(DiscoveryUIMessages.SearchConsoleView_NoDestinationSelectedHint);
+ return;
+ }
+
+ if(provider.supportsTextSearch())
+ {
+ keywordTextControl.setMessage(DiscoveryUIMessages.SearchConsoleView_EnterKeywordHint);
+ return;
+ }
+ else
+ {
+ keywordTextControl.setMessage(DiscoveryUIMessages.SearchConsoleView_UnsupportedTextSearch);
+ }
+
+
+ }
+
}
diff --git a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/plugin/DiscoveryUIMessages.java b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/plugin/DiscoveryUIMessages.java
index e2c09ac..863287d 100644
--- a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/plugin/DiscoveryUIMessages.java
+++ b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/plugin/DiscoveryUIMessages.java
@@ -26,7 +26,9 @@
public static String SearchFavoritesView_UnsupportedDataContentMsg;
public static String SearchConsoleView_EnterKeywordHint;
- public static String SearchConsoleView_NoDestinationSelectedHint;
+ public static String SearchConsoleView_NoDestinationSelectedHint;
+
+ public static String SearchConsoleView_NoObjectTypeSelectedHint;
public static String SearchConsoleView_UnsupportedTextSearch;
public static String SearchConsoleView_MANAGED_CONFIGS_LINK;
diff --git a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/plugin/DiscoveryUIMessages.properties b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/plugin/DiscoveryUIMessages.properties
index 67dc722..7cdad5a 100644
--- a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/plugin/DiscoveryUIMessages.properties
+++ b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/plugin/DiscoveryUIMessages.properties
@@ -47,6 +47,7 @@
SearchConsoleView_EnterKeywordHint=Enter keyword
SearchConsoleView_NoDestinationSelectedHint=Select destination to enable
+SearchConsoleView_NoObjectTypeSelectedHint=Select search type to enable
SearchConsoleView_UnsupportedTextSearch=Text search not supported
SearchConsoleView_SearchResultsAvailable=Search has finished but the results are not visible\nResize results area to reveal them
diff --git a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/selector/ComboSelector.java b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/selector/ComboSelector.java
index 02bac7f..f1c4361 100644
--- a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/selector/ComboSelector.java
+++ b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/selector/ComboSelector.java
@@ -10,29 +10,29 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.internal.selector;
-import java.util.Collection;
-import java.util.Set;
-
-import org.eclipse.jface.viewers.ComboViewer;
-import org.eclipse.jface.viewers.IBaseLabelProvider;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.platform.discovery.core.internal.ISingleValueSelector;
-import org.eclipse.platform.discovery.runtime.api.IDisplayableObject;
-import org.eclipse.platform.discovery.ui.internal.view.SearchConsoleView;
-import org.eclipse.platform.discovery.ui.internal.view.impl.DisplayableObjectLabelProvider;
-import org.eclipse.platform.discovery.ui.internal.view.impl.DisplayableObjectsContentProvider;
-import org.eclipse.platform.discovery.ui.internal.view.impl.IControlValueSelector;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.FormAttachment;
-import org.eclipse.swt.layout.FormData;
-import org.eclipse.swt.layout.FormLayout;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.ui.forms.widgets.FormToolkit;
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.jface.viewers.ComboViewer;
+import org.eclipse.jface.viewers.IBaseLabelProvider;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.IStructuredContentProvider;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.platform.discovery.core.internal.ISingleValueSelector;
+import org.eclipse.platform.discovery.runtime.api.IDisplayableObject;
+import org.eclipse.platform.discovery.ui.internal.view.SearchConsoleView;
+import org.eclipse.platform.discovery.ui.internal.view.impl.DisplayableObjectLabelProvider;
+import org.eclipse.platform.discovery.ui.internal.view.impl.DisplayableObjectsContentProvider;
+import org.eclipse.platform.discovery.ui.internal.view.impl.IControlValueSelector;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.FormAttachment;
+import org.eclipse.swt.layout.FormData;
+import org.eclipse.swt.layout.FormLayout;
+import org.eclipse.swt.widgets.Combo;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.ui.forms.widgets.FormToolkit;
/**
@@ -57,7 +57,7 @@
* @param secondColumnPosition
* "Y" position of the combo left side
*/
- public ComboSelector(final Composite parent, final FormToolkit formToolkit, final Set<T> input, final String comboLabel, final int secondColumnPosition, final Control upperNeighbour)
+ public ComboSelector(final Composite parent, final FormToolkit formToolkit, final List<T> input, final String comboLabel, final int secondColumnPosition, final Control upperNeighbour)
{
comboLabelControl = new Label(parent, SWT.FLAT);
final FormData comboLabelFormData = new FormData();
@@ -99,7 +99,7 @@
comboViewer.setInput(input);
}
- private ComboViewer createComboViewer(final Composite parent, FormToolkit formToolkit, final Set<T> input)
+ private ComboViewer createComboViewer(final Composite parent, FormToolkit formToolkit, final List<T> input)
{
final ComboViewer viewer = new ComboViewer(parent, SWT.READ_ONLY | SWT.SINGLE );
viewer.setLabelProvider(comboLabelProvider());
@@ -112,7 +112,7 @@
/**
* Get the content provider for the combo box
*/
- protected IStructuredContentProvider comboContentProvider(final Set<T> input)
+ protected IStructuredContentProvider comboContentProvider(final List<T> input)
{
return new DisplayableObjectsContentProvider<T>(input);
}
diff --git a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/selector/InteractiveComboSelector.java b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/selector/InteractiveComboSelector.java
index ee3464e..9dc95c5 100644
--- a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/selector/InteractiveComboSelector.java
+++ b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/selector/InteractiveComboSelector.java
@@ -11,6 +11,7 @@
package org.eclipse.platform.discovery.ui.internal.selector;
import java.util.Collection;
+import java.util.List;
import java.util.Set;
import org.eclipse.jface.viewers.ISelectionChangedListener;
@@ -45,7 +46,7 @@
* the parent composite. DO NOTE that it will be set to invisible in case empty input is specified
* @see ComboSelector#ComboSelector(Composite, FormToolkit, Set, String, int)
*/
- public InteractiveComboSelector(final Composite parent, final FormToolkit formToolkit, final Set<T> input, final String comboLabel, final int secondColumnPosition, final Control upperNeighbour)
+ public InteractiveComboSelector(final Composite parent, final FormToolkit formToolkit, final List<T> input, final String comboLabel, final int secondColumnPosition, final Control upperNeighbour)
{
super(parent, formToolkit, input, comboLabel, secondColumnPosition, upperNeighbour);
this.lastKnownSelectedItem = new Property<T>();
diff --git a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/selector/SearchDestinationsSelector.java b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/selector/SearchDestinationsSelector.java
index 4bdc218..841bc67 100644
--- a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/selector/SearchDestinationsSelector.java
+++ b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/selector/SearchDestinationsSelector.java
@@ -10,34 +10,35 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.internal.selector;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.platform.discovery.core.internal.selectors.IStatefulItemsSelector;
-import org.eclipse.platform.discovery.runtime.api.IDestinationsProvider;
-import org.eclipse.platform.discovery.runtime.api.ISearchDestination;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
-import org.eclipse.platform.discovery.ui.internal.plugin.DiscoveryUIMessages;
-import org.eclipse.platform.discovery.ui.internal.view.IGetControlObject;
-import org.eclipse.platform.discovery.ui.internal.view.SearchConsoleView;
-import org.eclipse.platform.discovery.ui.internal.view.impl.DestinationsContentProvider;
-import org.eclipse.platform.discovery.ui.internal.view.impl.DestinationsLabelProvider;
-import org.eclipse.platform.discovery.util.internal.property.IPropertyAttributeListener;
-import org.eclipse.platform.discovery.util.internal.property.Property;
-import org.eclipse.platform.discovery.util.internal.property.PropertyAttributeChangedEvent;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.FormAttachment;
-import org.eclipse.swt.layout.FormData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.ui.forms.widgets.FormToolkit;
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.platform.discovery.core.internal.selectors.IItemSelector;
+import org.eclipse.platform.discovery.runtime.api.IDestinationsProvider;
+import org.eclipse.platform.discovery.runtime.api.ISearchDestination;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
+import org.eclipse.platform.discovery.ui.internal.plugin.DiscoveryUIMessages;
+import org.eclipse.platform.discovery.ui.internal.view.IGetControlObject;
+import org.eclipse.platform.discovery.ui.internal.view.SearchConsoleView;
+import org.eclipse.platform.discovery.ui.internal.view.impl.DestinationsContentProvider;
+import org.eclipse.platform.discovery.ui.internal.view.impl.DestinationsLabelProvider;
+import org.eclipse.platform.discovery.util.internal.property.IPropertyAttributeListener;
+import org.eclipse.platform.discovery.util.internal.property.Property;
+import org.eclipse.platform.discovery.util.internal.property.PropertyAttributeChangedEvent;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.FormAttachment;
+import org.eclipse.swt.layout.FormData;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.ui.forms.widgets.FormToolkit;
/**
@@ -46,7 +47,7 @@
* @author Danail Branekov
*
*/
-public abstract class SearchDestinationsSelector implements IStatefulItemsSelector<ISearchDestination, IDestinationCategoryDescription>, IGetControlObject<Control>
+public abstract class SearchDestinationsSelector implements IItemSelector<ISearchDestination, IDestinationCategoryDescription>, IGetControlObject<Control>
{
private final TreeViewer destinationsTreeViewer;
private final Property<IStructuredSelection> lastKnownSelection;
@@ -75,18 +76,15 @@
destinationsTreeViewer.getControl().setLayoutData(searchInFormData);
}
- public Set<ISearchDestination> getSelectedItems()
+ public ISearchDestination getSelectedItem()
{
final Object selectedObject = ((IStructuredSelection) destinationsTreeViewer.getSelection()).getFirstElement();
if (selectedObject instanceof IDestinationCategoryDescription)
{
- return new HashSet<ISearchDestination>();
+ return null;
}
- final Set<ISearchDestination> result = new HashSet<ISearchDestination>();
- result.add((ISearchDestination) selectedObject);
-
- return result;
+ return (ISearchDestination) selectedObject;
}
private TreeViewer createDestinationsTreeViewer(final Composite parent)
@@ -95,9 +93,9 @@
viewer.setContentProvider(new DestinationsContentProvider()
{
@Override
- protected Set<ISearchDestination> getSearchDestinationsForCategory(final IDestinationCategoryDescription category)
+ protected List<ISearchDestination> getSearchDestinationsForCategory(final IDestinationCategoryDescription category)
{
- final Set<ISearchDestination> result = new HashSet<ISearchDestination>();
+ final List<ISearchDestination> result = new ArrayList<ISearchDestination>();
for(IDestinationsProvider destinationsProvider : getDestinationProvidersForCategory(category))
{
result.addAll(getSearchDestinations(category, destinationsProvider));
@@ -116,7 +114,7 @@
// Also, empty selection can happen only via API - the user is not capable of delesecting everything
if(event.getSelection().isEmpty())
{
- handleSelectionChange(new HashSet<ISearchDestination>());
+ handleSelectionChange(null);
return;
}
lastKnownSelection.set((IStructuredSelection) event.getSelection());
@@ -131,8 +129,9 @@
public Control getControl() {
return destinationsTreeViewer.getControl();
}
-
- public void setInput(Set<IDestinationCategoryDescription> input)
+
+ @Override
+ public void setInput(List<IDestinationCategoryDescription> input)
{
updateInternal(input);
}
@@ -140,10 +139,10 @@
@SuppressWarnings("unchecked")
public void update()
{
- updateInternal((Set<IDestinationCategoryDescription>) destinationsTreeViewer.getInput());
+ updateInternal((List<IDestinationCategoryDescription>) destinationsTreeViewer.getInput());
}
- private void updateInternal(final Set<IDestinationCategoryDescription> input)
+ private void updateInternal(final List<IDestinationCategoryDescription> input)
{
destinationsTreeViewer.setInput(input);
refreshAndExpandTreeViewer(destinationsTreeViewer);
@@ -202,7 +201,7 @@
protected abstract Set<IDestinationsProvider> getDestinationProvidersForCategory(final IDestinationCategoryDescription category);
/**
- * Retrieves a set of search destinations which are relevant to the destination category and destination provider specified
+ * Retrieves a list of search destinations which are relevant to the destination category and destination provider specified
*
* @param category
* the destination category
@@ -210,24 +209,22 @@
* the destinations provider
* @return a set of search destinations
*/
- protected abstract Set<ISearchDestination> getSearchDestinations(final IDestinationCategoryDescription category,
+ protected abstract List<ISearchDestination> getSearchDestinations(final IDestinationCategoryDescription category,
final IDestinationsProvider destinationsProvider);
private class SelectionChangedListener implements IPropertyAttributeListener<IStructuredSelection>
{
- @SuppressWarnings("unchecked")
@Override
public void attributeChanged(final PropertyAttributeChangedEvent<IStructuredSelection> event)
{
final IStructuredSelection selection = event.getNewAttribute();
if (selection.isEmpty() || !(selection.getFirstElement() instanceof ISearchDestination))
{
- handleSelectionChange(new HashSet<ISearchDestination>());
+ handleSelectionChange(null);
return;
}
- final Set<ISearchDestination> destinations = new HashSet<ISearchDestination>((List<ISearchDestination>) selection.toList());
- handleSelectionChange(destinations);
+ handleSelectionChange((ISearchDestination)selection.getFirstElement());
}
}
diff --git a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/selector/SubdestinationsSelector.java b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/selector/SubdestinationsSelector.java
index 457edcc..0154acf 100644
--- a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/selector/SubdestinationsSelector.java
+++ b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/selector/SubdestinationsSelector.java
@@ -10,29 +10,28 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.internal.selector;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Comparator;
-import java.util.Iterator;
-import java.util.LinkedHashMap;
-import java.util.Map.Entry;
-import java.util.Set;
-
-import org.eclipse.jface.window.ToolTip;
-import org.eclipse.platform.discovery.core.internal.selectors.IStartableItemsSelector;
-import org.eclipse.platform.discovery.runtime.api.ISearchSubdestination;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.ui.forms.ManagedForm;
-import org.eclipse.ui.forms.widgets.FormToolkit;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.Iterator;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map.Entry;
+
+import org.eclipse.jface.window.ToolTip;
+import org.eclipse.platform.discovery.core.internal.selectors.IStartableItemsSelector;
+import org.eclipse.platform.discovery.runtime.api.ISearchSubdestination;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.graphics.Point;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.ui.forms.ManagedForm;
+import org.eclipse.ui.forms.widgets.FormToolkit;
/**
@@ -48,7 +47,7 @@
*/
public abstract class SubdestinationsSelector extends ToolTip implements IStartableItemsSelector<ISearchSubdestination>
{
- private final Set<ISearchSubdestination> subDestinations;
+ private final List<ISearchSubdestination> subDestinations;
private final Point showPoint;
@@ -56,11 +55,11 @@
private ManagedForm _managedForm;
- public SubdestinationsSelector(Control control, int style, final Set<ISearchSubdestination> subDestinations, final Point showPoint)
+ public SubdestinationsSelector(Control control, int style, final List<ISearchSubdestination> subDestinations, final Point showPoint)
{
super(control, style, true);
this.setHideOnMouseDown(false);
- this.subDestinations = Collections.unmodifiableSet(subDestinations);
+ this.subDestinations = Collections.unmodifiableList(subDestinations);
this.showPoint = showPoint;
allButtons = new LinkedHashMap<Button, ISearchSubdestination>();
}
@@ -108,7 +107,7 @@
iter.next().setFocus();
}
- protected Collection<ISearchSubdestination> sortSubdestinations(final Set<ISearchSubdestination> subdestinations)
+ protected List<ISearchSubdestination> sortSubdestinations(final List<ISearchSubdestination> subdestinations)
{
final ISearchSubdestination[] sortedSubdestinations = new ISearchSubdestination[subdestinations.size()];
Arrays.sort(subdestinations.toArray(sortedSubdestinations), new Comparator<ISearchSubdestination>()
diff --git a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/ISearchProviderSelector.java b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/ISearchProviderSelector.java
new file mode 100644
index 0000000..5807ce1
--- /dev/null
+++ b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/ISearchProviderSelector.java
@@ -0,0 +1,52 @@
+package org.eclipse.platform.discovery.ui.internal.view;
+
+import java.util.List;
+
+import org.eclipse.platform.discovery.core.internal.console.ISearchConsoleController;
+import org.eclipse.platform.discovery.runtime.api.ISearchDestination;
+import org.eclipse.platform.discovery.runtime.internal.ISearchProviderConfiguration;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IObjectTypeDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.ISearchProviderDescription;
+import org.eclipse.swt.widgets.Composite;
+
+public interface ISearchProviderSelector extends IGetControlObject<Composite> {
+ /**
+ * The context via which search parameters communicate with the search console input parameters section
+ */
+ public interface IConsoleContext
+ {
+ /**
+ * Notifies the console that the search can be performed (i.e. the user provided sufficient input data)
+ */
+ public void notifyComplete(final boolean complete);
+
+ /**
+ * The console aligns its fixed parameters UI (object type, search destination) in two columns. The digit returned by this method represents the
+ * relative offset at which the second column starts. Contributors may have this value in mind in order to align their custom user interface gracefully
+ */
+ public int secondColumnLeftOffset();
+
+ /**
+ * Provides the console search provider configuration; never null
+ * @see ISearchProviderConfiguration
+ */
+ public ISearchProviderConfiguration searchProviderConfiguration();
+ }
+
+
+
+ public IObjectTypeDescription getSelectedObjectType();
+
+ public ISearchDestination getSelectedDestination();
+
+ public ISearchProviderDescription getSelectedSearchProvider();
+
+ public void setObjectTypes(final List<IObjectTypeDescription> objectTypes);
+
+ public void setDestinations(List<IDestinationCategoryDescription> categories);
+
+ public void updateDestinationsUI();
+
+ public void setController(ISearchConsoleController controller);
+}
\ No newline at end of file
diff --git a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/SearchConsoleView.java b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/SearchConsoleView.java
index a9f7e54..de70f8c 100644
--- a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/SearchConsoleView.java
+++ b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/SearchConsoleView.java
@@ -11,6 +11,7 @@
package org.eclipse.platform.discovery.ui.internal.view;
import java.util.Arrays;
+import java.util.Collections;
import java.util.HashSet;
import java.util.LinkedList;
import java.util.List;
@@ -18,17 +19,12 @@
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.jface.preference.PreferenceDialog;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
import org.eclipse.platform.discovery.core.api.ISearchContext;
import org.eclipse.platform.discovery.core.api.SearchEvent;
import org.eclipse.platform.discovery.core.internal.ISearchConsoleView;
import org.eclipse.platform.discovery.core.internal.console.ISearchConsoleController;
import org.eclipse.platform.discovery.core.internal.console.ISearchConsoleControllerOutputView;
import org.eclipse.platform.discovery.runtime.api.GroupingHierarchy;
-import org.eclipse.platform.discovery.runtime.api.IDestinationChangeHandler;
import org.eclipse.platform.discovery.runtime.api.ISearchDestination;
import org.eclipse.platform.discovery.runtime.api.ISearchParameters;
import org.eclipse.platform.discovery.runtime.api.ISearchSubdestination;
@@ -55,13 +51,9 @@
import org.eclipse.platform.discovery.ui.internal.plugin.DiscoveryUIMessages;
import org.eclipse.platform.discovery.ui.internal.search.advancedparams.AdvancedSearchParamsDisplayer;
import org.eclipse.platform.discovery.ui.internal.search.advancedparams.IAdvancedSearchParamsDisplayer;
-import org.eclipse.platform.discovery.ui.internal.selector.ComboSelector;
import org.eclipse.platform.discovery.ui.internal.util.ControlBackgroundImageManager;
import org.eclipse.platform.discovery.ui.internal.view.impl.AbstractDiscoveryView;
-import org.eclipse.platform.discovery.ui.internal.view.impl.IControlValueSelector;
import org.eclipse.platform.discovery.ui.internal.view.impl.ITabbedSessionDisplayer;
-import org.eclipse.platform.discovery.ui.internal.view.impl.SearchConsoleDestinationsSelector;
-import org.eclipse.platform.discovery.ui.internal.view.impl.SearchForSelectionChangeListener;
import org.eclipse.platform.discovery.ui.internal.view.impl.SearchParameters;
import org.eclipse.platform.discovery.ui.internal.view.result.impl.ContributedUIFactory;
import org.eclipse.platform.discovery.ui.internal.view.result.impl.TabbedSessionDisplayer;
@@ -84,7 +76,6 @@
import org.eclipse.swt.layout.FormData;
import org.eclipse.swt.layout.FormLayout;
import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Combo;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Event;
@@ -120,9 +111,9 @@
* Constant for identifying the gap between UI controls in form layouts
*/
public static final int UI_IN_CONTROL_SPACING = 5;
+
+ private ISearchProviderSelector searchProviderSelector;
- private IControlValueSelector<IObjectTypeDescription, Combo> searchForComboViewer;
- private SearchConsoleDestinationsSelector destinationsSelector;
private IAdvancedSearchParamsDisplayer advancedSearchParamsDisplayer;
private ITabbedSessionDisplayer<ISearchContext> sdm;
private IProgressMonitor viewProgressMonitor;
@@ -242,18 +233,20 @@
this.bottomComposite.setFocus();
}
}
-
- public void showDestinationsCategories(Set<IDestinationCategoryDescription> categories)
- {
- destinationsSelector.setEnabled(categories.size() > 0);
- destinationsSelector.setInput(categories);
+
+ @Override
+ public void showDestinationsCategories(List<IDestinationCategoryDescription> categories)
+ {
+ searchProviderSelector.setDestinations(categories);
}
-
- public void showObjectTypes(Set<IObjectTypeDescription> objectTypes)
+
+ @Override
+ public void showObjectTypes(List<IObjectTypeDescription> objectTypes)
{
- searchForComboViewer.setInput(objectTypes);
+ searchProviderSelector.setObjectTypes(objectTypes);
}
-
+
+ @Override
public void showResult(final ISearchContext searchContext)
{
final String sessionId = searchContext.session().getId();
@@ -277,65 +270,6 @@
super.registerViewCustomization(customization);
}
- /**
- * Creates the "search for" composite. It contains
- * <ul>
- * <li>The "search for" label</li>
- * <li>The "search for" list viewer</li>
- * </ul>
- * @param secondColumnPosition the "x" position of the second column
- */
- private void createSearchForComposite(final Composite parent, final FormToolkit formToolkit, final int secondColumnPosition)
- {
- searchForComboViewer = new ComboSelector<IObjectTypeDescription>(parent, formToolkit, getSearchProviderConfiguration().getObjectTypes(), DiscoveryUIMessages.SEARCH_FOR_LIST_VIEWER_LABEL, secondColumnPosition, null );
- searchForComboViewer.registerSelectionChangedListener(new SearchForSelectionChangeListener(){
- @Override
- protected void objectTypeSelected(IObjectTypeDescription objectType)
- {
- SearchConsoleView.this.controller.objectTypeSelected(objectType);
- }
- });
- }
-
- /**
- * Creates the "search in" composite. It contains
- * <ul>
- * <li>The "search in" label</li>
- * <li>The "search in" list viewer</li>
- * </ul>
- * @param secondColumnPosition the "x" position of the second column
- */
- private void createSearchInComposite(final Composite parent, final FormToolkit formToolkit, final int secondColumnPosition, final Control offset)
- {
- destinationsSelector = new SearchConsoleDestinationsSelector(parent, formToolkit, secondColumnPosition, offset, getSearchProviderConfiguration())
- {
- public void handleSelectionChange(final Set<ISearchDestination> newSelection)
- {
- searchParametersUI.destinationSelected(newSelection);
-
- advancedSearchParamsDisplayer.update(getSelectedObjectType(), newSelection.isEmpty() ? null : newSelection.iterator().next(), getEnvironment(), uiContext());
- advancedSearchParamsComposite.setLayoutData(createAdvancedOptionsFormData(fixedSearchParamComposite, currentOrientation.get(), advancedSearchParamsDisplayer.isEnabled()));
- if (newSelection.isEmpty() || getSelectedActiveSearchProviderDescription() == null)
- {
- SearchConsoleView.this.controller.searchDestinationSelected(searchForComboViewer.getSelectedItem(), null);
- } else
- {
- SearchConsoleView.this.controller.searchDestinationSelected(searchForComboViewer.getSelectedItem(), newSelection.iterator().next());
- }
- upperComposite.layout(true, true);
- }
-
- };
- destinationsSelector.registerDestinationsChangeHandler(new IDestinationChangeHandler()
- {
- @Override
- public void handleDestinationsChange()
- {
- controller.searchDestinationsChanged();
- }
- });
- destinationsSelector.setEnabled(false);
- }
private void createHyperLink(final Composite parent, final FormToolkit formToolkit)
{
@@ -365,7 +299,7 @@
});
final FormData linkFormData = new FormData();
- linkFormData.top = new FormAttachment(destinationsSelector.getControl(), UI_IN_CONTROL_SPACING);
+ linkFormData.top = new FormAttachment(searchProviderSelector.getControl(), UI_IN_CONTROL_SPACING);
linkFormData.right = new FormAttachment(100, -UI_IN_CONTROL_SPACING);
manageConfigurationHyperlink.setLayoutData(linkFormData);
@@ -381,9 +315,41 @@
fixedSearchParamComposite = new Composite(this.upperComposite, SWT.NONE);
fixedSearchParamComposite.setLayout(new FormLayout());
fixedSearchParamComposite.setLayoutData(createFixedParamsFormData(currentOrientation.get()));
+
+ final ISearchProviderSelector.IConsoleContext selectorContext = new ISearchProviderSelector.IConsoleContext() {
+
+ @Override
+ public int secondColumnLeftOffset() {
+ return leftLabelsSize;
+ }
+
+ @Override
+ public ISearchProviderConfiguration searchProviderConfiguration() {
+ return getSearchProviderConfiguration();
+ }
+
+ @Override
+ public void notifyComplete(boolean complete) {
+ final ISearchProviderDescription selectedProvider = searchProviderSelector.getSelectedSearchProvider();
+ final ISearchDestination selectedDestination = searchProviderSelector.getSelectedDestination();
+ searchParametersUI.searchProviderSelected(selectedProvider);
+
+ advancedSearchParamsDisplayer.update(getSelectedObjectType(), selectedDestination, getEnvironment(), uiContext());
+ advancedSearchParamsComposite.setLayoutData(createAdvancedOptionsFormData(fixedSearchParamComposite, currentOrientation.get(), advancedSearchParamsDisplayer.isEnabled()));
+ if (selectedDestination == null || getSelectedActiveSearchProviderDescription() == null)
+ {
+ controller.searchDestinationSelected(searchProviderSelector.getSelectedObjectType(), null);
+ } else
+ {
+ controller.searchDestinationSelected(searchProviderSelector.getSelectedObjectType(), selectedDestination);
+ }
+ upperComposite.layout(true, true);
+ }
+ };
+
+ searchProviderSelector = new SearchProviderSelector(fixedSearchParamComposite, formToolkit, selectorContext);
+ searchProviderSelector.getControl().setLayoutData(createSearchProviderSelectorLayoutData());
- createSearchForComposite(fixedSearchParamComposite, formToolkit, leftLabelsSize);
- createSearchInComposite(fixedSearchParamComposite, formToolkit, leftLabelsSize, searchForComboViewer.getControl());
createHyperLink(fixedSearchParamComposite, formToolkit);
createSearchParametersUI(fixedSearchParamComposite, formToolkit);
@@ -397,12 +363,18 @@
searchButton.setLayoutData(buttonData);
searchButton.setEnabled(false);
- installSearchForSelectionChangeListener();
installSearchButtonListener();
upperComposite.layout();
}
+ private FormData createSearchProviderSelectorLayoutData() {
+ final FormData data = new FormData();
+ data.left = new FormAttachment(0, 0);
+ data.right = new FormAttachment(100, 0);
+ return data;
+ }
+
private void createSearchParametersUI(final Composite parent, final FormToolkit toolkit)
{
final Composite searchParametersUIComposite = new Composite(parent, SWT.NONE);// formToolkit.createComposite(parent);
@@ -564,7 +536,12 @@
final Set<ISearchSubdestination> result = new HashSet<ISearchSubdestination>();
final IObjectTypeDescription objectType = getSelectedObjectType();
final IDestinationCategoryDescription category = getDestinationCategory(getSelectedDestination());
- final ISearchProviderDescription searchProvider = getSearchProviderConfiguration().getActiveSearchProvider(objectType, category);
+ final ISearchProviderDescription searchProvider = getSearchProviderConfiguration().getActiveSearchProvider(objectType, category);
+ if(searchProvider == null)
+ {
+ return Collections.emptySet();
+ }
+
for(ISearchSubdestination subd : getSearchProviderConfiguration().getAvailableSearchSubdestinations(objectType, category, searchProvider))
{
if(getSearchProviderConfiguration().isSubdestinationActive(subd, objectType, category, searchProvider))
@@ -589,33 +566,6 @@
}
- /**
- * Installs the "search for" selection change listener which is notified when object type selection changes
- */
- private void installSearchForSelectionChangeListener()
- {
- searchForComboViewer.registerSelectionChangedListener(new ISelectionChangedListener()
- {
- public void selectionChanged(SelectionChangedEvent event)
- {
- final IObjectTypeDescription objectType = getObjectType(event);
- //destinationsSelector.setEnabled(objectType != null);
- SearchConsoleView.this.controller.objectTypeSelected(objectType);
- }
-
- private IObjectTypeDescription getObjectType(final SelectionChangedEvent event)
- {
- assert event.getSelection() instanceof IStructuredSelection;
-
- if(event.getSelection().isEmpty())
- {
- return null;
- }
- return (IObjectTypeDescription)((StructuredSelection)event.getSelection()).iterator().next();
- }
- });
- }
-
private void installSearchButtonListener()
{
searchButton.addSelectionListener(new SelectionAdapter()
@@ -652,7 +602,7 @@
*/
private IObjectTypeDescription getSelectedObjectType()
{
- return searchForComboViewer.getSelectedItem();
+ return searchProviderSelector.getSelectedObjectType();
}
/**
@@ -660,11 +610,7 @@
*/
private ISearchDestination getSelectedDestination()
{
- if (destinationsSelector.getSelectedItems().size() == 0)
- {
- return null;
- }
- return destinationsSelector.getSelectedItems().iterator().next();
+ return searchProviderSelector.getSelectedDestination();
}
/**
@@ -674,27 +620,16 @@
{
try
{
- final IDestinationCategoryDescription destCategory = getSelectedDestinationCategory();
- if(destCategory == null)
- {
- return null;
- }
-
- return getSearchProviderConfiguration().getActiveSearchProvider(getSelectedObjectType(), destCategory);
+ return getSearchProviderConfiguration().getActiveSearchProvider(getSelectedObjectType(), getSelectedDestinationCategory());
} catch (ProviderNotFoundException e)
{
return null;
}
}
- public void registerDestinationsChangeHandler(final IDestinationChangeHandler destChangeHandler)
- {
- destinationsSelector.registerDestinationsChangeHandler(destChangeHandler);
- }
-
public void updateDestinationsSelector()
- {
- destinationsSelector.update();
+ {
+ searchProviderSelector.updateDestinationsUI();
}
private int getLongestLabelSize(final List<String> labels)
@@ -745,9 +680,14 @@
}
private IDestinationCategoryDescription getDestinationCategory(ISearchDestination destination)
- {
+ {
+ if(destination == null)
+ {
+ return null;
+ }
+
try
- {
+ {
return getSearchProviderConfiguration().getDestinationCategoriesForDestination(destination).iterator().next();
} catch (DestinationCategoryNotFoundException e)
{
@@ -755,7 +695,7 @@
}
}
- public void showGroupingHierarchies(final Set<GroupingHierarchy> groupingHierarchies)
+ public void showGroupingHierarchies(final List<GroupingHierarchy> groupingHierarchies)
{
searchParametersUI.showGroupingHierarchies(groupingHierarchies);
}
@@ -830,7 +770,8 @@
@Override
public void registerController(final ISearchConsoleController controller)
{
- this.controller = controller;
+ this.controller = controller;
+ searchProviderSelector.setController(controller);
}
@Override
diff --git a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/SearchFavoritesItemsAdder.java b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/SearchFavoritesItemsAdder.java
index f5522c7..dfcdb82 100644
--- a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/SearchFavoritesItemsAdder.java
+++ b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/SearchFavoritesItemsAdder.java
@@ -10,23 +10,24 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.internal.view;
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.Set;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.platform.discovery.ui.api.ISearchFavoritesViewCustomization;
-import org.eclipse.platform.discovery.util.api.longop.ILongOperationRunner;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.platform.discovery.ui.api.ISearchFavoritesViewCustomization;
+import org.eclipse.platform.discovery.util.api.longop.ILongOperationRunner;
public abstract class SearchFavoritesItemsAdder implements ISearchFavoritesItemsAdder
{
- private final Set<ISearchFavoritesViewCustomization> viewCustomizations;
+ private final List<ISearchFavoritesViewCustomization> viewCustomizations;
private final ILongOperationRunner opRunner;
- public SearchFavoritesItemsAdder(final Set<ISearchFavoritesViewCustomization> viewCustomizations, final ILongOperationRunner opRunner)
+ public SearchFavoritesItemsAdder(final List<ISearchFavoritesViewCustomization> viewCustomizations, final ILongOperationRunner opRunner)
{
this.viewCustomizations = viewCustomizations;
this.opRunner = opRunner;
diff --git a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/SearchFavoritesView.java b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/SearchFavoritesView.java
index 610ee11..7f074fe 100644
--- a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/SearchFavoritesView.java
+++ b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/SearchFavoritesView.java
@@ -125,7 +125,7 @@
return new DiscoveryTreeViewerFactory()
{
@Override
- protected ITreeContentProvider contentProvider(final Set<IGenericViewCustomization> viewCustomizations)
+ protected ITreeContentProvider contentProvider(final List<IGenericViewCustomization> viewCustomizations)
{
return new FavoritesContentProvider(viewCustomizations);
}
diff --git a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/SearchProviderSelector.java b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/SearchProviderSelector.java
new file mode 100644
index 0000000..5a9d8de
--- /dev/null
+++ b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/SearchProviderSelector.java
@@ -0,0 +1,190 @@
+package org.eclipse.platform.discovery.ui.internal.view;
+
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.platform.discovery.core.internal.console.ISearchConsoleController;
+import org.eclipse.platform.discovery.runtime.api.IDestinationChangeHandler;
+import org.eclipse.platform.discovery.runtime.api.ISearchDestination;
+import org.eclipse.platform.discovery.runtime.internal.DestinationCategoryNotFoundException;
+import org.eclipse.platform.discovery.runtime.internal.ProviderNotFoundException;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IObjectTypeDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.ISearchProviderDescription;
+import org.eclipse.platform.discovery.ui.internal.plugin.DiscoveryUIMessages;
+import org.eclipse.platform.discovery.ui.internal.selector.ComboSelector;
+import org.eclipse.platform.discovery.ui.internal.view.impl.IControlValueSelector;
+import org.eclipse.platform.discovery.ui.internal.view.impl.SearchConsoleDestinationsSelector;
+import org.eclipse.platform.discovery.ui.internal.view.impl.SearchForSelectionChangeListener;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.FormLayout;
+import org.eclipse.swt.widgets.Combo;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.ui.forms.widgets.FormToolkit;
+
+public class SearchProviderSelector implements ISearchProviderSelector {
+
+ private IControlValueSelector<IObjectTypeDescription, Combo> searchForComboViewer;
+ private SearchConsoleDestinationsSelector destinationsSelector;
+
+ private ISearchConsoleController controller;
+ private final ISearchProviderSelector.IConsoleContext consoleContext;
+ private final Composite selectorComposite;
+
+ @Override
+ public void setController(ISearchConsoleController controller) {
+ this.controller = controller;
+ }
+
+ public SearchProviderSelector(Composite parent, FormToolkit toolkit, ISearchProviderSelector.IConsoleContext consoleContext){
+ this.consoleContext = consoleContext;
+ this.selectorComposite = new Composite(parent, SWT.NONE);
+ this.selectorComposite.setLayout(new FormLayout());
+ createSearchForViewer(toolkit);
+ createDestinationsSelector(toolkit);
+ }
+
+
+ /**
+ * Creates the "search for" composite. It contains
+ * <ul>
+ * <li>The "search for" label</li>
+ * <li>The "search for" list viewer</li>
+ * </ul>
+ * @param secondColumnPosition the "x" position of the second column
+ */
+ private void createSearchForViewer(FormToolkit toolkit) {
+ searchForComboViewer = new ComboSelector<IObjectTypeDescription>(this.selectorComposite, toolkit, getObjectTypes(), DiscoveryUIMessages.SEARCH_FOR_LIST_VIEWER_LABEL, consoleContext.secondColumnLeftOffset(), null );
+ searchForComboViewer.registerSelectionChangedListener(new SearchForSelectionChangeListener(){
+ @Override
+ protected void objectTypeSelected(IObjectTypeDescription objectType)
+ {
+ controller.objectTypeSelected(objectType);
+ consoleContext.notifyComplete(isSearchProviderAvailable(objectType, destinationsSelector.getSelectedItem()));
+ }
+ });
+ }
+
+ /**
+ * Creates the "search in" composite. It contains
+ * <ul>
+ * <li>The "search in" label</li>
+ * <li>The "search in" list viewer</li>
+ * </ul>
+ * @param secondColumnPosition the "x" position of the second column
+ * @param searchParametersUI
+ */
+ private void createDestinationsSelector(FormToolkit toolkit) {
+ destinationsSelector = new SearchConsoleDestinationsSelector(this.selectorComposite, toolkit, consoleContext.secondColumnLeftOffset(), searchForComboViewer.getControl(), consoleContext.searchProviderConfiguration())
+ {
+ public void handleSelectionChange(final ISearchDestination newSelection)
+ {
+ final IObjectTypeDescription selectedObjectType = searchForComboViewer.getSelectedItem();
+ if(selectedObjectType == null)
+ {
+ return;
+ }
+
+ consoleContext.notifyComplete(isSearchProviderAvailable(selectedObjectType, newSelection));
+ }
+
+ };
+ destinationsSelector.registerDestinationsChangeHandler(new IDestinationChangeHandler()
+ {
+ @Override
+ public void handleDestinationsChange()
+ {
+ controller.searchDestinationsChanged();
+ }
+ });
+ destinationsSelector.setEnabled(false);
+ }
+
+ private List<IObjectTypeDescription> getObjectTypes() {
+ return consoleContext.searchProviderConfiguration().getObjectTypes();
+ }
+
+ @Override
+ public void setDestinations(List<IDestinationCategoryDescription> categories) {
+ destinationsSelector.setEnabled(categories.size() > 0);
+ destinationsSelector.setInput(categories);
+ }
+
+ public void setObjectTypes(Set<IObjectTypeDescription> objectTypes) {
+ searchForComboViewer.setInput(objectTypes);
+ }
+
+ public Control getDestinationsControl() {
+ return destinationsSelector.getControl();
+ }
+
+
+ /* (non-Javadoc)
+ * @see org.eclipse.platform.discovery.ui.internal.view.ISearchProviderSelector#getSelectedObjectType()
+ */
+ @Override
+ public IObjectTypeDescription getSelectedObjectType() {
+ return searchForComboViewer.getSelectedItem();
+ }
+
+
+ /* (non-Javadoc)
+ * @see org.eclipse.platform.discovery.ui.internal.view.ISearchProviderSelector#getSelectedDestination()
+ */
+ @Override
+ public ISearchDestination getSelectedDestination() {
+ return destinationsSelector.getSelectedItem();
+ }
+
+ @Override
+ public void updateDestinationsUI() {
+ destinationsSelector.update();
+ }
+
+
+ @Override
+ public ISearchProviderDescription getSelectedSearchProvider() {
+ return getSelectedSearchProvider(searchForComboViewer.getSelectedItem(), destinationsSelector.getSelectedItem());
+ }
+
+ private ISearchProviderDescription getSelectedSearchProvider(final IObjectTypeDescription selectedObjectType, final ISearchDestination selectedDestination) {
+ if(selectedObjectType == null)
+ {
+ return null;
+ }
+ try {
+ return consoleContext.searchProviderConfiguration().getActiveSearchProvider(selectedObjectType, getSelectedCategory(destinationsSelector.getSelectedItem()));
+ } catch (ProviderNotFoundException e) {
+ return null;
+ }
+ }
+
+ @Override
+ public void setObjectTypes(List<IObjectTypeDescription> objectTypes) {
+ searchForComboViewer.setInput(objectTypes);
+ }
+
+ private boolean isSearchProviderAvailable(final IObjectTypeDescription selectedObjectType, final ISearchDestination selectedDestination) {
+ return getSelectedSearchProvider(selectedObjectType, selectedDestination) != null;
+ }
+
+ private IDestinationCategoryDescription getSelectedCategory(final ISearchDestination selectedDestination)
+ {
+ if(selectedDestination == null)
+ {
+ return null;
+ }
+
+ try {
+ return consoleContext.searchProviderConfiguration().getDestinationCategoriesForDestination(selectedDestination).iterator().next();
+ } catch (DestinationCategoryNotFoundException e) {
+ throw new IllegalStateException(e);
+ }
+ }
+
+ @Override
+ public Composite getControl() {
+ return this.selectorComposite;
+ }
+}
diff --git a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/favorites/FavoritesContentProvider.java b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/favorites/FavoritesContentProvider.java
index 5e79994..b9c7da4 100644
--- a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/favorites/FavoritesContentProvider.java
+++ b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/favorites/FavoritesContentProvider.java
@@ -10,8 +10,10 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.internal.view.favorites;
+import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
+import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -31,13 +33,13 @@
*/
public class FavoritesContentProvider extends GenericResultContentProvider
{
- private final Map<Object, Set<Object>> groupsMap;
+ private final Map<Object, List<Object>> groupsMap;
- public FavoritesContentProvider(Set<IGenericViewCustomization> viewCustomizations)
+ public FavoritesContentProvider(List<IGenericViewCustomization> viewCustomizations)
{
super(viewCustomizations);
- groupsMap = new HashMap<Object, Set<Object>>();
+ groupsMap = new HashMap<Object, List<Object>>();
}
@Override
@@ -85,10 +87,10 @@
return;
}
- Set<Object> groupedItems = groupsMap.get(group);
+ List<Object> groupedItems = groupsMap.get(group);
if(groupedItems == null)
{
- groupedItems = new HashSet<Object>();
+ groupedItems = new ArrayList<Object>();
groupsMap.put(group, groupedItems);
}
groupedItems.add(item);
diff --git a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/impl/AbstractDiscoveryView.java b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/impl/AbstractDiscoveryView.java
index f070a58..e98fc4d 100644
--- a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/impl/AbstractDiscoveryView.java
+++ b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/impl/AbstractDiscoveryView.java
@@ -10,7 +10,9 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.internal.view.impl;
+import java.util.ArrayList;
import java.util.HashSet;
+import java.util.List;
import java.util.Set;
import org.eclipse.jface.viewers.ISelectionProvider;
@@ -82,9 +84,9 @@
return new SearchConsoleSelectionProvider(new SearchConsoleSelectionProvider.IViewCustomizationsObtainer()
{
@Override
- public Set<IGenericViewCustomization> viewCustomizations()
+ public List<IGenericViewCustomization> viewCustomizations()
{
- return AbstractDiscoveryView.this.viewCustomizations();
+ return new ArrayList<IGenericViewCustomization>(AbstractDiscoveryView.this.viewCustomizations());
}
});
}
diff --git a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/impl/DestinationsContentProvider.java b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/impl/DestinationsContentProvider.java
index d2f839c..dad3366 100644
--- a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/impl/DestinationsContentProvider.java
+++ b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/impl/DestinationsContentProvider.java
@@ -10,11 +10,10 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.internal.view.impl;
+import java.util.ArrayList;
import java.util.Arrays;
import java.util.Comparator;
-import java.util.HashSet;
import java.util.List;
-import java.util.Set;
import org.eclipse.jface.viewers.ITreeContentProvider;
import org.eclipse.jface.viewers.Viewer;
@@ -30,11 +29,11 @@
*/
public abstract class DestinationsContentProvider implements ITreeContentProvider
{
- private final Set<ISearchDestination> destinations;
+ private final List<ISearchDestination> destinations;
public DestinationsContentProvider()
{
- destinations = new HashSet<ISearchDestination>();
+ destinations = new ArrayList<ISearchDestination>();
}
public Object[] getChildren(Object parentElement)
@@ -44,7 +43,7 @@
return new Object[0];
}
- final Set<ISearchDestination> destinations = new HashSet<ISearchDestination>(getSearchDestinationsForCategory((IDestinationCategoryDescription) parentElement));
+ final List<ISearchDestination> destinations = getSearchDestinationsForCategory((IDestinationCategoryDescription) parentElement);
return sortSearchDestinations(destinations).toArray();
}
@@ -61,9 +60,9 @@
@SuppressWarnings("unchecked")
public Object[] getElements(Object inputElement)
{
- assert inputElement instanceof Set;
+ assert inputElement instanceof List;
- final Set<IDestinationCategoryDescription> categories = (Set<IDestinationCategoryDescription>) inputElement;
+ final List<IDestinationCategoryDescription> categories = (List<IDestinationCategoryDescription>) inputElement;
return sortDestinationCategories(categories).toArray();
}
@@ -79,20 +78,20 @@
if(newInput != null)
{
- assert (newInput instanceof Set);
- destinations.addAll((Set<ISearchDestination>) newInput);
+ assert (newInput instanceof List);
+ destinations.addAll((List<ISearchDestination>) newInput);
}
}
/**
* Gets the search destination for the destination category specified
*/
- protected abstract Set<ISearchDestination> getSearchDestinationsForCategory(final IDestinationCategoryDescription category);
+ protected abstract List<ISearchDestination> getSearchDestinationsForCategory(final IDestinationCategoryDescription category);
/**
* Sorts the specified displayed objects
*/
- protected List<IDestinationCategoryDescription> sortDestinationCategories(final Set<IDestinationCategoryDescription> categories)
+ protected List<IDestinationCategoryDescription> sortDestinationCategories(final List<IDestinationCategoryDescription> categories)
{
final IDestinationCategoryDescription[] categoriesArr = categories.toArray(new IDestinationCategoryDescription[categories.size()]);
Arrays.sort(categoriesArr, new Comparator<IDescriptiveObject>()
@@ -106,7 +105,7 @@
return Arrays.asList(categoriesArr);
}
- private List<ISearchDestination> sortSearchDestinations(Set<ISearchDestination> destinations)
+ private List<ISearchDestination> sortSearchDestinations(List<ISearchDestination> destinations)
{
final ISearchDestination[] destArr = destinations.toArray(new ISearchDestination[destinations.size()]);
Arrays.sort(destArr, new Comparator<ISearchDestination>(){
diff --git a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/impl/DisplayableObjectsContentProvider.java b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/impl/DisplayableObjectsContentProvider.java
index b34065d..0614d1e 100644
--- a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/impl/DisplayableObjectsContentProvider.java
+++ b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/impl/DisplayableObjectsContentProvider.java
@@ -10,15 +10,14 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.internal.view.impl;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Comparator;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.platform.discovery.runtime.api.IDisplayableObject;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.List;
+
+import org.eclipse.jface.viewers.IStructuredContentProvider;
+import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.platform.discovery.runtime.api.IDisplayableObject;
/**
@@ -30,7 +29,7 @@
public class DisplayableObjectsContentProvider<T extends IDisplayableObject> implements IStructuredContentProvider
{
- private Set<T> curentInput;
+ private List<T> curentInput;
/**
* Constructor
@@ -38,7 +37,7 @@
* @param input
* initial set of {@link IDisplayableObject} which will be provided as elements
*/
- public DisplayableObjectsContentProvider(final Set<T> input)
+ public DisplayableObjectsContentProvider(final List<T> input)
{
this.curentInput = input;
}
@@ -55,10 +54,10 @@
@SuppressWarnings("unchecked")
public void inputChanged(Viewer viewer, Object oldInput, Object newInput)
{
- curentInput = (Set<T>) newInput;
+ curentInput = (List<T>) newInput;
}
- protected Object[] sortElements(final Set<T> elements)
+ protected Object[] sortElements(final List<T> elements)
{
final List<T> objectsList = new ArrayList<T>(elements);
Collections.sort(objectsList, new Comparator<T>()
diff --git a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/impl/SearchConsoleDestinationsSelector.java b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/impl/SearchConsoleDestinationsSelector.java
index 9a0c9d5..c4b5c1d 100644
--- a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/impl/SearchConsoleDestinationsSelector.java
+++ b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/impl/SearchConsoleDestinationsSelector.java
@@ -13,6 +13,7 @@
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
+import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -82,13 +83,13 @@
}
@Override
- protected Set<ISearchDestination> getSearchDestinations(IDestinationCategoryDescription category, IDestinationsProvider destinationsProvider)
+ protected List<ISearchDestination> getSearchDestinations(IDestinationCategoryDescription category, IDestinationsProvider destinationsProvider)
{
return this.searchProviderConfig.getSearchDestinations(category, destinationsProvider);
}
@Override
- public void setInput(Set<IDestinationCategoryDescription> input)
+ public void setInput(List<IDestinationCategoryDescription> input)
{
if(this.destinationsChangeHandler == null)
{
diff --git a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/impl/SearchConsoleSelectionProvider.java b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/impl/SearchConsoleSelectionProvider.java
index 9844662..45d2458 100644
--- a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/impl/SearchConsoleSelectionProvider.java
+++ b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/impl/SearchConsoleSelectionProvider.java
@@ -12,6 +12,7 @@
import java.util.HashSet;
import java.util.Iterator;
+import java.util.List;
import java.util.Set;
import org.eclipse.jface.viewers.ISelection;
@@ -34,7 +35,7 @@
*/
public interface IViewCustomizationsObtainer
{
- public Set<IGenericViewCustomization> viewCustomizations();
+ public List<IGenericViewCustomization> viewCustomizations();
}
public SearchConsoleSelectionProvider(final IViewCustomizationsObtainer customizationsObtainer)
diff --git a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/impl/SubdestinationsSelectedListener.java b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/impl/SubdestinationsSelectedListener.java
index c362256..6522e5e 100644
--- a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/impl/SubdestinationsSelectedListener.java
+++ b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/impl/SubdestinationsSelectedListener.java
@@ -11,6 +11,7 @@
package org.eclipse.platform.discovery.ui.internal.view.impl;
import java.util.HashSet;
+import java.util.List;
import java.util.Set;
import org.eclipse.platform.discovery.runtime.api.ISearchSubdestination;
@@ -58,7 +59,7 @@
public void widgetSelected(SelectionEvent event)
{
- final Set<ISearchSubdestination> subDestinations = consoleContext.searchProviderConfiguration().getAvailableSearchSubdestinations(consoleContext.selectedObjectType(), consoleContext.destinationCategory(), consoleContext.searchProvider());
+ final List<ISearchSubdestination> subDestinations = consoleContext.searchProviderConfiguration().getAvailableSearchSubdestinations(consoleContext.selectedObjectType(), consoleContext.destinationCategory(), consoleContext.searchProvider());
final Point showPoint = new Point(event.x, event.y + parentControl.getSize().y);
final SubdestinationsSelector selector = new SubdestinationsSelector(parentControl, SWT.NONE, subDestinations, showPoint)
diff --git a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/result/impl/ContributedUIFactory.java b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/result/impl/ContributedUIFactory.java
index 2a69d62..bb2779a 100644
--- a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/result/impl/ContributedUIFactory.java
+++ b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/result/impl/ContributedUIFactory.java
@@ -10,25 +10,25 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.internal.view.result.impl;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.platform.discovery.core.api.ISearchContext;
-import org.eclipse.platform.discovery.ui.api.IGenericViewCustomization;
-import org.eclipse.platform.discovery.ui.api.ISearchResultCustomUiCreator;
-import org.eclipse.platform.discovery.ui.api.ISearchConsoleCustomization;
-import org.eclipse.platform.discovery.ui.api.impl.ILabeledSelection;
-import org.eclipse.platform.discovery.ui.internal.selector.ICustomResultUiContributorDescription;
-import org.eclipse.platform.discovery.ui.internal.view.SearchConsoleView;
-import org.eclipse.platform.discovery.ui.internal.view.result.impl.TabbedSessionDisplayer.UI;
-import org.eclipse.platform.discovery.ui.internal.view.result.impl.TabbedSessionDisplayer.UIFactory;
-import org.eclipse.platform.discovery.ui.internal.xp.ICustomResultUiXpParser;
-import org.eclipse.platform.discovery.ui.internal.xp.impl.CustomResultUiXpParser;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.ui.forms.widgets.FormToolkit;
+import java.util.HashSet;
+import java.util.Set;
+
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.platform.discovery.core.api.ISearchContext;
+import org.eclipse.platform.discovery.ui.api.IGenericViewCustomization;
+import org.eclipse.platform.discovery.ui.api.ISearchConsoleCustomization;
+import org.eclipse.platform.discovery.ui.api.ISearchResultCustomUiCreator;
+import org.eclipse.platform.discovery.ui.api.impl.ILabeledSelection;
+import org.eclipse.platform.discovery.ui.internal.selector.ICustomResultUiContributorDescription;
+import org.eclipse.platform.discovery.ui.internal.view.SearchConsoleView;
+import org.eclipse.platform.discovery.ui.internal.view.result.impl.TabbedSessionDisplayer.UI;
+import org.eclipse.platform.discovery.ui.internal.view.result.impl.TabbedSessionDisplayer.UIFactory;
+import org.eclipse.platform.discovery.ui.internal.xp.ICustomResultUiXpParser;
+import org.eclipse.platform.discovery.ui.internal.xp.impl.CustomResultUiXpParser;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.ui.forms.widgets.FormToolkit;
public class ContributedUIFactory implements UIFactory<ISearchContext>
diff --git a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/result/impl/DiscoveryTreeViewerFactory.java b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/result/impl/DiscoveryTreeViewerFactory.java
index 80b0d10..5bf072f 100644
--- a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/result/impl/DiscoveryTreeViewerFactory.java
+++ b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/result/impl/DiscoveryTreeViewerFactory.java
@@ -10,45 +10,46 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.internal.view.result.impl;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.jface.action.IMenuListener;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.IToolBarManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.jface.viewers.CellLabelProvider;
-import org.eclipse.jface.viewers.IDoubleClickListener;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.platform.discovery.core.api.IContributedAction;
-import org.eclipse.platform.discovery.core.api.ISearchContext;
-import org.eclipse.platform.discovery.core.internal.ContextStructuredSelection;
-import org.eclipse.platform.discovery.ui.api.IGenericViewCustomization;
-import org.eclipse.platform.discovery.ui.api.IResultsViewAccessor;
-import org.eclipse.platform.discovery.ui.internal.tooltip.TooltipCreator;
-import org.eclipse.platform.discovery.ui.internal.tooltip.TreeViewerTooltipManager;
-import org.eclipse.platform.discovery.ui.internal.util.ControlBackgroundImageManager;
-import org.eclipse.platform.discovery.ui.internal.view.SortingMenuManager;
-import org.eclipse.platform.discovery.ui.internal.view.dnd.impl.DragSrcInteractionListener;
-import org.eclipse.platform.discovery.ui.internal.view.dnd.impl.DragSrcListener;
-import org.eclipse.platform.discovery.ui.internal.view.dnd.impl.LocalSelectionTransferSetter;
-import org.eclipse.platform.discovery.ui.internal.view.dnd.impl.XmlDiscoverySelectionTransferSetter;
-import org.eclipse.platform.discovery.util.api.env.IDiscoveryEnvironment;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.dnd.DND;
-import org.eclipse.swt.dnd.DragSourceEvent;
-import org.eclipse.swt.dnd.Transfer;
-import org.eclipse.swt.events.DisposeEvent;
-import org.eclipse.swt.events.DisposeListener;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Listener;
-import org.eclipse.swt.widgets.Menu;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.jface.action.IMenuListener;
+import org.eclipse.jface.action.IMenuManager;
+import org.eclipse.jface.action.IToolBarManager;
+import org.eclipse.jface.action.MenuManager;
+import org.eclipse.jface.viewers.CellLabelProvider;
+import org.eclipse.jface.viewers.IDoubleClickListener;
+import org.eclipse.jface.viewers.ILabelProvider;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.ITreeContentProvider;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.platform.discovery.core.api.IContributedAction;
+import org.eclipse.platform.discovery.core.api.ISearchContext;
+import org.eclipse.platform.discovery.core.internal.ContextStructuredSelection;
+import org.eclipse.platform.discovery.ui.api.IGenericViewCustomization;
+import org.eclipse.platform.discovery.ui.api.IResultsViewAccessor;
+import org.eclipse.platform.discovery.ui.internal.tooltip.TooltipCreator;
+import org.eclipse.platform.discovery.ui.internal.tooltip.TreeViewerTooltipManager;
+import org.eclipse.platform.discovery.ui.internal.util.ControlBackgroundImageManager;
+import org.eclipse.platform.discovery.ui.internal.view.SortingMenuManager;
+import org.eclipse.platform.discovery.ui.internal.view.dnd.impl.DragSrcInteractionListener;
+import org.eclipse.platform.discovery.ui.internal.view.dnd.impl.DragSrcListener;
+import org.eclipse.platform.discovery.ui.internal.view.dnd.impl.LocalSelectionTransferSetter;
+import org.eclipse.platform.discovery.ui.internal.view.dnd.impl.XmlDiscoverySelectionTransferSetter;
+import org.eclipse.platform.discovery.util.api.env.IDiscoveryEnvironment;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.dnd.DND;
+import org.eclipse.swt.dnd.DragSourceEvent;
+import org.eclipse.swt.dnd.Transfer;
+import org.eclipse.swt.events.DisposeEvent;
+import org.eclipse.swt.events.DisposeListener;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+import org.eclipse.swt.widgets.Menu;
/**
@@ -59,8 +60,8 @@
public class DiscoveryTreeViewerFactory
{
- private Set<IGenericViewCustomization> availableViewCustomizations;
- private Set<IContributedAction> availableActions;
+ private List<IGenericViewCustomization> availableViewCustomizations;
+ private List<IContributedAction> availableActions;
private IResultsViewAccessor viewAccessor;
private ControlBackgroundImageManager treeBgImageManager;
@@ -80,8 +81,8 @@
*/
public IResultsViewAccessor createTreeViewer(final Composite parent, final Set<? extends IGenericViewCustomization> viewCustomizations, final Set<IContributedAction> actions, IDiscoveryEnvironment env)
{
- this.availableViewCustomizations = new HashSet<IGenericViewCustomization>(viewCustomizations);
- this.availableActions = new HashSet<IContributedAction>(actions);
+ this.availableViewCustomizations = new ArrayList<IGenericViewCustomization>(viewCustomizations);
+ this.availableActions = new ArrayList<IContributedAction>(actions);
final IToolBarManager toolbarManager = createToolbar(parent, SWT.TOOL|SWT.FLAT|SWT.RIGHT_TO_LEFT);
@@ -110,7 +111,7 @@
private GenericResultLabelProvider getGenericResultLabelProvider(final Set<? extends IGenericViewCustomization> viewCustomizations)
{
- Set<IGenericViewCustomization> genericViewCustomizations = new HashSet<IGenericViewCustomization>();
+ List<IGenericViewCustomization> genericViewCustomizations = new ArrayList<IGenericViewCustomization>();
for( IGenericViewCustomization c : viewCustomizations)
{
@@ -120,7 +121,7 @@
return new GenericResultLabelProvider(genericViewCustomizations);
}
- private void installDoubleClickListeners(final TreeViewer treeViewer, final Set<IGenericViewCustomization> customizations)
+ private void installDoubleClickListeners(final TreeViewer treeViewer, final List<IGenericViewCustomization> customizations)
{
for(IGenericViewCustomization viewC : customizations)
{
@@ -132,12 +133,12 @@
}
}
- protected ILabelProvider labelProvider(final Set<IGenericViewCustomization> viewCustomizations)
+ protected ILabelProvider labelProvider(final List<IGenericViewCustomization> viewCustomizations)
{
return new GenericResultLabelProvider(viewCustomizations);
}
- protected ITreeContentProvider contentProvider(final Set<IGenericViewCustomization> viewCustomizations)
+ protected ITreeContentProvider contentProvider(final List<IGenericViewCustomization> viewCustomizations)
{
return new GenericResultContentProvider(viewCustomizations);
}
@@ -266,7 +267,7 @@
};
}
- private void installActions(final Set<IGenericViewCustomization> viewCustomizations, final Set<IContributedAction> actions, final IResultsViewAccessor viewAccessor)
+ private void installActions(final List<IGenericViewCustomization> viewCustomizations, final List<IContributedAction> actions, final IResultsViewAccessor viewAccessor)
{
for (IGenericViewCustomization viewc : viewCustomizations)
{
diff --git a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/result/impl/GenericResultContentProvider.java b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/result/impl/GenericResultContentProvider.java
index d2bd1c6..edb2b7a 100644
--- a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/result/impl/GenericResultContentProvider.java
+++ b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/result/impl/GenericResultContentProvider.java
@@ -14,8 +14,7 @@
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
-import java.util.HashSet;
-import java.util.Set;
+import java.util.List;
import org.eclipse.jface.viewers.ITreeContentProvider;
import org.eclipse.jface.viewers.Viewer;
@@ -29,17 +28,17 @@
*/
public class GenericResultContentProvider implements ITreeContentProvider
{
- private Set<ITreeContentProvider> contentProviders;
- private final Set<IGenericViewCustomization> customizations;
+ private List<ITreeContentProvider> contentProviders;
+ private final List<IGenericViewCustomization> customizations;
/**
* Constructor
* @param viewCustomizations a set of view customizations; empty set if none
*/
- public GenericResultContentProvider(final Set<IGenericViewCustomization> viewCustomizations)
+ public GenericResultContentProvider(final List<IGenericViewCustomization> viewCustomizations)
{
- contentProviders = new HashSet<ITreeContentProvider>();
- customizations = Collections.unmodifiableSet(viewCustomizations);
+ contentProviders = new ArrayList<ITreeContentProvider>();
+ customizations = Collections.unmodifiableList(viewCustomizations);
for (IGenericViewCustomization cust : customizations)
{
@@ -51,7 +50,7 @@
}
}
- protected Set<IGenericViewCustomization> availableCustomizations()
+ protected List<IGenericViewCustomization> availableCustomizations()
{
return customizations;
}
diff --git a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/result/impl/GenericResultLabelProvider.java b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/result/impl/GenericResultLabelProvider.java
index d762778..c20d7d7 100644
--- a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/result/impl/GenericResultLabelProvider.java
+++ b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/view/result/impl/GenericResultLabelProvider.java
@@ -10,28 +10,28 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.internal.view.result.impl;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.jface.viewers.CellLabelProvider;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ILabelProviderListener;
-import org.eclipse.jface.viewers.ViewerCell;
-import org.eclipse.platform.discovery.ui.api.IGenericViewCustomization;
-import org.eclipse.platform.discovery.ui.api.ITooltipProvider;
-import org.eclipse.platform.discovery.ui.internal.tooltip.FormTextBuilder;
-import org.eclipse.swt.graphics.Image;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.jface.viewers.CellLabelProvider;
+import org.eclipse.jface.viewers.ILabelProvider;
+import org.eclipse.jface.viewers.ILabelProviderListener;
+import org.eclipse.jface.viewers.ViewerCell;
+import org.eclipse.platform.discovery.ui.api.IGenericViewCustomization;
+import org.eclipse.platform.discovery.ui.api.ITooltipProvider;
+import org.eclipse.platform.discovery.ui.internal.tooltip.FormTextBuilder;
+import org.eclipse.swt.graphics.Image;
public class GenericResultLabelProvider extends CellLabelProvider implements ILabelProvider
{
- private final Set<ILabelProvider> labelProviders;
- private final Set<ITooltipProvider> tooltipProviders;
+ private final List<ILabelProvider> labelProviders;
+ private final List<ITooltipProvider> tooltipProviders;
- public GenericResultLabelProvider(final Set<IGenericViewCustomization> viewCustomizations)
+ public GenericResultLabelProvider(final List<IGenericViewCustomization> viewCustomizations)
{
- labelProviders = new HashSet<ILabelProvider>();
- tooltipProviders = new HashSet<ITooltipProvider>();
+ labelProviders = new ArrayList<ILabelProvider>();
+ tooltipProviders = new ArrayList<ITooltipProvider>();
for (IGenericViewCustomization customization : viewCustomizations)
{
diff --git a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/xp/impl/AdvancedSearchParamsUiContribXpParser.java b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/xp/impl/AdvancedSearchParamsUiContribXpParser.java
index 41134c0..2f7603b 100644
--- a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/xp/impl/AdvancedSearchParamsUiContribXpParser.java
+++ b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/xp/impl/AdvancedSearchParamsUiContribXpParser.java
@@ -10,18 +10,17 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.internal.xp.impl;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionRegistry;
-import org.eclipse.platform.discovery.runtime.internal.impl.XpParsersFactory;
-import org.eclipse.platform.discovery.runtime.internal.xp.IGenericXpParser;
-import org.eclipse.platform.discovery.ui.api.IAdvancedSearchParamsUiContributor;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.core.runtime.IExtensionRegistry;
+import org.eclipse.platform.discovery.runtime.internal.impl.XpParsersFactory;
+import org.eclipse.platform.discovery.runtime.internal.xp.IGenericXpParser;
+import org.eclipse.platform.discovery.ui.api.IAdvancedSearchParamsUiContributor;
import org.eclipse.platform.discovery.ui.internal.search.advancedparams.IAdvancedSearchParamsUiContributorDescr;
-import org.eclipse.platform.discovery.ui.internal.xp.IAdvancedSearchParamsUiContribXpParser;
+import org.eclipse.platform.discovery.ui.internal.xp.IAdvancedSearchParamsUiContribXpParser;
/**
@@ -44,9 +43,9 @@
this.extensionRegistry = extRegistry;
}
- public Set<IAdvancedSearchParamsUiContributorDescr> readContributions()
+ public List<IAdvancedSearchParamsUiContributorDescr> readContributions()
{
- final Set<IAdvancedSearchParamsUiContributorDescr> result = new HashSet<IAdvancedSearchParamsUiContributorDescr>();
+ final List<IAdvancedSearchParamsUiContributorDescr> result = new ArrayList<IAdvancedSearchParamsUiContributorDescr>();
for (final IConfigurationElement configElement : configurationElements())
{
result.add(new IAdvancedSearchParamsUiContributorDescr()
diff --git a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/xp/impl/CustomResultUiXpParser.java b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/xp/impl/CustomResultUiXpParser.java
index 0d2773c..0dc89c7 100644
--- a/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/xp/impl/CustomResultUiXpParser.java
+++ b/bundles/org.eclipse.platform.discovery.ui/src/org/eclipse/platform/discovery/ui/internal/xp/impl/CustomResultUiXpParser.java
@@ -10,17 +10,17 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.internal.xp.impl;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionRegistry;
-import org.eclipse.platform.discovery.runtime.internal.impl.XpParsersFactory;
-import org.eclipse.platform.discovery.runtime.internal.xp.IGenericXpParser;
-import org.eclipse.platform.discovery.ui.api.ISearchResultCustomUiCreator;
-import org.eclipse.platform.discovery.ui.internal.selector.ICustomResultUiContributorDescription;
-import org.eclipse.platform.discovery.ui.internal.xp.ICustomResultUiXpParser;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.core.runtime.IExtensionRegistry;
+import org.eclipse.platform.discovery.runtime.internal.impl.XpParsersFactory;
+import org.eclipse.platform.discovery.runtime.internal.xp.IGenericXpParser;
+import org.eclipse.platform.discovery.ui.api.ISearchResultCustomUiCreator;
+import org.eclipse.platform.discovery.ui.internal.selector.ICustomResultUiContributorDescription;
+import org.eclipse.platform.discovery.ui.internal.xp.ICustomResultUiXpParser;
/**
@@ -48,9 +48,9 @@
return (new XpParsersFactory()).createGenericXpParser();
}
- public Set<ICustomResultUiContributorDescription> readContributions()
+ public List<ICustomResultUiContributorDescription> readContributions()
{
- final Set<ICustomResultUiContributorDescription> result = new HashSet<ICustomResultUiContributorDescription>();
+ final List<ICustomResultUiContributorDescription> result = new ArrayList<ICustomResultUiContributorDescription>();
for(IConfigurationElement configElement : genericXpParser().getConfigurationElements(extRegistry, XP_ID, XP_ELEMENT_NAME))
{
result.add(createContributorDescription(configElement));
diff --git a/tests/org.eclipse.platform.discovery.compatibility.tests/src/org/eclipse/platform/discovery/compatibility/internal/DynamicObjectTypeContributorTest.java b/tests/org.eclipse.platform.discovery.compatibility.tests/src/org/eclipse/platform/discovery/compatibility/internal/DynamicObjectTypeContributorTest.java
index 16a2ac9..05c6d1a 100644
--- a/tests/org.eclipse.platform.discovery.compatibility.tests/src/org/eclipse/platform/discovery/compatibility/internal/DynamicObjectTypeContributorTest.java
+++ b/tests/org.eclipse.platform.discovery.compatibility.tests/src/org/eclipse/platform/discovery/compatibility/internal/DynamicObjectTypeContributorTest.java
@@ -10,22 +10,34 @@
*******************************************************************************/
package org.eclipse.platform.discovery.compatibility.internal;
+import static org.easymock.EasyMock.anyBoolean;
+import static org.easymock.EasyMock.anyObject;
+import static org.easymock.EasyMock.createMock;
+import static org.easymock.EasyMock.createNiceMock;
+import static org.easymock.EasyMock.expect;
+import static org.easymock.EasyMock.replay;
+import static org.eclipse.platform.discovery.compatibility.internal.DescriptiveObjectConstants.ID_ONE;
+import static org.eclipse.platform.discovery.compatibility.internal.DescriptiveObjectConstants.ID_TWO;
+import static org.eclipse.platform.discovery.compatibility.internal.DescriptiveObjectConstants.LABEL_ONE;
+import static org.eclipse.platform.discovery.compatibility.internal.DescriptiveObjectConstants.LABEL_TWO;
+
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.URISyntaxException;
import java.net.URL;
-import java.util.HashSet;
+import java.util.ArrayList;
+import java.util.List;
import java.util.ResourceBundle;
-import java.util.Set;
+
+import junit.framework.TestCase;
import org.eclipse.core.runtime.FileLocator;
import org.eclipse.core.runtime.IContributor;
import org.eclipse.core.runtime.IExtensionRegistry;
import org.eclipse.core.runtime.Platform;
import org.eclipse.core.runtime.RegistryFactory;
-import org.eclipse.platform.discovery.compatibility.internal.DiscoveryCompatibilityPlugin;
import org.eclipse.platform.discovery.compatibility.internal.contributors.ContributionFailedException;
import org.eclipse.platform.discovery.compatibility.internal.contributors.impl.DynamicObjectTypeContributor;
import org.eclipse.platform.discovery.compatibility.internal.readers.ISearchPageDescription;
@@ -38,10 +50,6 @@
import org.osgi.framework.Bundle;
import org.osgi.framework.BundleException;
-import junit.framework.TestCase;
-import static org.easymock.EasyMock.*;
-import static org.eclipse.platform.discovery.compatibility.internal.DescriptiveObjectConstants.*;
-
public class DynamicObjectTypeContributorTest extends TestCase {
private final Object masterToken = new Object();
@@ -107,16 +115,16 @@
}
}
- private Set<ISearchPageDescription> descriptions() {
- Set<ISearchPageDescription> result = new HashSet<ISearchPageDescription>();
+ private List<ISearchPageDescription> descriptions() {
+ List<ISearchPageDescription> result = new ArrayList<ISearchPageDescription>();
result.add(new SearchPageDescription(ID_ONE, LABEL_ONE));
result.add(new SearchPageDescription(ID_TWO, LABEL_TWO));
return result;
}
- private Set<IObjectTypeDescription> expectedObjectTypes() {
- Set<IObjectTypeDescription> result = new HashSet<IObjectTypeDescription>();
+ private List<IObjectTypeDescription> expectedObjectTypes() {
+ List<IObjectTypeDescription> result = new ArrayList<IObjectTypeDescription>();
result.add(new ObjectTypeDescription(ID_ONE, LABEL_ONE));
result.add(new ObjectTypeDescription(ID_TWO, LABEL_TWO));
return result;
diff --git a/tests/org.eclipse.platform.discovery.compatibility.tests/src/org/eclipse/platform/discovery/compatibility/internal/readers/impl/SearchPageParserTest.java b/tests/org.eclipse.platform.discovery.compatibility.tests/src/org/eclipse/platform/discovery/compatibility/internal/readers/impl/SearchPageParserTest.java
index dbef305..0928d41 100644
--- a/tests/org.eclipse.platform.discovery.compatibility.tests/src/org/eclipse/platform/discovery/compatibility/internal/readers/impl/SearchPageParserTest.java
+++ b/tests/org.eclipse.platform.discovery.compatibility.tests/src/org/eclipse/platform/discovery/compatibility/internal/readers/impl/SearchPageParserTest.java
@@ -10,21 +10,23 @@
*******************************************************************************/
package org.eclipse.platform.discovery.compatibility.internal.readers.impl;
-import java.util.ArrayList;
+import static org.easymock.EasyMock.createMock;
+import static org.easymock.EasyMock.expect;
+import static org.easymock.EasyMock.replay;
+import static org.easymock.EasyMock.verify;
+import static org.eclipse.platform.discovery.compatibility.internal.DescriptiveObjectConstants.ID_ONE;
+import static org.eclipse.platform.discovery.compatibility.internal.DescriptiveObjectConstants.ID_TWO;
+import static org.eclipse.platform.discovery.compatibility.internal.DescriptiveObjectConstants.LABEL_ONE;
+import static org.eclipse.platform.discovery.compatibility.internal.DescriptiveObjectConstants.LABEL_TWO;
-import java.util.HashSet;
+import java.util.ArrayList;
import java.util.List;
-import java.util.Set;
import junit.framework.TestCase;
import org.eclipse.core.runtime.IConfigurationElement;
import org.eclipse.platform.discovery.compatibility.internal.readers.ISearchPageDescription;
import org.eclipse.platform.discovery.compatibility.internal.readers.ISearchPageParser;
-import org.eclipse.platform.discovery.compatibility.internal.readers.impl.SearchPageDescription;
-import org.eclipse.platform.discovery.compatibility.internal.readers.impl.SearchPageParser;
-import static org.easymock.EasyMock.*;
-import static org.eclipse.platform.discovery.compatibility.internal.DescriptiveObjectConstants.*;
public class SearchPageParserTest extends TestCase {
@@ -44,14 +46,14 @@
}
public void testReadContributors() {
- Set<ISearchPageDescription> contributors = parser.readContributions();
+ List<ISearchPageDescription> contributors = parser.readContributions();
assertEquals("Two contributors expected", 2, contributors.size());
- Set<ISearchPageDescription> expectedSet = new HashSet<ISearchPageDescription>();
- expectedSet.add(new SearchPageDescription(ID_ONE, LABEL_ONE));
- expectedSet.add(new SearchPageDescription(ID_TWO, LABEL_TWO));
+ List<ISearchPageDescription> expectedList = new ArrayList<ISearchPageDescription>();
+ expectedList.add(new SearchPageDescription(ID_ONE, LABEL_ONE));
+ expectedList.add(new SearchPageDescription(ID_TWO, LABEL_TWO));
- assertEquals("readContributors returned incorrect resuly", expectedSet, contributors);
+ assertEquals("readContributors returned incorrect resuly", expectedList, contributors);
verify(mockElementOne, mockElementTwo);
}
diff --git a/tests/org.eclipse.platform.discovery.core.test.unit/src/org/eclipse/platform/discovery/core/test/unit/internal/SearchConsoleControllerFixture.java b/tests/org.eclipse.platform.discovery.core.test.unit/src/org/eclipse/platform/discovery/core/test/unit/internal/SearchConsoleControllerFixture.java
index 158c11e..1a09710 100644
--- a/tests/org.eclipse.platform.discovery.core.test.unit/src/org/eclipse/platform/discovery/core/test/unit/internal/SearchConsoleControllerFixture.java
+++ b/tests/org.eclipse.platform.discovery.core.test.unit/src/org/eclipse/platform/discovery/core/test/unit/internal/SearchConsoleControllerFixture.java
@@ -10,25 +10,24 @@
*******************************************************************************/
package org.eclipse.platform.discovery.core.test.unit.internal;
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.platform.discovery.core.api.ISearchContext;
-import org.eclipse.platform.discovery.core.internal.ISearchSession;
-import org.eclipse.platform.discovery.core.internal.SearchConsoleController;
-import org.eclipse.platform.discovery.core.internal.console.ISearchConsoleControllerOutputView;
-import org.eclipse.platform.discovery.runtime.internal.ISearchProviderConfiguration;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IObjectTypeDescription;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.ISearchProviderDescription;
-import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
-import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
-import org.eclipse.platform.discovery.util.api.env.IDiscoveryEnvironment;
-import org.eclipse.platform.discovery.util.api.env.IErrorHandler;
-import org.eclipse.platform.discovery.util.api.longop.ILongOperationRunner;
-import org.eclipse.platform.discovery.util.internal.session.IHistoryTrack;
-import org.eclipse.platform.discovery.util.internal.session.ISessionManager;
+import java.util.Arrays;
+import java.util.List;
+
+import org.eclipse.platform.discovery.core.api.ISearchContext;
+import org.eclipse.platform.discovery.core.internal.ISearchSession;
+import org.eclipse.platform.discovery.core.internal.SearchConsoleController;
+import org.eclipse.platform.discovery.core.internal.console.ISearchConsoleControllerOutputView;
+import org.eclipse.platform.discovery.runtime.internal.ISearchProviderConfiguration;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IObjectTypeDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.ISearchProviderDescription;
+import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
+import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
+import org.eclipse.platform.discovery.util.api.env.IDiscoveryEnvironment;
+import org.eclipse.platform.discovery.util.api.env.IErrorHandler;
+import org.eclipse.platform.discovery.util.api.longop.ILongOperationRunner;
+import org.eclipse.platform.discovery.util.internal.session.IHistoryTrack;
+import org.eclipse.platform.discovery.util.internal.session.ISessionManager;
public class SearchConsoleControllerFixture extends MockObjectTestCase {
@@ -50,8 +49,8 @@
protected Mock<IDestinationCategoryDescription> destinationCategory2;
protected Mock<IDestinationCategoryDescription> destinationCategory3;
- protected Set<IDestinationCategoryDescription> destinationCategories_obj1;
- protected Set<IDestinationCategoryDescription> destinationCategories_obj2;
+ protected List<IDestinationCategoryDescription> destinationCategories_obj1;
+ protected List<IDestinationCategoryDescription> destinationCategories_obj2;
protected Mock<IDiscoveryEnvironment> consoleEnvironment;
protected Mock<IErrorHandler> errorHandler;
@@ -70,8 +69,8 @@
setupSearchProviderConfig();
view = mock(ISearchConsoleControllerOutputView.class);
- final Set<IObjectTypeDescription> objectTypes = new HashSet<IObjectTypeDescription>(Arrays.asList(new IObjectTypeDescription[] {
- objectType_1.proxy(), objectType_2.proxy() }));
+ final List<IObjectTypeDescription> objectTypes = Arrays.asList(new IObjectTypeDescription[] {
+ objectType_1.proxy(), objectType_2.proxy() });
view.expects(once()).method("showObjectTypes").with(eq(objectTypes));
setupSessions();
@@ -109,21 +108,20 @@
private void setupSearchProviderConfig()
{
- final Set<IObjectTypeDescription> objectTypes = new HashSet<IObjectTypeDescription>(Arrays.asList(new IObjectTypeDescription[] {
- objectType_1.proxy(), objectType_2.proxy() }));
+ final List<IObjectTypeDescription> objectTypes = Arrays.asList(new IObjectTypeDescription[] {
+ objectType_1.proxy(), objectType_2.proxy() });
providerConfig = mock(ISearchProviderConfiguration.class);
providerConfig.stubs().method("getObjectTypes").will(returnValue(objectTypes));
destinationCategory1 = mock(IDestinationCategoryDescription.class);
destinationCategory2 = mock(IDestinationCategoryDescription.class);
- destinationCategories_obj1 = new HashSet<IDestinationCategoryDescription>(Arrays.asList(new IDestinationCategoryDescription[] {
- destinationCategory1.proxy(), destinationCategory2.proxy() }));
+ destinationCategories_obj1 = Arrays.asList(new IDestinationCategoryDescription[] {
+ destinationCategory1.proxy(), destinationCategory2.proxy() });
providerConfig.stubs().method("getAvailableDestinationCategoriesForObjectType").with(eq(objectType_1.proxy())).will(
returnValue(destinationCategories_obj1));
destinationCategory3 = mock(IDestinationCategoryDescription.class);
- destinationCategories_obj2 = new HashSet<IDestinationCategoryDescription>(Arrays
- .asList(new IDestinationCategoryDescription[] { destinationCategory3.proxy() }));
+ destinationCategories_obj2 = Arrays.asList(new IDestinationCategoryDescription[] { destinationCategory3.proxy() });
providerConfig.stubs().method("getAvailableDestinationCategoriesForObjectType").with(eq(objectType_2.proxy())).will(
returnValue(destinationCategories_obj2));
}
diff --git a/tests/org.eclipse.platform.discovery.core.test.unit/src/org/eclipse/platform/discovery/core/test/unit/internal/SearchConsoleControllerTest.java b/tests/org.eclipse.platform.discovery.core.test.unit/src/org/eclipse/platform/discovery/core/test/unit/internal/SearchConsoleControllerTest.java
index 8fceac9..fd2f6b4 100644
--- a/tests/org.eclipse.platform.discovery.core.test.unit/src/org/eclipse/platform/discovery/core/test/unit/internal/SearchConsoleControllerTest.java
+++ b/tests/org.eclipse.platform.discovery.core.test.unit/src/org/eclipse/platform/discovery/core/test/unit/internal/SearchConsoleControllerTest.java
@@ -10,9 +10,11 @@
*******************************************************************************/
package org.eclipse.platform.discovery.core.test.unit.internal;
+import java.util.ArrayList;
import java.util.Arrays;
-import java.util.HashSet;
-import java.util.Set;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
import org.eclipse.platform.discovery.core.api.ISearchContext;
import org.eclipse.platform.discovery.core.api.SearchEvent;
@@ -71,11 +73,11 @@
providerConfig.stubs().method("getActiveSearchProvider").with(same(objectType_1.proxy()), same(destinationCategory1.proxy())).will(
returnValue(searchProviderDescr_1.proxy()));
providerConfig.stubs().method("getDestinationCategoriesForDestination").with(eq(searchDestination.proxy())).will(
- returnValue(new HashSet<IDestinationCategoryDescription>(Arrays.asList(new IDestinationCategoryDescription[] { destinationCategory1
- .proxy() }))));
+ returnValue(Arrays.asList(new IDestinationCategoryDescription[] { destinationCategory1
+ .proxy() })));
final Mock<ISearchSubdestination> subdestination = mock(ISearchSubdestination.class);
- final Set<ISearchSubdestination> subdestinations = new HashSet<ISearchSubdestination>();
+ final List<ISearchSubdestination> subdestinations = new ArrayList<ISearchSubdestination>();
subdestinations.add(subdestination.proxy());
providerConfig.stubs().method("getAvailableSearchSubdestinations").with(eq(objectType_1.proxy()), eq(destinationCategory1.proxy()),
eq(searchProviderDescr_1.proxy())).will(returnValue(subdestinations));
@@ -136,19 +138,19 @@
providerConfig.stubs().method("getActiveSearchProvider").with(same(objectType_1.proxy()), same(destinationCategory1.proxy())).will(
returnValue(searchProviderDescr_1.proxy()));
providerConfig.stubs().method("getDestinationCategoriesForDestination").with(eq(searchDestination.proxy())).will(
- returnValue(new HashSet<IDestinationCategoryDescription>(Arrays.asList(new IDestinationCategoryDescription[] { destinationCategory1
- .proxy() }))));
- providerConfig.stubs().method("getAvailableSearchSubdestinations").will(returnValue(new HashSet<ISearchSubdestination>()));
+ returnValue(Arrays.asList(new IDestinationCategoryDescription[] { destinationCategory1
+ .proxy() })));
+ providerConfig.stubs().method("getAvailableSearchSubdestinations").will(returnValue(new ArrayList<ISearchSubdestination>()));
view.expects(once()).method("showGroupingHierarchies").with(new Constraint()
{
public boolean eval(Object arg0)
{
- if (!(arg0 instanceof Set))
+ if (!(arg0 instanceof List<?>))
{
return false;
}
- return ((Set<?>) arg0).iterator().next() == group;
+ return ((List<?>) arg0).iterator().next() == group;
}
public StringBuffer describeTo(StringBuffer arg0)
@@ -165,11 +167,11 @@
{
public boolean eval(Object arg0)
{
- if (!(arg0 instanceof Set))
+ if (!(arg0 instanceof List))
{
return false;
}
- return ((Set<?>) arg0).size() == 0;
+ return ((List<?>) arg0).size() == 0;
}
public StringBuffer describeTo(StringBuffer arg0)
@@ -194,19 +196,18 @@
providerConfig.stubs().method("getActiveSearchProvider").with(same(objectType_1.proxy()), same(destinationCategory1.proxy())).will(
returnValue(searchProviderDescr_1.proxy()));
providerConfig.stubs().method("getDestinationCategoriesForDestination").with(eq(searchDestination.proxy())).will(
- returnValue(new HashSet<IDestinationCategoryDescription>(Arrays.asList(new IDestinationCategoryDescription[] { destinationCategory1
- .proxy() }))));
- providerConfig.stubs().method("getAvailableSearchSubdestinations").will(returnValue(new HashSet<ISearchSubdestination>()));
+ returnValue(Arrays.asList(new IDestinationCategoryDescription[] { destinationCategory1.proxy() })));
+ providerConfig.stubs().method("getAvailableSearchSubdestinations").will(returnValue(new ArrayList<ISearchSubdestination>()));
view.expects(once()).method("showGroupingHierarchies").with(new Constraint()
{
public boolean eval(Object arg0)
{
- if (!(arg0 instanceof Set))
+ if (!(arg0 instanceof List))
{
return false;
}
- return ((Set<?>) arg0).iterator().next() == group;
+ return ((List<?>) arg0).iterator().next() == group;
}
public StringBuffer describeTo(StringBuffer arg0)
diff --git a/tests/org.eclipse.platform.discovery.integration.test.unit/src/org/eclipse/platform/discovery/integration/internal/plugin/DiscoveryIntegrationPluginTest.java b/tests/org.eclipse.platform.discovery.integration.test.unit/src/org/eclipse/platform/discovery/integration/internal/plugin/DiscoveryIntegrationPluginTest.java
index c2a71b8..3a76194 100644
--- a/tests/org.eclipse.platform.discovery.integration.test.unit/src/org/eclipse/platform/discovery/integration/internal/plugin/DiscoveryIntegrationPluginTest.java
+++ b/tests/org.eclipse.platform.discovery.integration.test.unit/src/org/eclipse/platform/discovery/integration/internal/plugin/DiscoveryIntegrationPluginTest.java
@@ -161,8 +161,8 @@
searchFavoritesSlaveController.stubs().method("createActions").will(returnValue(new HashSet<IContributedAction>(Arrays.asList(new IContributedAction[] { contributedAction.proxy() }))));
slaveControllersConfig = mock(ISlaveControllersConfiguration.class);
- slaveControllersConfig.expects(atMostOnce()).method("availableSearchConsoleSlaveControllers").will(returnValue(new HashSet<ISearchConsoleSlaveController>(Arrays.asList(new ISearchConsoleSlaveController[] { slaveController.proxy() }))));
- slaveControllersConfig.expects(atMostOnce()).method("availableSearchFavoritesSlaveControllers").will(returnValue(new HashSet<ISearchFavoritesSlaveController>(Arrays.asList(new ISearchFavoritesSlaveController[] { searchFavoritesSlaveController.proxy() }))));
+ slaveControllersConfig.expects(atMostOnce()).method("availableSearchConsoleSlaveControllers").will(returnValue(Arrays.asList(new ISearchConsoleSlaveController[] { slaveController.proxy() })));
+ slaveControllersConfig.expects(atMostOnce()).method("availableSearchFavoritesSlaveControllers").will(returnValue(Arrays.asList(new ISearchFavoritesSlaveController[] { searchFavoritesSlaveController.proxy() })));
}
private void setupViewCustomizations()
@@ -171,8 +171,8 @@
searchFavoritesViewCustomization = mock(ISearchFavoritesViewCustomization.class);
viewCustomizationsConfig = mock(IViewCustomizationConfiguration.class);
- viewCustomizationsConfig.expects(atMostOnce()).method("availableSearchConsoleCustomizations").will(returnValue(new HashSet<ISearchConsoleCustomization>(Arrays.asList(new ISearchConsoleCustomization[]{searchConsoleViewCustomization.proxy()}))));
- viewCustomizationsConfig.expects(atMostOnce()).method("availableSearchFavoritesCustomizations").will(returnValue(new HashSet<ISearchFavoritesViewCustomization>(Arrays.asList(new ISearchFavoritesViewCustomization[]{searchFavoritesViewCustomization.proxy()}))));
+ viewCustomizationsConfig.expects(atMostOnce()).method("availableSearchConsoleCustomizations").will(returnValue(Arrays.asList(new ISearchConsoleCustomization[]{searchConsoleViewCustomization.proxy()})));
+ viewCustomizationsConfig.expects(atMostOnce()).method("availableSearchFavoritesCustomizations").will(returnValue((Arrays.asList(new ISearchFavoritesViewCustomization[]{searchFavoritesViewCustomization.proxy()}))));
}
public void testPartOpenedInternalWithUnknownView()
diff --git a/tests/org.eclipse.platform.discovery.integration.test.unit/src/org/eclipse/platform/discovery/integration/test/unit/internal/SaveInFavoritesMenuActionTest.java b/tests/org.eclipse.platform.discovery.integration.test.unit/src/org/eclipse/platform/discovery/integration/test/unit/internal/SaveInFavoritesMenuActionTest.java
index be47300..c9b0e36 100644
--- a/tests/org.eclipse.platform.discovery.integration.test.unit/src/org/eclipse/platform/discovery/integration/test/unit/internal/SaveInFavoritesMenuActionTest.java
+++ b/tests/org.eclipse.platform.discovery.integration.test.unit/src/org/eclipse/platform/discovery/integration/test/unit/internal/SaveInFavoritesMenuActionTest.java
@@ -10,21 +10,21 @@
*******************************************************************************/
package org.eclipse.platform.discovery.integration.test.unit.internal;
-import java.util.Arrays;
-import java.util.HashSet;
-
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.platform.discovery.core.api.ISearchContext;
-import org.eclipse.platform.discovery.core.internal.ContextStructuredSelection;
-import org.eclipse.platform.discovery.integration.internal.viewcustomization.IConfigurableContributedAction;
-import org.eclipse.platform.discovery.integration.internal.viewcustomization.SaveInFavoritesMenuAction;
-import org.eclipse.platform.discovery.runtime.api.ISearchParameters;
-import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
-import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
-import org.eclipse.platform.discovery.ui.api.ISearchFavoritesViewCustomization;
-import org.eclipse.platform.discovery.util.api.env.IDiscoveryEnvironment;
-import org.eclipse.platform.discovery.util.api.env.IErrorHandler;
-import org.eclipse.platform.discovery.util.api.longop.ILongOperationRunner;
+import java.util.Arrays;
+import java.util.HashSet;
+
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.platform.discovery.core.api.ISearchContext;
+import org.eclipse.platform.discovery.core.internal.ContextStructuredSelection;
+import org.eclipse.platform.discovery.integration.internal.viewcustomization.IConfigurableContributedAction;
+import org.eclipse.platform.discovery.integration.internal.viewcustomization.SaveInFavoritesMenuAction;
+import org.eclipse.platform.discovery.runtime.api.ISearchParameters;
+import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
+import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
+import org.eclipse.platform.discovery.ui.api.ISearchFavoritesViewCustomization;
+import org.eclipse.platform.discovery.util.api.env.IDiscoveryEnvironment;
+import org.eclipse.platform.discovery.util.api.env.IErrorHandler;
+import org.eclipse.platform.discovery.util.api.longop.ILongOperationRunner;
public class SaveInFavoritesMenuActionTest extends MockObjectTestCase
@@ -67,7 +67,7 @@
private void setupMenuAction()
{
- action = new SaveInFavoritesMenuAction(contributedAction.proxy(), selection, searchContext.proxy(), new HashSet<ISearchFavoritesViewCustomization>(Arrays.asList(new ISearchFavoritesViewCustomization[] { sbCustomization.proxy() })), environment.proxy());
+ action = new SaveInFavoritesMenuAction(contributedAction.proxy(), selection, searchContext.proxy(), Arrays.asList(new ISearchFavoritesViewCustomization[] { sbCustomization.proxy() }), environment.proxy());
}
public void testIsAvailable()
diff --git a/tests/org.eclipse.platform.discovery.integration.test.unit/src/org/eclipse/platform/discovery/integration/test/unit/internal/SaveInFavoritesViewCustomizationTest.java b/tests/org.eclipse.platform.discovery.integration.test.unit/src/org/eclipse/platform/discovery/integration/test/unit/internal/SaveInFavoritesViewCustomizationTest.java
index 4ee60ed..cb3b493 100644
--- a/tests/org.eclipse.platform.discovery.integration.test.unit/src/org/eclipse/platform/discovery/integration/test/unit/internal/SaveInFavoritesViewCustomizationTest.java
+++ b/tests/org.eclipse.platform.discovery.integration.test.unit/src/org/eclipse/platform/discovery/integration/test/unit/internal/SaveInFavoritesViewCustomizationTest.java
@@ -10,29 +10,28 @@
*******************************************************************************/
package org.eclipse.platform.discovery.integration.test.unit.internal;
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.platform.discovery.core.api.IContributedAction;
-import org.eclipse.platform.discovery.core.api.ISearchContext;
-import org.eclipse.platform.discovery.integration.internal.plugin.DiscoveryIntegrationMessages;
-import org.eclipse.platform.discovery.integration.internal.plugin.IViewCustomizationConfiguration;
-import org.eclipse.platform.discovery.integration.internal.viewcustomization.IActionWithAvailability;
-import org.eclipse.platform.discovery.integration.internal.viewcustomization.SaveInFavoritesContributedAction;
-import org.eclipse.platform.discovery.integration.internal.viewcustomization.SaveInFavoritesViewCustomization;
-import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
-import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
-import org.eclipse.platform.discovery.ui.api.IMasterDiscoveryView;
-import org.eclipse.platform.discovery.ui.api.IResultsViewAccessor;
-import org.eclipse.platform.discovery.ui.api.ISearchFavoritesViewCustomization;
-import org.eclipse.platform.discovery.util.api.env.IDiscoveryEnvironment;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.PlatformUI;
+import java.util.Arrays;
+import java.util.List;
+
+import org.eclipse.jface.action.IMenuManager;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.platform.discovery.core.api.IContributedAction;
+import org.eclipse.platform.discovery.core.api.ISearchContext;
+import org.eclipse.platform.discovery.integration.internal.plugin.DiscoveryIntegrationMessages;
+import org.eclipse.platform.discovery.integration.internal.plugin.IViewCustomizationConfiguration;
+import org.eclipse.platform.discovery.integration.internal.viewcustomization.IActionWithAvailability;
+import org.eclipse.platform.discovery.integration.internal.viewcustomization.SaveInFavoritesContributedAction;
+import org.eclipse.platform.discovery.integration.internal.viewcustomization.SaveInFavoritesViewCustomization;
+import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
+import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
+import org.eclipse.platform.discovery.ui.api.IMasterDiscoveryView;
+import org.eclipse.platform.discovery.ui.api.IResultsViewAccessor;
+import org.eclipse.platform.discovery.ui.api.ISearchFavoritesViewCustomization;
+import org.eclipse.platform.discovery.util.api.env.IDiscoveryEnvironment;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.ui.PlatformUI;
public class SaveInFavoritesViewCustomizationTest extends MockObjectTestCase
@@ -64,12 +63,12 @@
favoritesCustomization = mock(ISearchFavoritesViewCustomization.class);
viewCustomizationConfig = mock(IViewCustomizationConfiguration.class);
- viewCustomizationConfig.stubs().method("availableSearchFavoritesCustomizations").will(returnValue(new HashSet<ISearchFavoritesViewCustomization>(Arrays.asList(new ISearchFavoritesViewCustomization[] { favoritesCustomization.proxy() }))));
+ viewCustomizationConfig.stubs().method("availableSearchFavoritesCustomizations").will(returnValue(Arrays.asList(new ISearchFavoritesViewCustomization[] { favoritesCustomization.proxy() })));
customization = new SaveInFavoritesViewCustomization()
{
@Override
- protected IActionWithAvailability createSaveAction(IContributedAction contributedAction, ISelection selection, ISearchContext searchContext, Set<ISearchFavoritesViewCustomization> sbCustomizations, IDiscoveryEnvironment environment)
+ protected IActionWithAvailability createSaveAction(IContributedAction contributedAction, ISelection selection, ISearchContext searchContext, List<ISearchFavoritesViewCustomization> sbCustomizations, IDiscoveryEnvironment environment)
{
assertTrue("Unexpected action", contributedAction == SaveInFavoritesViewCustomizationTest.this.contributedAction.proxy());
assertTrue("Unexpcted selection", selection == viewerSelection.proxy());
diff --git a/tests/org.eclipse.platform.discovery.integration.test.unit/src/org/eclipse/platform/discovery/integration/test/unit/internal/SlaveControllersConfigurationTest.java b/tests/org.eclipse.platform.discovery.integration.test.unit/src/org/eclipse/platform/discovery/integration/test/unit/internal/SlaveControllersConfigurationTest.java
index f54d45e..a8b0154 100644
--- a/tests/org.eclipse.platform.discovery.integration.test.unit/src/org/eclipse/platform/discovery/integration/test/unit/internal/SlaveControllersConfigurationTest.java
+++ b/tests/org.eclipse.platform.discovery.integration.test.unit/src/org/eclipse/platform/discovery/integration/test/unit/internal/SlaveControllersConfigurationTest.java
@@ -10,16 +10,16 @@
*******************************************************************************/
package org.eclipse.platform.discovery.integration.test.unit.internal;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.platform.discovery.core.api.ISearchConsoleSlaveController;
-import org.eclipse.platform.discovery.core.api.ISearchFavoritesSlaveController;
-import org.eclipse.platform.discovery.integration.internal.plugin.ISlaveControllersConfiguration;
-import org.eclipse.platform.discovery.integration.internal.slavecontrollers.SlaveControllersConfiguration;
-import org.eclipse.platform.discovery.runtime.internal.xp.IContributionsReader;
-import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
-import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.platform.discovery.core.api.ISearchConsoleSlaveController;
+import org.eclipse.platform.discovery.core.api.ISearchFavoritesSlaveController;
+import org.eclipse.platform.discovery.integration.internal.plugin.ISlaveControllersConfiguration;
+import org.eclipse.platform.discovery.integration.internal.slavecontrollers.SlaveControllersConfiguration;
+import org.eclipse.platform.discovery.runtime.internal.xp.IContributionsReader;
+import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
+import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
public class SlaveControllersConfigurationTest extends MockObjectTestCase
@@ -50,14 +50,14 @@
public void testAvailableSeSlaveControllers()
{
- final Set<ISearchConsoleSlaveController> result = new HashSet<ISearchConsoleSlaveController>();
+ final List<ISearchConsoleSlaveController> result = new ArrayList<ISearchConsoleSlaveController>();
seXpParser.expects(once()).method("readContributions").will(returnValue(result));
assertTrue("Unexpected result", config.availableSearchConsoleSlaveControllers() == result);
}
public void testAvailableSbSlaveControllers()
{
- final Set<ISearchFavoritesSlaveController> result = new HashSet<ISearchFavoritesSlaveController>();
+ final List<ISearchFavoritesSlaveController> result = new ArrayList<ISearchFavoritesSlaveController>();
sbXpParser.expects(once()).method("readContributions").will(returnValue(result));
assertTrue("Unexpected result", config.availableSearchFavoritesSlaveControllers() == result);
}
diff --git a/tests/org.eclipse.platform.discovery.integration.test.unit/src/org/eclipse/platform/discovery/integration/test/unit/internal/ViewCustXpParserTest.java b/tests/org.eclipse.platform.discovery.integration.test.unit/src/org/eclipse/platform/discovery/integration/test/unit/internal/ViewCustXpParserTest.java
index 375953a..eebf27e 100644
--- a/tests/org.eclipse.platform.discovery.integration.test.unit/src/org/eclipse/platform/discovery/integration/test/unit/internal/ViewCustXpParserTest.java
+++ b/tests/org.eclipse.platform.discovery.integration.test.unit/src/org/eclipse/platform/discovery/integration/test/unit/internal/ViewCustXpParserTest.java
@@ -10,18 +10,18 @@
*******************************************************************************/
package org.eclipse.platform.discovery.integration.test.unit.internal;
-import java.util.Arrays;
-import java.util.Set;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionRegistry;
-import org.eclipse.platform.discovery.integration.internal.ViewCustXpParser;
-import org.eclipse.platform.discovery.runtime.internal.xp.IGenericXpParser;
-import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
-import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
-import org.eclipse.platform.discovery.util.internal.StatusUtils;
-import org.eclipse.platform.discovery.util.internal.logging.ILogger;
+import java.util.Arrays;
+import java.util.List;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.core.runtime.IExtensionRegistry;
+import org.eclipse.platform.discovery.integration.internal.ViewCustXpParser;
+import org.eclipse.platform.discovery.runtime.internal.xp.IGenericXpParser;
+import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
+import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
+import org.eclipse.platform.discovery.util.internal.StatusUtils;
+import org.eclipse.platform.discovery.util.internal.logging.ILogger;
public class ViewCustXpParserTest extends MockObjectTestCase
@@ -104,7 +104,7 @@
public void testReadSlaveControllers()
{
logger.expects(once()).method("logError").with(eq(exceptionThrown.getMessage()), eq(exceptionThrown));
- final Set<Object> result = testParser.readContributions();
+ final List<Object> result = testParser.readContributions();
assertEquals("One element expected", 1, result.size());
assertTrue("Unexpected slave controller", result.iterator().next() == instantiatableObject);
}
diff --git a/tests/org.eclipse.platform.discovery.integration.test.unit/src/org/eclipse/platform/discovery/integration/test/unit/internal/ViewCustomizationConfigurationTest.java b/tests/org.eclipse.platform.discovery.integration.test.unit/src/org/eclipse/platform/discovery/integration/test/unit/internal/ViewCustomizationConfigurationTest.java
index 1fa39b5..9b44dc4 100644
--- a/tests/org.eclipse.platform.discovery.integration.test.unit/src/org/eclipse/platform/discovery/integration/test/unit/internal/ViewCustomizationConfigurationTest.java
+++ b/tests/org.eclipse.platform.discovery.integration.test.unit/src/org/eclipse/platform/discovery/integration/test/unit/internal/ViewCustomizationConfigurationTest.java
@@ -10,16 +10,16 @@
*******************************************************************************/
package org.eclipse.platform.discovery.integration.test.unit.internal;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.platform.discovery.integration.internal.plugin.IViewCustomizationConfiguration;
-import org.eclipse.platform.discovery.integration.internal.viewcustomization.ViewCustomizationConfiguration;
-import org.eclipse.platform.discovery.runtime.internal.xp.IContributionsReader;
-import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
-import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
-import org.eclipse.platform.discovery.ui.api.ISearchFavoritesViewCustomization;
-import org.eclipse.platform.discovery.ui.api.ISearchConsoleCustomization;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.platform.discovery.integration.internal.plugin.IViewCustomizationConfiguration;
+import org.eclipse.platform.discovery.integration.internal.viewcustomization.ViewCustomizationConfiguration;
+import org.eclipse.platform.discovery.runtime.internal.xp.IContributionsReader;
+import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
+import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
+import org.eclipse.platform.discovery.ui.api.ISearchConsoleCustomization;
+import org.eclipse.platform.discovery.ui.api.ISearchFavoritesViewCustomization;
public class ViewCustomizationConfigurationTest extends MockObjectTestCase
@@ -50,14 +50,14 @@
public void testAvailableSearchConsoleCustomizations()
{
- final Set<ISearchConsoleCustomization> result = new HashSet<ISearchConsoleCustomization>();
+ final List<ISearchConsoleCustomization> result = new ArrayList<ISearchConsoleCustomization>();
seXpParser.expects(once()).method("readContributions").will(returnValue(result));
assertTrue("Unexpected result", config.availableSearchConsoleCustomizations() == result);
}
public void testAvailableSearchFavoritesCustomizations()
{
- final Set<ISearchFavoritesViewCustomization> result = new HashSet<ISearchFavoritesViewCustomization>();
+ final List<ISearchFavoritesViewCustomization> result = new ArrayList<ISearchFavoritesViewCustomization>();
sbXpParser.expects(once()).method("readContributions").will(returnValue(result));
assertTrue("Unexpected result", config.availableSearchFavoritesCustomizations() == result);
}
diff --git a/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/DestinationsCategoryExtensionParserTest.java b/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/DestinationsCategoryExtensionParserTest.java
index c07d0aa..674b2a5 100644
--- a/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/DestinationsCategoryExtensionParserTest.java
+++ b/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/DestinationsCategoryExtensionParserTest.java
@@ -10,20 +10,18 @@
*******************************************************************************/
package org.eclipse.platform.discovery.runtime.test.unit.internal;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.platform.discovery.runtime.api.ISearchDestination;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationsProviderDescription;
-import org.eclipse.platform.discovery.runtime.internal.xp.IDestinationsProviderExtensionParser;
-import org.eclipse.platform.discovery.runtime.internal.xp.impl.DestinationsCategoryExtensionParser;
-import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
-import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.platform.discovery.runtime.api.ISearchDestination;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationsProviderDescription;
+import org.eclipse.platform.discovery.runtime.internal.xp.IDestinationsProviderExtensionParser;
+import org.eclipse.platform.discovery.runtime.internal.xp.impl.DestinationsCategoryExtensionParser;
+import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
+import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
public class DestinationsCategoryExtensionParserTest extends MockObjectTestCase
@@ -63,13 +61,13 @@
public void testGetDestinationCategories()
{
- final Set<IDestinationCategoryDescription> categories = testParser.readContributions();
+ final List<IDestinationCategoryDescription> categories = testParser.readContributions();
assertEquals("One category expected", 1, categories.size());
IDestinationCategoryDescription cat = categories.iterator().next();
assertEquals("Unexpected id", CATEGORY_ID, cat.getId());
assertEquals("Unexpected name", CATEGORY_NAME, cat.getDisplayName());
assertTrue("Unexpected destinations class", ISearchDestination.class.isAssignableFrom(cat.getDestinationsClass()));
- final Set<String> destProviderIds = cat.getDestinationProviderIds();
+ final List<String> destProviderIds = cat.getDestinationProviderIds();
assertEquals("One destination provider expected", 1, destProviderIds.size());
assertTrue("Test dest provider not returned", destProviderIds.contains(DESTINATION_PROVIDER_ID));
}
@@ -82,8 +80,7 @@
destProviderExtParer = mock(IDestinationsProviderExtensionParser.class);
destProviderExtParer.stubs().method("readContributions").will(
- returnValue(new HashSet<IDestinationsProviderDescription>(Arrays
- .asList(new IDestinationsProviderDescription[] { destProvider.proxy() }))));
+ returnValue(Arrays.asList(new IDestinationsProviderDescription[] { destProvider.proxy() })));
}
private class MyParser extends DestinationsCategoryExtensionParser
diff --git a/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/DestinationsProviderExtensionParserTest.java b/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/DestinationsProviderExtensionParserTest.java
index 6afb4fc..0ba9e0a 100644
--- a/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/DestinationsProviderExtensionParserTest.java
+++ b/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/DestinationsProviderExtensionParserTest.java
@@ -10,19 +10,19 @@
*******************************************************************************/
package org.eclipse.platform.discovery.runtime.test.unit.internal;
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.platform.discovery.runtime.api.IDestinationChangeHandler;
-import org.eclipse.platform.discovery.runtime.api.IDestinationsProvider;
-import org.eclipse.platform.discovery.runtime.api.ISearchDestination;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationsProviderDescription;
-import org.eclipse.platform.discovery.runtime.internal.xp.impl.DestinationsProviderExtensionParser;
-import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
-import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.platform.discovery.runtime.api.IDestinationChangeHandler;
+import org.eclipse.platform.discovery.runtime.api.IDestinationsProvider;
+import org.eclipse.platform.discovery.runtime.api.ISearchDestination;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationsProviderDescription;
+import org.eclipse.platform.discovery.runtime.internal.xp.impl.DestinationsProviderExtensionParser;
+import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
+import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
public class DestinationsProviderExtensionParserTest extends MockObjectTestCase
@@ -66,7 +66,7 @@
public void testGetDestinationCategories()
{
- final Set<IDestinationsProviderDescription> providers = testParser.readContributions();
+ final List<IDestinationsProviderDescription> providers = testParser.readContributions();
assertEquals("One provider expected", 1, providers.size());
final IDestinationsProviderDescription provDescription = providers.iterator().next();
assertEquals("Unexpected id", PROVIDER_ID, provDescription.getId());
diff --git a/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/MementoLoadProvidersExtensionParserTest.java b/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/MementoLoadProvidersExtensionParserTest.java
index 53e9a2b..bec1b16 100644
--- a/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/MementoLoadProvidersExtensionParserTest.java
+++ b/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/MementoLoadProvidersExtensionParserTest.java
@@ -10,16 +10,15 @@
*******************************************************************************/
package org.eclipse.platform.discovery.runtime.test.unit.internal;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.platform.discovery.runtime.api.persistence.IMementoLoadProvider;
-import org.eclipse.platform.discovery.runtime.internal.persistence.model.descriptions.IMementoLoadProviderDescription;
-import org.eclipse.platform.discovery.runtime.internal.persistence.xp.MementoLoadProvidersExtensionParser;
-import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
-import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.platform.discovery.runtime.api.persistence.IMementoLoadProvider;
+import org.eclipse.platform.discovery.runtime.internal.persistence.model.descriptions.IMementoLoadProviderDescription;
+import org.eclipse.platform.discovery.runtime.internal.persistence.xp.MementoLoadProvidersExtensionParser;
+import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
+import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
public class MementoLoadProvidersExtensionParserTest extends MockObjectTestCase
@@ -58,7 +57,7 @@
public void testReadProviders()
{
- final Set<IMementoLoadProviderDescription> providersSet = testParser.readContributions();
+ final List<IMementoLoadProviderDescription> providersSet = testParser.readContributions();
assertEquals("One provider expeceted", 1, providersSet.size()); //$NON-NLS-1$
final IMementoLoadProviderDescription provider = providersSet.iterator().next();
diff --git a/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/MementoStoreProvidersExtensionParserTest.java b/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/MementoStoreProvidersExtensionParserTest.java
index d976353..b11e197 100644
--- a/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/MementoStoreProvidersExtensionParserTest.java
+++ b/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/MementoStoreProvidersExtensionParserTest.java
@@ -10,16 +10,15 @@
*******************************************************************************/
package org.eclipse.platform.discovery.runtime.test.unit.internal;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.platform.discovery.runtime.api.persistence.IMementoStoreProvider;
-import org.eclipse.platform.discovery.runtime.internal.persistence.model.descriptions.IMementoStoreProviderDescription;
-import org.eclipse.platform.discovery.runtime.internal.persistence.xp.MementoStoreProvidersExtensionParser;
-import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
-import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.platform.discovery.runtime.api.persistence.IMementoStoreProvider;
+import org.eclipse.platform.discovery.runtime.internal.persistence.model.descriptions.IMementoStoreProviderDescription;
+import org.eclipse.platform.discovery.runtime.internal.persistence.xp.MementoStoreProvidersExtensionParser;
+import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
+import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
public class MementoStoreProvidersExtensionParserTest extends MockObjectTestCase
@@ -58,7 +57,7 @@
public void testReadProviders()
{
- final Set<IMementoStoreProviderDescription> providersSet = testParser.readContributions();
+ final List<IMementoStoreProviderDescription> providersSet = testParser.readContributions();
assertEquals("One provider expeceted", 1, providersSet.size()); //$NON-NLS-1$
final IMementoStoreProviderDescription provider = providersSet.iterator().next();
diff --git a/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/ObjectTypeExtensionParserTest.java b/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/ObjectTypeExtensionParserTest.java
index b74255e..4d26725 100644
--- a/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/ObjectTypeExtensionParserTest.java
+++ b/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/ObjectTypeExtensionParserTest.java
@@ -10,15 +10,14 @@
*******************************************************************************/
package org.eclipse.platform.discovery.runtime.test.unit.internal;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IObjectTypeDescription;
-import org.eclipse.platform.discovery.runtime.internal.xp.impl.ObjectTypeExtensionParser;
-import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
-import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IObjectTypeDescription;
+import org.eclipse.platform.discovery.runtime.internal.xp.impl.ObjectTypeExtensionParser;
+import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
+import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
public class ObjectTypeExtensionParserTest extends MockObjectTestCase
@@ -47,7 +46,7 @@
public void testGetObjectTypes()
{
- final Set<IObjectTypeDescription> objects = testParser.readContributions();
+ final List<IObjectTypeDescription> objects = testParser.readContributions();
assertEquals("One object expected", 1, objects.size());
IObjectTypeDescription obj = objects.iterator().next();
assertEquals("Unexpected id", OBJECT_ID, obj.getId());
diff --git a/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/SearchProviderActivationConfigDummyTest.java b/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/SearchProviderActivationConfigDummyTest.java
index c3c83f9..1a33854 100644
--- a/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/SearchProviderActivationConfigDummyTest.java
+++ b/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/SearchProviderActivationConfigDummyTest.java
@@ -2,7 +2,7 @@
import java.util.Arrays;
import java.util.HashSet;
-import java.util.LinkedHashSet;
+import java.util.List;
import java.util.Set;
import org.eclipse.platform.discovery.runtime.internal.ProviderNotFoundException;
@@ -22,13 +22,13 @@
public void testGetActiveSearchProviderNoCategories() throws ProviderNotFoundException {
IObjectTypeDescription aDescription = objectTypeDescriptionForId(OBJECT_TYPE_ID);
ISearchProviderDescription expectedProvider = providerWithNoCategories(aDescription);
- SearchProviderActivationConfigDummy dummy = new SearchProviderActivationConfigDummy(createParser(set( providerWithCateogires(aDescription), expectedProvider )));
+ SearchProviderActivationConfigDummy dummy = new SearchProviderActivationConfigDummy(createParser(list( providerWithCateogires(aDescription), expectedProvider )));
assertEquals("Unexpected provider returned", expectedProvider, dummy.getActiveSearchProviderDescription(objectTypeDescriptionForId(OBJECT_TYPE_ID)));
}
public void testGetActiveSearchProviderNoCategoriesThrowsExpectionForProviderWithCategories() {
IObjectTypeDescription aDescription = objectTypeDescriptionForId(OBJECT_TYPE_ID);
- SearchProviderActivationConfigDummy dummy = new SearchProviderActivationConfigDummy(createParser(set( providerWithCateogires(aDescription) )));
+ SearchProviderActivationConfigDummy dummy = new SearchProviderActivationConfigDummy(createParser(list( providerWithCateogires(aDescription) )));
try{
dummy.getActiveSearchProviderDescription(objectTypeDescriptionForId(OBJECT_TYPE_ID));
fail("ProviderNotFound not thrown");
@@ -36,7 +36,7 @@
}
- private ISearchProvidersExtensionParser createParser(Set<ISearchProviderDescription> providers) {
+ private ISearchProvidersExtensionParser createParser(List<ISearchProviderDescription> providers) {
Mock<ISearchProvidersExtensionParser> parserMock = mock(ISearchProvidersExtensionParser.class);
parserMock.stubs().method("readContributions").will(returnValue(providers));
return parserMock.proxy();
@@ -65,10 +65,8 @@
return mock.proxy();
}
- private Set<ISearchProviderDescription> set(ISearchProviderDescription... descriptions) {
- Set<ISearchProviderDescription> result = new LinkedHashSet<ISearchProviderDescription>();
- result.addAll(Arrays.asList(descriptions));
- return result;
+ private List<ISearchProviderDescription> list(ISearchProviderDescription... descriptions) {
+ return Arrays.asList(descriptions);
}
diff --git a/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/SearchProviderConfigurationTest.java b/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/SearchProviderConfigurationTest.java
index b29a9f6..a19c997 100644
--- a/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/SearchProviderConfigurationTest.java
+++ b/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/SearchProviderConfigurationTest.java
@@ -10,37 +10,37 @@
*******************************************************************************/
package org.eclipse.platform.discovery.runtime.test.unit.internal;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.platform.discovery.runtime.api.IDestinationsProvider;
-import org.eclipse.platform.discovery.runtime.api.ISearchDestination;
-import org.eclipse.platform.discovery.runtime.api.ISearchSubdestination;
-import org.eclipse.platform.discovery.runtime.internal.DestinationCategoryNotFoundException;
-import org.eclipse.platform.discovery.runtime.internal.ISearchProviderActivationConfig;
-import org.eclipse.platform.discovery.runtime.internal.ISearchProviderConfiguration;
-import org.eclipse.platform.discovery.runtime.internal.ISubdestinationsActivationConfig;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.platform.discovery.runtime.api.IDestinationsProvider;
+import org.eclipse.platform.discovery.runtime.api.ISearchDestination;
+import org.eclipse.platform.discovery.runtime.api.ISearchSubdestination;
+import org.eclipse.platform.discovery.runtime.internal.DestinationCategoryNotFoundException;
+import org.eclipse.platform.discovery.runtime.internal.ISearchProviderActivationConfig;
+import org.eclipse.platform.discovery.runtime.internal.ISearchProviderConfiguration;
+import org.eclipse.platform.discovery.runtime.internal.ISubdestinationsActivationConfig;
import org.eclipse.platform.discovery.runtime.internal.IXPParsersFactory;
-import org.eclipse.platform.discovery.runtime.internal.ProviderNotFoundException;
-import org.eclipse.platform.discovery.runtime.internal.impl.SearchProviderConfiguration;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationsProviderDescription;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IObjectTypeDescription;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.ISearchProviderDescription;
-import org.eclipse.platform.discovery.runtime.internal.xp.IDestinationCategoryExtensionParser;
-import org.eclipse.platform.discovery.runtime.internal.xp.IDestinationsProviderExtensionParser;
-import org.eclipse.platform.discovery.runtime.internal.xp.IObjectTypeExtensionParser;
-import org.eclipse.platform.discovery.runtime.internal.xp.ISearchProvidersExtensionParser;
-import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
-import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
-import org.eclipse.platform.discovery.testutils.utils.reflection.ReflectionUtils;
-import org.eclipse.platform.discovery.util.internal.logging.ILogger;
-import org.jmock.core.Constraint;
-import org.jmock.core.Invocation;
-import org.jmock.core.Stub;
+import org.eclipse.platform.discovery.runtime.internal.ProviderNotFoundException;
+import org.eclipse.platform.discovery.runtime.internal.impl.SearchProviderConfiguration;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationsProviderDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IObjectTypeDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.ISearchProviderDescription;
+import org.eclipse.platform.discovery.runtime.internal.xp.IDestinationCategoryExtensionParser;
+import org.eclipse.platform.discovery.runtime.internal.xp.IDestinationsProviderExtensionParser;
+import org.eclipse.platform.discovery.runtime.internal.xp.IObjectTypeExtensionParser;
+import org.eclipse.platform.discovery.runtime.internal.xp.ISearchProvidersExtensionParser;
+import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
+import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
+import org.eclipse.platform.discovery.testutils.utils.reflection.ReflectionUtils;
+import org.eclipse.platform.discovery.util.internal.logging.ILogger;
+import org.jmock.core.Constraint;
+import org.jmock.core.Invocation;
+import org.jmock.core.Stub;
/**
@@ -203,21 +203,21 @@
destinationProviderDescr1.stubs().method("createProvider").will(returnValue(destinationProvider1.proxy()));
destinationProvider2 = mock(IDestinationsProvider.class);
- final Set<ISearchDestination> provider2Dest = new HashSet<ISearchDestination>(Arrays.asList(new ISearchDestination[]{searchDestination3.proxy()}));
+ final Set<ISearchDestination> provider2Dest = new HashSet<ISearchDestination>(Arrays.asList(new ISearchDestination[]{searchDestination3.proxy()}));
destinationProvider2.stubs().method("getSearchDestinations").will(returnValue(provider2Dest));
destinationProviderDescr2 = mock(IDestinationsProviderDescription.class, DESTINATION_PROVIDER_ID_2);
destinationProviderDescr2.stubs().method("getId").will(returnValue(DESTINATION_PROVIDER_ID_2));
destinationProviderDescr2.stubs().method("createProvider").will(returnValue(destinationProvider2.proxy()));
destinationProvider3 = mock(IDestinationsProvider.class);
- final Set<ISearchDestination> provider3Dest = new HashSet<ISearchDestination>(Arrays.asList(new ISearchDestination[]{searchDestination4.proxy(), searchDestination5.proxy()}));
+ final Set<ISearchDestination> provider3Dest = new HashSet<ISearchDestination>(Arrays.asList(new ISearchDestination[]{searchDestination4.proxy(), searchDestination5.proxy()}));
destinationProvider3.stubs().method("getSearchDestinations").will(returnValue(provider3Dest));
destinationProviderDescr3 = mock(IDestinationsProviderDescription.class, DESTINATION_PROVIDER_ID_3);
destinationProviderDescr3.stubs().method("getId").will(returnValue(DESTINATION_PROVIDER_ID_3));
destinationProviderDescr3.stubs().method("createProvider").will(returnValue(destinationProvider3.proxy()));
destinationProvider4 = mock(IDestinationsProvider.class);
- final Set<ISearchDestination> provider4Dest = new HashSet<ISearchDestination>(Arrays.asList(new ISearchDestination[]{searchDestination6.proxy(), searchDestination7.proxy()}));
+ final Set<ISearchDestination> provider4Dest = new HashSet<ISearchDestination>(Arrays.asList(new ISearchDestination[]{searchDestination6.proxy(), searchDestination7.proxy()}));
destinationProvider4.stubs().method("getSearchDestinations").will(returnValue(provider4Dest));
destinationProviderDescr4 = mock(IDestinationsProviderDescription.class, DESTINATION_PROVIDER_ID_4);
destinationProviderDescr4.stubs().method("getId").will(returnValue(DESTINATION_PROVIDER_ID_4));
@@ -236,28 +236,28 @@
destinationCategory1 = mock(IDestinationCategoryDescription.class, DESTINATION_CATEGORY_NAME_1);
destinationCategory1.stubs().method("getId").will(returnValue(DESTINATION_CATEGORY_ID_1));
destinationCategory1.stubs().method("getDisplayName").will(returnValue(DESTINATION_CATEGORY_NAME_1));
- final Set<String> cat1Providers = new HashSet<String>(Arrays.asList(new String[]{DESTINATION_PROVIDER_ID_1}));
+ final List<String> cat1Providers = Arrays.asList(new String[]{DESTINATION_PROVIDER_ID_1});
destinationCategory1.stubs().method("getDestinationProviderIds").will(returnValue(cat1Providers));
destinationCategory1.stubs().method("getDestinationsClass").will(returnValue(ISearchDestination.class));
destinationCategory2 = mock(IDestinationCategoryDescription.class, DESTINATION_CATEGORY_NAME_2);
destinationCategory2.stubs().method("getId").will(returnValue(DESTINATION_CATEGORY_ID_2));
destinationCategory2.stubs().method("getDisplayName").will(returnValue(DESTINATION_CATEGORY_NAME_2));
- final Set<String> cat2Providers = new HashSet<String>(Arrays.asList(new String[]{DESTINATION_PROVIDER_ID_2, DESTINATION_PROVIDER_ID_3}));
+ final List<String> cat2Providers = Arrays.asList(new String[]{DESTINATION_PROVIDER_ID_2, DESTINATION_PROVIDER_ID_3});
destinationCategory2.stubs().method("getDestinationProviderIds").will(returnValue(cat2Providers));
destinationCategory2.stubs().method("getDestinationsClass").will(returnValue(ISearchDestination.class));
destinationCategory3 = mock(IDestinationCategoryDescription.class, DESTINATION_CATEGORY_NAME_3);
destinationCategory3.stubs().method("getId").will(returnValue(DESTINATION_CATEGORY_ID_3));
destinationCategory3.stubs().method("getDisplayName").will(returnValue(DESTINATION_CATEGORY_NAME_3));
- final Set<String> cat3Providers = new HashSet<String>(Arrays.asList(new String[]{DESTINATION_PROVIDER_ID_4}));
+ final List<String> cat3Providers =Arrays.asList(new String[]{DESTINATION_PROVIDER_ID_4});
destinationCategory3.stubs().method("getDestinationProviderIds").will(returnValue(cat3Providers));
destinationCategory3.stubs().method("getDestinationsClass").will(returnValue(ISearchDestination.class));
destinationCategory4 = mock(IDestinationCategoryDescription.class, DESTINATION_CATEGORY_NAME_4);
destinationCategory4.stubs().method("getId").will(returnValue(DESTINATION_CATEGORY_ID_4));
destinationCategory4.stubs().method("getDisplayName").will(returnValue(DESTINATION_CATEGORY_NAME_4));
- final Set<String> cat4Providers = new HashSet<String>(Arrays.asList(new String[]{DESTINATION_PROVIDER_ID_5}));
+ final List<String> cat4Providers = Arrays.asList(new String[]{DESTINATION_PROVIDER_ID_5});
destinationCategory4.stubs().method("getDestinationProviderIds").will(returnValue(cat4Providers));
destinationCategory4.stubs().method("getDestinationsClass").will(returnValue(ISearchDestination.class));
}
@@ -268,7 +268,7 @@
provider1.stubs().method("getId").will(returnValue(PROVIDER_ID_1));
provider1.stubs().method("getDisplayName").will(returnValue(PROVIDER_NAME_1));
provider1.stubs().method("getObjectType").will(returnValue(objectType_1.proxy()));
- final Set<IDestinationCategoryDescription> provider1Cats = new HashSet<IDestinationCategoryDescription>(Arrays.asList(new IDestinationCategoryDescription[]{destinationCategory1.proxy(), destinationCategory2.proxy()}));
+ final List<IDestinationCategoryDescription> provider1Cats = Arrays.asList(new IDestinationCategoryDescription[]{destinationCategory1.proxy(), destinationCategory2.proxy()});
provider1.stubs().method("getSupportedDestinationCategories").will(returnValue(provider1Cats));
provider1.stubs().method("supportsTextSearch").will(returnValue(true));
@@ -276,7 +276,7 @@
provider2.stubs().method("getId").will(returnValue(PROVIDER_ID_2));
provider2.stubs().method("getDisplayName").will(returnValue(PROVIDER_NAME_2));
provider2.stubs().method("getObjectType").will(returnValue(objectType_1.proxy()));
- final Set<IDestinationCategoryDescription> provider2Cats = new HashSet<IDestinationCategoryDescription>(Arrays.asList(new IDestinationCategoryDescription[]{destinationCategory3.proxy(), destinationCategory4.proxy()}));
+ final List<IDestinationCategoryDescription> provider2Cats =Arrays.asList(new IDestinationCategoryDescription[]{destinationCategory3.proxy(), destinationCategory4.proxy()});
provider2.stubs().method("getSupportedDestinationCategories").will(returnValue(provider2Cats));
provider2.stubs().method("supportsTextSearch").will(returnValue(false));
@@ -284,7 +284,7 @@
provider3.stubs().method("getId").will(returnValue(PROVIDER_ID_3));
provider3.stubs().method("getDisplayName").will(returnValue(PROVIDER_NAME_3));
provider3.stubs().method("getObjectType").will(returnValue(objectType_1.proxy()));
- final Set<IDestinationCategoryDescription> provider3Cats = new HashSet<IDestinationCategoryDescription>(Arrays.asList(new IDestinationCategoryDescription[]{destinationCategory2.proxy(), destinationCategory3.proxy()}));
+ final List<IDestinationCategoryDescription> provider3Cats = Arrays.asList(new IDestinationCategoryDescription[]{destinationCategory2.proxy(), destinationCategory3.proxy()});
provider3.stubs().method("getSupportedDestinationCategories").will(returnValue(provider3Cats));
provider3.stubs().method("supportsTextSearch").will(returnValue(true));
@@ -292,7 +292,7 @@
provider4.stubs().method("getId").will(returnValue(PROVIDER_ID_4));
provider4.stubs().method("getDisplayName").will(returnValue(PROVIDER_NAME_4));
provider4.stubs().method("getObjectType").will(returnValue(objectType_2.proxy()));
- final Set<IDestinationCategoryDescription> provider4Cats = new HashSet<IDestinationCategoryDescription>(Arrays.asList(new IDestinationCategoryDescription[]{destinationCategory1.proxy(), destinationCategory4.proxy()}));
+ final List<IDestinationCategoryDescription> provider4Cats = Arrays.asList(new IDestinationCategoryDescription[]{destinationCategory1.proxy(), destinationCategory4.proxy()});
provider4.stubs().method("getSupportedDestinationCategories").will(returnValue(provider4Cats));
provider4.stubs().method("supportsTextSearch").will(returnValue(false));
}
@@ -321,14 +321,14 @@
private void setupObjectTypesExtensionParser()
{
objectTypeExtensionParser = mock(IObjectTypeExtensionParser.class);
- final Set<IObjectTypeDescription> objects = new HashSet<IObjectTypeDescription>(Arrays.asList(new IObjectTypeDescription[]{objectType_1.proxy(), objectType_2.proxy()}));
+ final List<IObjectTypeDescription> objects = Arrays.asList(new IObjectTypeDescription[]{objectType_1.proxy(), objectType_2.proxy()});
objectTypeExtensionParser.stubs().method("readContributions").will(returnValue(objects));
}
private void setupDestCategoryExtensionParser()
{
destCategoryExtensionParser = mock(IDestinationCategoryExtensionParser.class);
- final Set<IDestinationCategoryDescription> categories = new HashSet<IDestinationCategoryDescription>();
+ final List<IDestinationCategoryDescription> categories = new ArrayList<IDestinationCategoryDescription>();
categories.addAll(Arrays.asList(new IDestinationCategoryDescription[]{destinationCategory1.proxy(), destinationCategory2.proxy(), destinationCategory3.proxy(), destinationCategory4.proxy()}));
destCategoryExtensionParser.stubs().method("readContributions").will(returnValue(categories));
}
@@ -336,7 +336,7 @@
private void setupDestProvidersExtParser()
{
destProviderExtensionParser = mock(IDestinationsProviderExtensionParser.class);
- final Set<IDestinationsProviderDescription> providers = new HashSet<IDestinationsProviderDescription>();
+ final List<IDestinationsProviderDescription> providers = new ArrayList<IDestinationsProviderDescription>();
providers.addAll(Arrays.asList(new IDestinationsProviderDescription[]{destinationProviderDescr1.proxy(), destinationProviderDescr2.proxy(), destinationProviderDescr3.proxy(), destinationProviderDescr4.proxy(), destinationProviderDescr5.proxy()}));
destProviderExtensionParser.stubs().method("readContributions").will(returnValue(providers));
}
@@ -344,7 +344,7 @@
private void setupSearchProvidersExtParser()
{
searchProviderExtensionParser = mock(ISearchProvidersExtensionParser.class);
- final Set<ISearchProviderDescription> providers = new HashSet<ISearchProviderDescription>();
+ final List<ISearchProviderDescription> providers = new ArrayList<ISearchProviderDescription>();
providers.addAll(Arrays.asList(new ISearchProviderDescription[]{provider1.proxy(), provider2.proxy(), provider3.proxy(), provider4.proxy()}));
searchProviderExtensionParser.stubs().method("readContributions").will(returnValue(providers));
}
@@ -367,11 +367,11 @@
{
final Mock<ISubdestinationsActivationConfig> activationConfig = mock(ISubdestinationsActivationConfig.class);
- activationConfig.stubs().method("getAvailableSearchSubdestinations").with(eq(objectType_2.proxy()), ANYTHING, ANYTHING).will(returnValue(new HashSet<ISearchSubdestination>()));
- activationConfig.stubs().method("getAvailableSearchSubdestinations").with(eq(objectType_1.proxy()), eq(destinationCategory1.proxy()), ANYTHING).will(returnValue(new HashSet<ISearchSubdestination>(Arrays.asList(new ISearchSubdestination[]{subdestination1.proxy()}))));
- activationConfig.stubs().method("getAvailableSearchSubdestinations").with(eq(objectType_1.proxy()), eq(destinationCategory2.proxy()), ANYTHING).will(returnValue(new HashSet<ISearchSubdestination>(Arrays.asList(new ISearchSubdestination[]{subdestination2.proxy(), subdestination3.proxy()}))));
- activationConfig.stubs().method("getAvailableSearchSubdestinations").with(eq(objectType_1.proxy()), eq(destinationCategory3.proxy()), ANYTHING).will(returnValue(new HashSet<ISearchSubdestination>()));
- activationConfig.stubs().method("getAvailableSearchSubdestinations").with(eq(objectType_1.proxy()), eq(destinationCategory4.proxy()), ANYTHING).will(returnValue(new HashSet<ISearchSubdestination>()));
+ activationConfig.stubs().method("getAvailableSearchSubdestinations").with(eq(objectType_2.proxy()), ANYTHING, ANYTHING).will(returnValue(new ArrayList<ISearchSubdestination>()));
+ activationConfig.stubs().method("getAvailableSearchSubdestinations").with(eq(objectType_1.proxy()), eq(destinationCategory1.proxy()), ANYTHING).will(returnValue(Arrays.asList(new ISearchSubdestination[]{subdestination1.proxy()})));
+ activationConfig.stubs().method("getAvailableSearchSubdestinations").with(eq(objectType_1.proxy()), eq(destinationCategory2.proxy()), ANYTHING).will(returnValue(Arrays.asList(new ISearchSubdestination[]{subdestination2.proxy(), subdestination3.proxy()})));
+ activationConfig.stubs().method("getAvailableSearchSubdestinations").with(eq(objectType_1.proxy()), eq(destinationCategory3.proxy()), ANYTHING).will(returnValue(new ArrayList<ISearchSubdestination>()));
+ activationConfig.stubs().method("getAvailableSearchSubdestinations").with(eq(objectType_1.proxy()), eq(destinationCategory4.proxy()), ANYTHING).will(returnValue(new ArrayList<ISearchSubdestination>()));
activationConfig.stubs().method("isSubdestinationActive").with(eq(subdestination2.proxy()), eq(objectType_1.proxy()), eq(destinationCategory2.proxy()), eq(provider1.proxy())).will(checkValueForSelection());
Constraint [] constraints = {eq(objectType_1.proxy()), eq(destinationCategory2.proxy()), eq(provider1.proxy()),eq(subdestination2.proxy()), eq(new Boolean(false))};
@@ -409,7 +409,7 @@
public void testGetAvailableSearchProvidersDescriptionsForObjectType()
{
- final Set<ISearchProviderDescription> descriptions = searchProviderConfig.getAvailableSearchProviderDescriptions(objectType_1.proxy());
+ final List<ISearchProviderDescription> descriptions = searchProviderConfig.getAvailableSearchProviderDescriptions(objectType_1.proxy());
assertEquals("Three providers expected", 3, descriptions.size());
final List<String> ids = new ArrayList<String>();
for (ISearchProviderDescription d : descriptions)
@@ -434,7 +434,7 @@
public void testGetAvailableDestinationCategoriesForObjectType()
{
- final Set<String> cat1Ids = new HashSet<String>();
+ final List<String> cat1Ids = new ArrayList<String>();
for(IDestinationCategoryDescription cat : searchProviderConfig.getAvailableDestinationCategoriesForObjectType(objectType_1.proxy()))
{
cat1Ids.add(cat.getId());
@@ -445,7 +445,7 @@
assertTrue("Destinationa category 1 not returned", cat1Ids.contains(DESTINATION_CATEGORY_ID_3));
assertTrue("Destinationa category 1 not returned", cat1Ids.contains(DESTINATION_CATEGORY_ID_4));
- final Set<String> cat2Ids = new HashSet<String>();
+ final List<String> cat2Ids = new ArrayList<String>();
for(IDestinationCategoryDescription cat : searchProviderConfig.getAvailableDestinationCategoriesForObjectType(objectType_2.proxy()))
{
cat2Ids.add(cat.getId());
@@ -517,27 +517,27 @@
public void testGetDestinationProvidersForCategory()
{
- final Set<IDestinationsProviderDescription> providers1 = searchProviderConfig.getDestinationProvidersForCategory(destinationCategory1.proxy());
+ final List<IDestinationsProviderDescription> providers1 = searchProviderConfig.getDestinationProvidersForCategory(destinationCategory1.proxy());
assertEquals("One destination provider expected", 1, providers1.size());
assertTrue("Destination provider 1 not returned", providers1.contains(destinationProviderDescr1.proxy()));
- final Set<IDestinationsProviderDescription> providers2 = searchProviderConfig.getDestinationProvidersForCategory(destinationCategory2.proxy());
+ final List<IDestinationsProviderDescription> providers2 = searchProviderConfig.getDestinationProvidersForCategory(destinationCategory2.proxy());
assertEquals("Two destination providers expected", 2, providers2.size());
assertTrue("Destination provider 2 not returned", providers2.contains(destinationProviderDescr2.proxy()));
assertTrue("Destination provider 3 not returned", providers2.contains(destinationProviderDescr3.proxy()));
- final Set<IDestinationsProviderDescription> providers3 = searchProviderConfig.getDestinationProvidersForCategory(destinationCategory3.proxy());
+ final List<IDestinationsProviderDescription> providers3 = searchProviderConfig.getDestinationProvidersForCategory(destinationCategory3.proxy());
assertEquals("One destination provider expected", 1, providers3.size());
assertTrue("Destination provider 4 not returned", providers3.contains(destinationProviderDescr4.proxy()));
- final Set<IDestinationsProviderDescription> providers4 = searchProviderConfig.getDestinationProvidersForCategory(destinationCategory4.proxy());
+ final List<IDestinationsProviderDescription> providers4 = searchProviderConfig.getDestinationProvidersForCategory(destinationCategory4.proxy());
assertEquals("One destination provider expected", 1, providers4.size());
assertTrue("Destination provider 5 not returned", providers4.contains(destinationProviderDescr5.proxy()));
}
public void testGetSearchDestinations()
{
- Set<ISearchDestination> destinations = searchProviderConfig.getSearchDestinations(destinationCategory1.proxy(), destinationProvider1.proxy());
+ List<ISearchDestination> destinations = searchProviderConfig.getSearchDestinations(destinationCategory1.proxy(), destinationProvider1.proxy());
assertEquals("Two destinations expected", 2, destinations.size());
assertTrue("Destination 1 not returned", destinations.contains(searchDestination1.proxy()));
assertTrue("Destination 2 not returned", destinations.contains(searchDestination2.proxy()));
@@ -572,16 +572,16 @@
public void testGetAvailableSearchSubdestinations()
{
- final Set<ISearchSubdestination> subdest1 = searchProviderConfig.getAvailableSearchSubdestinations(objectType_1.proxy(), destinationCategory1.proxy(), provider1.proxy());
+ final List<ISearchSubdestination> subdest1 = searchProviderConfig.getAvailableSearchSubdestinations(objectType_1.proxy(), destinationCategory1.proxy(), provider1.proxy());
assertEquals("One subdestination expected", 1, subdest1.size());
assertTrue("Subdestination 1 not returned", subdest1.contains(subdestination1.proxy()));
- final Set<ISearchSubdestination> subdest2 = searchProviderConfig.getAvailableSearchSubdestinations(objectType_1.proxy(), destinationCategory2.proxy(), provider1.proxy());
+ final List<ISearchSubdestination> subdest2 = searchProviderConfig.getAvailableSearchSubdestinations(objectType_1.proxy(), destinationCategory2.proxy(), provider1.proxy());
assertEquals("Two subdestination expected", 2, subdest2.size());
assertTrue("Subdestination 2 not returned", subdest2.contains(subdestination2.proxy()));
assertTrue("Subdestination 3 not returned", subdest2.contains(subdestination3.proxy()));
- final Set<ISearchSubdestination> subdest3 = searchProviderConfig.getAvailableSearchSubdestinations(objectType_1.proxy(), destinationCategory3.proxy(), provider2.proxy());
+ final List<ISearchSubdestination> subdest3 = searchProviderConfig.getAvailableSearchSubdestinations(objectType_1.proxy(), destinationCategory3.proxy(), provider2.proxy());
assertEquals("No subdestination expected", 0, subdest3.size());
}
@@ -589,7 +589,7 @@
public void testGetActiveSearchSubdestinations()
{
- final Set<ISearchSubdestination> subdest2 = searchProviderConfig.getAvailableSearchSubdestinations(objectType_1.proxy(), destinationCategory2.proxy(), provider1.proxy());
+ final List<ISearchSubdestination> subdest2 = searchProviderConfig.getAvailableSearchSubdestinations(objectType_1.proxy(), destinationCategory2.proxy(), provider1.proxy());
assertEquals("Two subdestination expected", 2, subdest2.size());
assertTrue("Subdestination 2 not returned", subdest2.contains(subdestination2.proxy()));
assertTrue("Subdestination 3 not returned", subdest2.contains(subdestination3.proxy()));
@@ -616,7 +616,7 @@
public void testGetAvailableDestinationProviders()
{
- final Set<IDestinationsProviderDescription> providers = searchProviderConfig.getAvailableDestinationProviders();
+ final List<IDestinationsProviderDescription> providers = searchProviderConfig.getAvailableDestinationProviders();
assertEquals("5 providers expected", 5, providers.size());
assertTrue("destinationProviderDescr1 not found", providers.contains(destinationProviderDescr1.proxy()));
assertTrue("destinationProviderDescr2 not found", providers.contains(destinationProviderDescr2.proxy()));
diff --git a/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/SearchProvidersExtensionParserTest.java b/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/SearchProvidersExtensionParserTest.java
index 0124741..3dd8905 100644
--- a/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/SearchProvidersExtensionParserTest.java
+++ b/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/SearchProvidersExtensionParserTest.java
@@ -10,22 +10,21 @@
*******************************************************************************/
package org.eclipse.platform.discovery.runtime.test.unit.internal;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.platform.discovery.runtime.api.ISearchProvider;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IObjectTypeDescription;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.ISearchProviderDescription;
-import org.eclipse.platform.discovery.runtime.internal.xp.IDestinationCategoryExtensionParser;
-import org.eclipse.platform.discovery.runtime.internal.xp.IObjectTypeExtensionParser;
-import org.eclipse.platform.discovery.runtime.internal.xp.impl.SearchProvidersExtensionParser;
-import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
-import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.platform.discovery.runtime.api.ISearchProvider;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IObjectTypeDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.ISearchProviderDescription;
+import org.eclipse.platform.discovery.runtime.internal.xp.IDestinationCategoryExtensionParser;
+import org.eclipse.platform.discovery.runtime.internal.xp.IObjectTypeExtensionParser;
+import org.eclipse.platform.discovery.runtime.internal.xp.impl.SearchProvidersExtensionParser;
+import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
+import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
public class SearchProvidersExtensionParserTest extends MockObjectTestCase
@@ -83,7 +82,7 @@
obj2.stubs().method("getId").will(returnValue(OBJECT_ID_2));
obj2.stubs().method("getDisplayName").will(returnValue(OBJECT_NAME_2));
- objTypeExtParser.stubs().method("readContributions").will(returnValue(new HashSet<IObjectTypeDescription>(Arrays.asList(new IObjectTypeDescription[]{obj1.proxy(), obj2.proxy()}))));
+ objTypeExtParser.stubs().method("readContributions").will(returnValue(Arrays.asList(new IObjectTypeDescription[]{obj1.proxy(), obj2.proxy()})));
}
private void setupDestCategoriesExtParser()
@@ -94,7 +93,7 @@
final Mock<IDestinationCategoryDescription> cat2 = mock(IDestinationCategoryDescription.class);
cat2.stubs().method("getId").will(returnValue(CATEGORY_ID_2));
- destCategoryParser.stubs().method("readContributions").will(returnValue(new HashSet<IDestinationCategoryDescription>(Arrays.asList(new IDestinationCategoryDescription[]{cat1.proxy(), cat2.proxy()}))));
+ destCategoryParser.stubs().method("readContributions").will(returnValue(Arrays.asList(new IDestinationCategoryDescription[]{cat1.proxy(), cat2.proxy()})));
}
private void setupCategoryConfigElements()
@@ -124,7 +123,7 @@
public void testReadProviders()
{
- final Set<ISearchProviderDescription> providersSet = testParser.readContributions();
+ final List<ISearchProviderDescription> providersSet = testParser.readContributions();
assertEquals("One provider expeceted", 1, providersSet.size());
final ISearchProviderDescription provider = providersSet.iterator().next();
diff --git a/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/SearchSubdestinationExtensionParserTest.java b/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/SearchSubdestinationExtensionParserTest.java
index 498fa5a..e19302b 100644
--- a/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/SearchSubdestinationExtensionParserTest.java
+++ b/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/SearchSubdestinationExtensionParserTest.java
@@ -10,17 +10,17 @@
*******************************************************************************/
package org.eclipse.platform.discovery.runtime.test.unit.internal;
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.platform.discovery.runtime.api.IConflict;
-import org.eclipse.platform.discovery.runtime.api.ISearchSubdestination;
-import org.eclipse.platform.discovery.runtime.internal.xp.impl.SearchSubdestinationExtensionParser;
-import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
-import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.platform.discovery.runtime.api.IConflict;
+import org.eclipse.platform.discovery.runtime.api.ISearchSubdestination;
+import org.eclipse.platform.discovery.runtime.internal.xp.impl.SearchSubdestinationExtensionParser;
+import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
+import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
public class SearchSubdestinationExtensionParserTest extends MockObjectTestCase
@@ -109,7 +109,7 @@
public void testReadSubdestinations()
{
- final Set<ISearchSubdestination> subdestSet = testParser.readContributions();
+ final List<ISearchSubdestination> subdestSet = testParser.readContributions();
assertEquals("Three subdestination expected", 3, subdestSet.size());
for(final ISearchSubdestination subdest : subdestSet)
diff --git a/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/SubdestinationsActivationConfigTest.java b/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/SubdestinationsActivationConfigTest.java
index ba68ccb..62cd95a 100644
--- a/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/SubdestinationsActivationConfigTest.java
+++ b/tests/org.eclipse.platform.discovery.runtime.test.unit/src/org/eclipse/platform/discovery/runtime/test/unit/internal/SubdestinationsActivationConfigTest.java
@@ -10,19 +10,20 @@
*******************************************************************************/
package org.eclipse.platform.discovery.runtime.test.unit.internal;
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.platform.discovery.runtime.api.IConflict;
-import org.eclipse.platform.discovery.runtime.api.ISearchSubdestination;
-import org.eclipse.platform.discovery.runtime.internal.SubdestinationsActivationConfig;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IObjectTypeDescription;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.ISearchProviderDescription;
-import org.eclipse.platform.discovery.runtime.internal.xp.ISearchSubdestinationExtensionParser;
-import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
-import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
+import java.util.Arrays;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.platform.discovery.runtime.api.IConflict;
+import org.eclipse.platform.discovery.runtime.api.ISearchSubdestination;
+import org.eclipse.platform.discovery.runtime.internal.SubdestinationsActivationConfig;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IObjectTypeDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.ISearchProviderDescription;
+import org.eclipse.platform.discovery.runtime.internal.xp.ISearchSubdestinationExtensionParser;
+import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
+import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
public class SubdestinationsActivationConfigTest extends MockObjectTestCase
@@ -86,15 +87,14 @@
searchProvider = mock(ISearchProviderDescription.class);
parser = mock(ISearchSubdestinationExtensionParser.class);
- parser.stubs().method("readContributions").will(returnValue(new HashSet<ISearchSubdestination>(Arrays.asList(new ISearchSubdestination[]{subdestination.proxy(),
- otherSubdestination.proxy(),subdestinationWithConflicts.proxy()}))));
+ parser.stubs().method("readContributions").will(returnValue(Arrays.asList(new ISearchSubdestination[]{subdestination.proxy(), otherSubdestination.proxy(),subdestinationWithConflicts.proxy()})));
config = new SubdestinationsActivationConfig(parser.proxy());
}
public void testGetAvailableSubdestinations()
{
- final Set<ISearchSubdestination> result = config.getAvailableSearchSubdestinations(objectType.proxy(), destinationCategory.proxy(), searchProvider.proxy());
+ final List<ISearchSubdestination> result = config.getAvailableSearchSubdestinations(objectType.proxy(), destinationCategory.proxy(), searchProvider.proxy());
assertEquals("Two subdestinations expected", 2, result.size());
assertTrue("Subdestination not found", result.contains(subdestination.proxy()));
assertTrue("Subdestination not found", result.contains(subdestinationWithConflicts.proxy()));
diff --git a/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/AdvancedSearchParamsDisplayerTest.java b/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/AdvancedSearchParamsDisplayerTest.java
index 8b0d0a2..c695387 100644
--- a/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/AdvancedSearchParamsDisplayerTest.java
+++ b/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/AdvancedSearchParamsDisplayerTest.java
@@ -91,7 +91,7 @@
private void setupXpParser()
{
xpParser = createThreadSafeNiceMock(IAdvancedSearchParamsUiContribXpParser.class);
- EasyMock.expect(xpParser.readContributions()).andStubReturn(new HashSet<IAdvancedSearchParamsUiContributorDescr>(Arrays.asList(new IAdvancedSearchParamsUiContributorDescr[] { searchParamsUiContribDescr })));
+ EasyMock.expect(xpParser.readContributions()).andStubReturn(Arrays.asList(new IAdvancedSearchParamsUiContributorDescr[] { searchParamsUiContribDescr }));
EasyMock.replay(xpParser);
}
diff --git a/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/ComboSelectorTest.java b/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/ComboSelectorTest.java
index 6ed482a..b528ad4 100644
--- a/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/ComboSelectorTest.java
+++ b/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/ComboSelectorTest.java
@@ -15,9 +15,9 @@
import static org.easymock.EasyMock.replay;
import static org.easymock.EasyMock.verify;
+import java.util.ArrayList;
import java.util.Arrays;
-import java.util.HashSet;
-import java.util.Set;
+import java.util.List;
import org.eclipse.jface.viewers.ISelectionChangedListener;
import org.eclipse.jface.viewers.SelectionChangedEvent;
@@ -72,13 +72,15 @@
final Combo comboValues = getObjectTypesCombo();
final java.util.List<String> items = Arrays.asList(comboTester
.getItems(comboValues));
- assertEquals("Three items expected", 3, items.size()); //$NON-NLS-1$
+ assertEquals("Three items expected", 4, items.size()); //$NON-NLS-1$
assertTrue(
"Object " + OBJECT_TYPE_NAME_1 + " not found", items.contains(OBJECT_TYPE_NAME_1)); //$NON-NLS-1$ //$NON-NLS-2$
assertTrue(
"Object " + OBJECT_TYPE_NAME_2 + " not found", items.contains(OBJECT_TYPE_NAME_2)); //$NON-NLS-1$ //$NON-NLS-2$
assertTrue(
- "Object " + OBJECT_TYPE_NAME_3 + " not found", items.contains(OBJECT_TYPE_NAME_3)); //$NON-NLS-1$ //$NON-NLS-2$
+ "Object " + OBJECT_TYPE_NAME_3 + " not found", items.contains(OBJECT_TYPE_NAME_3)); //$NON-NLS-1$ //$NON-NLS-2$
+ assertTrue("Object " + OBJECT_TYPE_NO_DESTINATIONS_NAME + " not found", items.contains(OBJECT_TYPE_NO_DESTINATIONS_NAME)); //$NON-NLS-1$ //$NON-NLS-2$
+
}
@@ -86,7 +88,7 @@
final ComboSelector<IObjectTypeDescription> mySelector = openSearchForComboSelectorUI();
- final Set<IObjectTypeDescription> newInput = new HashSet<IObjectTypeDescription>();
+ final List<IObjectTypeDescription> newInput = new ArrayList<IObjectTypeDescription>();
newInput.add(objectType1);
getDisplay().asyncExec(new Runnable() {
@@ -97,7 +99,7 @@
final Combo comboValues = getObjectTypesCombo();
final java.util.List<String> items = Arrays.asList(comboTester
.getItems(comboValues));
- assertEquals("Three items expected", 1, items.size()); //$NON-NLS-1$
+ assertEquals("One item expected", 1, items.size()); //$NON-NLS-1$
assertTrue(
"Object " + OBJECT_TYPE_NAME_1 + " not found", items.contains(OBJECT_TYPE_NAME_1)); //$NON-NLS-1$ //$NON-NLS-2$
}
diff --git a/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/InteractiveComboSelectorTest.java b/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/InteractiveComboSelectorTest.java
index 289c37a..7e727b5 100644
--- a/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/InteractiveComboSelectorTest.java
+++ b/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/InteractiveComboSelectorTest.java
@@ -10,8 +10,8 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.test.comp.internal;
-import java.util.HashSet;
-import java.util.Set;
+import java.util.ArrayList;
+import java.util.List;
import org.easymock.EasyMock;
import org.eclipse.platform.discovery.runtime.api.IDisplayableObject;
@@ -35,7 +35,7 @@
private IDisplayableObject object1;
private IDisplayableObject object2;
- private Set<IDisplayableObject> objectsSet;
+ private List<IDisplayableObject> objectsSet;
@Override
public Display setUpPDE() throws Exception
@@ -48,7 +48,7 @@
EasyMock.expect(object2.getDisplayName()).andStubReturn(OBJECT2_LABEL);
EasyMock.replay(object1, object2);
- objectsSet = new HashSet<IDisplayableObject>();
+ objectsSet = new ArrayList<IDisplayableObject>();
objectsSet.add(object1);
objectsSet.add(object2);
@@ -56,7 +56,7 @@
}
@SuppressWarnings("unchecked")
- private InteractiveComboSelector<IDisplayableObject> openSelector(final Set<IDisplayableObject> objectsToDisplay)
+ private InteractiveComboSelector<IDisplayableObject> openSelector(final List<IDisplayableObject> objectsToDisplay)
{
final InteractiveComboSelector<IDisplayableObject>[] selector = new InteractiveComboSelector[1];
testShell = createTestShell();
@@ -81,7 +81,7 @@
final InteractiveComboSelector<IDisplayableObject> selector = openSelector(objectsSet);
assertTrue("Combo should be enabled", comboTester.getEnabled(getCombo()));
- setSelectorInput(selector, new HashSet<IDisplayableObject>());
+ setSelectorInput(selector, new ArrayList<IDisplayableObject>());
assertFalse("Combo should be disabled", comboTester.getEnabled(getCombo()));
setSelectorInput(selector, objectsSet);
@@ -103,7 +103,7 @@
return (Combo) FINDER.find(new SiblingTextMatcher(COMBO_LABEL, null, Combo.class));
}
- private void setSelectorInput(final InteractiveComboSelector<IDisplayableObject> selector, final Set<IDisplayableObject> input)
+ private void setSelectorInput(final InteractiveComboSelector<IDisplayableObject> selector, final List<IDisplayableObject> input)
{
getDisplay().syncExec(new Runnable()
{
diff --git a/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/SearchConsoleTestFixture.java b/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/SearchConsoleTestFixture.java
index d028dcd..73eddc8 100644
--- a/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/SearchConsoleTestFixture.java
+++ b/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/SearchConsoleTestFixture.java
@@ -10,9 +10,12 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.test.comp.internal;
+import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
+import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -61,13 +64,18 @@
protected IObjectTypeDescription objectType1;
protected IObjectTypeDescription objectType2;
- protected IObjectTypeDescription objectType3;
+ protected IObjectTypeDescription objectType3;
+ protected IObjectTypeDescription objectTypeNoDestinations;
+
protected final String OBJECT_TYPE_ID1 = "org.eclipse.platform.discovery.objecttype1";
protected final String OBJECT_TYPE_ID2 = "org.eclipse.platform.discovery.objecttype2";
- protected final String OBJECT_TYPE_ID3 = "org.eclipse.platform.discovery.objecttype3";
+ protected final String OBJECT_TYPE_ID3 = "org.eclipse.platform.discovery.objecttype3";
+ protected final String OBJECT_TYPE_NO_DESTINATIONS_ID = "org.eclipse.platform.discovery.nodestinations_objecttype";
protected final String OBJECT_TYPE_NAME_1 = "First object type";
protected final String OBJECT_TYPE_NAME_2 = "Second object type";
- protected final String OBJECT_TYPE_NAME_3 = "Third object type";
+ protected final String OBJECT_TYPE_NAME_3 = "Third object type";
+ protected final String OBJECT_TYPE_NO_DESTINATIONS_NAME = "Destination-less object type";
+
protected IDestinationsProviderDescription destProviderDescr_cat1;
protected IDestinationsProviderDescription destProviderDescr_cat2;
@@ -105,11 +113,15 @@
protected Map<ISearchSubdestination, Boolean> subdestinationsActivityMap;
protected ISearchProviderDescription supportingTextSearchProviderDescription;
- protected ISearchProviderDescription unsupportingTextSearchProviderDescription;
+ protected ISearchProviderDescription unsupportingTextSearchProviderDescription;
+ protected ISearchProviderDescription searchProviderForObjTypeWithNoDestinations_Description;
protected final static String SUPPORTING_TEXT_SEARCH_SEARCH_PROVIDER_ID = "SUPPORTING_TEXT_SEARCH_SEARCH_PROVIDER_ID";
- protected final static String UNSUPPORTING_TEXT_SEARCH_SEARCH_PROVIDER_ID = "UNSUPPORTING_TEXT_SEARCH_SEARCH_PROVIDER_ID";
+ protected final static String UNSUPPORTING_TEXT_SEARCH_SEARCH_PROVIDER_ID = "UNSUPPORTING_TEXT_SEARCH_SEARCH_PROVIDER_ID";
+ protected final static String SEARCH_PROVIDER_NO_DESTINATIONS_ID = "SEARCH_PROVIDER_NO_DESTINATIONS_ID";
+
protected ISearchProvider supportingTextSearchProviderInstance;
- protected ISearchProvider unsupportingTextSearchProviderInstance;
+ protected ISearchProvider unsupportingTextSearchProviderInstance;
+ protected ISearchProvider searchProviderForObjTypeWithNoDestinations_Instance;
protected ISearchProviderConfiguration searchProviderConfiguration;
@@ -180,9 +192,13 @@
objectType3 = createThreadSafeNiceMock(IObjectTypeDescription.class);
EasyMock.expect(objectType3.getId()).andStubReturn(OBJECT_TYPE_ID3);
- EasyMock.expect(objectType3.getDisplayName()).andStubReturn(OBJECT_TYPE_NAME_3);
+ EasyMock.expect(objectType3.getDisplayName()).andStubReturn(OBJECT_TYPE_NAME_3);
+
+ objectTypeNoDestinations = createThreadSafeNiceMock(IObjectTypeDescription.class);
+ EasyMock.expect(objectTypeNoDestinations.getId()).andStubReturn(OBJECT_TYPE_NO_DESTINATIONS_ID);
+ EasyMock.expect(objectTypeNoDestinations.getDisplayName()).andStubReturn(OBJECT_TYPE_NO_DESTINATIONS_NAME);
- EasyMock.replay(objectType1, objectType2, objectType3);
+ EasyMock.replay(objectType1, objectType2, objectType3, objectTypeNoDestinations);
}
private void setupDestinations()
@@ -244,14 +260,24 @@
public ISearchProviderDescription getActiveSearchProvider(IObjectTypeDescription objectType,
IDestinationCategoryDescription destinationCategory) throws ProviderNotFoundException
- {
+ {
+ if (destinationCategory==null)
+ {
+ if(objectType.getId().equals(objectTypeNoDestinations.getId())) {
+ return searchProviderForObjTypeWithNoDestinations_Description;
+ }else{
+ throw new ProviderNotFoundException("Provider not found");
+ }
+ }
if (objectType.getId().equals(objectType2.getId()) && (destinationCategory.getId().equals(CATEGORY_ID_2)))
{
return supportingTextSearchProviderDescription;
- } else if (objectType.getId().equals(objectType1.getId()) && (destinationCategory.getId().equals(CATEGORY_ID_1)))
+ }
+ if (objectType.getId().equals(objectType1.getId()) && (destinationCategory.getId().equals(CATEGORY_ID_1)))
{
return unsupportingTextSearchProviderDescription;
- }else if (objectType.getId().equals(objectType3.getId()) && (destinationCategory.getId().equals(CATEGORY_ID_3)))
+ }
+ if (objectType.getId().equals(objectType3.getId()) && (destinationCategory.getId().equals(CATEGORY_ID_3)))
{
return supportingTextSearchProviderDescription;
}
@@ -259,47 +285,49 @@
throw new ProviderNotFoundException("Provider not found");
}
- public Set<IDestinationCategoryDescription> getAvailableDestinationCategoriesForObjectType(IObjectTypeDescription objectType)
+ public List<IDestinationCategoryDescription> getAvailableDestinationCategoriesForObjectType(IObjectTypeDescription objectType)
{
if (objectType.getId().equals(objectType1.getId()))
{
- return new HashSet<IDestinationCategoryDescription>(Arrays.asList(new IDestinationCategoryDescription[] { category1 }));
+ return Arrays.asList(new IDestinationCategoryDescription[] { category1 });
} else if (objectType.getId().equals(objectType2.getId()))
{
- return new HashSet<IDestinationCategoryDescription>(Arrays.asList(new IDestinationCategoryDescription[] { category2 }));
- } else
+ return Arrays.asList(new IDestinationCategoryDescription[] { category2 });
+ } else if (objectType.getId().equals(objectType3.getId()))
{
- return new HashSet<IDestinationCategoryDescription>(Arrays.asList(new IDestinationCategoryDescription[] { category3 }));
- }
+ return Arrays.asList(new IDestinationCategoryDescription[] { category3 });
+ }
+
+ return Collections.emptyList();
}
- public Set<ISearchSubdestination> getAvailableSearchSubdestinations(IObjectTypeDescription objectType,
+ public List<ISearchSubdestination> getAvailableSearchSubdestinations(IObjectTypeDescription objectType,
IDestinationCategoryDescription destinationCategory, ISearchProviderDescription searchProvider)
{
if (objectType.getId().equals(OBJECT_TYPE_ID1))
{
- return new HashSet<ISearchSubdestination>(Arrays.asList(subdestination1, subdestination2));
+ return Arrays.asList(subdestination1, subdestination2);
}
- return new HashSet<ISearchSubdestination>();
+ return new ArrayList<ISearchSubdestination>();
}
- public Set<IDestinationCategoryDescription> getDestinationCategories()
+ public List<IDestinationCategoryDescription> getDestinationCategories()
{
- return new HashSet<IDestinationCategoryDescription>(Arrays.asList(new IDestinationCategoryDescription[] { category1, category2 ,category3}));
+ return Arrays.asList(new IDestinationCategoryDescription[] { category1, category2 ,category3});
}
- public Set<IDestinationCategoryDescription> getDestinationCategoriesForDestination(ISearchDestination destination)
+ public List<IDestinationCategoryDescription> getDestinationCategoriesForDestination(ISearchDestination destination)
throws DestinationCategoryNotFoundException
{
if (destination.equals(destination1))
{
- return new HashSet<IDestinationCategoryDescription>(Arrays.asList(new IDestinationCategoryDescription[] { category1 }));
+ return Arrays.asList(new IDestinationCategoryDescription[] { category1 });
} if (destination.equals(destination5))
{
- return new HashSet<IDestinationCategoryDescription>(Arrays.asList(new IDestinationCategoryDescription[] { category3 }));
+ return Arrays.asList(new IDestinationCategoryDescription[] { category3 });
}else
{
- return new HashSet<IDestinationCategoryDescription>(Arrays.asList(new IDestinationCategoryDescription[] { category2 }));
+ return Arrays.asList(new IDestinationCategoryDescription[] { category2 });
}
}
@@ -309,40 +337,40 @@
return subdestinationsActivityMap.get(subdestination);
}
- public Set<ISearchProviderDescription> getAvailableSearchProviderDescriptions(IObjectTypeDescription searchObjectType)
+ public List<ISearchProviderDescription> getAvailableSearchProviderDescriptions(IObjectTypeDescription searchObjectType)
{
fail("Unexpected invocation");
return null;
}
- public Set<IObjectTypeDescription> getObjectTypes()
+ public List<IObjectTypeDescription> getObjectTypes()
{
- return new HashSet<IObjectTypeDescription>(Arrays.asList(new IObjectTypeDescription[] { objectType1, objectType2, objectType3 }));
+ return Arrays.asList(new IObjectTypeDescription[] { objectType1, objectType2, objectType3, objectTypeNoDestinations });
}
- public Set<IDestinationsProviderDescription> getDestinationProvidersForCategory(IDestinationCategoryDescription category)
+ public List<IDestinationsProviderDescription> getDestinationProvidersForCategory(IDestinationCategoryDescription category)
{
if (category.equals(category1))
{
- return new HashSet<IDestinationsProviderDescription>(Arrays.asList(new IDestinationsProviderDescription[]{destProviderDescr_cat1}));
+ return Arrays.asList(new IDestinationsProviderDescription[]{destProviderDescr_cat1});
} if (category.equals(category2))
{
- return new HashSet<IDestinationsProviderDescription>(Arrays.asList(new IDestinationsProviderDescription[]{destProviderDescr_cat2}));
+ return Arrays.asList(new IDestinationsProviderDescription[]{destProviderDescr_cat2});
}else
{
- return new HashSet<IDestinationsProviderDescription>(Arrays.asList(new IDestinationsProviderDescription[]{destProviderDescr_cat3}));
+ return Arrays.asList(new IDestinationsProviderDescription[]{destProviderDescr_cat3});
}
}
- public Set<ISearchDestination> getSearchDestinations(IDestinationCategoryDescription category,
+ public List<ISearchDestination> getSearchDestinations(IDestinationCategoryDescription category,
IDestinationsProvider providerDescription)
{
- return providerDescription.getSearchDestinations();
+ return new ArrayList<ISearchDestination>(providerDescription.getSearchDestinations());
}
- public Set<IDestinationsProviderDescription> getAvailableDestinationProviders()
+ public List<IDestinationsProviderDescription> getAvailableDestinationProviders()
{
- return new HashSet<IDestinationsProviderDescription>(Arrays.asList(new IDestinationsProviderDescription[]{destProviderDescr_cat1, destProviderDescr_cat2, destProviderDescr_cat3}));
+ return Arrays.asList(new IDestinationsProviderDescription[]{destProviderDescr_cat1, destProviderDescr_cat2, destProviderDescr_cat3});
}
};
}
@@ -363,9 +391,13 @@
EasyMock.expect(supportingTextSearchProviderInstance.getGroupingHierarchies((ISearchDestination)EasyMock.anyObject(), (Set)EasyMock.anyObject())).andStubReturn(h);
unsupportingTextSearchProviderInstance = EasyMock.createMock(ISearchProvider.class);
- EasyMock.expect(unsupportingTextSearchProviderInstance.getGroupingHierarchies((ISearchDestination)EasyMock.anyObject(), (Set)EasyMock.anyObject())).andStubReturn(new HashSet<GroupingHierarchy>());
+ EasyMock.expect(unsupportingTextSearchProviderInstance.getGroupingHierarchies((ISearchDestination)EasyMock.anyObject(), (Set)EasyMock.anyObject())).andStubReturn(new HashSet<GroupingHierarchy>());
+
+ searchProviderForObjTypeWithNoDestinations_Instance = EasyMock.createMock(ISearchProvider.class);
+ EasyMock.expect(searchProviderForObjTypeWithNoDestinations_Instance.getGroupingHierarchies((ISearchDestination)EasyMock.anyObject(), (Set)EasyMock.anyObject())).andStubReturn(new HashSet<GroupingHierarchy>());
- EasyMock.replay(supportingTextSearchProviderInstance, unsupportingTextSearchProviderInstance);
+ EasyMock.replay(supportingTextSearchProviderInstance, unsupportingTextSearchProviderInstance, searchProviderForObjTypeWithNoDestinations_Instance);
+
}
private void setupProviderDescriptions()
@@ -373,33 +405,53 @@
supportingTextSearchProviderDescription = createThreadSafeNiceMock(ISearchProviderDescription.class);
EasyMock.expect(supportingTextSearchProviderDescription.supportsTextSearch()).andStubReturn(true);
EasyMock.expect(supportingTextSearchProviderDescription.getId()).andStubReturn(SUPPORTING_TEXT_SEARCH_SEARCH_PROVIDER_ID);
- EasyMock.expect(supportingTextSearchProviderDescription.createInstance()).andStubReturn(supportingTextSearchProviderInstance);
+ EasyMock.expect(supportingTextSearchProviderDescription.createInstance()).andStubReturn(supportingTextSearchProviderInstance);
+ EasyMock.expect(supportingTextSearchProviderDescription.getSupportedDestinationCategories()).andStubReturn(
+ new HashSet<IDestinationCategoryDescription>(Arrays.asList(category2, category3)));
+
unsupportingTextSearchProviderDescription = createThreadSafeNiceMock(ISearchProviderDescription.class);
EasyMock.expect(unsupportingTextSearchProviderDescription.supportsTextSearch()).andStubReturn(false);
EasyMock.expect(unsupportingTextSearchProviderDescription.getId()).andStubReturn(UNSUPPORTING_TEXT_SEARCH_SEARCH_PROVIDER_ID);
- EasyMock.expect(unsupportingTextSearchProviderDescription.createInstance()).andStubReturn(unsupportingTextSearchProviderInstance);
+ EasyMock.expect(unsupportingTextSearchProviderDescription.createInstance()).andStubReturn(unsupportingTextSearchProviderInstance);
+ EasyMock.expect(supportingTextSearchProviderDescription.getSupportedDestinationCategories()).andStubReturn(
+ new HashSet<IDestinationCategoryDescription>(Arrays.asList(category1)));
+
+ searchProviderForObjTypeWithNoDestinations_Description = createThreadSafeNiceMock(ISearchProviderDescription.class);
+ EasyMock.expect(searchProviderForObjTypeWithNoDestinations_Description.supportsTextSearch()).andStubReturn(true);
+ EasyMock.expect(searchProviderForObjTypeWithNoDestinations_Description.getId()).andStubReturn(SEARCH_PROVIDER_NO_DESTINATIONS_ID);
+ EasyMock.expect(searchProviderForObjTypeWithNoDestinations_Description.createInstance()).andStubReturn(searchProviderForObjTypeWithNoDestinations_Instance);
+ EasyMock.expect(searchProviderForObjTypeWithNoDestinations_Description.getSupportedDestinationCategories()).andStubReturn(new HashSet<IDestinationCategoryDescription>());
- EasyMock.replay(supportingTextSearchProviderDescription, unsupportingTextSearchProviderDescription);
+
+ EasyMock.replay(supportingTextSearchProviderDescription, unsupportingTextSearchProviderDescription, searchProviderForObjTypeWithNoDestinations_Description);
}
private void setupDestinationCategories()
{
category1 = createThreadSafeNiceMock(IDestinationCategoryDescription.class);
EasyMock.expect(category1.getId()).andStubReturn(CATEGORY_ID_1);
- EasyMock.expect(category1.getDisplayName()).andStubReturn(CATEGORY_NAME_1);
-
+ EasyMock.expect(category1.getDisplayName()).andStubReturn(CATEGORY_NAME_1);
+ EasyMock.expect(category1.getDestinationProviderIds()).andStubReturn(list(UNSUPPORTING_TEXT_SEARCH_SEARCH_PROVIDER_ID));
+
category2 = createThreadSafeNiceMock(IDestinationCategoryDescription.class);
EasyMock.expect(category2.getId()).andStubReturn(CATEGORY_ID_2);
- EasyMock.expect(category2.getDisplayName()).andStubReturn(CATEGORY_NAME_2);
+ EasyMock.expect(category2.getDisplayName()).andStubReturn(CATEGORY_NAME_2);
+ EasyMock.expect(category2.getDestinationProviderIds()).andStubReturn(list(SUPPORTING_TEXT_SEARCH_SEARCH_PROVIDER_ID));
category3 = createThreadSafeNiceMock(IDestinationCategoryDescription.class);
EasyMock.expect(category3.getId()).andStubReturn(CATEGORY_ID_3);
- EasyMock.expect(category3.getDisplayName()).andStubReturn(CATEGORY_NAME_3);
+ EasyMock.expect(category3.getDisplayName()).andStubReturn(CATEGORY_NAME_3);
+ EasyMock.expect(category3.getDestinationProviderIds()).andStubReturn(list(SUPPORTING_TEXT_SEARCH_SEARCH_PROVIDER_ID));
EasyMock.replay(category1, category2, category3);
}
+ private List<String> list(String... strings) {
+ return Arrays.asList(strings);
+ }
+
+
protected void selectFirstPossibleDestination(final Tree destinationsTree)
{
final TreeItem[] treeItems = treeTester.getItems(destinationsTree);
diff --git a/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/SearchConsoleViewTest.java b/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/SearchConsoleViewTest.java
index 5865ab7..bfa2a3d 100644
--- a/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/SearchConsoleViewTest.java
+++ b/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/SearchConsoleViewTest.java
@@ -10,7 +10,6 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.test.comp.internal;
-import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
@@ -108,18 +107,6 @@
return getDisplay();
}
- public void testViewShowsAllObjectTypesOnStartup() throws NotFoundException, MultipleFoundException
- {
- createViewToTest();
-
- final Combo comboValues = getObjectTypesCombo();
- final java.util.List<String> items = Arrays.asList(comboTester.getItems(comboValues));
- assertEquals("Three items expected", 3, items.size()); //$NON-NLS-1$
- assertTrue("Object " + OBJECT_TYPE_NAME_1 + " not found", items.contains(OBJECT_TYPE_NAME_1)); //$NON-NLS-1$ //$NON-NLS-2$
- assertTrue("Object " + OBJECT_TYPE_NAME_2 + " not found", items.contains(OBJECT_TYPE_NAME_2)); //$NON-NLS-1$ //$NON-NLS-2$
- assertTrue("Object " + OBJECT_TYPE_NAME_3 + " not found", items.contains(OBJECT_TYPE_NAME_3)); //$NON-NLS-1$ //$NON-NLS-2$
- }
-
public void testSelectingObjectsChangesDestinations() throws NotFoundException, MultipleFoundException
{
createViewToTest();
@@ -306,8 +293,8 @@
final Tree destinationsTree = getDestinationCategoriesTree();
final Text keywordsText = getKeywordsSearchText();
- // By default, there is nothing selected, the keyword text is set to DiscoveryUIMessages.SearchConsoleView_NoDestinationSelectedHint when the current search provider does not support text search
- assertEquals("The keyword text should be set to \"" + DiscoveryUIMessages.SearchConsoleView_NoDestinationSelectedHint + "\" when disabled", DiscoveryUIMessages.SearchConsoleView_NoDestinationSelectedHint, textTester.getText(keywordsText)); //$NON-NLS-1$ //$NON-NLS-2$
+ // By default, there is nothing selected, the keyword text is set to SearchConsoleView_NoObjectTypeSelectedHint
+ assertEquals("The keyword text should be set to \"" + DiscoveryUIMessages.SearchConsoleView_NoObjectTypeSelectedHint + "\" when disabled", DiscoveryUIMessages.SearchConsoleView_NoObjectTypeSelectedHint, textTester.getText(keywordsText)); //$NON-NLS-1$ //$NON-NLS-2$
assertFalse("Keywords text should not be enabled", isEnabled(keywordsText)); //$NON-NLS-1$
// Select object 3
@@ -482,8 +469,40 @@
catch (Exception e) {
fail("Unexpexted exception was thrown: "+e.getMessage()); //$NON-NLS-1$
}
- }
-
+ }
+
+ public void testObjectTypeWithNoDestinations() throws NotFoundException, MultipleFoundException
+ {
+ createViewToTest();
+ final Combo objectTypesCombo = getObjectTypesCombo();
+ comboTester.actionSelectItem(objectTypesCombo, OBJECT_TYPE_NO_DESTINATIONS_NAME);
+ Text keywordSearchText = getKeywordsSearchText();
+ assertTrue("keyword text should be enabled", textTester.isEnabled(keywordSearchText));
+ assertEquals("did not expect a search criteria", "", textTester.getText(keywordSearchText));
+ assertTrue("keyword text should be editable", textTester.getEditable(keywordSearchText));
+ assertFalse("Search should be disabled because there is no search criteria", buttonTester.isEnabled(getSearchButton()));
+
+ textTester.actionKeyString(getKeywordsSearchText(), "asd");
+ assertTrue("Search should be enabled because search criteria was provided", buttonTester.isEnabled(getSearchButton()));
+ }
+
+ public void testRegisteringIllegalViewCustomization()
+ {
+ createViewToTest();
+
+ final IGenericViewCustomization illegalCustomization = EasyMock.createMock(IGenericViewCustomization.class);
+ try
+ {
+ testView.registerViewCustomization(illegalCustomization);
+ fail("IllegalArgumentException for illegal customization"); //$NON-NLS-1$
+ }
+ catch(IllegalArgumentException e)
+ {
+ //expected
+ }
+ }
+
+
private Hyperlink findManageDestinationsLink()
{
final Hyperlink[] result = new Hyperlink[1];
@@ -514,22 +533,6 @@
return result[0];
}
- public void testRegisteringIllegalViewCustomization()
- {
- createViewToTest();
-
- final IGenericViewCustomization illegalCustomization = EasyMock.createMock(IGenericViewCustomization.class);
- try
- {
- testView.registerViewCustomization(illegalCustomization);
- fail("IllegalArgumentException for illegal customization"); //$NON-NLS-1$
- }
- catch(IllegalArgumentException e)
- {
- //expected
- }
- }
-
private MyConsoleView createTestView()
{
final MyConsoleView[] v = new MyConsoleView[1];
diff --git a/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/SearchDestinationsSelectorTest.java b/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/SearchDestinationsSelectorTest.java
index 924d191..51792ac 100644
--- a/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/SearchDestinationsSelectorTest.java
+++ b/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/SearchDestinationsSelectorTest.java
@@ -36,14 +36,14 @@
public class SearchDestinationsSelectorTest extends SearchConsoleTestFixture
{
- private Set<ISearchDestination> destinationsToShow;
+ private List<ISearchDestination> destinationsToShow;
@Override
public Display setUpPDE() throws Exception
{
super.setUpPDE();
- destinationsToShow = new HashSet<ISearchDestination>();
+ destinationsToShow = new ArrayList<ISearchDestination>();
destinationsToShow.add(destination1);
return getDisplay();
}
@@ -64,18 +64,19 @@
}
@Override
- protected Set<ISearchDestination> getSearchDestinations(IDestinationCategoryDescription category,
+ protected List<ISearchDestination> getSearchDestinations(IDestinationCategoryDescription category,
IDestinationsProvider destinationsProvider)
{
return destinationsToShow;
- }
-
- public void handleSelectionChange(Set<ISearchDestination> newSelection)
- {
+ }
+
+ @Override
+ public void handleSelectionChange(ISearchDestination newSelection) {
+
}
};
- selector.setInput(new HashSet<IDestinationCategoryDescription>(Arrays.asList(new IDestinationCategoryDescription[]{category1})));
+ selector.setInput(Arrays.asList(new IDestinationCategoryDescription[]{category1}));
return selector;
}
@@ -170,17 +171,16 @@
}
});
- final List<ISearchDestination> selectedDestinations = new ArrayList<ISearchDestination>();
+ final ISearchDestination[] selectedDestination = new ISearchDestination[1];
getDisplay().syncExec(new Runnable()
{
@Override
public void run()
{
- selectedDestinations.addAll(selector.getSelectedItems());
+ selectedDestination[0] = selector.getSelectedItem();
}
});
- assertEquals("One selected item expected", 1, selectedDestinations.size());
- assertTrue("Destination 2 is not selected after update", selectedDestinations.contains(destination2));
+ assertSame("Destination 2 is not selected after update", destination2, selectedDestination[0]);
}
private List<String> getTreeItemNames(final TreeItem[] items)
diff --git a/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/SubdestinationsSelectedListenerTest.java b/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/SubdestinationsSelectedListenerTest.java
index 0aebe28..97d1fb4 100644
--- a/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/SubdestinationsSelectedListenerTest.java
+++ b/tests/org.eclipse.platform.discovery.ui.test.comp/src/org/eclipse/platform/discovery/ui/test/comp/internal/SubdestinationsSelectedListenerTest.java
@@ -11,8 +11,7 @@
package org.eclipse.platform.discovery.ui.test.comp.internal;
import java.util.Arrays;
-import java.util.HashSet;
-import java.util.Set;
+import java.util.List;
import org.easymock.EasyMock;
import org.easymock.IAnswer;
@@ -160,7 +159,7 @@
searchProviderDescription = EasyMock.createNiceMock(ISearchProviderDescription.class);
providerConfiguration = EasyMock.createNiceMock(ISearchProviderConfiguration.class);
- final Set<ISearchSubdestination> subDestinations = new HashSet<ISearchSubdestination>(Arrays.asList(new ISearchSubdestination[] { subDestination_1, subDestination_2, subDestination_3 }));
+ final List<ISearchSubdestination> subDestinations = Arrays.asList(new ISearchSubdestination[] { subDestination_1, subDestination_2, subDestination_3 });
EasyMock.expect(providerConfiguration.getAvailableSearchSubdestinations(searchObjectType, destinationCategory, searchProviderDescription)).andStubReturn(subDestinations);
EasyMock.replay(searchProviderDescription);
diff --git a/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/AdvancedSearchParamsUiContribXpParserTest.java b/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/AdvancedSearchParamsUiContribXpParserTest.java
index d8e9e6a..c5cda61 100644
--- a/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/AdvancedSearchParamsUiContribXpParserTest.java
+++ b/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/AdvancedSearchParamsUiContribXpParserTest.java
@@ -10,13 +10,13 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.test.unit.internal;
-import java.util.Set;
-
-import org.eclipse.platform.discovery.runtime.internal.xp.IGenericXpParser;
-import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
-import org.eclipse.platform.discovery.ui.api.IAdvancedSearchParamsUiContributor;
+import java.util.List;
+
+import org.eclipse.platform.discovery.runtime.internal.xp.IGenericXpParser;
+import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
+import org.eclipse.platform.discovery.ui.api.IAdvancedSearchParamsUiContributor;
import org.eclipse.platform.discovery.ui.internal.search.advancedparams.IAdvancedSearchParamsUiContributorDescr;
-import org.eclipse.platform.discovery.ui.internal.xp.impl.AdvancedSearchParamsUiContribXpParser;
+import org.eclipse.platform.discovery.ui.internal.xp.impl.AdvancedSearchParamsUiContribXpParser;
public class AdvancedSearchParamsUiContribXpParserTest extends XpParsersFixture
@@ -51,7 +51,7 @@
public void testReadContributors()
{
- final Set<IAdvancedSearchParamsUiContributorDescr> result = parser.readContributions();
+ final List<IAdvancedSearchParamsUiContributorDescr> result = parser.readContributions();
assertEquals("One contributor expected", 1, result.size());
final IAdvancedSearchParamsUiContributorDescr contributorDescr = result.iterator().next();
assertEquals("Unexpected id", CONTRIBUTOR_ID, contributorDescr.getId());
diff --git a/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/CustomResultUiXpParserTest.java b/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/CustomResultUiXpParserTest.java
index 669da04..effaf56 100644
--- a/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/CustomResultUiXpParserTest.java
+++ b/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/CustomResultUiXpParserTest.java
@@ -10,14 +10,14 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.test.unit.internal;
-import java.util.Set;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.platform.discovery.runtime.internal.xp.IGenericXpParser;
-import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
-import org.eclipse.platform.discovery.ui.api.ISearchResultCustomUiCreator;
-import org.eclipse.platform.discovery.ui.internal.selector.ICustomResultUiContributorDescription;
-import org.eclipse.platform.discovery.ui.internal.xp.impl.CustomResultUiXpParser;
+import java.util.List;
+
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.platform.discovery.runtime.internal.xp.IGenericXpParser;
+import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
+import org.eclipse.platform.discovery.ui.api.ISearchResultCustomUiCreator;
+import org.eclipse.platform.discovery.ui.internal.selector.ICustomResultUiContributorDescription;
+import org.eclipse.platform.discovery.ui.internal.xp.impl.CustomResultUiXpParser;
public class CustomResultUiXpParserTest extends XpParsersFixture
@@ -58,7 +58,7 @@
public void testReadContributors()
{
- final Set<ICustomResultUiContributorDescription> result = parser.readContributions();
+ final List<ICustomResultUiContributorDescription> result = parser.readContributions();
assertEquals("One contributor expected", 1, result.size());
final ICustomResultUiContributorDescription contributorDescr = result.iterator().next();
assertEquals("Unexpected id", CONTRIBUTOR_ID, contributorDescr.getId());
diff --git a/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/DestinationsContentProviderTest.java b/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/DestinationsContentProviderTest.java
index c24cc45..3d09621 100644
--- a/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/DestinationsContentProviderTest.java
+++ b/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/DestinationsContentProviderTest.java
@@ -10,17 +10,15 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.test.unit.internal;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.platform.discovery.runtime.api.ISearchDestination;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
-import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
-import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
-import org.eclipse.platform.discovery.ui.internal.view.impl.DestinationsContentProvider;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
+import org.eclipse.platform.discovery.runtime.api.ISearchDestination;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
+import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
+import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
+import org.eclipse.platform.discovery.ui.internal.view.impl.DestinationsContentProvider;
public class DestinationsContentProviderTest extends MockObjectTestCase
@@ -49,7 +47,7 @@
contentProvider = new DestinationsContentProvider(){
@Override
- protected Set<ISearchDestination> getSearchDestinationsForCategory(IDestinationCategoryDescription category)
+ protected List<ISearchDestination> getSearchDestinationsForCategory(IDestinationCategoryDescription category)
{
return getMockedDestinationForCategory(category);
}};
@@ -75,9 +73,9 @@
destination_3.stubs().method("getDisplayName").will(returnValue(DESTINATION_NAME_3));
}
- private Set<ISearchDestination> getMockedDestinationForCategory(final IDestinationCategoryDescription category)
+ private List<ISearchDestination> getMockedDestinationForCategory(final IDestinationCategoryDescription category)
{
- final Set<ISearchDestination> result = new HashSet<ISearchDestination>();
+ final List<ISearchDestination> result = new ArrayList<ISearchDestination>();
if(category.getId().equals(CATEGORY_ID_1))
{
result.add(destination_1.proxy());
@@ -134,7 +132,7 @@
public void testGetElements()
{
- final Set<IDestinationCategoryDescription> categories = new HashSet<IDestinationCategoryDescription>(Arrays.asList(new IDestinationCategoryDescription[]{category_1.proxy(), category_2.proxy()}));
+ final List<IDestinationCategoryDescription> categories = Arrays.asList(new IDestinationCategoryDescription[]{category_1.proxy(), category_2.proxy()});
final Object[] elements = contentProvider.getElements(categories);
assertEquals("Two elements expected", 2, elements.length);
final List<String> elementIds = new ArrayList<String>();
diff --git a/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/FavoritesContentProviderTest.java b/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/FavoritesContentProviderTest.java
index f05f27c..9d362e3 100644
--- a/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/FavoritesContentProviderTest.java
+++ b/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/FavoritesContentProviderTest.java
@@ -58,7 +58,7 @@
setupViewCustomization();
- testedProvider = new FavoritesContentProvider(new HashSet<IGenericViewCustomization>(Arrays.asList(new IGenericViewCustomization[] { viewCust })))
+ testedProvider = new FavoritesContentProvider(Arrays.asList(new IGenericViewCustomization[] { viewCust }))
{
@Override
protected ILogger logger()
@@ -167,7 +167,7 @@
throw new IllegalArgumentException("Unexpected favorites item");
}
};
- testedProvider = new FavoritesContentProvider(new HashSet<IGenericViewCustomization>(Arrays.asList(new IGenericViewCustomization[] { viewCust })))
+ testedProvider = new FavoritesContentProvider(Arrays.asList(new IGenericViewCustomization[] { viewCust }))
{
@Override
protected ILogger logger()
diff --git a/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/GenericResultContentProviderTest.java b/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/GenericResultContentProviderTest.java
index bfa3f89..c7a08e8 100644
--- a/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/GenericResultContentProviderTest.java
+++ b/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/GenericResultContentProviderTest.java
@@ -10,6 +10,7 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.test.unit.internal;
+import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
@@ -57,7 +58,7 @@
setupContentProviders();
setupCustomizations();
- testedProvider = new GenericResultContentProvider(customizations);
+ testedProvider = new GenericResultContentProvider(new ArrayList<IGenericViewCustomization>(customizations));
}
private void setupCustomizations()
diff --git a/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/GenericResultLabelProviderTest.java b/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/GenericResultLabelProviderTest.java
index ea454fe..d9a1b90 100644
--- a/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/GenericResultLabelProviderTest.java
+++ b/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/GenericResultLabelProviderTest.java
@@ -10,6 +10,7 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.test.unit.internal;
+import java.util.ArrayList;
import java.util.HashSet;
import java.util.Set;
@@ -60,7 +61,7 @@
setupTooltipProviders();
setupCustomizations();
- testedProvider = new GenericResultLabelProvider(customizations);
+ testedProvider = new GenericResultLabelProvider(new ArrayList<IGenericViewCustomization>(customizations));
}
private void setupImages()
diff --git a/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/SearchConsoleDestinationsSelectorTest.java b/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/SearchConsoleDestinationsSelectorTest.java
index 83a8835..94f6a67 100644
--- a/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/SearchConsoleDestinationsSelectorTest.java
+++ b/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/SearchConsoleDestinationsSelectorTest.java
@@ -10,24 +10,24 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.test.unit.internal;
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.platform.discovery.core.internal.selectors.IStatefulItemsSelector;
-import org.eclipse.platform.discovery.runtime.api.IDestinationChangeHandler;
-import org.eclipse.platform.discovery.runtime.api.IDestinationsProvider;
-import org.eclipse.platform.discovery.runtime.api.ISearchDestination;
-import org.eclipse.platform.discovery.runtime.internal.ISearchProviderConfiguration;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationsProviderDescription;
-import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
-import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
-import org.eclipse.platform.discovery.ui.internal.view.impl.SearchConsoleDestinationsSelector;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.forms.widgets.FormToolkit;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
+import org.eclipse.platform.discovery.core.internal.selectors.IItemSelector;
+import org.eclipse.platform.discovery.runtime.api.IDestinationChangeHandler;
+import org.eclipse.platform.discovery.runtime.api.IDestinationsProvider;
+import org.eclipse.platform.discovery.runtime.api.ISearchDestination;
+import org.eclipse.platform.discovery.runtime.internal.ISearchProviderConfiguration;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationCategoryDescription;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IDestinationsProviderDescription;
+import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
+import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
+import org.eclipse.platform.discovery.ui.internal.view.impl.SearchConsoleDestinationsSelector;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.forms.widgets.FormToolkit;
public class SearchConsoleDestinationsSelectorTest extends MockObjectTestCase
@@ -37,7 +37,7 @@
private Mock<IDestinationChangeHandler> destinationsChangeHandler;
private FormToolkit formToolkit;
private Composite parentComposite;
- private Mock<IStatefulItemsSelector<ISearchDestination, IDestinationCategoryDescription>> selectionChangeHandlerChecker;
+ private Mock<IItemSelector<ISearchDestination, IDestinationCategoryDescription>> selectionChangeHandlerChecker;
private Mock<IDestinationCategoryDescription> firstDestinationCategory;
private Mock<IDestinationsProviderDescription> firstDestProviderDescription;
private Mock<IDestinationsProvider> firstDestinationsProvider;
@@ -51,13 +51,15 @@
{
setupSearchProviderConfig();
destinationsChangeHandler = mock(IDestinationChangeHandler.class);
- selectionChangeHandlerChecker = mock(IStatefulItemsSelector.class);
+ selectionChangeHandlerChecker = mock(IItemSelector.class);
formToolkit = new FormToolkit(PlatformUI.getWorkbench().getDisplay());
- parentComposite = formToolkit.createComposite(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell());
+ parentComposite = formToolkit.createComposite(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell());
+
+
selector = new SearchConsoleDestinationsSelector(parentComposite, formToolkit, 10, new Composite(parentComposite, SWT.NONE), searchProviderConfig.proxy())
{
@Override
- public void handleSelectionChange(Set<ISearchDestination> newSelection)
+ public void handleSelectionChange(ISearchDestination newSelection)
{
selectionChangeHandlerChecker.proxy().handleSelectionChange(newSelection);
}
@@ -85,15 +87,15 @@
firstDestProviderDescription.stubs().method("createProvider").will(returnValue(firstDestinationsProvider.proxy()));
secondDestProviderDescription.stubs().method("createProvider").will(returnValue(secondDestinationsProvider.proxy()));
- final Set<IDestinationsProviderDescription> allDestProviders = new HashSet<IDestinationsProviderDescription>();
+ final List<IDestinationsProviderDescription> allDestProviders = new ArrayList<IDestinationsProviderDescription>();
allDestProviders.add(firstDestProviderDescription.proxy());
searchProviderConfig.stubs().method("getDestinationProvidersForCategory").with(eq(firstDestinationCategory.proxy())).will(returnValue(allDestProviders));
- final Set<IDestinationsProviderDescription> allDestProviders_2 = new HashSet<IDestinationsProviderDescription>();
+ final List<IDestinationsProviderDescription> allDestProviders_2 = new ArrayList<IDestinationsProviderDescription>();
allDestProviders_2.add(secondDestProviderDescription.proxy());
searchProviderConfig.stubs().method("getDestinationProvidersForCategory").with(eq(secondDestinationCategory.proxy())).will(returnValue(allDestProviders_2));
- final Set<ISearchDestination> allDestinations = new HashSet<ISearchDestination>();
+ final List<ISearchDestination> allDestinations = new ArrayList<ISearchDestination>();
allDestinations.add(searchDestination.proxy());
searchProviderConfig.stubs().method("getSearchDestinations").with(eq(firstDestinationCategory.proxy()), eq(firstDestinationsProvider.proxy())).will(returnValue(allDestinations));
searchProviderConfig.stubs().method("getSearchDestinations").with(eq(secondDestinationCategory.proxy()), eq(secondDestinationsProvider.proxy())).will(returnValue(allDestinations));
@@ -103,7 +105,7 @@
{
firstDestinationsProvider.expects(once()).method("registerDestinationsChangeHandler").with(same(destinationsChangeHandler.proxy()));
selectionChangeHandlerChecker.stubs().method("handleSelectionChange");
- selector.setInput(new HashSet<IDestinationCategoryDescription>(Arrays.asList(new IDestinationCategoryDescription[]{firstDestinationCategory.proxy()})));
+ selector.setInput(Arrays.asList(new IDestinationCategoryDescription[]{firstDestinationCategory.proxy()}));
}
public void testChangingInputUnregistersChangeHandler()
@@ -116,7 +118,7 @@
secondDestinationsProvider.expects(once()).method("registerDestinationsChangeHandler").with(same(destinationsChangeHandler.proxy()));
selectionChangeHandlerChecker.expects(once()).method("handleSelectionChange");
- selector.setInput(new HashSet<IDestinationCategoryDescription>(Arrays.asList(new IDestinationCategoryDescription[]{secondDestinationCategory.proxy()})));
+ selector.setInput(Arrays.asList(new IDestinationCategoryDescription[]{secondDestinationCategory.proxy()}));
}
public void testDisposeUnregistersListeners()
diff --git a/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/SearchConsoleSelectionProviderTest.java b/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/SearchConsoleSelectionProviderTest.java
index c1f7540..343f06a 100644
--- a/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/SearchConsoleSelectionProviderTest.java
+++ b/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/SearchConsoleSelectionProviderTest.java
@@ -10,21 +10,21 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.test.unit.internal;
-import java.lang.Thread.UncaughtExceptionHandler;
-import java.util.HashSet;
-import java.util.Set;
-
-import junit.framework.TestCase;
-
-import org.easymock.EasyMock;
-import org.easymock.IArgumentMatcher;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.platform.discovery.ui.api.IGenericViewCustomization;
-import org.eclipse.platform.discovery.ui.internal.view.impl.SearchConsoleSelectionProvider;
-import org.eclipse.platform.discovery.ui.internal.view.impl.SearchConsoleSelectionProvider.IViewCustomizationsObtainer;
+import java.lang.Thread.UncaughtExceptionHandler;
+import java.util.ArrayList;
+import java.util.List;
+
+import junit.framework.TestCase;
+
+import org.easymock.EasyMock;
+import org.easymock.IArgumentMatcher;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.platform.discovery.ui.api.IGenericViewCustomization;
+import org.eclipse.platform.discovery.ui.internal.view.impl.SearchConsoleSelectionProvider;
+import org.eclipse.platform.discovery.ui.internal.view.impl.SearchConsoleSelectionProvider.IViewCustomizationsObtainer;
public class SearchConsoleSelectionProviderTest extends TestCase
@@ -34,7 +34,7 @@
private ISelection selection;
private IViewCustomizationsObtainer custObtainer;
private IGenericViewCustomization viewCustomization;
- private Set<IGenericViewCustomization> allCustomizations;
+ private List<IGenericViewCustomization> allCustomizations;
@Override
protected void setUp() throws Exception
@@ -42,7 +42,7 @@
selectionListener = EasyMock.createMock(ISelectionChangedListener.class);
viewCustomization = EasyMock.createMock(IGenericViewCustomization.class);
custObtainer = EasyMock.createMock(IViewCustomizationsObtainer.class);
- allCustomizations = new HashSet<IGenericViewCustomization>();
+ allCustomizations = new ArrayList<IGenericViewCustomization>();
EasyMock.expect(custObtainer.viewCustomizations()).andStubReturn(allCustomizations);
EasyMock.replay(custObtainer);
selProvider = new SearchConsoleSelectionProvider(custObtainer);
diff --git a/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/SearchFavoritesItemsAdderTest.java b/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/SearchFavoritesItemsAdderTest.java
index 71a0192..5ea85d3 100644
--- a/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/SearchFavoritesItemsAdderTest.java
+++ b/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/SearchFavoritesItemsAdderTest.java
@@ -10,19 +10,21 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.test.unit.internal;
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
-import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
-import org.eclipse.platform.discovery.ui.api.ISearchFavoritesViewCustomization;
-import org.eclipse.platform.discovery.ui.internal.view.SearchFavoritesItemsAdder;
-import org.eclipse.platform.discovery.util.api.longop.ILongOperationRunner;
-import org.jmock.core.Invocation;
-import org.jmock.core.Stub;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
+import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
+import org.eclipse.platform.discovery.ui.api.ISearchFavoritesViewCustomization;
+import org.eclipse.platform.discovery.ui.internal.view.SearchFavoritesItemsAdder;
+import org.eclipse.platform.discovery.util.api.longop.ILongOperationRunner;
+import org.jmock.core.Invocation;
+import org.jmock.core.Stub;
public class SearchFavoritesItemsAdderTest extends MockObjectTestCase
@@ -44,7 +46,7 @@
structuredSelection = mock(IStructuredSelection.class);
- final Set<ISearchFavoritesViewCustomization> customizations = new HashSet<ISearchFavoritesViewCustomization>();
+ final List<ISearchFavoritesViewCustomization> customizations = new ArrayList<ISearchFavoritesViewCustomization>();
customizations.add(viewCustomization.proxy());
adder = new SearchFavoritesItemsAdder(customizations, opRunner.proxy())
diff --git a/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/SearchForListContentProviderTest.java b/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/SearchForListContentProviderTest.java
index bd137e8..39154be 100644
--- a/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/SearchForListContentProviderTest.java
+++ b/tests/org.eclipse.platform.discovery.ui.test.unit/src/org/eclipse/platform/discovery/ui/test/unit/internal/SearchForListContentProviderTest.java
@@ -10,15 +10,17 @@
*******************************************************************************/
package org.eclipse.platform.discovery.ui.test.unit.internal;
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.platform.discovery.runtime.internal.ISearchProviderConfiguration;
-import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IObjectTypeDescription;
-import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
-import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
-import org.eclipse.platform.discovery.ui.internal.view.impl.DisplayableObjectsContentProvider;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.platform.discovery.runtime.internal.ISearchProviderConfiguration;
+import org.eclipse.platform.discovery.runtime.internal.model.descriptions.IObjectTypeDescription;
+import org.eclipse.platform.discovery.testutils.utils.jmock.Mock;
+import org.eclipse.platform.discovery.testutils.utils.jmock.MockObjectTestCase;
+import org.eclipse.platform.discovery.ui.internal.view.impl.DisplayableObjectsContentProvider;
public class SearchForListContentProviderTest extends MockObjectTestCase
@@ -34,7 +36,7 @@
protected void setUp() throws Exception
{
searchProviderConfig = mock(ISearchProviderConfiguration.class);
- final Set<IObjectTypeDescription> objects = new HashSet<IObjectTypeDescription>();
+ final List<IObjectTypeDescription> objects = new ArrayList<IObjectTypeDescription>();
objects.add(createObjectTypeWithId(OBJECT_TYPE1));
objects.add(createObjectTypeWithId(OBJECT_TYPE2));
objects.add(createObjectTypeWithId(OBJECT_TYPE3));