X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=lib%2Fagent%2Fapiv1-config.go;h=0b1e2000f702e509066348b38cf92bec97b9466c;hb=45f6472d1e8ecad428da314a6d762143f033865d;hp=21977209f9565affb45dcddaaad8bff6289ccca5;hpb=be13167b869161b6e19dc3e94835245cdc7911e5;p=src%2Fxds%2Fxds-agent.git diff --git a/lib/agent/apiv1-config.go b/lib/agent/apiv1-config.go index 2197720..0b1e200 100644 --- a/lib/agent/apiv1-config.go +++ b/lib/agent/apiv1-config.go @@ -1,3 +1,20 @@ +/* + * Copyright (C) 2017 "IoT.bzh" + * Author Sebastien Douheret + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package agent import ( @@ -5,7 +22,7 @@ import ( "sync" "github.com/gin-gonic/gin" - "github.com/iotbzh/xds-agent/lib/apiv1" + "github.com/iotbzh/xds-agent/lib/xaapiv1" "github.com/iotbzh/xds-agent/lib/xdsconfig" common "github.com/iotbzh/xds-common/golib" ) @@ -24,7 +41,7 @@ func (s *APIService) getConfig(c *gin.Context) { // SetConfig sets configuration func (s *APIService) setConfig(c *gin.Context) { - var cfgArg apiv1.APIConfig + var cfgArg xaapiv1.APIConfig if c.BindJSON(&cfgArg) != nil { common.APIError(c, "Invalid arguments") return @@ -51,6 +68,9 @@ func (s *APIService) setConfig(c *gin.Context) { // Add new XDS Server for _, svr := range cfgArg.Servers { + if svr.Connected && svr.ID != "" { + continue + } cfg := xdsconfig.XDSServerConf{ ID: svr.ID, URL: svr.URL, @@ -65,16 +85,16 @@ func (s *APIService) setConfig(c *gin.Context) { c.JSON(http.StatusOK, s._getConfig()) } -func (s *APIService) _getConfig() apiv1.APIConfig { - cfg := apiv1.APIConfig{ +func (s *APIService) _getConfig() xaapiv1.APIConfig { + cfg := xaapiv1.APIConfig{ Version: s.Config.Version, APIVersion: s.Config.APIVersion, VersionGitTag: s.Config.VersionGitTag, - Servers: []apiv1.ServerCfg{}, + Servers: []xaapiv1.ServerCfg{}, } for _, svr := range s.xdsServers { - cfg.Servers = append(cfg.Servers, apiv1.ServerCfg{ + cfg.Servers = append(cfg.Servers, xaapiv1.ServerCfg{ ID: svr.ID, URL: svr.BaseURL, APIURL: svr.APIURL,