Skip to content

Commit d8a7afe

Browse files
ahornaceVladimir Kotal
authored andcommitted
Move Scripts and dependent classes to web module
1 parent 6b77149 commit d8a7afe

29 files changed

+52
-80
lines changed

opengrok-indexer/src/main/java/org/opengrok/indexer/search/SearchEngine.java

Lines changed: 3 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -34,13 +34,11 @@
3434
import java.nio.charset.StandardCharsets;
3535
import java.util.ArrayList;
3636
import java.util.List;
37-
import java.util.Set;
3837
import java.util.SortedSet;
3938
import java.util.TreeSet;
4039
import java.util.logging.Level;
4140
import java.util.logging.Logger;
4241
import java.util.zip.GZIPInputStream;
43-
import javax.servlet.http.HttpServletRequest;
4442
import org.apache.lucene.analysis.charfilter.HTMLStripCharFilter;
4543
import org.apache.lucene.document.Document;
4644
import org.apache.lucene.index.DirectoryReader;
@@ -68,9 +66,7 @@
6866
import org.opengrok.indexer.search.context.Context;
6967
import org.opengrok.indexer.search.context.HistoryContext;
7068
import org.opengrok.indexer.util.TandemPath;
71-
import org.opengrok.indexer.web.PageConfig;
7269
import org.opengrok.indexer.web.Prefix;
73-
import org.opengrok.indexer.web.ProjectHelper;
7470

