Skip to content

Commit 8a883da

Browse files
ahornaceVladimir Kotal
authored andcommitted
Use factory for SuggesterService
1 parent cbed78b commit 8a883da

File tree

9 files changed

+51
-23
lines changed

9 files changed

+51
-23
lines changed

src/org/opensolaris/opengrok/configuration/RuntimeEnvironment.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@
8989
import org.opensolaris.opengrok.util.ForbiddenSymlinkException;
9090
import org.opensolaris.opengrok.util.PathUtils;
9191
import org.opensolaris.opengrok.web.Prefix;
92-
import org.opensolaris.opengrok.web.suggester.provider.service.SuggesterService;
92+
import org.opensolaris.opengrok.web.suggester.provider.service.SuggesterServiceFactory;
9393

9494
import javax.ws.rs.client.ClientBuilder;
9595
import javax.ws.rs.client.Entity;
@@ -1718,7 +1718,7 @@ public void applyConfig(Configuration config, boolean reindex, boolean interacti
17181718
getAuthorizationFramework().reload();
17191719

17201720
messagesContainer.setMessageLimit(config.getMessageLimit());
1721-
SuggesterService.getInstance().refresh(configuration);
1721+
SuggesterServiceFactory.getDefault().refresh(configuration);
17221722
}
17231723

