+
+ /***
+ ** Targets
+ ***/
+ getTargets(serverID: string): Observable<IXDSTargetConfig[]> {
+ return this._get(this._getServerUrl(serverID) + '/targets');
+ }
+
+ addTarget(serverID: string, cfg: IXDSTargetConfig): Observable<IXDSTargetConfig> {
+ return this._post(this._getServerUrl(serverID) + '/targets', cfg);
+ }
+
+ deleteTarget(serverID: string, id: string): Observable<IXDSTargetConfig> {
+ return this._delete(this._getServerUrl(serverID) + '/targets/' + id);
+ }
+
+ updateTarget(serverID: string, cfg: IXDSTargetConfig): Observable<IXDSTargetConfig> {
+ return this._put(this._getServerUrl(serverID) + '/targets/' + cfg.id, cfg);
+ }
+
+ /***
+ ** Terminals
+ ***/
+ getTerminalsTarget(serverID, targetID: string): Observable<IXDSTargetTerminal[]> {
+ return this._get(this._getServerUrl(serverID) + '/targets/' + targetID + '/terminals');
+ }
+
+ getTerminalTarget(serverID, targetID, termID: string): Observable<IXDSTargetTerminal> {
+ return this._get(this._getServerUrl(serverID) + '/targets/' + targetID + '/terminals/' + termID);
+ }
+
+ createTerminalTarget(serverID, targetID: string, cfg: IXDSTargetTerminal): Observable<IXDSTargetTerminal> {
+ return this._post(this._getServerUrl(serverID) + '/targets/' + targetID + '/terminals', cfg);
+ }
+
+ updateTerminalTarget(serverID, targetID: string, cfg: IXDSTargetTerminal): Observable<IXDSTargetTerminal> {
+ if (cfg && (cfg.id !== '' || cfg.id !== undefined)) {
+ return this._put(this._getServerUrl(serverID) + '/targets/' + targetID + '/terminals/' + cfg.id, cfg);
+ }
+ return Observable.throw('Undefined terminal id');
+ }
+
+ openTerminalTarget(serverID, targetID, termID: string): Observable<IXDSTargetTerminal> {
+ return this._post(this._getServerUrl(serverID) + '/targets/' + targetID + '/terminals/' + termID + '/open', {});
+ }
+
+ closeTerminalTarget(serverID, targetID, termID: string): Observable<IXDSTargetTerminal> {
+ return this._post(this._getServerUrl(serverID) + '/targets/' + targetID + '/terminals/' + termID + '/close', {});
+ }
+
+ resizeTerminalTarget(serverID, targetID, termID: string, cols, rows: number): Observable<IXDSTargetTerminal> {
+ return this._post(this._getServerUrl(serverID) + '/targets/' + targetID + '/terminals/' + termID + '/resize',
+ { cols: cols, rows: rows });
+ }
+
+ /***
+ ** Supervision
+ ***/
+ getTopoSupervisor(): Observable<any> {
+ return this._get('/supervisor/topo');
+ }
+
+ startTraceSupervisor(cfg: any): Observable<any> {
+ return this._post('/supervisor/trace/start', cfg);
+ }
+
+ stopTraceSupervisor(cfg: any): Observable<any> {
+ return this._post('/supervisor/trace/stop', cfg);
+ }
+