7571
/**
7672
* This is an encapsulation of the details on how to search in the index database.
@@ -276,49 +272,11 @@ public IndexSearcher getSearcher() {
276272
* Call to search() must be eventually followed by call to destroy()
277273
* so that IndexSearcher objects are properly freed.
278274
*
279-
* @param req request
280-
* @param projectNames names of the projects
275+
* @param projects projects to search
281276
* @return The number of hits
282-
* @see ProjectHelper#getAllProjects()
283-
*/
284-
public int search(HttpServletRequest req, String... projectNames) {
285-
ProjectHelper pHelper = PageConfig.get(req).getProjectHelper();
286-
Set<Project> allProjects = pHelper.getAllProjects();
287-
List<Project> filteredProjects = new ArrayList<>();
288-
for (Project project: allProjects) {
289-
for (String name : projectNames) {
290-
if (project.getName().equalsIgnoreCase(name)) {
291-
filteredProjects.add(project);
292-
}
293-
}
294-
}
295-
return search(
296-
filteredProjects,
297-
new File(RuntimeEnvironment.getInstance().getDataRootFile(), IndexDatabase.INDEX_DIR));
298-
}
299-
300-
/**
301-
* Execute a search aware of current request.
302-
*
303-
* This filters out all projects which are not allowed for the current request.
304-
*
305-
* Before calling this function,
306-
* you must set the appropriate search criteria with the set-functions. Note
307-
* that this search will return the first cachePages of hitsPerPage, for
308-
* more you need to call more.
309-
*
310-
* Call to search() must be eventually followed by call to destroy()
311-
* so that IndexSearcher objects are properly freed.
312-
*
313-
* @param req request
314-
* @return The number of hits
315-
* @see ProjectHelper#getAllProjects()
316277
*/
317-
public int search(HttpServletRequest req) {
318-
ProjectHelper pHelper = PageConfig.get(req).getProjectHelper();
319-
return search(
320-
new ArrayList<Project>(pHelper.getAllProjects()),
321-
new File(RuntimeEnvironment.getInstance().getDataRootFile(), IndexDatabase.INDEX_DIR));
278+
public int search(List<Project> projects) {
279+
return search(projects, new File(RuntimeEnvironment.getInstance().getDataRootFile(), IndexDatabase.INDEX_DIR));
322280
}
323281

324282
/**

opengrok-web/src/main/java/org/opengrok/web/AuthorizationFilter.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@
3737

3838
import org.opengrok.indexer.configuration.Project;
3939
import org.opengrok.indexer.logger.LoggerFactory;
40-
import org.opengrok.indexer.web.PageConfig;
4140
import org.opengrok.indexer.web.Laundromat;
4241
import org.opengrok.web.api.v1.RestApp;
4342

opengrok-web/src/main/java/org/opengrok/web/GetFile.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,6 @@
3333
import java.io.OutputStream;
3434

3535
import org.opengrok.indexer.history.HistoryGuru;
36-
import org.opengrok.indexer.web.PageConfig;
3736
import org.opengrok.indexer.web.Prefix;
3837

3938
import javax.servlet.http.HttpServlet;

opengrok-indexer/src/main/java/org/opengrok/indexer/web/PageConfig.java renamed to opengrok-web/src/main/java/org/opengrok/web/PageConfig.java

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
* Portions copyright (c) 2011 Jens Elkner.
2323
* Portions Copyright (c) 2017-2018, 2020, Chris Fraire <[email protected]>.
2424
*/
25-
package org.opengrok.indexer.web;
25+
package org.opengrok.web;
2626

2727
import static org.opengrok.indexer.index.Indexer.PATH_SEPARATOR;
2828
import static org.opengrok.indexer.index.Indexer.PATH_SEPARATOR_STRING;
@@ -81,6 +81,15 @@
8181
import org.opengrok.indexer.util.IOUtils;
8282
import org.opengrok.indexer.util.LineBreaker;
8383
import org.opengrok.indexer.util.TandemPath;
84+
import org.opengrok.indexer.web.DiffData;
85+
import org.opengrok.indexer.web.DiffType;
86+
import org.opengrok.indexer.web.EftarFileReader;
87+
import org.opengrok.indexer.web.Laundromat;
88+
import org.opengrok.indexer.web.Prefix;
89+
import org.opengrok.indexer.web.QueryParameters;
90+
import org.opengrok.indexer.web.SearchHelper;
91+
import org.opengrok.indexer.web.SortOrder;
92+
import org.opengrok.indexer.web.Util;
8493
import org.opengrok.indexer.web.messages.MessagesContainer.AcceptedMessage;
8594
import org.suigeneris.jrcs.diff.Diff;
8695
import org.suigeneris.jrcs.diff.DifferentiationFailedException;

opengrok-indexer/src/main/java/org/opengrok/indexer/web/ProjectHelper.java renamed to opengrok-web/src/main/java/org/opengrok/web/ProjectHelper.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,7 @@
2222
* Portions Copyright (c) 2018, Chris Fraire <[email protected]>.
2323
* Portions Copyright (c) 2019, Krystof Tulinger <[email protected]>.
2424
*/
25-
package org.opengrok.indexer.web;
26-
27-
import static org.opengrok.indexer.web.PageConfig.OPEN_GROK_PROJECT;
25+
package org.opengrok.web;
2826

2927
import java.util.ArrayList;
3028
import java.util.Comparator;
@@ -40,6 +38,8 @@
4038
import org.opengrok.indexer.configuration.Project;
4139
import org.opengrok.indexer.history.RepositoryInfo;
4240

41+
import static org.opengrok.web.PageConfig.OPEN_GROK_PROJECT;
42+
4343
/**
4444
* Preprocessing of projects, repositories and groups for the UI.
4545
*

opengrok-indexer/src/main/java/org/opengrok/indexer/web/Scripts.java renamed to opengrok-web/src/main/java/org/opengrok/web/Scripts.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
* Copyright (c) 2017, 2020 Oracle and/or its affiliates. All rights reserved.
2222
* Portions Copyright (c) 2017, 2020, Chris Fraire <[email protected]>.
2323
*/
24-
package org.opengrok.indexer.web;
24+
package org.opengrok.web;
2525

2626
import java.util.Comparator;
2727
import java.util.Iterator;

opengrok-web/src/main/java/org/opengrok/web/StatisticsFilter.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@
3737
import io.micrometer.core.instrument.DistributionSummary;
3838
import io.micrometer.core.instrument.Timer;
3939
import org.opengrok.indexer.Metrics;
40-
import org.opengrok.indexer.web.PageConfig;
4140
import org.opengrok.indexer.web.SearchHelper;
4241

4342
public class StatisticsFilter implements Filter {

opengrok-web/src/main/java/org/opengrok/web/WebappListener.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@
3131
import org.opengrok.indexer.configuration.CommandTimeoutType;
3232
import org.opengrok.indexer.configuration.RuntimeEnvironment;
3333
import org.opengrok.indexer.logger.LoggerFactory;
34-
import org.opengrok.indexer.web.PageConfig;
3534
import org.opengrok.indexer.web.SearchHelper;
3635
import org.opengrok.web.api.v1.suggester.provider.service.SuggesterServiceFactory;
3736

opengrok-web/src/main/java/org/opengrok/web/api/v1/controller/SearchController.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,11 @@
2424
package org.opengrok.web.api.v1.controller;
2525

2626
import org.apache.lucene.search.Query;
27+
import org.opengrok.indexer.configuration.Project;
2728
import org.opengrok.indexer.search.Hit;
2829
import org.opengrok.indexer.search.SearchEngine;
2930
import org.opengrok.indexer.web.QueryParameters;
31+
import org.opengrok.web.PageConfig;
3032
import org.opengrok.web.api.v1.filter.CorsEnable;
3133
import org.opengrok.web.api.v1.suggester.provider.service.SuggesterService;
3234

@@ -47,6 +49,7 @@
4749
import java.util.Collections;
4850
import java.util.List;
4951
import java.util.Map;
52+
import java.util.Set;
5053
import java.util.stream.Collectors;
5154

5255
@Path(SearchController.PATH)
@@ -126,10 +129,13 @@ public List<Hit> search(
126129
final int startDocIndex,
127130
final int maxResults
128131
) {
132+
Set<Project> allProjects = PageConfig.get(req).getProjectHelper().getAllProjects();
129133
if (projects == null || projects.isEmpty()) {
130-
numResults = engine.search(req);
134+
numResults = engine.search(new ArrayList<>(allProjects));
131135
} else {
132-
numResults = engine.search(req, projects.toArray(new String[0]));
136+
numResults = engine.search(allProjects.stream()
137+
.filter(p -> projects.contains(p.getName()))
138+
.collect(Collectors.toList()));
133139
}
134140

135141
if (startDocIndex > numResults) {

opengrok-web/src/main/webapp/WEB-INF/tags/repositories.tag

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ Portions Copyright (c) 2019, Krystof Tulinger <[email protected]>.
2323
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
2424
<%@ taglib prefix="opengrok" tagdir="/WEB-INF/tags" %>
2525

26-
<%@ attribute name="pageConfig" required="true" type="org.opengrok.indexer.web.PageConfig" %>
26+
<%@ attribute name="pageConfig" required="true" type="org.opengrok.web.PageConfig" %>
2727
<%@ attribute name="repositories" required="true" type="java.util.Set<org.opengrok.indexer.configuration.Project>" %>
2828

2929
<c:if test="${repositories.size() > 0}">

0 commit comments

Comments
 (0)