code cleanup

This commit is contained in:
Shinsuke Sugaya 2015-11-26 10:51:50 +09:00
parent f88b2cba12
commit b505fd322b
47 changed files with 147 additions and 118 deletions

View file

@ -73,13 +73,13 @@ public class EsApiManager extends BaseApiManager {
public void process(final HttpServletRequest request, final HttpServletResponse response, final FilterChain chain) throws IOException,
ServletException {
getSessionManager().getAttribute(Constants.ES_API_ACCESS_TOKEN, String.class).ifPresent(token -> {
String servletPath = request.getServletPath();
String pathPrefix = ADMIN_SERVER + token;
final String servletPath = request.getServletPath();
final String pathPrefix = ADMIN_SERVER + token;
if (!servletPath.startsWith(pathPrefix)) {
throw new WebApiException(HttpServletResponse.SC_FORBIDDEN, "Invalid access token.");
}
final String path;
String value = servletPath.substring(pathPrefix.length());
final String value = servletPath.substring(pathPrefix.length());
if (!value.startsWith("/")) {
path = "/" + value;
} else {
@ -91,7 +91,7 @@ public class EsApiManager extends BaseApiManager {
});
}
protected void processRequest(final HttpServletRequest request, final HttpServletResponse response, String path) {
protected void processRequest(final HttpServletRequest request, final HttpServletResponse response, final String path) {
final Method httpMethod = Method.valueOf(request.getMethod().toUpperCase(Locale.ROOT));
final CurlRequest curlRequest = new CurlRequest(httpMethod, getUrl() + path);
request.getParameterMap().entrySet().stream().forEach(entry -> {

View file

@ -406,9 +406,9 @@ public class JsonApiManager extends BaseApiManager {
final String id = DocumentUtil.getValue(doc, fessConfig.getIndexFieldId(), String.class);
searchService.update(id, builder -> {
Script script = new Script("ctx._source." + fessConfig.getIndexFieldFavoriteCount() + "+=1");
final Script script = new Script("ctx._source." + fessConfig.getIndexFieldFavoriteCount() + "+=1");
builder.setScript(script);
Map<String, Object> upsertMap = new HashMap<>();
final Map<String, Object> upsertMap = new HashMap<>();
upsertMap.put(fessConfig.getIndexFieldFavoriteCount(), 1);
builder.setUpsert(upsertMap);
builder.setRefresh(true);

View file

@ -42,13 +42,14 @@ public class SuggestApiManager extends BaseApiManager {
}
@Override
public boolean matches(HttpServletRequest request) {
public boolean matches(final HttpServletRequest request) {
final String servletPath = request.getServletPath();
return servletPath.startsWith(pathPrefix);
}
@Override
public void process(HttpServletRequest request, HttpServletResponse response, FilterChain chain) throws IOException, ServletException {
public void process(final HttpServletRequest request, final HttpServletResponse response, final FilterChain chain) throws IOException,
ServletException {
int status = 0;
String errMsg = StringUtil.EMPTY;
final StringBuilder buf = new StringBuilder(255);

View file

@ -39,7 +39,7 @@ public class FavoriteLogService {
@Resource
protected FavoriteLogBhv favoriteLogBhv;
public boolean addUrl(String userCode, BiConsumer<UserInfo, FavoriteLog> favoriteLogLambda) {
public boolean addUrl(final String userCode, final BiConsumer<UserInfo, FavoriteLog> favoriteLogLambda) {
return userInfoBhv.selectByPK(userCode).map(userInfo -> {
final FavoriteLog favoriteLog = new FavoriteLog();
favoriteLogLambda.accept(userInfo, favoriteLog);

View file

@ -106,7 +106,7 @@ public class GroupService implements Serializable {
}
public List<Group> getAvailableGroupList(Integer size) {
public List<Group> getAvailableGroupList(final Integer size) {
return groupBhv.selectList(cb -> {
cb.query().matchAll();
cb.paging(size, 1);

View file

@ -110,7 +110,7 @@ public class RoleService implements Serializable {
}
public List<Role> getAvailableRoleList(Integer size) {
public List<Role> getAvailableRoleList(final Integer size) {
return roleBhv.selectList(cb -> {
cb.query().matchAll();
cb.paging(size, 1);

View file

@ -1,3 +1,18 @@
/*
* Copyright 2012-2015 CodeLibs Project and the Others.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
* either express or implied. See the License for the specific language
* governing permissions and limitations under the License.
*/
package org.codelibs.fess.app.service;
import javax.annotation.Resource;
@ -17,7 +32,7 @@ public class SearchLogService {
@Resource
private SystemHelper systemHelper;
public void deleteBefore(int days) {
public void deleteBefore(final int days) {
searchLogBhv.selectCursor(cb -> {
cb.query().setRequestedAt_LessEqual(systemHelper.getCurrentTimeAsLocalDateTime().minusDays(days));
}, entity -> {

View file

@ -173,7 +173,7 @@ public class SearchService {
}
data.setExecTime(execTime);
String queryId = QueryUtil.generateId();
final String queryId = QueryUtil.generateId();
data.setPageSize(queryResponseList.getPageSize());
data.setCurrentPageNumber(queryResponseList.getCurrentPageNumber());
@ -238,7 +238,7 @@ public class SearchService {
final SearchLog searchLog = new SearchLog();
if (Constants.TRUE.equals(crawlerProperties.getProperty(Constants.USER_INFO_PROPERTY, Constants.TRUE))) {
String userCode = userInfoHelper.getUserCode();
final String userCode = userInfoHelper.getUserCode();
if (userCode != null) {
searchLog.setUserSessionId(userCode);
}
@ -384,12 +384,12 @@ public class SearchService {
return fessEsClient.update(fessConfig.getIndexDocumentIndex(), fessConfig.getIndexDocumentType(), id, field, value);
}
public boolean update(final String id, Consumer<UpdateRequestBuilder> builderLambda) {
public boolean update(final String id, final Consumer<UpdateRequestBuilder> builderLambda) {
try {
UpdateRequestBuilder builder =
final UpdateRequestBuilder builder =
fessEsClient.prepareUpdate(fessConfig.getIndexDocumentIndex(), fessConfig.getIndexDocumentType(), id);
builderLambda.accept(builder);
UpdateResponse response = builder.execute().actionGet();
final UpdateResponse response = builder.execute().actionGet();
return response.isCreated();
} catch (final ElasticsearchException e) {
throw new FessEsClientException("Failed to update doc " + id, e);

View file

@ -1,3 +1,18 @@
/*
* Copyright 2012-2015 CodeLibs Project and the Others.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
* either express or implied. See the License for the specific language
* governing permissions and limitations under the License.
*/
package org.codelibs.fess.app.service;
import javax.annotation.Resource;
@ -13,7 +28,7 @@ public class UserInfoService {
@Resource
private SystemHelper systemHelper;
public void deleteBefore(int days) {
public void deleteBefore(final int days) {
userInfoBhv.queryDelete(cb -> {
cb.query().setUpdatedAt_LessEqual(systemHelper.getCurrentTimeAsLocalDateTime().minusDays(days));
});

View file

@ -188,7 +188,7 @@ public class AdminBadwordAction extends FessAdminAction {
verifyToken(() -> asDownloadHtml());
return asStream("badword.csv").stream(out -> {
Path tempFile = Files.createTempFile(null, null);
final Path tempFile = Files.createTempFile(null, null);
try {
try (Writer writer = new BufferedWriter(new OutputStreamWriter(Files.newOutputStream(tempFile), getCsvEncoding()))) {
suggestBadWordService.exportCsv(writer);

View file

@ -85,7 +85,7 @@ public class CreateForm implements Serializable {
sortOrder = 0;
createdBy = ComponentUtil.getSystemHelper().getUsername();
createdTime = ComponentUtil.getSystemHelper().getCurrentTimeAsLong();
String roles = ComponentUtil.getFessConfig().getSearchDefaultRoles();
final String roles = ComponentUtil.getFessConfig().getSearchDefaultRoles();
if (StringUtil.isNotBlank(roles)) {
roleTypeIds = StreamUtil.of(roles.split(",")).map(role -> role.trim()).toArray(n -> new String[n]);
}

View file

@ -184,7 +184,7 @@ public class AdminDesignAction extends FessAdminAction implements Serializable {
@Execute
public StreamResponse download(final FileAccessForm form) {
File file = getTargetFile(form.fileName).get();
final File file = getTargetFile(form.fileName).get();
if (file == null) {
throwValidationError(messages -> messages.addErrorsTargetFileDoesNotExist(GLOBAL, form.fileName), () -> asListHtml());
}

View file

@ -196,7 +196,7 @@ public class AdminElevatewordAction extends FessAdminAction {
verifyToken(() -> asDownloadHtml());
return asStream("elevate.csv").stream(out -> {
Path tempFile = Files.createTempFile(null, null);
final Path tempFile = Files.createTempFile(null, null);
try {
try (Writer writer = new BufferedWriter(new OutputStreamWriter(Files.newOutputStream(tempFile), getCsvEncoding()))) {
suggestElevateWordService.exportCsv(writer);

View file

@ -129,7 +129,7 @@ public class AdminFailureurlAction extends FessAdminAction {
verifyCrudMode(form.crudMode, CrudMode.DETAILS);
validate(form, messages -> {}, () -> asDetailsHtml());
verifyToken(() -> asDetailsHtml());
String id = form.id;
final String id = form.id;
failureUrlService.getFailureUrl(id).alwaysPresent(entity -> {
failureUrlService.delete(entity);
saveInfo(messages -> messages.addSuccessCrudDeleteCrudTable(GLOBAL));

View file

@ -121,7 +121,7 @@ public class CreateForm implements Serializable {
sortOrder = 0;
createdBy = ComponentUtil.getSystemHelper().getUsername();
createdTime = ComponentUtil.getSystemHelper().getCurrentTimeAsLong();
String roles = ComponentUtil.getFessConfig().getSearchDefaultRoles();
final String roles = ComponentUtil.getFessConfig().getSearchDefaultRoles();
if (StringUtil.isNotBlank(roles)) {
roleTypeIds = StreamUtil.of(roles.split(",")).map(role -> role.trim()).toArray(n -> new String[n]);
}

View file

@ -149,7 +149,7 @@ public class AdminGeneralAction extends FessAdminAction {
form.esHttpUrl = crawlerProperties.getProperty(Constants.ELASTICSEARCH_WEB_URL_PROPERTY, Constants.ELASTICSEARCH_WEB_URL);
}
private void updateProperty(String key, String value) {
private void updateProperty(final String key, final String value) {
crawlerProperties.setProperty(key, value == null ? StringUtil.EMPTY : value);
}

View file

@ -136,7 +136,7 @@ public class AdminJoblogAction extends FessAdminAction {
verifyCrudMode(form.crudMode, CrudMode.DETAILS);
validate(form, messages -> {}, () -> asDetailsHtml());
verifyToken(() -> asDetailsHtml());
String id = form.id;
final String id = form.id;
jobLogService.getJobLog(id).alwaysPresent(entity -> {
jobLogService.delete(entity);
saveInfo(messages -> messages.addSuccessCrudDeleteCrudTable(GLOBAL));

View file

@ -76,7 +76,7 @@ public class CreateForm implements Serializable {
sortOrder = 0;
createdBy = ComponentUtil.getSystemHelper().getUsername();
createdTime = ComponentUtil.getSystemHelper().getCurrentTimeAsLong();
String roles = ComponentUtil.getFessConfig().getSearchDefaultRoles();
final String roles = ComponentUtil.getFessConfig().getSearchDefaultRoles();
if (StringUtil.isNotBlank(roles)) {
roleTypeIds = StreamUtil.of(roles.split(",")).map(role -> role.trim()).toArray(n -> new String[n]);
}

View file

@ -63,10 +63,10 @@ public class AdminLogAction extends FessAdminAction {
@Execute
public ActionResponse download(final String id) {
String filename = new String(Base64.getDecoder().decode(id), StandardCharsets.UTF_8).replace("..", "").replaceAll("\\s", "");
final String filename = new String(Base64.getDecoder().decode(id), StandardCharsets.UTF_8).replace("..", "").replaceAll("\\s", "");
final String logFilePath = systemHelper.getLogFilePath();
if (StringUtil.isNotBlank(logFilePath)) {
Path path = Paths.get(logFilePath, filename);
final Path path = Paths.get(logFilePath, filename);
return asStream(filename).contentType("text/plain; charset=UTF-8").stream(out -> {
try (InputStream in = Files.newInputStream(path)) {
out.write(in);
@ -83,21 +83,21 @@ public class AdminLogAction extends FessAdminAction {
final List<Map<String, Object>> logFileItems = new ArrayList<Map<String, Object>>();
final String logFilePath = systemHelper.getLogFilePath();
if (StringUtil.isNotBlank(logFilePath)) {
Path logDirPath = Paths.get(logFilePath);
final Path logDirPath = Paths.get(logFilePath);
try (Stream<Path> stream = Files.list(logDirPath)) {
stream.filter(entry -> entry.getFileName().toString().endsWith(".log")).forEach(filePath -> {
Map<String, Object> map = new HashMap<>();
String name = filePath.getFileName().toString();
final Map<String, Object> map = new HashMap<>();
final String name = filePath.getFileName().toString();
map.put("id", Base64.getEncoder().encodeToString(name.getBytes(StandardCharsets.UTF_8)));
map.put("name", name);
try {
map.put("lastModified", new Date(Files.getLastModifiedTime(filePath).toMillis()));
} catch (IOException e) {
} catch (final IOException e) {
throw new IORuntimeException(e);
}
logFileItems.add(map);
});
} catch (Exception e) {
} catch (final Exception e) {
throw new FessSystemException("Failed to access log files.", e);
}
}

View file

@ -128,7 +128,7 @@ public class AdminSchedulerAction extends FessAdminAction {
scheduledJobForm.name =
ComponentUtil.getMessageManager().getMessage(LaRequestUtil.getRequest().getLocale(),
"labels." + type + "_job_title", name);
String[] ids = new String[] { "", "", "" };
final String[] ids = new String[] { "", "", "" };
if (Constants.WEB_CRAWLER_TYPE.equals(type)) {
ids[0] = "\"" + id + "\"";
} else if (Constants.FILE_CRAWLER_TYPE.equals(type)) {
@ -292,7 +292,7 @@ public class AdminSchedulerAction extends FessAdminAction {
// ===================================================================================
// Assist Logic
// ============
protected void loadScheduledJob(final EditForm form, ScheduledJob entity) {
protected void loadScheduledJob(final EditForm form, final ScheduledJob entity) {
copyBeanToBean(entity, form, op -> op.exclude("crudMode").excludeNull());
form.jobLogging = entity.isLoggingEnabled() ? Constants.ON : null;
form.crawler = entity.isCrawlerJob() ? Constants.ON : null;

View file

@ -282,7 +282,7 @@ public class AdminUserAction extends FessAdminAction {
}
}
protected void verifyPassword(final CreateForm form, VaErrorHook validationErrorLambda) {
protected void verifyPassword(final CreateForm form, final VaErrorHook validationErrorLambda) {
if (form.crudMode == CrudMode.CREATE && StringUtil.isBlank(form.password)) {
resetPassword(form);
throwValidationError(messages -> {

View file

@ -129,7 +129,7 @@ public class CreateForm implements Serializable {
sortOrder = 0;
createdBy = ComponentUtil.getSystemHelper().getUsername();
createdTime = ComponentUtil.getSystemHelper().getCurrentTimeAsLong();
String roles = ComponentUtil.getFessConfig().getSearchDefaultRoles();
final String roles = ComponentUtil.getFessConfig().getSearchDefaultRoles();
if (StringUtil.isNotBlank(roles)) {
roleTypeIds = StreamUtil.of(roles.split(",")).map(role -> role.trim()).toArray(n -> new String[n]);
}

View file

@ -178,7 +178,7 @@ public class AdminWizardAction extends FessAdminAction {
wConfig.setUpdatedTime(now);
wConfig.setUrls(configPath);
wConfig.setUserAgent(getDefaultString("default.config.web.userAgent", ComponentUtil.getUserAgentName()));
String roles = ComponentUtil.getFessConfig().getSearchDefaultRoles();
final String roles = ComponentUtil.getFessConfig().getSearchDefaultRoles();
if (StringUtil.isNotBlank(roles)) {
wConfig.setRoleTypeIds(StreamUtil.of(roles.split(",")).map(role -> role.trim()).toArray(n -> new String[n]));
}
@ -209,7 +209,7 @@ public class AdminWizardAction extends FessAdminAction {
fConfig.setUpdatedBy(username);
fConfig.setUpdatedTime(now);
fConfig.setPaths(configPath);
String roles = ComponentUtil.getFessConfig().getSearchDefaultRoles();
final String roles = ComponentUtil.getFessConfig().getSearchDefaultRoles();
if (StringUtil.isNotBlank(roles)) {
fConfig.setRoleTypeIds(StreamUtil.of(roles.split(",")).map(role -> role.trim()).toArray(n -> new String[n]));
}

View file

@ -102,7 +102,7 @@ public abstract class FessAdminAction extends FessBaseAction {
public ActionResponse godHandPrologue(final ActionRuntime runtime) {
try {
return super.godHandPrologue(runtime);
} catch (UserRoleLoginException e) {
} catch (final UserRoleLoginException e) {
return redirect(e.getActionClass());
}
}

View file

@ -59,7 +59,7 @@ public class LoginAction extends FessSearchAction {
form.clearSecurityInfo();
try {
return fessLoginAssist.loginRedirect(email, password, op -> {}, () -> getHtmlResponse());
} catch (LoginFailureException lfe) {
} catch (final LoginFailureException lfe) {
throwValidationError(messages -> messages.addErrorsLoginError(GLOBAL), () -> {
return asHtml(path_Login_IndexJsp);
});

View file

@ -372,7 +372,7 @@ public class SearchAction extends FessSearchAction {
}
@Override
public void setRequestedTime(long requestedTime) {
public void setRequestedTime(final long requestedTime) {
data.register("requestedTime", requestedTime);
super.setRequestedTime(requestedTime);
}

View file

@ -244,7 +244,7 @@ public abstract class AbstractFessFileTransformer extends AbstractFessXpathTrans
// url
putResultDataBody(dataMap, fessConfig.getIndexFieldUrl(), url);
// created
Date now = systemHelper.getCurrentTime();
final Date now = systemHelper.getCurrentTime();
putResultDataBody(dataMap, fessConfig.getIndexFieldCreated(), now);
// TODO anchor
putResultDataBody(dataMap, fessConfig.getIndexFieldAnchor(), StringUtil.EMPTY);
@ -257,7 +257,7 @@ public abstract class AbstractFessFileTransformer extends AbstractFessXpathTrans
// contentLength
putResultDataBody(dataMap, fessConfig.getIndexFieldContentLength(), Long.toString(responseData.getContentLength()));
// lastModified
Date lastModified = responseData.getLastModified();
final Date lastModified = responseData.getLastModified();
if (lastModified != null) {
putResultDataBody(dataMap, fessConfig.getIndexFieldLastModified(), lastModified);
// timestamp

View file

@ -256,7 +256,7 @@ public class FessXpathTransformer extends AbstractFessXpathTransformer {
// url
putResultDataBody(dataMap, fessConfig.getIndexFieldUrl(), url);
// created
Date now = systemHelper.getCurrentTime();
final Date now = systemHelper.getCurrentTime();
putResultDataBody(dataMap, fessConfig.getIndexFieldCreated(), now);
// anchor
putResultDataBody(dataMap, fessConfig.getIndexFieldAnchor(), getAnchorList(document, responseData));
@ -270,7 +270,7 @@ public class FessXpathTransformer extends AbstractFessXpathTransformer {
// contentLength
putResultDataBody(dataMap, fessConfig.getIndexFieldContentLength(), Long.toString(responseData.getContentLength()));
// lastModified
Date lastModified = responseData.getLastModified();
final Date lastModified = responseData.getLastModified();
if (lastModified != null) {
putResultDataBody(dataMap, fessConfig.getIndexFieldLastModified(), lastModified);
// timestamp

View file

@ -64,7 +64,7 @@ public class QueryContext {
}
public void addFunctionScore(final Consumer<FunctionScoreQueryBuilder> functionScoreQuery) {
FunctionScoreQueryBuilder builder = QueryBuilders.functionScoreQuery(queryBuilder);
final FunctionScoreQueryBuilder builder = QueryBuilders.functionScoreQuery(queryBuilder);
functionScoreQuery.accept(builder);
queryBuilder = builder;
}
@ -104,7 +104,7 @@ public class QueryContext {
return queryBuilder;
}
public void addFieldLog(String field, String text) {
public void addFieldLog(final String field, final String text) {
if (fieldLogMap == null) {
return;
}
@ -124,7 +124,7 @@ public class QueryContext {
return Collections.emptyList();
}
public void addHighlightedQuery(String text) {
public void addHighlightedQuery(final String text) {
if (highlightedQuerySet != null) {
highlightedQuerySet.add(text);
}

View file

@ -227,7 +227,7 @@ public class FessEsClient implements Client {
public void addTransportAddress(final String host, final int port) {
try {
transportAddressList.add(new InetSocketTransportAddress(InetAddress.getByName(host), port));
} catch (UnknownHostException e) {
} catch (final UnknownHostException e) {
throw new FessSystemException("Failed to resolve the hostname: " + host, e);
}
}
@ -399,12 +399,12 @@ public class FessEsClient implements Client {
if (ResourceUtil.isExist(dataPath)) {
try {
final BulkRequestBuilder builder = client.prepareBulk();
ObjectMapper mapper = new ObjectMapper();
final ObjectMapper mapper = new ObjectMapper();
Arrays.stream(FileUtil.readUTF8(dataPath).split("\n")).reduce(
(prev, line) -> {
try {
if (StringUtil.isBlank(prev)) {
Map<String, Map<String, String>> result =
final Map<String, Map<String, String>> result =
mapper.readValue(line, new TypeReference<Map<String, Map<String, String>>>() {
});
if (result.keySet().contains("index")) {
@ -415,7 +415,7 @@ public class FessEsClient implements Client {
return StringUtil.EMPTY;
}
} else {
Map<String, Map<String, String>> result =
final Map<String, Map<String, String>> result =
mapper.readValue(prev, new TypeReference<Map<String, Map<String, String>>>() {
});
if (result.keySet().contains("index")) {
@ -425,7 +425,7 @@ public class FessEsClient implements Client {
builder.add(requestBuilder);
}
}
} catch (Exception e) {
} catch (final Exception e) {
logger.warn("Failed to parse " + dataPath.toString());
}
return StringUtil.EMPTY;
@ -567,13 +567,13 @@ public class FessEsClient implements Client {
final FessConfig fessConfig = ComponentUtil.getFessConfig();
final Map<String, Object> source = hit.getSource();
if (source != null) {
Map<String, Object> docMap = new HashMap<>(source);
final Map<String, Object> docMap = new HashMap<>(source);
docMap.put(fessConfig.getIndexFieldId(), hit.getId());
return docMap;
}
final Map<String, SearchHitField> fields = hit.getFields();
if (fields != null) {
Map<String, Object> docMap =
final Map<String, Object> docMap =
fields.entrySet().stream()
.collect(Collectors.toMap(e -> e.getKey(), e -> (Object) e.getValue().getValues()));
docMap.put(fessConfig.getIndexFieldId(), hit.getId());
@ -607,13 +607,13 @@ public class FessEsClient implements Client {
final FessConfig fessConfig = ComponentUtil.getFessConfig();
final Map<String, Object> source = response.getSource();
if (source != null) {
Map<String, Object> docMap = new HashMap<>(source);
final Map<String, Object> docMap = new HashMap<>(source);
docMap.put(fessConfig.getIndexFieldId(), response.getId());
return docMap;
}
final Map<String, GetField> fields = response.getFields();
if (fields != null) {
Map<String, Object> docMap =
final Map<String, Object> docMap =
fields.entrySet().stream()
.collect(Collectors.toMap(e -> e.getKey(), e -> (Object) e.getValue().getValues()));
docMap.put(fessConfig.getIndexFieldId(), response.getId());
@ -643,13 +643,13 @@ public class FessEsClient implements Client {
final FessConfig fessConfig = ComponentUtil.getFessConfig();
final Map<String, Object> source = hit.getSource();
if (source != null) {
Map<String, Object> docMap = new HashMap<>(source);
final Map<String, Object> docMap = new HashMap<>(source);
docMap.put(fessConfig.getIndexFieldId(), hit.getId());
return docMap;
}
final Map<String, SearchHitField> fields = hit.getFields();
if (fields != null) {
Map<String, Object> docMap =
final Map<String, Object> docMap =
fields.entrySet().stream()
.collect(Collectors.toMap(e -> e.getKey(), e -> (Object) e.getValue().getValues()));
docMap.put(fessConfig.getIndexFieldId(), hit.getId());
@ -745,20 +745,20 @@ public class FessEsClient implements Client {
final FessConfig fessConfig = ComponentUtil.getFessConfig();
final BulkRequestBuilder bulkRequestBuilder = client.prepareBulk();
for (final Map<String, Object> doc : docList) {
Object id = doc.remove(fessConfig.getIndexFieldId());
final Object id = doc.remove(fessConfig.getIndexFieldId());
bulkRequestBuilder.add(client.prepareIndex(index, type, id.toString()).setSource(doc));
}
final BulkResponse response = bulkRequestBuilder.execute().actionGet();
if (response.hasFailures()) {
if (logger.isDebugEnabled()) {
List<ActionRequest> requests = bulkRequestBuilder.request().requests();
BulkItemResponse[] items = response.getItems();
final List<ActionRequest> requests = bulkRequestBuilder.request().requests();
final BulkItemResponse[] items = response.getItems();
if (requests.size() == items.length) {
for (int i = 0; i < requests.size(); i++) {
BulkItemResponse resp = items[i];
final BulkItemResponse resp = items[i];
if (resp.isFailed() && resp.getFailure() != null) {
ActionRequest req = requests.get(i);
Failure failure = resp.getFailure();
final ActionRequest req = requests.get(i);
final Failure failure = resp.getFailure();
logger.debug("Failed Request: " + req + "\n=>" + failure.getMessage());
}
}
@ -791,7 +791,7 @@ public class FessEsClient implements Client {
return this;
}
public SearchConditionBuilder administrativeAccess(boolean administrativeAccess) {
public SearchConditionBuilder administrativeAccess(final boolean administrativeAccess) {
this.administrativeAccess = administrativeAccess;
return this;
}
@ -1309,29 +1309,29 @@ public class FessEsClient implements Client {
@Override
public <Request extends ActionRequest, Response extends ActionResponse, RequestBuilder extends ActionRequestBuilder<Request, Response, RequestBuilder>> ActionFuture<Response> execute(
Action<Request, Response, RequestBuilder> action, Request request) {
final Action<Request, Response, RequestBuilder> action, final Request request) {
return client.execute(action, request);
}
@Override
public <Request extends ActionRequest, Response extends ActionResponse, RequestBuilder extends ActionRequestBuilder<Request, Response, RequestBuilder>> void execute(
Action<Request, Response, RequestBuilder> action, Request request, ActionListener<Response> listener) {
final Action<Request, Response, RequestBuilder> action, final Request request, final ActionListener<Response> listener) {
client.execute(action, request, listener);
}
@Override
public <Request extends ActionRequest, Response extends ActionResponse, RequestBuilder extends ActionRequestBuilder<Request, Response, RequestBuilder>> RequestBuilder prepareExecute(
Action<Request, Response, RequestBuilder> action) {
final Action<Request, Response, RequestBuilder> action) {
return client.prepareExecute(action);
}
@Override
public ActionFuture<TermVectorsResponse> termVectors(TermVectorsRequest request) {
public ActionFuture<TermVectorsResponse> termVectors(final TermVectorsRequest request) {
return client.termVectors(request);
}
@Override
public void termVectors(TermVectorsRequest request, ActionListener<TermVectorsResponse> listener) {
public void termVectors(final TermVectorsRequest request, final ActionListener<TermVectorsResponse> listener) {
client.termVectors(request, listener);
}
@ -1341,19 +1341,19 @@ public class FessEsClient implements Client {
}
@Override
public TermVectorsRequestBuilder prepareTermVectors(String index, String type, String id) {
public TermVectorsRequestBuilder prepareTermVectors(final String index, final String type, final String id) {
return client.prepareTermVectors(index, type, id);
}
@Override
@Deprecated
public ActionFuture<TermVectorsResponse> termVector(TermVectorsRequest request) {
public ActionFuture<TermVectorsResponse> termVector(final TermVectorsRequest request) {
return client.termVector(request);
}
@Override
@Deprecated
public void termVector(TermVectorsRequest request, ActionListener<TermVectorsResponse> listener) {
public void termVector(final TermVectorsRequest request, final ActionListener<TermVectorsResponse> listener) {
client.termVector(request, listener);
}
@ -1365,17 +1365,17 @@ public class FessEsClient implements Client {
@Override
@Deprecated
public TermVectorsRequestBuilder prepareTermVector(String index, String type, String id) {
public TermVectorsRequestBuilder prepareTermVector(final String index, final String type, final String id) {
return client.prepareTermVector(index, type, id);
}
@Override
public ActionFuture<MultiTermVectorsResponse> multiTermVectors(MultiTermVectorsRequest request) {
public ActionFuture<MultiTermVectorsResponse> multiTermVectors(final MultiTermVectorsRequest request) {
return client.multiTermVectors(request);
}
@Override
public void multiTermVectors(MultiTermVectorsRequest request, ActionListener<MultiTermVectorsResponse> listener) {
public void multiTermVectors(final MultiTermVectorsRequest request, final ActionListener<MultiTermVectorsResponse> listener) {
client.multiTermVectors(request, listener);
}
@ -1389,11 +1389,11 @@ public class FessEsClient implements Client {
return client.headers();
}
public void setSizeForDelete(int sizeForDelete) {
public void setSizeForDelete(final int sizeForDelete) {
this.sizeForDelete = sizeForDelete;
}
public void setScrollForDelete(String scrollForDelete) {
public void setScrollForDelete(final String scrollForDelete) {
this.scrollForDelete = scrollForDelete;
}

View file

@ -396,13 +396,13 @@ public class DataConfig extends BsDataConfig implements CrawlingConfig {
@Override
public Integer getTimeToLive() {
String value = getHandlerParameterMap().get("timeToLive");
final String value = getHandlerParameterMap().get("timeToLive");
if (StringUtil.isBlank(value)) {
return null;
}
try {
return Integer.parseInt(value);
} catch (NumberFormatException e) {
} catch (final NumberFormatException e) {
if (logger.isDebugEnabled()) {
logger.debug("Invalid format: " + value, e);
}

View file

@ -33,8 +33,6 @@ public class SearchLog extends BsSearchLog {
private static final long serialVersionUID = 1L;
private List<ClickLog> clickLogList;
private List<SearchFieldLog> searchFieldLogList;
private OptionalEntity<UserInfo> userInfo;
@ -56,7 +54,6 @@ public class SearchLog extends BsSearchLog {
}
public void setClickLogList(final List<ClickLog> clickLogList) {
this.clickLogList = clickLogList;
}
@ -101,7 +98,7 @@ public class SearchLog extends BsSearchLog {
}
@Override
public void setUserInfoId(String value) {
public void setUserInfoId(final String value) {
userInfo = null;
super.setUserInfoId(value);
}

View file

@ -36,7 +36,7 @@ public class Group extends BsGroup {
return asDocMeta().id();
}
public void setId(String id) {
public void setId(final String id) {
asDocMeta().id(id);
}

View file

@ -36,7 +36,7 @@ public class Role extends BsRole {
return asDocMeta().id();
}
public void setId(String id) {
public void setId(final String id) {
asDocMeta().id(id);
}
}

View file

@ -40,7 +40,7 @@ public class User extends BsUser {
return asDocMeta().id();
}
public void setId(String id) {
public void setId(final String id) {
asDocMeta().id(id);
}

View file

@ -21,9 +21,9 @@ public class UserRoleLoginException extends RuntimeException {
private static final long serialVersionUID = 1L;
private Class<?> actionClass;
private final Class<?> actionClass;
public UserRoleLoginException(Class<RootAction> actionClass) {
public UserRoleLoginException(final Class<RootAction> actionClass) {
this.actionClass = actionClass;
}

View file

@ -320,7 +320,7 @@ public class Crawler implements Serializable {
final CrawlingSessionHelper crawlingSessionHelper = ComponentUtil.getCrawlingSessionHelper();
boolean completed = false;
int exitCode = Constants.EXIT_OK;
final int exitCode = Constants.EXIT_OK;
try {
writeTimeToSessionInfo(crawlingSessionHelper, Constants.CRAWLER_START_TIME);

View file

@ -134,17 +134,17 @@ public class SuggestCreator implements Serializable {
try {
latch.await();
} catch (InterruptedException ignore) {}
} catch (final InterruptedException ignore) {}
return result.get();
}
private int purge(LocalDateTime time) {
private int purge(final LocalDateTime time) {
final SuggestHelper suggestHelper = ComponentUtil.getSuggestHelper();
try {
suggestHelper.purge(time);
return 0;
} catch (Exception e) {
} catch (final Exception e) {
logger.info("Purge error.", e);
return 1;
}

View file

@ -126,8 +126,8 @@ public class CrawlingSessionHelper implements Serializable {
}
public Date getDocumentExpires(CrawlingConfig config) {
Integer timeToLive = config.getTimeToLive();
public Date getDocumentExpires(final CrawlingConfig config) {
final Integer timeToLive = config.getTimeToLive();
if (timeToLive != null) {
// timeToLive minutes
final long now = ComponentUtil.getSystemHelper().getCurrentTimeAsLong();

View file

@ -62,7 +62,7 @@ public class KeyMatchHelper {
.stream()
.forEach(
keyMatch -> {
BoolQueryBuilder boolQuery = QueryBuilders.boolQuery();
final BoolQueryBuilder boolQuery = QueryBuilders.boolQuery();
getDocumentList(keyMatch).stream().map(doc -> {
return DocumentUtil.getValue(doc, fessConfig.getIndexFieldDocId(), String.class);
}).forEach(docId -> {
@ -108,16 +108,16 @@ public class KeyMatchHelper {
this.reloadInterval = reloadInterval;
}
public void buildQuery(List<String> keywordList, FunctionScoreQueryBuilder functionScoreQuery) {
public void buildQuery(final List<String> keywordList, final FunctionScoreQueryBuilder functionScoreQuery) {
keywordList.stream().forEach(keyword -> {
Pair<QueryBuilder, ScoreFunctionBuilder> pair = keyMatchQueryMap.get(toLowerCase(keyword));
final Pair<QueryBuilder, ScoreFunctionBuilder> pair = keyMatchQueryMap.get(toLowerCase(keyword));
if (pair != null) {
functionScoreQuery.add(pair.getFirst(), pair.getSecond());
}
});
}
private String toLowerCase(String term) {
private String toLowerCase(final String term) {
return term != null ? term.toLowerCase(Locale.ROOT) : term;
}

View file

@ -246,7 +246,7 @@ public class QueryHelper implements Serializable {
final Set<String> roleSet = roleQueryHelper.build();
if (!roleSet.isEmpty()) {
queryContext.addQuery(boolQuery -> {
BoolQueryBuilder roleQuery = QueryBuilders.boolQuery();
final BoolQueryBuilder roleQuery = QueryBuilders.boolQuery();
roleSet.stream().forEach(name -> {
roleQuery.should(QueryBuilders.termQuery(fessConfig.getIndexFieldRole(), name));
});

View file

@ -121,7 +121,7 @@ public class SearchLogHelper {
userInfoBhv.insertOrUpdate(userInfo);
}).start();
}).orElse(() -> {
UserInfo userInfo = new UserInfo();
final UserInfo userInfo = new UserInfo();
userInfo.setId(userCode);
userInfo.setCreatedAt(now);
userInfo.setUpdatedAt(now);
@ -247,14 +247,14 @@ public class SearchLogHelper {
new String[] { fessConfig.getIndexFieldDocId() })
.forEach(
doc -> {
String id = DocumentUtil.getValue(doc, fessConfig.getIndexFieldDocId(), String.class);
String docId = DocumentUtil.getValue(doc, fessConfig.getIndexFieldDocId(), String.class);
final String id = DocumentUtil.getValue(doc, fessConfig.getIndexFieldDocId(), String.class);
final String docId = DocumentUtil.getValue(doc, fessConfig.getIndexFieldDocId(), String.class);
if (id != null && docId != null && clickCountMap.containsKey(docId)) {
Integer count = clickCountMap.get(docId);
Script script =
final Integer count = clickCountMap.get(docId);
final Script script =
new Script("ctx._source." + fessConfig.getIndexFieldClickCount() + "+="
+ count.toString());
Map<String, Object> upsertMap = new HashMap<>();
final Map<String, Object> upsertMap = new HashMap<>();
upsertMap.put(fessConfig.getIndexFieldClickCount(), 1);
builder.add(new UpdateRequest(fessConfig.getIndexDocumentIndex(), fessConfig
.getIndexDocumentType(), id).script(script).upsert(upsertMap));

View file

@ -132,14 +132,14 @@ public class SuggestHelper {
while (!initialized.get()) {
try {
Thread.sleep(100);
} catch (Exception e) {
} catch (final Exception e) {
error.accept(e);
return;
}
}
final FessConfig fessConfig = ComponentUtil.getFessConfig();
DocumentReader reader =
final DocumentReader reader =
new ESSourceReader(fessEsClient, suggester.settings(), fessConfig.getIndexDocumentIndex(),
fessConfig.getIndexDocumentType());
@ -152,8 +152,8 @@ public class SuggestHelper {
}).error(t -> error.accept(t));
}
public void purge(LocalDateTime time) {
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
public void purge(final LocalDateTime time) {
final BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
boolQueryBuilder.must(QueryBuilders.rangeQuery(FieldNames.TIMESTAMP).lt(time.format(DateTimeFormatter.BASIC_ISO_DATE)));
boolQueryBuilder.must(QueryBuilders.termQuery(FieldNames.KINDS, SuggestItem.Kind.DOCUMENT.toString()));

View file

@ -161,7 +161,7 @@ public class ViewHelper implements Serializable {
final Set<String> queries = new HashSet<>();
LaRequestUtil.getOptionalRequest().ifPresent(request -> {
@SuppressWarnings("unchecked")
Set<String> set = (Set<String>) request.getAttribute(Constants.HIGHLIGHT_QUERIES);
final Set<String> set = (Set<String>) request.getAttribute(Constants.HIGHLIGHT_QUERIES);
if (set != null) {
queries.addAll(set);
}

View file

@ -76,7 +76,7 @@ public class RoleQueryHelperImpl implements RoleQueryHelper, Serializable {
protected Map<String, String> cookieNameMap;
private List<String> defaultRoleList = new ArrayList<>();
private final List<String> defaultRoleList = new ArrayList<>();
@PostConstruct
public void init() {
@ -119,7 +119,7 @@ public class RoleQueryHelperImpl implements RoleQueryHelper, Serializable {
fessUserBean -> StreamUtil.of(fessUserBean.getRoles()).map(role -> Base64.getDecoder().decode(role)).map(role -> {
try {
return Optional.of(new String(role, Constants.UTF_8));
} catch (IOException e) {
} catch (final IOException e) {
return null;
}
}).forEach(role -> role.ifPresent(roleList::add)));

View file

@ -36,7 +36,7 @@ public class PurgeLogJob {
final JobLogService jobLogService = ComponentUtil.getComponent(JobLogService.class);
final UserInfoService userInfoService = ComponentUtil.getComponent(UserInfoService.class);
final DynamicProperties crawlerProperties = ComponentUtil.getCrawlerProperties();
SystemHelper systemHelper = ComponentUtil.getSystemHelper();
final SystemHelper systemHelper = ComponentUtil.getSystemHelper();
final StringBuilder resultBuf = new StringBuilder();

View file

@ -130,7 +130,8 @@ public class FessFwAssistantDirector extends CachedFwAssistantDirector {
direction.directApiCall(createApiFailureHook());
direction.directMultipart(() -> new FessMultipartRequestHandler());
direction.directHtmlRendering(new JspHtmlRenderingProvider() {
protected String getShowErrorsForwardPath(ActionRuntime runtime) {
@Override
protected String getShowErrorsForwardPath(final ActionRuntime runtime) {
if (FessAdminAction.class.isAssignableFrom(runtime.getActionType())) {
return "/admin/error/error.jsp";
} else {