Els Service: get Artists
This commit is contained in:
@@ -277,6 +277,39 @@ export class ElsService {
|
|||||||
.map((hits: Array<any>) => this.hitsToBuckets(hits));
|
.map((hits: Array<any>) => this.hitsToBuckets(hits));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
getArtists(): Observable<Bucket[]> {
|
||||||
|
return this.http
|
||||||
|
.post(this.elsUrl + 'artist' + ElsService.ACTION_SEARCH,
|
||||||
|
JSON.stringify({
|
||||||
|
'size': 100,
|
||||||
|
'_source': [
|
||||||
|
'Artist',
|
||||||
|
'Track Count'
|
||||||
|
],
|
||||||
|
'sort': [
|
||||||
|
{
|
||||||
|
'Track Count': {
|
||||||
|
'order': 'desc'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}), {headers: this.headers})
|
||||||
|
.map(res => {
|
||||||
|
return res.json().hits.hits;
|
||||||
|
})
|
||||||
|
.map((hits: Array<any>) => {
|
||||||
|
const result: Array<Bucket> = [];
|
||||||
|
hits.forEach((hit) => {
|
||||||
|
const bucket = new Bucket;
|
||||||
|
bucket.doc_count = hit._source['Track Count'];
|
||||||
|
bucket.key = hit._source.Artist;
|
||||||
|
result.push(bucket);
|
||||||
|
});
|
||||||
|
console.log(result);
|
||||||
|
return result;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
getGenreCount(): Observable<number> {
|
getGenreCount(): Observable<number> {
|
||||||
return this.http
|
return this.http
|
||||||
.post(this.elsUrl + 'song' + ElsService.ACTION_SEARCH,
|
.post(this.elsUrl + 'song' + ElsService.ACTION_SEARCH,
|
||||||
|
|||||||
Reference in New Issue
Block a user