X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.workbench%2Fsrc%2Forg%2Fsimantics%2Fworkbench%2Finternal%2Fcontributions%2Fsearch%2FSearchServiceFactory.java;fp=bundles%2Forg.simantics.workbench%2Fsrc%2Forg%2Fsimantics%2Fworkbench%2Finternal%2Fcontributions%2Fsearch%2FSearchServiceFactory.java;h=ab386699cd2c1982e4468a5611df21d618ced49b;hp=0f5d2f4e96b3df65aa6bdf30b91d77223ddf89ff;hb=0ae2b770234dfc3cbb18bd38f324125cf0faca07;hpb=24e2b34260f219f0d1644ca7a138894980e25b14 diff --git a/bundles/org.simantics.workbench/src/org/simantics/workbench/internal/contributions/search/SearchServiceFactory.java b/bundles/org.simantics.workbench/src/org/simantics/workbench/internal/contributions/search/SearchServiceFactory.java index 0f5d2f4e9..ab386699c 100644 --- a/bundles/org.simantics.workbench/src/org/simantics/workbench/internal/contributions/search/SearchServiceFactory.java +++ b/bundles/org.simantics.workbench/src/org/simantics/workbench/internal/contributions/search/SearchServiceFactory.java @@ -1,50 +1,50 @@ -package org.simantics.workbench.internal.contributions.search; - - -import org.eclipse.core.expressions.Expression; -import org.eclipse.ui.IWorkbench; -import org.eclipse.ui.IWorkbenchPartSite; -import org.eclipse.ui.IWorkbenchWindow; -import org.eclipse.ui.internal.expressions.ActivePartExpression; -import org.eclipse.ui.internal.expressions.WorkbenchWindowExpression; -import org.eclipse.ui.internal.services.IWorkbenchLocationService; -import org.eclipse.ui.services.AbstractServiceFactory; -import org.eclipse.ui.services.IServiceLocator; -import org.simantics.workbench.search.ISearchService; - -public class SearchServiceFactory extends AbstractServiceFactory { - - - @SuppressWarnings("rawtypes") - @Override - public Object create(Class serviceInterface, IServiceLocator parentLocator, - IServiceLocator locator) { - if (!ISearchService.class.equals(serviceInterface)) - return null; - IWorkbenchLocationService wls = (IWorkbenchLocationService) locator - .getService(IWorkbenchLocationService.class); - final IWorkbench wb = wls.getWorkbench(); - if (wb == null) { - return null; - } - - Object parent = parentLocator.getService(serviceInterface); - if (parent == null) { - return new SearchServiceImpl(); - } - final IWorkbenchWindow window = wls.getWorkbenchWindow(); - final IWorkbenchPartSite site = wls.getPartSite(); - if (site == null) { - Expression exp = new WorkbenchWindowExpression(window); - return new SlaveSearchService((ISearchService)parent, exp); - } - if (parent instanceof SlaveSearchService) { - Expression parentExp = ((SlaveSearchService) parent).getDefaultExpression(); - return new NestableSearchService((ISearchService)parent, parentExp); - } - - Expression exp = new ActivePartExpression(site.getPart()); - return new SlaveSearchService((ISearchService)parent, exp); - } - -} +package org.simantics.workbench.internal.contributions.search; + + +import org.eclipse.core.expressions.Expression; +import org.eclipse.ui.IWorkbench; +import org.eclipse.ui.IWorkbenchPartSite; +import org.eclipse.ui.IWorkbenchWindow; +import org.eclipse.ui.internal.expressions.ActivePartExpression; +import org.eclipse.ui.internal.expressions.WorkbenchWindowExpression; +import org.eclipse.ui.internal.services.IWorkbenchLocationService; +import org.eclipse.ui.services.AbstractServiceFactory; +import org.eclipse.ui.services.IServiceLocator; +import org.simantics.workbench.search.ISearchService; + +public class SearchServiceFactory extends AbstractServiceFactory { + + + @SuppressWarnings("rawtypes") + @Override + public Object create(Class serviceInterface, IServiceLocator parentLocator, + IServiceLocator locator) { + if (!ISearchService.class.equals(serviceInterface)) + return null; + IWorkbenchLocationService wls = (IWorkbenchLocationService) locator + .getService(IWorkbenchLocationService.class); + final IWorkbench wb = wls.getWorkbench(); + if (wb == null) { + return null; + } + + Object parent = parentLocator.getService(serviceInterface); + if (parent == null) { + return new SearchServiceImpl(); + } + final IWorkbenchWindow window = wls.getWorkbenchWindow(); + final IWorkbenchPartSite site = wls.getPartSite(); + if (site == null) { + Expression exp = new WorkbenchWindowExpression(window); + return new SlaveSearchService((ISearchService)parent, exp); + } + if (parent instanceof SlaveSearchService) { + Expression parentExp = ((SlaveSearchService) parent).getDefaultExpression(); + return new NestableSearchService((ISearchService)parent, parentExp); + } + + Expression exp = new ActivePartExpression(site.getPart()); + return new SlaveSearchService((ISearchService)parent, exp); + } + +}