17241724
public void setIndexTimestamp() throws IOException {

src/org/opensolaris/opengrok/web/SearchHelper.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@
7272
import org.opensolaris.opengrok.search.context.HistoryContext;
7373
import org.opensolaris.opengrok.util.ForbiddenSymlinkException;
7474
import org.opensolaris.opengrok.util.IOUtils;
75-
import org.opensolaris.opengrok.web.suggester.provider.service.SuggesterService;
75+
import org.opensolaris.opengrok.web.suggester.provider.service.SuggesterServiceFactory;
7676

7777
/**
7878
* Working set for a search basically to factor out/separate search related
@@ -374,7 +374,7 @@ public SearchHelper prepareExec(Project project) {
374374
* @return this instance
375375
*/
376376
public SearchHelper executeQuery() {
377-
SuggesterService.getInstance().onSearch(projects, query); // notify suggester that query was searched
377+
SuggesterServiceFactory.getDefault().onSearch(projects, query); // notify suggester that query was searched
378378

379379
if (redirect != null || errorMsg != null) {
380380
return this;

src/org/opensolaris/opengrok/web/WebappListener.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
import org.opensolaris.opengrok.authorization.AuthorizationFramework;
3737
import org.opensolaris.opengrok.configuration.RuntimeEnvironment;
3838
import org.opensolaris.opengrok.logger.LoggerFactory;
39-
import org.opensolaris.opengrok.web.suggester.provider.service.SuggesterService;
39+
import org.opensolaris.opengrok.web.suggester.provider.service.SuggesterServiceFactory;
4040

4141
/**
4242
* Initialize webapp context
@@ -116,7 +116,7 @@ public void contextDestroyed(final ServletContextEvent servletContextEvent) {
116116

117117
// need to explicitly close the suggester service because it might have scheduled rebuild which could prevent
118118
// the web application from closing
119-
SuggesterService.getInstance().close();
119+
SuggesterServiceFactory.getDefault().close();
120120
}
121121

122122
/**

src/org/opensolaris/opengrok/web/api/v1/controller/ProjectsController.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
import org.opensolaris.opengrok.util.ClassUtil;
3535
import org.opensolaris.opengrok.util.ForbiddenSymlinkException;
3636
import org.opensolaris.opengrok.util.IOUtils;
37-
import org.opensolaris.opengrok.web.suggester.provider.service.SuggesterService;
37+
import org.opensolaris.opengrok.web.suggester.provider.service.SuggesterServiceFactory;
3838

3939
import javax.ws.rs.Consumes;
4040
import javax.ws.rs.DELETE;
@@ -184,7 +184,7 @@ public void deleteProject(@PathParam("project") final String projectName)
184184
}
185185
}).collect(Collectors.toSet()));
186186

187-
SuggesterService.getInstance().delete(projectName);
187+
SuggesterServiceFactory.getDefault().delete(projectName);
188188
}
189189

190190
@PUT
@@ -220,7 +220,7 @@ public void markIndexed(@PathParam("project") final String projectName) throws E
220220

221221
env.refreshDateForLastIndexRun();
222222

223-
SuggesterService.getInstance().refresh(projectName);
223+
SuggesterServiceFactory.getDefault().refresh(projectName);
224224
}
225225

226226
@PUT

src/org/opensolaris/opengrok/web/api/v1/controller/SearchController.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
import org.apache.lucene.search.Query;
2626
import org.opensolaris.opengrok.search.Hit;
2727
import org.opensolaris.opengrok.search.SearchEngine;
28-
import org.opensolaris.opengrok.web.suggester.provider.service.SuggesterService;
28+
import org.opensolaris.opengrok.web.suggester.provider.service.SuggesterServiceFactory;
2929

3030
import javax.servlet.http.HttpServletRequest;
3131
import javax.ws.rs.DefaultValue;
@@ -72,7 +72,7 @@ public SearchResult search(
7272

7373
Instant startTime = Instant.now();
7474

75-
SuggesterService.getInstance().onSearch(projects, engine.getQuery());
75+
SuggesterServiceFactory.getDefault().onSearch(projects, engine.getQuery());
7676

7777
Map<String, List<SearchHit>> hits = engine.search(req, projects, startDocIndex, maxResults)
7878
.stream()

src/org/opensolaris/opengrok/web/api/v1/controller/SystemController.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
package org.opensolaris.opengrok.web.api.v1.controller;
2424

2525
import org.opensolaris.opengrok.configuration.RuntimeEnvironment;
26-
import org.opensolaris.opengrok.web.suggester.provider.service.SuggesterService;
26+
import org.opensolaris.opengrok.web.suggester.provider.service.SuggesterServiceFactory;
2727

2828
import javax.ws.rs.Consumes;
2929
import javax.ws.rs.PUT;
@@ -41,7 +41,7 @@ public class SystemController {
4141
@Consumes(MediaType.TEXT_PLAIN)
4242
public void refresh(final String project) {
4343
env.maybeRefreshIndexSearchers(Collections.singleton(project));
44-
SuggesterService.getInstance().refresh(project);
44+
SuggesterServiceFactory.getDefault().refresh(project);
4545
}
4646

4747
}

src/org/opensolaris/opengrok/web/suggester/SuggesterAppBinder.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424

2525
import org.glassfish.jersey.internal.inject.AbstractBinder;
2626
import org.opensolaris.opengrok.web.suggester.provider.service.SuggesterService;
27+
import org.opensolaris.opengrok.web.suggester.provider.service.SuggesterServiceFactory;
2728

2829
/**
2930
* Binder for dependency injection in {@link SuggesterApp}.
@@ -32,7 +33,7 @@ public class SuggesterAppBinder extends AbstractBinder {
3233

3334
@Override
3435
protected void configure() {
35-
bind(SuggesterService.getInstance()).to(SuggesterService.class);
36+
bind(SuggesterServiceFactory.getDefault()).to(SuggesterService.class);
3637
}
3738

3839
}

src/org/opensolaris/opengrok/web/suggester/provider/service/SuggesterService.java

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@
2727
import org.opengrok.suggest.LookupResultItem;
2828
import org.opengrok.suggest.query.SuggesterQuery;
2929
import org.opensolaris.opengrok.configuration.Configuration;
30-
import org.opensolaris.opengrok.web.suggester.provider.service.impl.SuggesterServiceImpl;
3130

3231
import java.util.Collection;
3332
import java.util.List;
@@ -83,12 +82,4 @@ public interface SuggesterService {
8382
*/
8483
void close();
8584

86-
/**
87-
* Factory method for this service.
88-
* @return default service implementation
89-
*/
90-
static SuggesterService getInstance() {
91-
return SuggesterServiceImpl.getInstance();
92-
}
93-
9485
}
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
/*
2+
* CDDL HEADER START
3+
*
4+
* The contents of this file are subject to the terms of the
5+
* Common Development and Distribution License (the "License").
6+
* You may not use this file except in compliance with the License.
7+
*
8+
* See LICENSE.txt included in this distribution for the specific
9+
* language governing permissions and limitations under the License.
10+
*
11+
* When distributing Covered Code, include this CDDL HEADER in each
12+
* file and include the License file at LICENSE.txt.
13+
* If applicable, add the following below this CDDL HEADER, with the
14+
* fields enclosed by brackets "[]" replaced with your own identifying
15+
* information: Portions Copyright [yyyy] [name of copyright owner]
16+
*
17+
* CDDL HEADER END
18+
*/
19+
20+
/*
21+
* Copyright (c) 2018 Oracle and/or its affiliates. All rights reserved.
22+
*/
23+
package org.opensolaris.opengrok.web.suggester.provider.service;
24+
25+
import org.opensolaris.opengrok.web.suggester.provider.service.impl.SuggesterServiceImpl;
26+
27+
public class SuggesterServiceFactory {
28+
29+
private SuggesterServiceFactory() {
30+
}
31+
32+
public static SuggesterService getDefault() {
33+
return SuggesterServiceImpl.getInstance();
34+
}
35+
36+
}

0 commit comments

Comments
 (0)