blob: 6204894bf869bb2ef3a576ac69fa005397a23562 [file] [log] [blame]
mpagenkoaf801632020-07-03 10:00:42 +00001/*
mpagenkoaf801632020-07-03 10:00:42 +00002 * Copyright 2020-present Open Networking Foundation
3
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7
8 * http://www.apache.org/licenses/LICENSE-2.0
9
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16/*
ozgecanetsiab5000ef2020-11-27 14:38:20 +030017* NOTE: This file was hand coded (not generated by omci-parser) due to complexity
18* of the ME's entry in the G.988 (11/2017) specification.
19 */
mpagenkoaf801632020-07-03 10:00:42 +000020package generated
21
22import "github.com/deckarep/golang-set"
23
24const MulticastOperationsProfileClassID ClassID = ClassID(309)
25
26var multicastoperationsprofileME *ManagedEntityDefinition
27
ozgecanetsiab5000ef2020-11-27 14:38:20 +030028type MulticastOperationsProfile struct {
mpagenkoaf801632020-07-03 10:00:42 +000029 ManagedEntityDefinition
30 Attributes AttributeValueMap
31}
32
ozgecanetsiab5000ef2020-11-27 14:38:20 +030033func init() {
mpagenkoaf801632020-07-03 10:00:42 +000034 multicastoperationsprofileME = &ManagedEntityDefinition{
ozgecanetsiab5000ef2020-11-27 14:38:20 +030035 Name: "MulticastOperationsProfile",
mpagenkoaf801632020-07-03 10:00:42 +000036 ClassID: 309,
37 MessageTypes: mapset.NewSetWith(
38 Create,
39 Delete,
40 Get,
41 Set,
42 GetNext,
ozgecanetsiab5000ef2020-11-27 14:38:20 +030043 ),
mpagenkoaf801632020-07-03 10:00:42 +000044 AllowedAttributeMask: 0xffff,
45 AttributeDefinitions: AttributeDefinitionMap{
ozgecanetsiab5000ef2020-11-27 14:38:20 +030046 0: Uint16Field("ManagedEntityId", PointerAttributeType, 0x0000, 0, mapset.NewSetWith(Read, SetByCreate), false, false, false, 0),
47 1: ByteField("IgmpVersion", EnumerationAttributeType, 0x8000, 0, mapset.NewSetWith(Read, SetByCreate, Write), false, false, false, 1),
48 2: ByteField("IgmpFunction", EnumerationAttributeType, 0x4000, 0, mapset.NewSetWith(Read, SetByCreate, Write), false, false, false, 2),
49 3: ByteField("ImmediateLeave", EnumerationAttributeType, 0x2000, 0, mapset.NewSetWith(Read, SetByCreate, Write), false, false, false, 3),
50 4: Uint16Field("USIgmpTci", UnsignedIntegerAttributeType, 0x1000, 0, mapset.NewSetWith(Read, SetByCreate, Write), false, true, false, 4),
51 5: ByteField("USIgmpTagCtrl", EnumerationAttributeType, 0x0800, 0, mapset.NewSetWith(Read, SetByCreate, Write), false, true, false, 5),
52 6: Uint32Field("USIgmpRate", UnsignedIntegerAttributeType, 0x0400, 0, mapset.NewSetWith(Read, SetByCreate, Write), false, true, false, 6),
53 7: TableField("DynamicAccessControlListTable", TableAttributeType, 0x0200, TableInfo{nil, 24}, mapset.NewSetWith(Read, Write), false, false, false, 7),
54 8: TableField("StaticAccessControlListTable", TableAttributeType, 0x0100, TableInfo{nil, 24}, mapset.NewSetWith(Read, Write), false, true, false, 8),
55 9: TableField("LostGroupsListTable", TableAttributeType, 0x0080, TableInfo{nil, 10}, mapset.NewSetWith(Read), false, true, false, 9),
56 10: ByteField("Robustness", UnsignedIntegerAttributeType, 0x0040, 0, mapset.NewSetWith(Read, SetByCreate, Write), false, true, false, 10),
57 11: Uint32Field("QuerierIp", UnsignedIntegerAttributeType, 0x0020, 0, mapset.NewSetWith(Read, SetByCreate, Write), false, true, false, 11),
58 12: Uint32Field("QueryInterval", UnsignedIntegerAttributeType, 0x0010, 0, mapset.NewSetWith(Read, SetByCreate, Write), false, true, false, 12),
59 13: Uint32Field("QuerierMaxResponseTime", UnsignedIntegerAttributeType, 0x0008, 0, mapset.NewSetWith(Read, SetByCreate, Write), false, true, false, 13),
60 14: Uint32Field("LastMemberResponseTime", UnsignedIntegerAttributeType, 0x0004, 0, mapset.NewSetWith(Read, Write), false, true, false, 14),
61 15: ByteField("UnauthorizedJoinBehaviour", UnsignedIntegerAttributeType, 0x0002, 0, mapset.NewSetWith(Read, Write), false, true, false, 15),
62 16: MultiByteField("DSIgmpMcastTci", OctetsAttributeType, 0x0001, 3, toOctets("AAAA"), mapset.NewSetWith(Read, SetByCreate, Write), false, true, false, 16),
mpagenkoaf801632020-07-03 10:00:42 +000063 },
ozgecanetsiab5000ef2020-11-27 14:38:20 +030064 Access: CreatedByOlt,
mpagenkoaf801632020-07-03 10:00:42 +000065 Support: UnknownSupport,
66 }
67}
68
69// NewMulticastOperationsProfilePoint (class ID 309) creates the basic
70// Managed Entity definition that is used to validate an ME of this type that
71// is received from or transmitted to the OMCC.
ozgecanetsiab5000ef2020-11-27 14:38:20 +030072func NewMulticastOperationsProfile(params ...ParamData) (*ManagedEntity, OmciErrors) {
mpagenkoaf801632020-07-03 10:00:42 +000073 return NewManagedEntity(*multicastoperationsprofileME, params...)
ozgecanetsiab5000ef2020-11-27 14:38:20 +030074}