| // - |
| // ========================LICENSE_START================================= |
| // O-RAN-SC |
| // %% |
| // Copyright (C) 2021: Nordix Foundation |
| // %% |
| // 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. |
| // ========================LICENSE_END=================================== |
| // |
| |
| package messages |
| |
| type StdDefinedMessage struct { |
| Event Event `json:"event"` |
| } |
| |
| type Event struct { |
| CommonEventHeader CommonEventHeader `json:"commonEventHeader"` |
| StndDefinedFields StndDefinedFields `json:"stndDefinedFields"` |
| } |
| |
| type CommonEventHeader struct { |
| Domain string `json:"domain"` |
| EventId string `json:"eventId"` |
| EventName string `json:"eventName"` |
| EventType string `json:"eventType"` |
| Sequence int `json:"sequence"` |
| Priority string `json:"priority"` |
| ReportingEntityId string `json:"reportingEntityId"` |
| ReportingEntityName string `json:"reportingEntityName"` |
| SourceId string `json:"sourceId"` |
| SourceName string `json:"sourceName"` |
| StartEpochMicrosec int64 `json:"startEpochMicrosec"` |
| LastEpochMicrosec int64 `json:"lastEpochMicrosec"` |
| NfNamingCode string `json:"nfNamingCode"` |
| NfVendorName string `json:"nfVendorName"` |
| StndDefinedNamespace string `json:"stndDefinedNamespace"` |
| TimeZoneOffset string `json:"timeZoneOffset"` |
| Version string `json:"version"` |
| VesEventListenerVersion string `json:"vesEventListenerVersion"` |
| } |
| |
| type StndDefinedFields struct { |
| StndDefinedFieldsVersion string `json:"stndDefinedFieldsVersion"` |
| SchemaReference string `json:"schemaReference"` |
| Data Data `json:"data"` |
| } |
| |
| type Data struct { |
| DataId string `json:"id"` |
| StartTime string `json:"start-time"` |
| AdministrativeState string `json:"administrative-state"` |
| OperationalState string `json:"operational-state"` |
| UserLabel string `json:"user-label"` |
| JobTag string `json:"job-tag"` |
| GranularityPeriod int `json:"granularity-period"` |
| Measurements []Measurement `json:"measurements"` |
| } |
| |
| type Measurement struct { |
| MeasurementTypeInstanceReference string `json:"measurement-type-instance-reference"` |
| Value int `json:"value"` |
| Unit string `json:"unit"` |
| } |
| |
| func (message StdDefinedMessage) GetMeasurements() []Measurement { |
| return message.Event.StndDefinedFields.Data.Measurements |
| } |