blob: b7734a88d8a8ed1401b79371413b682cc2b52e26 [file] [log] [blame]
Prince Pereirac1c21d62021-04-22 08:38:15 +00001/*
2 * 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
17// Package v1 stores models for hw components
18package v1
19
20import (
21 dmi "github.com/opencord/device-management-interface/go/dmi"
22
23 timestamp "github.com/golang/protobuf/ptypes/timestamp"
24)
25
26type HwCompRecordV1_0 struct {
27 Name string `json:"name,omitempty"`
28 Class dmi.ComponentType `json:"class,omitempty"`
29 Description string `json:"description,omitempty"`
30 Parent string `json:"parent,omitempty"`
31 ParentRelPos int32 `json:"parent_rel_pos,omitempty"`
32 Children []string `json:"children,omitempty"` // Children stores uuid of all direct child
33 SerialNum string `json:"serial_num,omitempty"`
34 MfgName string `json:"mfg_name,omitempty"`
35 ModelName string `json:"model_name,omitempty"`
36 Alias string `json:"alias,omitempty"`
37 AssetId string `json:"asset_id,omitempty"`
38 IsFru bool `json:"is_fru,omitempty"`
39 MfgDate *timestamp.Timestamp `json:"mfg_date,omitempty"`
40 Uri string `json:"uri,omitempty"`
41 Uuid string `json:"uuid,omitempty"`
42 State *dmi.ComponentState `json:"state,omitempty"`
43 SensorData []*dmi.ComponentSensorData `json:"sensor_data,omitempty"`
44 Specific string `json:"specific,omitempty"`
45}