Skip to content
Snippets Groups Projects
Commit d06e8d93 authored by lotte's avatar lotte
Browse files

small fixes

parent 1231d3eb
No related branches found
No related tags found
No related merge requests found
......@@ -11,6 +11,7 @@ import { ResponseCacheService } from '../../../core/cache/response-cache.service
import { ResponseParsingService } from '../../../core/data/parsing.service';
import { GenericConstructor } from '../../../core/shared/generic-constructor';
import { FilteredDiscoveryPageResponseParsingService } from '../../../core/data/filtered-discovery-page-response-parsing.service';
import { hasValue } from '../../../shared/empty.util';
@Injectable()
export class SearchFixedFilterService {
......@@ -23,31 +24,34 @@ export class SearchFixedFilterService {
}
getQueryByFilterName(filterName?: string): Observable<string> {
const requestObs = this.halService.getEndpoint(this.queryByFilterPath).pipe(
map((url: string) => {
url += ('/' + filterName);
const request = new GetRequest(this.requestService.generateRequestId(), url);
return Object.assign(request, {
getResponseParser(): GenericConstructor<ResponseParsingService> {
return FilteredDiscoveryPageResponseParsingService;
}
});
}),
);
const responseCacheObs = requestObs.pipe(
flatMap((request: RestRequest) => this.responseCache.get(request.href))
);
// get search results from response cache
const filterQuery: Observable<string> = responseCacheObs.pipe(
map((entry: ResponseCacheEntry) => entry.response),
map((response: FilteredDiscoveryQueryResponse) =>
response.filterQuery
));
return filterQuery;
getQueryByFilterName(filterName: string): Observable<string> {
if (hasValue(filterName)) {
const requestObs = this.halService.getEndpoint(this.queryByFilterPath).pipe(
map((url: string) => {
url += ('/' + filterName);
const request = new GetRequest(this.requestService.generateRequestId(), url);
return Object.assign(request, {
getResponseParser(): GenericConstructor<ResponseParsingService> {
return FilteredDiscoveryPageResponseParsingService;
}
});
}),
);
const responseCacheObs = requestObs.pipe(
flatMap((request: RestRequest) => this.responseCache.get(request.href))
);
// get search results from response cache
const filterQuery: Observable<string> = responseCacheObs.pipe(
map((entry: ResponseCacheEntry) => entry.response),
map((response: FilteredDiscoveryQueryResponse) =>
response.filterQuery
));
return filterQuery;
}
return Observable.of(undefined);
}
}
......@@ -16,7 +16,7 @@ export class SearchResponseParsingService implements ResponseParsingService {
}
parse(request: RestRequest, data: DSpaceRESTV2Response): RestResponse {
const payload = data.payload._embedded.searchResult;
const payload = data.payload/*._embedded.searchResult*/;
const hitHighlights = payload._embedded.objects
.map((object) => object.hitHighlights)
.map((hhObject) => {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment