Skip to content
Snippets Groups Projects
Commit 08a02f53 authored by Shinsuke Sugaya's avatar Shinsuke Sugaya
Browse files

modify administrative access for search

parent 32622c81
No related branches found
No related tags found
No related merge requests found
......@@ -765,5 +765,10 @@ public class JsonApiManager extends BaseApiManager {
return pageSize;
}
@Override
public boolean isAdministrativeAccess() {
return false;
}
}
}
......@@ -137,7 +137,8 @@ public class SearchService {
searchRequestBuilder -> {
return SearchConditionBuilder.builder(searchRequestBuilder).query(query).offset(pageStart).size(pageSize)
.facetInfo(params.getFacetInfo()).geoInfo(params.getGeoInfo())
.responseFields(queryHelper.getResponseFields()).build();
.responseFields(queryHelper.getResponseFields()).administrativeAccess(params.isAdministrativeAccess())
.build();
}, (searchRequestBuilder, execTime, searchResponse) -> {
final QueryResponseList queryResponseList = ComponentUtil.getQueryResponseList();
queryResponseList.init(searchResponse, pageStart, pageSize);
......
......@@ -41,7 +41,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* @author codelibs
* @author shinsuke
* @author Keiichi Watanabe
*/
public class AdminSearchlistAction extends FessAdminAction {
......
......@@ -140,4 +140,9 @@ public class ListForm implements SearchRequestParams, Serializable {
}
}
@Override
public boolean isAdministrativeAccess() {
return true;
}
}
......@@ -135,4 +135,9 @@ public class SearchForm implements SearchRequestParams, Serializable {
public String getSort() {
return sort;
}
@Override
public boolean isAdministrativeAccess() {
return false;
}
}
......@@ -39,4 +39,6 @@ public interface SearchRequestParams {
int getPageSize();
boolean isAdministrativeAccess();
}
......@@ -775,8 +775,8 @@ public class FessEsClient implements Client {
return this;
}
public SearchConditionBuilder administrativeAccess() {
administrativeAccess = true;
public SearchConditionBuilder administrativeAccess(boolean administrativeAccess) {
this.administrativeAccess = administrativeAccess;
return this;
}
......
......@@ -89,10 +89,13 @@ public class KeyMatchHelper {
final FessEsClient fessEsClient = ComponentUtil.getElasticsearchClient();
final FessConfig fessConfig = ComponentUtil.getFessConfig();
final List<Map<String, Object>> documentList =
fessEsClient.getDocumentList(fessConfig.getIndexDocumentIndex(), fessConfig.getIndexDocumentType(),
fessEsClient.getDocumentList(
fessConfig.getIndexDocumentIndex(),
fessConfig.getIndexDocumentType(),
searchRequestBuilder -> {
return SearchConditionBuilder.builder(searchRequestBuilder).administrativeAccess().size(keyMatch.getMaxSize())
.query(keyMatch.getQuery()).responseFields(new String[] { fessConfig.getIndexFieldDocId() }).build();
return SearchConditionBuilder.builder(searchRequestBuilder).administrativeAccess(true)
.size(keyMatch.getMaxSize()).query(keyMatch.getQuery())
.responseFields(new String[] { fessConfig.getIndexFieldDocId() }).build();
});
return documentList;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment