Project

General

Profile

« Previous | Next » 

Revision 44733

create methods to get projects and data repositories for entity registries

View differences:

searchProjects.service.ts
42 42
                      this._cache.set(key, res);
43 43
                    });
44 44
    }
45
    getProjectsforDataProvider (datasourceId: string, page: number, size: number ):any {
46
      let url = OpenaireProperties.getSearchResourcesAPIURL();
47
      var basicQuery = "(oaftype exact project) "
48
      url += "?query=";
49
      if(datasourceId!= null && datasourceId != ''  ) {
50
        url +=" ( "+basicQuery+ " ) " +" and (collectedfromdatasourceid exact \"" + datasourceId + "\")";
51
      }else{
52
        url +=" ( "+basicQuery+ " ) ";
53
      }
54

  
55
      url += "&page="+(page-1)+"&size="+size;
56
      url += "&format=json";
57
      let key = url;
58
      if (this._cache.has(key)) {
59
        return Observable.of(this._cache.get(key));
60
      }
61
      return this.http.get(url)
62
      .map(res => <any> res.json())
63
      .map(res => [res['meta'].total, this.parseResults(res['results'])])
64
      .do(res => {
65
        this._cache.set(key, res);
66
      });
67
    }
45 68
    advancedSearchProjects (params: string, page: number, size: number ):any {
46 69
      let url = OpenaireProperties.getSearchResourcesAPIURL();
47 70
      var basicQuery = "(oaftype exact project) "

Also available in: Unified diff