argos/dmp-frontend/src/app/services/server.service.ts

193 lines
4.8 KiB
TypeScript
Raw Normal View History

import { Injectable, ReflectiveInjector, Injector } from '@angular/core';
import { JsonObjest } from '../../app/entities/JsonObject.class';
import { DatasetProfile } from '../entities/datasetprofile';
import { Project } from '../entities/model/project';
import { RestBase } from './rest-base';
2017-10-17 11:13:10 +02:00
import 'rxjs/Rx';
import './../../assets/xml2json.min.js';
declare var X2JS: any;
@Injectable()
export class ServerService {
2017-11-08 11:35:56 +01:00
constructor(private restBase: RestBase) {
}
2017-10-18 18:08:21 +02:00
public listDatasetIDs() {
2017-10-18 18:08:21 +02:00
return this.restBase.get("dataset");
}
public getAllDatasets() {
return this.restBase.get("getAllDatasets");
2017-10-18 18:08:21 +02:00
}
public getAllDatasetIDs(datasetId: string) {
return this.restBase.get("dataset/" + datasetId);
2017-10-18 18:08:21 +02:00
}
public getDatasetByID(datasetId: string) {
return this.restBase.get("datasets/" + datasetId);
2017-11-01 11:27:05 +01:00
}
public setDataset(dataset) {
2017-11-01 11:27:05 +01:00
return this.restBase.post("dataset/update", dataset);
}
2017-10-18 18:08:21 +02:00
public getAllDmps() {
2017-10-18 18:08:21 +02:00
return this.restBase.get("dmp/getAll");
}
public listDmpsLabelID() {
2017-10-18 18:08:21 +02:00
return this.restBase.get("dmp/listDMPLabelID");
}
2017-10-18 18:08:21 +02:00
public getDmp(dmpid: string, eager?: boolean) {
if (eager)
return this.restBase.get("dmps/" + dmpid, { "eager": true });
2017-12-07 16:15:28 +01:00
else
return this.restBase.get("dmps/" + dmpid, { "eager": true });
2017-10-18 18:08:21 +02:00
}
2017-12-07 16:15:28 +01:00
public getDmpHistory(dmpid: string) {
return this.restBase.get("dmp/history/" + dmpid);
}
public listDmpIDs() {
2017-10-18 18:08:21 +02:00
return this.restBase.get("dmps");
}
public listProjectIDs() {
2017-10-18 18:08:21 +02:00
return this.restBase.get("projects");
}
public getAllProjects() {
2017-10-18 18:08:21 +02:00
return this.restBase.get("project/getAll");
}
public getProject(projectID: string, eager?: boolean) {
if (eager)
return this.restBase.get("projects/" + projectID, { "eager": true });
2017-11-24 09:39:24 +01:00
else
return this.restBase.get("projects/" + projectID, { "eager": false });
2017-10-18 18:08:21 +02:00
}
public listProjectsLabelID() {
2017-10-18 18:08:21 +02:00
return this.restBase.get("project/listAllLabelIDs");
}
public listDmpsUser() {
2017-10-23 18:16:04 +02:00
return this.restBase.get("dmp/listDMPLabelID");
}
public getProjectsOfUser() {
2017-10-23 18:16:04 +02:00
return this.restBase.get("project/getofuser");
}
public createProject(data: any) {
2017-10-23 18:16:04 +02:00
return this.restBase.post("project/createofuser", data);
}
public updateProject(data: any) {
2017-11-06 17:25:23 +01:00
return this.restBase.post("project/update", data);
}
public getDmpsOfProject(projectID: string) {
return this.restBase.get("project/dmps", { "id": projectID });
}
public getAllDataSet() {
return this.restBase.get("dataset/getAll");
}
public getDmpOfUser() {
return this.restBase.get("dmp/getofuser");
}
public createDmpForCurrentUser(data: any) {
return this.restBase.post("dmp/createofuser", data);
2017-10-27 09:48:53 +02:00
}
public updateDmp(data: any) {
2017-11-01 12:30:39 +01:00
return this.restBase.post("dmp/update", data);
}
public cloneDmp(data: any) {
2017-11-07 10:45:19 +01:00
return this.restBase.post("dmp/cloneforuser", data);
}
public deleteDmp(dmp: any) {
2017-11-06 14:11:03 +01:00
return this.restBase.post("dmp/softdelete", dmp);
}
public getDatasetForDmp(data: any) {
return this.restBase.post("dmp/getdatasets", data);
}
2017-10-27 16:08:10 +02:00
public createDatasetForDmp(data: any) {
return this.restBase.post("dataset/create", data);
}
2017-10-27 16:08:10 +02:00
public getAllDatsetsProfile() {
return this.restBase.get("datasetprofile/getAll");
}
2017-10-30 15:56:50 +01:00
public getDatasetProfileByID(id) {
return this.restBase.get("datasetprofiles/" + id);
}
2017-10-30 17:37:17 +01:00
public updateDatsetsProfile(data: any) {
return this.restBase.post("dataset/update", data);
}
public deleteDataset(dataset: any) {
return this.restBase.post("dataset/softdelete", dataset);
}
2017-11-06 14:11:03 +01:00
public getUserByID(id: string) {
return this.restBase.get("users/" + id);
}
2017-11-06 14:11:03 +01:00
public whoami() {
return this.restBase.get("user/whoami");
}
2017-11-06 14:11:03 +01:00
public updateDataset(id: string, properties: any) {
return this.restBase.post("datasetprofile/save/" + id, properties);
2017-12-05 17:56:21 +01:00
}
2017-12-07 16:15:28 +01:00
public getSingleDataset(id) {
return this.restBase.get("datasetprofile/get/" + id);
2017-11-01 18:18:27 +01:00
}
getThroughProxy(url: string, query: string) {
2017-11-08 14:33:14 +01:00
return this.restBase.proxy_get_wQuery(url, query);
}
public searchDatasetRegistry(like: string) {
return this.restBase.get("external/registries" + "?query=" + like);
}
public searchDatasetRepository(like: string) {
return this.restBase.get("external/datarepos" + "?query=" + like);
}
public searchDatasetService(like: string) {
return this.restBase.get("external/services" + "?query=" + like);
}
public searchDMPResearchers(like: string) {
return this.restBase.get("external/researchers" + "?query=" + like);
}
public searchDMPOrganizations(like: string) {
return this.restBase.get("external/organisations" + "?query=" + like);
}
}