music-downloader/app/model/SearchModel.js

25 lines
566 B
JavaScript

class SearchModel {
constructor() {
this.source_models = {};
}
registerSourceModel(source_model) {
this.source_models[source_model.getName()] = source_model;
}
getSourceList() {
return Object.keys(this.source_models);
}
async searchMusic(source_name, keywords) {
if(this.source_models.hasOwnProperty(source_name)) {
return await this.source_models[source_name].search(keywords);
}else {
return "无效的搜索源";
}
}
}
module.exports = {
SearchModel
}