This is the codeAbility Sharing Platform! Learn more about the codeAbility Sharing Platform.

Skip to content
Snippets Groups Projects
Commit e561be8e authored by Michael Breu's avatar Michael Breu :speech_balloon:
Browse files

Intermediate commit

parent b1fa4838
2 merge requests!55June Release,!51Usability improvement type search
Showing with 26 additions and 15 deletions
...@@ -8,7 +8,7 @@ import at.ac.uibk.gitsearch.service.dto.SearchInputDTO; ...@@ -8,7 +8,7 @@ import at.ac.uibk.gitsearch.service.dto.SearchInputDTO;
public interface GitFilesRepository { public interface GitFilesRepository {
GitFilesPageDetailsDTO pageDetails(SearchInputDTO searchInputDTO, int pageSize) throws IOException; GitFilesPageDetailsDTO pageDetails(SearchInputDTO searchInputDTO) throws IOException;
GitFilesAggregationDTO aggregation(String query) throws IOException; GitFilesAggregationDTO aggregation(String query) throws IOException;
} }
...@@ -326,7 +326,7 @@ public class MetaDataRepository { ...@@ -326,7 +326,7 @@ public class MetaDataRepository {
* @return the search hits. * @return the search hits.
* @throws IOException when search index is not available. * @throws IOException when search index is not available.
*/ */
public SearchResultsDTO pageDetails(SearchInputDTO searchInputDTO, int pageSize, Optional<User> user) public SearchResultsDTO pageDetails(org.codeability.sharing.plugins.api.search.SearchInputDTO searchInputDTO, Optional<User> user)
throws IOException { throws IOException {
fillAutoCompletion(); fillAutoCompletion();
...@@ -401,8 +401,8 @@ public class MetaDataRepository { ...@@ -401,8 +401,8 @@ public class MetaDataRepository {
.boundaryScannerType(HighlightBuilder.BoundaryScannerType.SENTENCE).fragmentSize(FRAGMENT_SIZE); .boundaryScannerType(HighlightBuilder.BoundaryScannerType.SENTENCE).fragmentSize(FRAGMENT_SIZE);
SearchSourceBuilder sourceBuilder = new SearchSourceBuilder(); SearchSourceBuilder sourceBuilder = new SearchSourceBuilder();
sourceBuilder.query(queryBuilder).highlighter(highlightBuilder).size(pageSize) sourceBuilder.query(queryBuilder).highlighter(highlightBuilder).size(searchInputDTO.getPageSize())
.from((searchInputDTO.getPage()) * pageSize); .from((searchInputDTO.getPage()) * searchInputDTO.getPageSize());
searchRequest.source(sourceBuilder); searchRequest.source(sourceBuilder);
......
...@@ -130,11 +130,11 @@ public class SearchService { ...@@ -130,11 +130,11 @@ public class SearchService {
* @param first the index of the first record to be returned * @param first the index of the first record to be returned
* @param pageLength the number of records on each page * @param pageLength the number of records on each page
*/ */
public SearchResultsDTO searchResultPage(SearchInputDTO searchInput, int pageLength) throws IOException { public SearchResultsDTO searchResultPage(org.codeability.sharing.plugins.api.search.SearchInputDTO searchInput) throws IOException {
final Optional<User> principal = tokenProvider.getCurrentPrincipal(); final Optional<User> principal = tokenProvider.getCurrentPrincipal();
log.debug("Searchrequest for {} ", searchInput); log.debug("Searchrequest for {} ", searchInput);
final SearchResultsDTO pageDetails = metaDataRepository.pageDetails(searchInput, pageLength, final SearchResultsDTO pageDetails = metaDataRepository.pageDetails(searchInput,
principal); principal);
pageDetails.getSearchResult().stream() pageDetails.getSearchResult().stream()
......
...@@ -10,7 +10,7 @@ public class SearchInputDTO { ...@@ -10,7 +10,7 @@ public class SearchInputDTO {
private List<String> selectedFileFormat; private List<String> selectedFileFormat;
private int page; private int page;
public static final int PAGE_SIZE = 10; private int pageSize = 10;
public SearchInputDTO() { public SearchInputDTO() {
// empty for jackson // empty for jackson
...@@ -76,7 +76,19 @@ public class SearchInputDTO { ...@@ -76,7 +76,19 @@ public class SearchInputDTO {
this.page = page; this.page = page;
} }
public boolean hasMetadataInput() { /**
* @return the pageSize
*/
public int getPageSize() {
return pageSize;
}
/**
* @param pageSize the pageSize to set
*/
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
public boolean hasMetadataInput() {
return this.metadata.hasMetadataInput(); return this.metadata.hasMetadataInput();
} }
......
...@@ -83,7 +83,7 @@ public class PluginInterfaceResource { ...@@ -83,7 +83,7 @@ public class PluginInterfaceResource {
sc.setAuthentication(gitLabAuthentication); sc.setAuthentication(gitLabAuthentication);
log.debug("REST request to search {}", searchRequest.getQuery()); log.debug("REST request to search {}", searchRequest.getQuery());
return PluginSearchResultsDTOMapper.INSTANCE.searchResultsToPlugin( return PluginSearchResultsDTOMapper.INSTANCE.searchResultsToPlugin(
searchService.searchResultPage(PluginSearchInputDTOMapper.INSTANCE.searchInputFromPlugin(searchRequest.getQuery()), SearchInputDTO.PAGE_SIZE) searchService.searchResultPage(PluginSearchInputDTOMapper.INSTANCE.searchInputFromPlugin(searchRequest.getQuery()))
); );
} }
......
...@@ -9,7 +9,6 @@ import java.util.Optional; ...@@ -9,7 +9,6 @@ import java.util.Optional;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.io.InputStreamResource; import org.springframework.core.io.InputStreamResource;
import org.springframework.core.io.Resource; import org.springframework.core.io.Resource;
import org.springframework.http.MediaType; import org.springframework.http.MediaType;
...@@ -66,9 +65,9 @@ public class SearchResource { ...@@ -66,9 +65,9 @@ public class SearchResource {
*/ */
@PostMapping("/search/page-details") @PostMapping("/search/page-details")
public SearchResultsDTO public SearchResultsDTO
searchPageDetails(@RequestBody SearchInputDTO query) throws IOException { searchPageDetails(@RequestBody org.codeability.sharing.plugins.api.search.SearchInputDTO query) throws IOException {
log.debug("REST request to search {}", query); log.debug("REST request to search {}", query);
return searchService.searchResultPage(query, SearchInputDTO.PAGE_SIZE); return searchService.searchResultPage(query);
} }
/** /**
......
...@@ -29,7 +29,7 @@ class GitFilesRepositoryImplIT { ...@@ -29,7 +29,7 @@ class GitFilesRepositoryImplIT {
void testPageDetails() throws IOException { void testPageDetails() throws IOException {
final SearchInputMetadataDTO searchMetadata = new SearchInputMetadataDTO(null, "testing", null, null, null,null); final SearchInputMetadataDTO searchMetadata = new SearchInputMetadataDTO(null, "testing", null, null, null,null);
SearchInputDTO searchQuery = new SearchInputDTO(null, searchMetadata, null, null, null, 0); SearchInputDTO searchQuery = new SearchInputDTO(null, searchMetadata, null, null, null, 0);
GitFilesPageDetailsDTO searchResultPage = gitFilesRepository.pageDetails(searchQuery, SearchInputDTO.PAGE_SIZE); GitFilesPageDetailsDTO searchResultPage = gitFilesRepository.pageDetails(searchQuery);
} }
// @Test // @Test
......
...@@ -146,7 +146,7 @@ public class SearchServiceIT { ...@@ -146,7 +146,7 @@ public class SearchServiceIT {
public void testKeywordSearch() throws IOException { public void testKeywordSearch() throws IOException {
final SearchInputMetadataDTO searchMetadata = new SearchInputMetadataDTO(null, "latex", null, null, null,null); final SearchInputMetadataDTO searchMetadata = new SearchInputMetadataDTO(null, "latex", null, null, null,null);
SearchInputDTO searchQuery = new SearchInputDTO(null, searchMetadata, null, null, null, 0); SearchInputDTO searchQuery = new SearchInputDTO(null, searchMetadata, null, null, null, 0);
SearchResultsDTO searchResultPage = searchService.searchResultPage(searchQuery, SearchInputDTO.PAGE_SIZE); SearchResultsDTO searchResultPage = searchService.searchResultPage(searchQuery);
org.junit.Assert.assertNotNull(searchResultPage.getSearchResult()); org.junit.Assert.assertNotNull(searchResultPage.getSearchResult());
org.junit.Assert.assertTrue("At least one test hit", searchResultPage.getHitCount() >= 1); org.junit.Assert.assertTrue("At least one test hit", searchResultPage.getHitCount() >= 1);
......
...@@ -169,7 +169,7 @@ public class PluginInterfaceResourceIT { ...@@ -169,7 +169,7 @@ public class PluginInterfaceResourceIT {
// just load everything from index :-) // just load everything from index :-)
final SearchInputMetadataDTO searchMetadata = new SearchInputMetadataDTO(null, null, null, null, null,null); final SearchInputMetadataDTO searchMetadata = new SearchInputMetadataDTO(null, null, null, null, null,null);
SearchInputDTO searchQuery = new SearchInputDTO(null, searchMetadata, null, null, null, 0); SearchInputDTO searchQuery = new SearchInputDTO(null, searchMetadata, null, null, null, 0);
SearchResultsDTO results = searchService.searchResultPage(searchQuery, SearchInputDTO.PAGE_SIZE); SearchResultsDTO results = searchService.searchResultPage(searchQuery);
Assert.assertTrue("At least one hit?", results.getSearchResult().size() >= 1); Assert.assertTrue("At least one hit?", results.getSearchResult().size() >= 1);
org.codeability.sharing.plugins.api.search.SearchResultsDTO mappedResults = resultsMapper.searchResultsToPlugin(results); org.codeability.sharing.plugins.api.search.SearchResultsDTO mappedResults = resultsMapper.searchResultsToPlugin(results);
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment