blob: d46039bdf96b2ddd4b2a90da882d9ad1a87e1daa [file] [log] [blame]
Zack Williamse940c7a2019-08-21 14:25:39 -07001/*
2 * Copyright 2019-present Ciena Corporation
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 */
16package model
17
18import (
19 "github.com/jhump/protoreflect/dynamic"
20)
21
22type Adapter struct {
23 Id string
24 Vendor string
25 Version string
26 LogLevel string
27}
28
29func (adapter *Adapter) PopulateFrom(val *dynamic.Message) {
30 adapter.Id = val.GetFieldByName("id").(string)
31 adapter.Vendor = val.GetFieldByName("vendor").(string)
32 adapter.Version = val.GetFieldByName("version").(string)
33 var config *dynamic.Message = val.GetFieldByName("config").(*dynamic.Message)
34 if config != nil {
35 adapter.LogLevel = GetEnumValue(config, "log_level")
36 }
37}