Community
Participate
Working Groups
There is a problem with search on models that can span multiple projects (e.g. Autosar, everything in a scoping resource set). The code in org.eclipse.sphinx.emf.search.ui.ModelSearchQuery.performSearch() The code looks like this: for (IProject prj : projects) { Collection<IModelDescriptor> models = ModelDescriptorRegistry.INSTANCE.getModels(prj); for (IModelDescriptor modelDescriptor : models) { IMetaModelDescriptor metaModelDescriptor = modelDescriptor.getMetaModelDescriptor(); IModelSearchService modelSearchService = getModelSearchService(metaModelDescriptor); if (modelSearchService != null) { result.addAll(modelSearchService.getMatches(modelDescriptor, querySpecification)); } } } But, if I am not mistaken, a model / modelDescriptor can include several projects. Therefore, the search will be invoked twice, e.g. for an Artop Model that consists of two projects, resulting in n times finding the same element (one extra for each model). The code should: * First iterate over the projct and collect the IModelDescriptors in a Set and then iterate over that set to invoke the search for each model only once.
Closed stale issue before migration