From c9b7d255141e2aa719a272ee79aa975427f33a06 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Sp=C3=B6nemann?= Date: Mon, 7 Dec 2015 13:30:08 +0100 Subject: [PATCH] [web] Fixed search for generator artifacts to allow omitting the DEFAULT_OUTPUT prefix MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Miro Spönemann --- .../server/generator/GeneratorService.xtend | 6 ++++- .../server/generator/GeneratorService.java | 22 ++++++++++++++++++- 2 files changed, 26 insertions(+), 2 deletions(-) diff --git a/web/org.eclipse.xtext.web/src/main/java/org/eclipse/xtext/web/server/generator/GeneratorService.xtend b/web/org.eclipse.xtext.web/src/main/java/org/eclipse/xtext/web/server/generator/GeneratorService.xtend index b48d92f8dc5..36647449e28 100644 --- a/web/org.eclipse.xtext.web/src/main/java/org/eclipse/xtext/web/server/generator/GeneratorService.xtend +++ b/web/org.eclipse.xtext.web/src/main/java/org/eclipse/xtext/web/server/generator/GeneratorService.xtend @@ -68,7 +68,11 @@ class GeneratorService extends AbstractCachedServicefindFirst(artifacts, _function); + GeneratorResult result = IterableExtensions.findFirst(artifacts, _function); + boolean _and = false; + if (!(result == null)) { + _and = false; + } else { + boolean _startsWith = searchString.startsWith(IFileSystemAccess.DEFAULT_OUTPUT); + boolean _not = (!_startsWith); + _and = _not; + } + if (_and) { + final String defaultSearchString = (IFileSystemAccess.DEFAULT_OUTPUT + searchString); + final Function1 _function_1 = new Function1() { + @Override + public Boolean apply(final GeneratorResult it) { + String _name = it.getName(); + return Boolean.valueOf(Objects.equal(_name, defaultSearchString)); + } + }; + GeneratorResult _findFirst = IterableExtensions.findFirst(artifacts, _function_1); + result = _findFirst; + } if ((result == null)) { throw new InvalidRequestException.ResourceNotFoundException("The requested generator artifact was not found."); }