X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;ds=sidebyside;f=creader%2FrNibReader_c.go;h=74521d7271fd1b2d6a31b538b3437bd8c432150c;hb=refs%2Fheads%2Fg-release;hp=9ac32fff1f60df7b47d8d55793622cabb3988c02;hpb=b4f480270e7f9058c62dd63d24f0fcf398bbe3dc;p=ric-plt%2Fnodeb-rnib.git diff --git a/creader/rNibReader_c.go b/creader/rNibReader_c.go index 9ac32ff..74521d7 100644 --- a/creader/rNibReader_c.go +++ b/creader/rNibReader_c.go @@ -1,8 +1,28 @@ +// +// Copyright 2019 AT&T Intellectual Property +// Copyright 2019 Nokia +// +// 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. + +// This source code is part of the near-RT RIC (RAN Intelligent Controller) +// platform project (RICP). + package main import ( "encoding/json" "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/common" + "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/entities" "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/reader" "gerrit.o-ran-sc.org/r/ric-plt/sdlgo" "unsafe" @@ -15,35 +35,40 @@ var sdl common.ISdlInstance var instance reader.RNibReader type response struct { - GnbList []string `json:"gnb_list"` + GnbList []*entities.NbIdentity `json:"gnb_list"` + ErrorMsg string `json:"error_msg,omitempty"` } -//export open -func open() { +//export openSdl +func openSdl() { sdl = sdlgo.NewSdlInstance("e2Manager", sdlgo.NewDatabase()) instance = reader.GetRNibReader(sdl) } -//export close -func close() { +//export closeSdl +func closeSdl() { _ = sdl.Close() } //export getListGnbIds func getListGnbIds() unsafe.Pointer { listGnbIds, err := instance.GetListGnbIds() - if err != nil || listGnbIds == nil{ - return nil - } + res := &response{} + + if err != nil { + res.ErrorMsg = err.Error() - var gnbList []string - for _, value := range listGnbIds { - gnbList = append(gnbList, value.InventoryName) + return createCBytesResponse(res) } - res := &response{ - GnbList:gnbList, + + if listGnbIds != nil { + res.GnbList = listGnbIds } + return createCBytesResponse(res) +} + +func createCBytesResponse(res *response) unsafe.Pointer { byteResponse, err := json.Marshal(res) if err != nil { return nil @@ -52,7 +77,4 @@ func getListGnbIds() unsafe.Pointer { return C.CBytes(byteResponse) } - - -func main() { -} \ No newline at end of file +func main() {}