X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=webapp%2Fsrc%2Fapp%2Fpages%2Fconfig%2Fconfig-xds%2Fconfig-xds.component.ts;h=dddd2105b152fef2efbf6cd2c4e3393f443fc5e9;hb=ff47ccb072076c16eadaee08419d6afac3e53790;hp=396115b5b0eb8979d4d151d866dfd80a3a94e828;hpb=afe1f83bdbec2c369c0840c94df1d12c8faa0eeb;p=src%2Fxds%2Fxds-agent.git diff --git a/webapp/src/app/pages/config/config-xds/config-xds.component.ts b/webapp/src/app/pages/config/config-xds/config-xds.component.ts index 396115b..dddd210 100644 --- a/webapp/src/app/pages/config/config-xds/config-xds.component.ts +++ b/webapp/src/app/pages/config/config-xds/config-xds.component.ts @@ -20,7 +20,7 @@ export class ConfigXdsComponent { // TODO: cleanup agentStatus$: Observable; applying = false; xdsServerUrl = ''; - server: IXDServerCfg; + server: IXDServerCfg = { id: '', url: 'http://localhost:8000', connRetry: 10, connected: false }; configFormChanged = false; @@ -29,10 +29,20 @@ export class ConfigXdsComponent { private alert: AlertService, ) { // FIXME support multiple servers - this.XdsConfigSvr.onCurServer().subscribe(svr => { - this.xdsServerUrl = svr.url; - this.server = Object.assign({}, svr); - }); + this._updateServerCfg(this.XdsConfigSvr.getCurServer()); + this.XdsConfigSvr.onCurServer().subscribe(svr => this._updateServerCfg(svr)); + } + + private _updateServerCfg(svr: IXDServerCfg) { + if (!svr || svr.url === '') { + return; + } + this.xdsServerUrl = svr.url; + this.server = Object.assign({}, svr); + } + + isApplyBtnEnable(): boolean { + return this.xdsServerUrl !== '' && (!this.server.connected || this.configFormChanged); } onSubmit() {