X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=webapp%2Fsrc%2Fapp%2Fservices%2Fsdk.service.ts;fp=webapp%2Fsrc%2Fapp%2Fservices%2Fsdk.service.ts;h=fa4cd5568a7ca10f803d4fec96fc4b89232254f4;hb=66496d63e16635d72f15abe48dc3dadb473f0b6b;hp=0000000000000000000000000000000000000000;hpb=7f1db509a2076311c280964715962df71a1631ce;p=src%2Fxds%2Fxds-server.git diff --git a/webapp/src/app/services/sdk.service.ts b/webapp/src/app/services/sdk.service.ts new file mode 100644 index 0000000..fa4cd55 --- /dev/null +++ b/webapp/src/app/services/sdk.service.ts @@ -0,0 +1,47 @@ +import { Injectable, SecurityContext } from '@angular/core'; +import { Observable } from 'rxjs/Observable'; +import { BehaviorSubject } from 'rxjs/BehaviorSubject'; + +import { XDSServerService } from "../services/xdsserver.service"; + +export interface ISdk { + id: string; + profile: string; + version: string; + arch: number; + path: string; +} + +@Injectable() +export class SdkService { + public Sdks$: Observable; + + private _sdksList = []; + private current: ISdk; + private sdksSubject = >new BehaviorSubject(this._sdksList); + + constructor(private xdsSvr: XDSServerService) { + this.current = null; + this.Sdks$ = this.sdksSubject.asObservable(); + + this.xdsSvr.getSdks().subscribe((s) => { + this._sdksList = s; + this.sdksSubject.next(s); + }); + } + + public setCurrent(s: ISdk) { + this.current = s; + } + + public getCurrent(): ISdk { + return this.current; + } + + public getCurrentId(): string { + if (this.current && this.current.id) { + return this.current.id; + } + return ""; + } +} \ No newline at end of file