@@ -77,25 +77,24 @@ func BridgeDelete(ID string, domainid string) {
7777 RestCall ("DELETE" , url , nil )
7878}
7979
80- func AddNetworkInfo (dNetwork string , neID string ) {
81-
82- url := "/0/connectivity/domain?configonly=true&level=3"
83- body , _ := RestCall ("GET" , url , nil )
84- var domain_data map [string ]interface {}
85- err := json .Unmarshal ([]byte (body ), & domain_data )
86- if err != nil {
87- panic (err )
88- }
89- for domains , domain_val := range domain_data {
90- if nes , ok := domain_val .(map [string ]interface {})["ne" ]; ok {
91- if ne , ok := nes .(map [string ]interface {})[neID ]; ok {
92- ne .(map [string ]interface {})["metadata" ] = dNetwork
93- ne_data , _ := json .Marshal (ne )
94- RestCall ("PUT" , "/0/connectivity/domain/" + domains + "/ne/" + neID , ne_data )
95- break
96- }
97- }
98- }
80+ func AddNetworkInfo (dNetwork string , neName string , domain string ) {
81+ id := GetNeId (neName , domain )
82+ var neId string
83+ if id == "" {
84+ neId = neName
85+ } else {
86+ neId = id
87+ }
88+ url := "/0/connectivity/domain/" + domain + "/ne/" + neId
89+ body , _ := RestCall ("GET" , url + "?configonly=true" , nil )
90+ var netData map [string ]interface {}
91+ err := json .Unmarshal ([]byte (body ), & netData )
92+ if err != nil {
93+ panic (err )
94+ }
95+ netData ["metadata" ] = dNetwork
96+ finalData , _ := json .Marshal (netData )
97+ RestCall ("PUT" , url , finalData )
9998}
10099
101100func FindDomainFromNetwork (ID string ) (domainid string , netid string ) {
@@ -222,20 +221,20 @@ func DomainDelete(domainID string) {
222221
223222func GetNeId (NeName string , DomainID string ) (NeID string ) {
224223
225- url := "/0/connectivity/domain/" + DomainID + "/ne?configonly=true&level=1"
226- body , _ := RestCall ("GET" , url , nil )
227- var ne_data map [string ]interface {}
228- err := json .Unmarshal ([]byte (body ), & ne_data )
229- if err != nil {
230- panic (err )
231- }
232- for nes , ne_val := range ne_data {
233- if ne_val .(map [string ]interface {})["ne_dname" ] == NeName {
234- NeID = nes
235- break
236- }
237- }
238- return
224+ url := "/0/connectivity/domain/" + DomainID + "/ne?configonly=true&level=1"
225+ body , _ := RestCall ("GET" , url , nil )
226+ var ne_data map [string ]interface {}
227+ err := json .Unmarshal ([]byte (body ), & ne_data )
228+ if err != nil {
229+ panic (err )
230+ }
231+ for nes , ne_val := range ne_data {
232+ if ne_val .(map [string ]interface {})["ne_dname" ] == NeName {
233+ NeID = nes
234+ return NeID
235+ }
236+ }
237+ return ""
239238}
240239
241240func CreateNetworkLink (NeName string , DomainID string , NetworkID string , IP string , Netmask string ) {
0 commit comments