diff options
author | Jon Bratseth <bratseth@oath.com> | 2019-06-13 07:12:23 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-06-13 07:12:23 +0200 |
commit | 0e20abc33aa88066aedadd43b09353d115d5928b (patch) | |
tree | 159df75408a4eb188b13a532fb42b8896083cfc9 /config-model/src/main/java/com/yahoo/searchdefinition/SearchBuilder.java | |
parent | 17b6704b20a073a4961baefd1be58dd48012bec4 (diff) |
Revert "Revert "Require constant() for large constants and fix a type resolving bug""
Diffstat (limited to 'config-model/src/main/java/com/yahoo/searchdefinition/SearchBuilder.java')
-rw-r--r-- | config-model/src/main/java/com/yahoo/searchdefinition/SearchBuilder.java | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/SearchBuilder.java b/config-model/src/main/java/com/yahoo/searchdefinition/SearchBuilder.java index 9804b0b6329..a84db895b02 100644 --- a/config-model/src/main/java/com/yahoo/searchdefinition/SearchBuilder.java +++ b/config-model/src/main/java/com/yahoo/searchdefinition/SearchBuilder.java @@ -8,7 +8,9 @@ import com.yahoo.config.model.test.MockApplicationPackage; import com.yahoo.document.DocumentTypeManager; import com.yahoo.io.IOUtils; import com.yahoo.io.reader.NamedReader; +import com.yahoo.search.query.profile.QueryProfile; import com.yahoo.search.query.profile.QueryProfileRegistry; +import com.yahoo.search.query.profile.config.QueryProfileXMLReader; import com.yahoo.searchdefinition.derived.SearchOrderer; import com.yahoo.searchdefinition.document.SDDocumentType; import com.yahoo.searchdefinition.parser.ParseException; @@ -394,14 +396,13 @@ public class SearchBuilder { } public static SearchBuilder createFromDirectory(String dir) throws IOException, ParseException { - return createFromDirectory(dir, new RankProfileRegistry(), new QueryProfileRegistry()); + return createFromDirectory(dir, new RankProfileRegistry()); } public static SearchBuilder createFromDirectory(String dir, - RankProfileRegistry rankProfileRegistry, - QueryProfileRegistry queryProfileRegistry) throws IOException, ParseException { + RankProfileRegistry rankProfileRegistry) throws IOException, ParseException { SearchBuilder builder = new SearchBuilder(MockApplicationPackage.fromSearchDefinitionDirectory(dir), rankProfileRegistry, - queryProfileRegistry); + createQueryProfileRegistryFromDirectory(dir)); for (Iterator<Path> i = Files.list(new File(dir).toPath()).filter(p -> p.getFileName().toString().endsWith(".sd")).iterator(); i.hasNext(); ) { builder.importFile(i.next()); } @@ -409,6 +410,12 @@ public class SearchBuilder { return builder; } + private static QueryProfileRegistry createQueryProfileRegistryFromDirectory(String dir) { + File queryProfilesDir = new File(dir, "query-profiles"); + if ( ! queryProfilesDir.exists()) return new QueryProfileRegistry(); + return new QueryProfileXMLReader().read(queryProfilesDir.toString()); + } + // TODO: The build methods below just call the create methods above - remove /** |