X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=pkg%2Fcontrol%2Ftypes.go;h=00674c71023de37ba3e11dc118b9a0508727c64a;hb=9340072742db74b6f93ca43d73841c388dd80e02;hp=22c44b3fd11877114f94fd74d9b0fe9057f5326c;hpb=e406a34d5547107533e65ddfbb2074e96d77b4b3;p=ric-plt%2Fsubmgr.git diff --git a/pkg/control/types.go b/pkg/control/types.go index 22c44b3..00674c7 100644 --- a/pkg/control/types.go +++ b/pkg/control/types.go @@ -24,6 +24,7 @@ import ( "fmt" "gerrit.o-ran-sc.org/r/ric-plt/xapp-frame/pkg/xapp" "strconv" + "strings" ) //----------------------------------------------------------------------------- @@ -54,9 +55,43 @@ type RmrEndpoint struct { } func (endpoint RmrEndpoint) String() string { + return endpoint.Get() +} + +func (endpoint *RmrEndpoint) GetAddr() string { + return endpoint.Addr +} + +func (endpoint *RmrEndpoint) GetPort() uint16 { + return endpoint.Port +} + +func (endpoint *RmrEndpoint) Get() string { return endpoint.Addr + ":" + strconv.FormatUint(uint64(endpoint.Port), 10) } +func (endpoint *RmrEndpoint) Set(src string) bool { + elems := strings.Split(src, ":") + if len(elems) == 2 { + srcAddr := elems[0] + srcPort, err := strconv.ParseUint(elems[1], 10, 16) + if err == nil { + endpoint.Addr = srcAddr + endpoint.Port = uint16(srcPort) + return true + } + } + return false +} + +func NewRmrEndpoint(src string) *RmrEndpoint { + ep := &RmrEndpoint{} + if ep.Set(src) == false { + return nil + } + return ep +} + //----------------------------------------------------------------------------- // //----------------------------------------------------------------------------- @@ -85,6 +120,6 @@ type RMRParams struct { func (params *RMRParams) String() string { var b bytes.Buffer - fmt.Fprintf(&b, "Src: %s, Mtype: %s(%d), SubId: %v, Xid: %s, Meid: %v", params.Src, xapp.RicMessageTypeToName[params.Mtype], params.Mtype, params.SubId, params.Xid, params.Meid) + fmt.Fprintf(&b, "Src=%s Mtype=%s(%d) SubId=%v Xid=%s Meid=%v", params.Src, xapp.RicMessageTypeToName[params.Mtype], params.Mtype, params.SubId, params.Xid, params.Meid) return b.String() }