VOL-1460 Removing temporary protos and adding in go stubs for linking to voltha-go
Change-Id: Ia9714b506ddf15d651a82e9e250d55b43913a7c6
diff --git a/go/voltha/adapter.pb.go b/go/voltha/adapter.pb.go
new file mode 100644
index 0000000..680fc4b
--- /dev/null
+++ b/go/voltha/adapter.pb.go
@@ -0,0 +1,228 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// source: voltha_protos/adapter.proto
+
+package voltha // import "github.com/opencord/voltha-protos/go/voltha"
+
+import proto "github.com/golang/protobuf/proto"
+import fmt "fmt"
+import math "math"
+import any "github.com/golang/protobuf/ptypes/any"
+import common "github.com/opencord/voltha-protos/go/common"
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ = proto.Marshal
+var _ = fmt.Errorf
+var _ = math.Inf
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the proto package it is being compiled against.
+// A compilation error at this line likely means your copy of the
+// proto package needs to be updated.
+const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
+
+type AdapterConfig struct {
+ // Common adapter config attributes here
+ LogLevel common.LogLevel_LogLevel `protobuf:"varint,1,opt,name=log_level,json=logLevel,proto3,enum=voltha.LogLevel_LogLevel" json:"log_level,omitempty"`
+ // Custom (vendor-specific) configuration attributes
+ AdditionalConfig *any.Any `protobuf:"bytes,64,opt,name=additional_config,json=additionalConfig,proto3" json:"additional_config,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *AdapterConfig) Reset() { *m = AdapterConfig{} }
+func (m *AdapterConfig) String() string { return proto.CompactTextString(m) }
+func (*AdapterConfig) ProtoMessage() {}
+func (*AdapterConfig) Descriptor() ([]byte, []int) {
+ return fileDescriptor_adapter_afe3683afb102200, []int{0}
+}
+func (m *AdapterConfig) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_AdapterConfig.Unmarshal(m, b)
+}
+func (m *AdapterConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_AdapterConfig.Marshal(b, m, deterministic)
+}
+func (dst *AdapterConfig) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_AdapterConfig.Merge(dst, src)
+}
+func (m *AdapterConfig) XXX_Size() int {
+ return xxx_messageInfo_AdapterConfig.Size(m)
+}
+func (m *AdapterConfig) XXX_DiscardUnknown() {
+ xxx_messageInfo_AdapterConfig.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_AdapterConfig proto.InternalMessageInfo
+
+func (m *AdapterConfig) GetLogLevel() common.LogLevel_LogLevel {
+ if m != nil {
+ return m.LogLevel
+ }
+ return common.LogLevel_DEBUG
+}
+
+func (m *AdapterConfig) GetAdditionalConfig() *any.Any {
+ if m != nil {
+ return m.AdditionalConfig
+ }
+ return nil
+}
+
+// Adapter (software plugin)
+type Adapter struct {
+ // Unique name of adapter, matching the python package name under
+ // voltha/adapters.
+ Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ Vendor string `protobuf:"bytes,2,opt,name=vendor,proto3" json:"vendor,omitempty"`
+ Version string `protobuf:"bytes,3,opt,name=version,proto3" json:"version,omitempty"`
+ // Adapter configuration
+ Config *AdapterConfig `protobuf:"bytes,16,opt,name=config,proto3" json:"config,omitempty"`
+ // Custom descriptors and custom configuration
+ AdditionalDescription *any.Any `protobuf:"bytes,64,opt,name=additional_description,json=additionalDescription,proto3" json:"additional_description,omitempty"`
+ LogicalDeviceIds []string `protobuf:"bytes,4,rep,name=logical_device_ids,json=logicalDeviceIds,proto3" json:"logical_device_ids,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *Adapter) Reset() { *m = Adapter{} }
+func (m *Adapter) String() string { return proto.CompactTextString(m) }
+func (*Adapter) ProtoMessage() {}
+func (*Adapter) Descriptor() ([]byte, []int) {
+ return fileDescriptor_adapter_afe3683afb102200, []int{1}
+}
+func (m *Adapter) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_Adapter.Unmarshal(m, b)
+}
+func (m *Adapter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_Adapter.Marshal(b, m, deterministic)
+}
+func (dst *Adapter) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_Adapter.Merge(dst, src)
+}
+func (m *Adapter) XXX_Size() int {
+ return xxx_messageInfo_Adapter.Size(m)
+}
+func (m *Adapter) XXX_DiscardUnknown() {
+ xxx_messageInfo_Adapter.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_Adapter proto.InternalMessageInfo
+
+func (m *Adapter) GetId() string {
+ if m != nil {
+ return m.Id
+ }
+ return ""
+}
+
+func (m *Adapter) GetVendor() string {
+ if m != nil {
+ return m.Vendor
+ }
+ return ""
+}
+
+func (m *Adapter) GetVersion() string {
+ if m != nil {
+ return m.Version
+ }
+ return ""
+}
+
+func (m *Adapter) GetConfig() *AdapterConfig {
+ if m != nil {
+ return m.Config
+ }
+ return nil
+}
+
+func (m *Adapter) GetAdditionalDescription() *any.Any {
+ if m != nil {
+ return m.AdditionalDescription
+ }
+ return nil
+}
+
+func (m *Adapter) GetLogicalDeviceIds() []string {
+ if m != nil {
+ return m.LogicalDeviceIds
+ }
+ return nil
+}
+
+type Adapters struct {
+ Items []*Adapter `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *Adapters) Reset() { *m = Adapters{} }
+func (m *Adapters) String() string { return proto.CompactTextString(m) }
+func (*Adapters) ProtoMessage() {}
+func (*Adapters) Descriptor() ([]byte, []int) {
+ return fileDescriptor_adapter_afe3683afb102200, []int{2}
+}
+func (m *Adapters) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_Adapters.Unmarshal(m, b)
+}
+func (m *Adapters) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_Adapters.Marshal(b, m, deterministic)
+}
+func (dst *Adapters) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_Adapters.Merge(dst, src)
+}
+func (m *Adapters) XXX_Size() int {
+ return xxx_messageInfo_Adapters.Size(m)
+}
+func (m *Adapters) XXX_DiscardUnknown() {
+ xxx_messageInfo_Adapters.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_Adapters proto.InternalMessageInfo
+
+func (m *Adapters) GetItems() []*Adapter {
+ if m != nil {
+ return m.Items
+ }
+ return nil
+}
+
+func init() {
+ proto.RegisterType((*AdapterConfig)(nil), "voltha.AdapterConfig")
+ proto.RegisterType((*Adapter)(nil), "voltha.Adapter")
+ proto.RegisterType((*Adapters)(nil), "voltha.Adapters")
+}
+
+func init() {
+ proto.RegisterFile("voltha_protos/adapter.proto", fileDescriptor_adapter_afe3683afb102200)
+}
+
+var fileDescriptor_adapter_afe3683afb102200 = []byte{
+ // 378 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x7c, 0x92, 0xc1, 0x6a, 0xe2, 0x40,
+ 0x1c, 0xc6, 0x49, 0x5c, 0xa3, 0x8e, 0xec, 0xae, 0x3b, 0xac, 0x4b, 0x74, 0x91, 0x0d, 0xc2, 0x42,
+ 0x60, 0xd7, 0x84, 0x5a, 0xe8, 0xb9, 0x5a, 0x2f, 0x05, 0x4f, 0x39, 0xf6, 0x12, 0x62, 0x66, 0x1c,
+ 0x07, 0x26, 0xf3, 0x0f, 0x49, 0x0c, 0xf8, 0x0a, 0xbd, 0xf5, 0xc1, 0xfa, 0x1e, 0x7d, 0x82, 0x9e,
+ 0x8b, 0x33, 0x93, 0xaa, 0x3d, 0xf4, 0x36, 0xf3, 0xfd, 0xfe, 0xdf, 0x7c, 0xdf, 0x3f, 0x04, 0xfd,
+ 0xae, 0x41, 0x54, 0xbb, 0x24, 0xce, 0x0b, 0xa8, 0xa0, 0x0c, 0x13, 0x92, 0xe4, 0x15, 0x2d, 0x02,
+ 0x75, 0xc5, 0x8e, 0x86, 0xe3, 0x11, 0x03, 0x60, 0x82, 0x86, 0x4a, 0xdd, 0xec, 0xb7, 0x61, 0x22,
+ 0x0f, 0x7a, 0x64, 0x3c, 0xbe, 0xf4, 0xa7, 0x90, 0x65, 0x20, 0x0d, 0x73, 0x2f, 0x59, 0x46, 0xab,
+ 0x44, 0x93, 0xe9, 0xa3, 0x85, 0xbe, 0x2e, 0x74, 0xd4, 0x1d, 0xc8, 0x2d, 0x67, 0xf8, 0x06, 0xf5,
+ 0x04, 0xb0, 0x58, 0xd0, 0x9a, 0x0a, 0xd7, 0xf2, 0x2c, 0xff, 0xdb, 0x7c, 0x14, 0x68, 0x7f, 0xb0,
+ 0x06, 0xb6, 0x3e, 0xea, 0xef, 0x87, 0xa8, 0x2b, 0xcc, 0x09, 0x2f, 0xd0, 0x8f, 0x84, 0x10, 0x5e,
+ 0x71, 0x90, 0x89, 0x88, 0x53, 0xf5, 0x98, 0x7b, 0xeb, 0x59, 0x7e, 0x7f, 0xfe, 0x33, 0xd0, 0xb5,
+ 0x83, 0xa6, 0x76, 0xb0, 0x90, 0x87, 0x68, 0x70, 0x1a, 0xd7, 0xd1, 0xd3, 0x27, 0x1b, 0x75, 0x4c,
+ 0x19, 0x3c, 0x44, 0x36, 0x27, 0x2a, 0xbf, 0xb7, 0x6c, 0xbf, 0xbc, 0x3e, 0x4f, 0xac, 0xc8, 0xe6,
+ 0x04, 0x4f, 0x90, 0x53, 0x53, 0x49, 0xa0, 0x70, 0xed, 0x73, 0x64, 0x44, 0xfc, 0x07, 0x75, 0x6a,
+ 0x5a, 0x94, 0x1c, 0xa4, 0xdb, 0x3a, 0xe7, 0x8d, 0x8a, 0x67, 0xc8, 0x31, 0xd5, 0x06, 0xaa, 0xda,
+ 0xb0, 0x59, 0xed, 0xe2, 0x23, 0x44, 0x66, 0x08, 0x47, 0xe8, 0xd7, 0xd9, 0x52, 0x84, 0x96, 0x69,
+ 0xc1, 0xf3, 0xe3, 0xed, 0xb3, 0xcd, 0x9a, 0xd0, 0xe1, 0xc9, 0xba, 0x3a, 0x39, 0xf1, 0x7f, 0x84,
+ 0x05, 0x30, 0x9e, 0xaa, 0x07, 0x6b, 0x9e, 0xd2, 0x98, 0x93, 0xd2, 0xfd, 0xe2, 0xb5, 0xfc, 0x5e,
+ 0x34, 0x30, 0x64, 0xa5, 0xc0, 0x3d, 0x29, 0xa7, 0x57, 0xa8, 0x6b, 0xaa, 0x95, 0xf8, 0x2f, 0x6a,
+ 0xf3, 0x8a, 0x66, 0xa5, 0x6b, 0x79, 0x2d, 0xbf, 0x3f, 0xff, 0xfe, 0xa1, 0x7b, 0xa4, 0xe9, 0x72,
+ 0xf6, 0xf0, 0x8f, 0xf1, 0x6a, 0xb7, 0xdf, 0x04, 0x29, 0x64, 0x21, 0xe4, 0x54, 0xa6, 0x50, 0x90,
+ 0x50, 0x0f, 0xcf, 0xcc, 0x3f, 0xc0, 0xc0, 0x08, 0x1b, 0x47, 0x29, 0xd7, 0x6f, 0x01, 0x00, 0x00,
+ 0xff, 0xff, 0xe1, 0x62, 0xad, 0x46, 0x81, 0x02, 0x00, 0x00,
+}
diff --git a/go/voltha/adapter.proto b/go/voltha/adapter.proto
deleted file mode 100644
index e8889c5..0000000
--- a/go/voltha/adapter.proto
+++ /dev/null
@@ -1,43 +0,0 @@
-syntax = "proto3";
-
-option go_package = "github.com/opencord/voltha-protos/go/voltha";
-
-package voltha;
-
-import "google/protobuf/any.proto";
-import "voltha_protos/common.proto";
-import "voltha_protos/meta.proto";
-
-
-message AdapterConfig {
-
- // Common adapter config attributes here
- LogLevel.LogLevel log_level = 1;
-
- // Custom (vendor-specific) configuration attributes
- google.protobuf.Any additional_config = 64;
-
-}
-
-// Adapter (software plugin)
-message Adapter {
-
- // Unique name of adapter, matching the python package name under
- // voltha/adapters.
- string id = 1 [(access) = READ_ONLY];
- string vendor = 2 [(access) = READ_ONLY];
- string version = 3 [(access) = READ_ONLY];
-
- // Adapter configuration
- AdapterConfig config = 16;
-
- // Custom descriptors and custom configuration
- google.protobuf.Any additional_description = 64 [(access) = READ_ONLY];
-
- repeated string logical_device_ids = 4; // Logical devices "owned"
-
-}
-
-message Adapters {
- repeated Adapter items = 1;
-}
diff --git a/go/voltha/device.pb.go b/go/voltha/device.pb.go
new file mode 100644
index 0000000..413ae22
--- /dev/null
+++ b/go/voltha/device.pb.go
@@ -0,0 +1,1908 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// source: voltha_protos/device.proto
+
+package voltha // import "github.com/opencord/voltha-protos/go/voltha"
+
+import proto "github.com/golang/protobuf/proto"
+import fmt "fmt"
+import math "math"
+import any "github.com/golang/protobuf/ptypes/any"
+import common "github.com/opencord/voltha-protos/go/common"
+import openflow_13 "github.com/opencord/voltha-protos/go/openflow_13"
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ = proto.Marshal
+var _ = fmt.Errorf
+var _ = math.Inf
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the proto package it is being compiled against.
+// A compilation error at this line likely means your copy of the
+// proto package needs to be updated.
+const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
+
+type PmConfig_PmType int32
+
+const (
+ PmConfig_COUNTER PmConfig_PmType = 0
+ PmConfig_GAUGE PmConfig_PmType = 1
+ PmConfig_STATE PmConfig_PmType = 2
+ PmConfig_CONTEXT PmConfig_PmType = 3
+)
+
+var PmConfig_PmType_name = map[int32]string{
+ 0: "COUNTER",
+ 1: "GAUGE",
+ 2: "STATE",
+ 3: "CONTEXT",
+}
+var PmConfig_PmType_value = map[string]int32{
+ "COUNTER": 0,
+ "GAUGE": 1,
+ "STATE": 2,
+ "CONTEXT": 3,
+}
+
+func (x PmConfig_PmType) String() string {
+ return proto.EnumName(PmConfig_PmType_name, int32(x))
+}
+func (PmConfig_PmType) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_device_8624dad2b773c06a, []int{2, 0}
+}
+
+type ImageDownload_ImageDownloadState int32
+
+const (
+ ImageDownload_DOWNLOAD_UNKNOWN ImageDownload_ImageDownloadState = 0
+ ImageDownload_DOWNLOAD_SUCCEEDED ImageDownload_ImageDownloadState = 1
+ ImageDownload_DOWNLOAD_REQUESTED ImageDownload_ImageDownloadState = 2
+ ImageDownload_DOWNLOAD_STARTED ImageDownload_ImageDownloadState = 3
+ ImageDownload_DOWNLOAD_FAILED ImageDownload_ImageDownloadState = 4
+ ImageDownload_DOWNLOAD_UNSUPPORTED ImageDownload_ImageDownloadState = 5
+ ImageDownload_DOWNLOAD_CANCELLED ImageDownload_ImageDownloadState = 6
+)
+
+var ImageDownload_ImageDownloadState_name = map[int32]string{
+ 0: "DOWNLOAD_UNKNOWN",
+ 1: "DOWNLOAD_SUCCEEDED",
+ 2: "DOWNLOAD_REQUESTED",
+ 3: "DOWNLOAD_STARTED",
+ 4: "DOWNLOAD_FAILED",
+ 5: "DOWNLOAD_UNSUPPORTED",
+ 6: "DOWNLOAD_CANCELLED",
+}
+var ImageDownload_ImageDownloadState_value = map[string]int32{
+ "DOWNLOAD_UNKNOWN": 0,
+ "DOWNLOAD_SUCCEEDED": 1,
+ "DOWNLOAD_REQUESTED": 2,
+ "DOWNLOAD_STARTED": 3,
+ "DOWNLOAD_FAILED": 4,
+ "DOWNLOAD_UNSUPPORTED": 5,
+ "DOWNLOAD_CANCELLED": 6,
+}
+
+func (x ImageDownload_ImageDownloadState) String() string {
+ return proto.EnumName(ImageDownload_ImageDownloadState_name, int32(x))
+}
+func (ImageDownload_ImageDownloadState) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_device_8624dad2b773c06a, []int{7, 0}
+}
+
+type ImageDownload_ImageDownloadFailureReason int32
+
+const (
+ ImageDownload_NO_ERROR ImageDownload_ImageDownloadFailureReason = 0
+ ImageDownload_INVALID_URL ImageDownload_ImageDownloadFailureReason = 1
+ ImageDownload_DEVICE_BUSY ImageDownload_ImageDownloadFailureReason = 2
+ ImageDownload_INSUFFICIENT_SPACE ImageDownload_ImageDownloadFailureReason = 3
+ ImageDownload_UNKNOWN_ERROR ImageDownload_ImageDownloadFailureReason = 4
+ ImageDownload_CANCELLED ImageDownload_ImageDownloadFailureReason = 5
+)
+
+var ImageDownload_ImageDownloadFailureReason_name = map[int32]string{
+ 0: "NO_ERROR",
+ 1: "INVALID_URL",
+ 2: "DEVICE_BUSY",
+ 3: "INSUFFICIENT_SPACE",
+ 4: "UNKNOWN_ERROR",
+ 5: "CANCELLED",
+}
+var ImageDownload_ImageDownloadFailureReason_value = map[string]int32{
+ "NO_ERROR": 0,
+ "INVALID_URL": 1,
+ "DEVICE_BUSY": 2,
+ "INSUFFICIENT_SPACE": 3,
+ "UNKNOWN_ERROR": 4,
+ "CANCELLED": 5,
+}
+
+func (x ImageDownload_ImageDownloadFailureReason) String() string {
+ return proto.EnumName(ImageDownload_ImageDownloadFailureReason_name, int32(x))
+}
+func (ImageDownload_ImageDownloadFailureReason) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_device_8624dad2b773c06a, []int{7, 1}
+}
+
+type ImageDownload_ImageActivateState int32
+
+const (
+ ImageDownload_IMAGE_UNKNOWN ImageDownload_ImageActivateState = 0
+ ImageDownload_IMAGE_INACTIVE ImageDownload_ImageActivateState = 1
+ ImageDownload_IMAGE_ACTIVATING ImageDownload_ImageActivateState = 2
+ ImageDownload_IMAGE_ACTIVE ImageDownload_ImageActivateState = 3
+ ImageDownload_IMAGE_REVERTING ImageDownload_ImageActivateState = 4
+ ImageDownload_IMAGE_REVERTED ImageDownload_ImageActivateState = 5
+)
+
+var ImageDownload_ImageActivateState_name = map[int32]string{
+ 0: "IMAGE_UNKNOWN",
+ 1: "IMAGE_INACTIVE",
+ 2: "IMAGE_ACTIVATING",
+ 3: "IMAGE_ACTIVE",
+ 4: "IMAGE_REVERTING",
+ 5: "IMAGE_REVERTED",
+}
+var ImageDownload_ImageActivateState_value = map[string]int32{
+ "IMAGE_UNKNOWN": 0,
+ "IMAGE_INACTIVE": 1,
+ "IMAGE_ACTIVATING": 2,
+ "IMAGE_ACTIVE": 3,
+ "IMAGE_REVERTING": 4,
+ "IMAGE_REVERTED": 5,
+}
+
+func (x ImageDownload_ImageActivateState) String() string {
+ return proto.EnumName(ImageDownload_ImageActivateState_name, int32(x))
+}
+func (ImageDownload_ImageActivateState) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_device_8624dad2b773c06a, []int{7, 2}
+}
+
+type Port_PortType int32
+
+const (
+ Port_UNKNOWN Port_PortType = 0
+ Port_ETHERNET_NNI Port_PortType = 1
+ Port_ETHERNET_UNI Port_PortType = 2
+ Port_PON_OLT Port_PortType = 3
+ Port_PON_ONU Port_PortType = 4
+ Port_VENET_OLT Port_PortType = 5
+ Port_VENET_ONU Port_PortType = 6
+)
+
+var Port_PortType_name = map[int32]string{
+ 0: "UNKNOWN",
+ 1: "ETHERNET_NNI",
+ 2: "ETHERNET_UNI",
+ 3: "PON_OLT",
+ 4: "PON_ONU",
+ 5: "VENET_OLT",
+ 6: "VENET_ONU",
+}
+var Port_PortType_value = map[string]int32{
+ "UNKNOWN": 0,
+ "ETHERNET_NNI": 1,
+ "ETHERNET_UNI": 2,
+ "PON_OLT": 3,
+ "PON_ONU": 4,
+ "VENET_OLT": 5,
+ "VENET_ONU": 6,
+}
+
+func (x Port_PortType) String() string {
+ return proto.EnumName(Port_PortType_name, int32(x))
+}
+func (Port_PortType) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_device_8624dad2b773c06a, []int{9, 0}
+}
+
+type SimulateAlarmRequest_OperationType int32
+
+const (
+ SimulateAlarmRequest_RAISE SimulateAlarmRequest_OperationType = 0
+ SimulateAlarmRequest_CLEAR SimulateAlarmRequest_OperationType = 1
+)
+
+var SimulateAlarmRequest_OperationType_name = map[int32]string{
+ 0: "RAISE",
+ 1: "CLEAR",
+}
+var SimulateAlarmRequest_OperationType_value = map[string]int32{
+ "RAISE": 0,
+ "CLEAR": 1,
+}
+
+func (x SimulateAlarmRequest_OperationType) String() string {
+ return proto.EnumName(SimulateAlarmRequest_OperationType_name, int32(x))
+}
+func (SimulateAlarmRequest_OperationType) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_device_8624dad2b773c06a, []int{13, 0}
+}
+
+// A Device Type
+type DeviceType struct {
+ // Unique name for the device type
+ Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ // Unique vendor id for the device type applicable to ONU
+ // 4 bytes of vendor id from ONU serial number
+ VendorId string `protobuf:"bytes,5,opt,name=vendor_id,json=vendorId,proto3" json:"vendor_id,omitempty"`
+ VendorIds []string `protobuf:"bytes,6,rep,name=vendor_ids,json=vendorIds,proto3" json:"vendor_ids,omitempty"`
+ // Name of the adapter that handles device type
+ Adapter string `protobuf:"bytes,2,opt,name=adapter,proto3" json:"adapter,omitempty"`
+ // Capabilities
+ AcceptsBulkFlowUpdate bool `protobuf:"varint,3,opt,name=accepts_bulk_flow_update,json=acceptsBulkFlowUpdate,proto3" json:"accepts_bulk_flow_update,omitempty"`
+ AcceptsAddRemoveFlowUpdates bool `protobuf:"varint,4,opt,name=accepts_add_remove_flow_updates,json=acceptsAddRemoveFlowUpdates,proto3" json:"accepts_add_remove_flow_updates,omitempty"`
+ AcceptsDirectLogicalFlowsUpdate bool `protobuf:"varint,7,opt,name=accepts_direct_logical_flows_update,json=acceptsDirectLogicalFlowsUpdate,proto3" json:"accepts_direct_logical_flows_update,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *DeviceType) Reset() { *m = DeviceType{} }
+func (m *DeviceType) String() string { return proto.CompactTextString(m) }
+func (*DeviceType) ProtoMessage() {}
+func (*DeviceType) Descriptor() ([]byte, []int) {
+ return fileDescriptor_device_8624dad2b773c06a, []int{0}
+}
+func (m *DeviceType) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_DeviceType.Unmarshal(m, b)
+}
+func (m *DeviceType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_DeviceType.Marshal(b, m, deterministic)
+}
+func (dst *DeviceType) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_DeviceType.Merge(dst, src)
+}
+func (m *DeviceType) XXX_Size() int {
+ return xxx_messageInfo_DeviceType.Size(m)
+}
+func (m *DeviceType) XXX_DiscardUnknown() {
+ xxx_messageInfo_DeviceType.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_DeviceType proto.InternalMessageInfo
+
+func (m *DeviceType) GetId() string {
+ if m != nil {
+ return m.Id
+ }
+ return ""
+}
+
+func (m *DeviceType) GetVendorId() string {
+ if m != nil {
+ return m.VendorId
+ }
+ return ""
+}
+
+func (m *DeviceType) GetVendorIds() []string {
+ if m != nil {
+ return m.VendorIds
+ }
+ return nil
+}
+
+func (m *DeviceType) GetAdapter() string {
+ if m != nil {
+ return m.Adapter
+ }
+ return ""
+}
+
+func (m *DeviceType) GetAcceptsBulkFlowUpdate() bool {
+ if m != nil {
+ return m.AcceptsBulkFlowUpdate
+ }
+ return false
+}
+
+func (m *DeviceType) GetAcceptsAddRemoveFlowUpdates() bool {
+ if m != nil {
+ return m.AcceptsAddRemoveFlowUpdates
+ }
+ return false
+}
+
+func (m *DeviceType) GetAcceptsDirectLogicalFlowsUpdate() bool {
+ if m != nil {
+ return m.AcceptsDirectLogicalFlowsUpdate
+ }
+ return false
+}
+
+// A plurality of device types
+type DeviceTypes struct {
+ Items []*DeviceType `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *DeviceTypes) Reset() { *m = DeviceTypes{} }
+func (m *DeviceTypes) String() string { return proto.CompactTextString(m) }
+func (*DeviceTypes) ProtoMessage() {}
+func (*DeviceTypes) Descriptor() ([]byte, []int) {
+ return fileDescriptor_device_8624dad2b773c06a, []int{1}
+}
+func (m *DeviceTypes) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_DeviceTypes.Unmarshal(m, b)
+}
+func (m *DeviceTypes) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_DeviceTypes.Marshal(b, m, deterministic)
+}
+func (dst *DeviceTypes) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_DeviceTypes.Merge(dst, src)
+}
+func (m *DeviceTypes) XXX_Size() int {
+ return xxx_messageInfo_DeviceTypes.Size(m)
+}
+func (m *DeviceTypes) XXX_DiscardUnknown() {
+ xxx_messageInfo_DeviceTypes.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_DeviceTypes proto.InternalMessageInfo
+
+func (m *DeviceTypes) GetItems() []*DeviceType {
+ if m != nil {
+ return m.Items
+ }
+ return nil
+}
+
+type PmConfig struct {
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ Type PmConfig_PmType `protobuf:"varint,2,opt,name=type,proto3,enum=voltha.PmConfig_PmType" json:"type,omitempty"`
+ Enabled bool `protobuf:"varint,3,opt,name=enabled,proto3" json:"enabled,omitempty"`
+ SampleFreq uint32 `protobuf:"varint,4,opt,name=sample_freq,json=sampleFreq,proto3" json:"sample_freq,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *PmConfig) Reset() { *m = PmConfig{} }
+func (m *PmConfig) String() string { return proto.CompactTextString(m) }
+func (*PmConfig) ProtoMessage() {}
+func (*PmConfig) Descriptor() ([]byte, []int) {
+ return fileDescriptor_device_8624dad2b773c06a, []int{2}
+}
+func (m *PmConfig) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_PmConfig.Unmarshal(m, b)
+}
+func (m *PmConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_PmConfig.Marshal(b, m, deterministic)
+}
+func (dst *PmConfig) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_PmConfig.Merge(dst, src)
+}
+func (m *PmConfig) XXX_Size() int {
+ return xxx_messageInfo_PmConfig.Size(m)
+}
+func (m *PmConfig) XXX_DiscardUnknown() {
+ xxx_messageInfo_PmConfig.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_PmConfig proto.InternalMessageInfo
+
+func (m *PmConfig) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
+func (m *PmConfig) GetType() PmConfig_PmType {
+ if m != nil {
+ return m.Type
+ }
+ return PmConfig_COUNTER
+}
+
+func (m *PmConfig) GetEnabled() bool {
+ if m != nil {
+ return m.Enabled
+ }
+ return false
+}
+
+func (m *PmConfig) GetSampleFreq() uint32 {
+ if m != nil {
+ return m.SampleFreq
+ }
+ return 0
+}
+
+type PmGroupConfig struct {
+ GroupName string `protobuf:"bytes,1,opt,name=group_name,json=groupName,proto3" json:"group_name,omitempty"`
+ GroupFreq uint32 `protobuf:"varint,2,opt,name=group_freq,json=groupFreq,proto3" json:"group_freq,omitempty"`
+ Enabled bool `protobuf:"varint,3,opt,name=enabled,proto3" json:"enabled,omitempty"`
+ Metrics []*PmConfig `protobuf:"bytes,4,rep,name=metrics,proto3" json:"metrics,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *PmGroupConfig) Reset() { *m = PmGroupConfig{} }
+func (m *PmGroupConfig) String() string { return proto.CompactTextString(m) }
+func (*PmGroupConfig) ProtoMessage() {}
+func (*PmGroupConfig) Descriptor() ([]byte, []int) {
+ return fileDescriptor_device_8624dad2b773c06a, []int{3}
+}
+func (m *PmGroupConfig) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_PmGroupConfig.Unmarshal(m, b)
+}
+func (m *PmGroupConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_PmGroupConfig.Marshal(b, m, deterministic)
+}
+func (dst *PmGroupConfig) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_PmGroupConfig.Merge(dst, src)
+}
+func (m *PmGroupConfig) XXX_Size() int {
+ return xxx_messageInfo_PmGroupConfig.Size(m)
+}
+func (m *PmGroupConfig) XXX_DiscardUnknown() {
+ xxx_messageInfo_PmGroupConfig.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_PmGroupConfig proto.InternalMessageInfo
+
+func (m *PmGroupConfig) GetGroupName() string {
+ if m != nil {
+ return m.GroupName
+ }
+ return ""
+}
+
+func (m *PmGroupConfig) GetGroupFreq() uint32 {
+ if m != nil {
+ return m.GroupFreq
+ }
+ return 0
+}
+
+func (m *PmGroupConfig) GetEnabled() bool {
+ if m != nil {
+ return m.Enabled
+ }
+ return false
+}
+
+func (m *PmGroupConfig) GetMetrics() []*PmConfig {
+ if m != nil {
+ return m.Metrics
+ }
+ return nil
+}
+
+type PmConfigs struct {
+ Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ DefaultFreq uint32 `protobuf:"varint,2,opt,name=default_freq,json=defaultFreq,proto3" json:"default_freq,omitempty"`
+ // Forces group names and group semantics
+ Grouped bool `protobuf:"varint,3,opt,name=grouped,proto3" json:"grouped,omitempty"`
+ // Allows Pm to set an individual sample frequency
+ FreqOverride bool `protobuf:"varint,4,opt,name=freq_override,json=freqOverride,proto3" json:"freq_override,omitempty"`
+ Groups []*PmGroupConfig `protobuf:"bytes,5,rep,name=groups,proto3" json:"groups,omitempty"`
+ Metrics []*PmConfig `protobuf:"bytes,6,rep,name=metrics,proto3" json:"metrics,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *PmConfigs) Reset() { *m = PmConfigs{} }
+func (m *PmConfigs) String() string { return proto.CompactTextString(m) }
+func (*PmConfigs) ProtoMessage() {}
+func (*PmConfigs) Descriptor() ([]byte, []int) {
+ return fileDescriptor_device_8624dad2b773c06a, []int{4}
+}
+func (m *PmConfigs) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_PmConfigs.Unmarshal(m, b)
+}
+func (m *PmConfigs) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_PmConfigs.Marshal(b, m, deterministic)
+}
+func (dst *PmConfigs) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_PmConfigs.Merge(dst, src)
+}
+func (m *PmConfigs) XXX_Size() int {
+ return xxx_messageInfo_PmConfigs.Size(m)
+}
+func (m *PmConfigs) XXX_DiscardUnknown() {
+ xxx_messageInfo_PmConfigs.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_PmConfigs proto.InternalMessageInfo
+
+func (m *PmConfigs) GetId() string {
+ if m != nil {
+ return m.Id
+ }
+ return ""
+}
+
+func (m *PmConfigs) GetDefaultFreq() uint32 {
+ if m != nil {
+ return m.DefaultFreq
+ }
+ return 0
+}
+
+func (m *PmConfigs) GetGrouped() bool {
+ if m != nil {
+ return m.Grouped
+ }
+ return false
+}
+
+func (m *PmConfigs) GetFreqOverride() bool {
+ if m != nil {
+ return m.FreqOverride
+ }
+ return false
+}
+
+func (m *PmConfigs) GetGroups() []*PmGroupConfig {
+ if m != nil {
+ return m.Groups
+ }
+ return nil
+}
+
+func (m *PmConfigs) GetMetrics() []*PmConfig {
+ if m != nil {
+ return m.Metrics
+ }
+ return nil
+}
+
+// Describes instance of software image on the device
+type Image struct {
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"`
+ Hash string `protobuf:"bytes,3,opt,name=hash,proto3" json:"hash,omitempty"`
+ InstallDatetime string `protobuf:"bytes,4,opt,name=install_datetime,json=installDatetime,proto3" json:"install_datetime,omitempty"`
+ // The active software image is one that is currently loaded and executing
+ // in the ONU or circuit pack. Under normal operation, one software image
+ // is always active while the other is inactive. Under no circumstances are
+ // both software images allowed to be active at the same time
+ IsActive bool `protobuf:"varint,5,opt,name=is_active,json=isActive,proto3" json:"is_active,omitempty"`
+ // The committed software image is loaded and executed upon reboot of the
+ // ONU and/or circuit pack. During normal operation, one software image is
+ // always committed, while the other is uncommitted.
+ IsCommitted bool `protobuf:"varint,6,opt,name=is_committed,json=isCommitted,proto3" json:"is_committed,omitempty"`
+ // A software image is valid if it has been verified to be an executable
+ // code image. The verification mechanism is not subject to standardization;
+ // however, it should include at least a data integrity (e.g., CRC) check of
+ // the entire code image.
+ IsValid bool `protobuf:"varint,7,opt,name=is_valid,json=isValid,proto3" json:"is_valid,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *Image) Reset() { *m = Image{} }
+func (m *Image) String() string { return proto.CompactTextString(m) }
+func (*Image) ProtoMessage() {}
+func (*Image) Descriptor() ([]byte, []int) {
+ return fileDescriptor_device_8624dad2b773c06a, []int{5}
+}
+func (m *Image) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_Image.Unmarshal(m, b)
+}
+func (m *Image) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_Image.Marshal(b, m, deterministic)
+}
+func (dst *Image) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_Image.Merge(dst, src)
+}
+func (m *Image) XXX_Size() int {
+ return xxx_messageInfo_Image.Size(m)
+}
+func (m *Image) XXX_DiscardUnknown() {
+ xxx_messageInfo_Image.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_Image proto.InternalMessageInfo
+
+func (m *Image) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
+func (m *Image) GetVersion() string {
+ if m != nil {
+ return m.Version
+ }
+ return ""
+}
+
+func (m *Image) GetHash() string {
+ if m != nil {
+ return m.Hash
+ }
+ return ""
+}
+
+func (m *Image) GetInstallDatetime() string {
+ if m != nil {
+ return m.InstallDatetime
+ }
+ return ""
+}
+
+func (m *Image) GetIsActive() bool {
+ if m != nil {
+ return m.IsActive
+ }
+ return false
+}
+
+func (m *Image) GetIsCommitted() bool {
+ if m != nil {
+ return m.IsCommitted
+ }
+ return false
+}
+
+func (m *Image) GetIsValid() bool {
+ if m != nil {
+ return m.IsValid
+ }
+ return false
+}
+
+// List of software on the device
+type Images struct {
+ Image []*Image `protobuf:"bytes,1,rep,name=image,proto3" json:"image,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *Images) Reset() { *m = Images{} }
+func (m *Images) String() string { return proto.CompactTextString(m) }
+func (*Images) ProtoMessage() {}
+func (*Images) Descriptor() ([]byte, []int) {
+ return fileDescriptor_device_8624dad2b773c06a, []int{6}
+}
+func (m *Images) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_Images.Unmarshal(m, b)
+}
+func (m *Images) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_Images.Marshal(b, m, deterministic)
+}
+func (dst *Images) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_Images.Merge(dst, src)
+}
+func (m *Images) XXX_Size() int {
+ return xxx_messageInfo_Images.Size(m)
+}
+func (m *Images) XXX_DiscardUnknown() {
+ xxx_messageInfo_Images.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_Images proto.InternalMessageInfo
+
+func (m *Images) GetImage() []*Image {
+ if m != nil {
+ return m.Image
+ }
+ return nil
+}
+
+type ImageDownload struct {
+ // Device Identifier
+ Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ // Image unique identifier
+ Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
+ // URL where the image is available
+ // should include username password
+ Url string `protobuf:"bytes,3,opt,name=url,proto3" json:"url,omitempty"`
+ // CRC of the image to be verified aginst
+ Crc uint32 `protobuf:"varint,4,opt,name=crc,proto3" json:"crc,omitempty"`
+ // Download state
+ DownloadState ImageDownload_ImageDownloadState `protobuf:"varint,5,opt,name=download_state,json=downloadState,proto3,enum=voltha.ImageDownload_ImageDownloadState" json:"download_state,omitempty"`
+ // Downloaded version
+ ImageVersion string `protobuf:"bytes,6,opt,name=image_version,json=imageVersion,proto3" json:"image_version,omitempty"`
+ // Bytes downloaded
+ DownloadedBytes uint32 `protobuf:"varint,7,opt,name=downloaded_bytes,json=downloadedBytes,proto3" json:"downloaded_bytes,omitempty"`
+ // Download failure reason
+ Reason ImageDownload_ImageDownloadFailureReason `protobuf:"varint,8,opt,name=reason,proto3,enum=voltha.ImageDownload_ImageDownloadFailureReason" json:"reason,omitempty"`
+ // Additional info
+ AdditionalInfo string `protobuf:"bytes,9,opt,name=additional_info,json=additionalInfo,proto3" json:"additional_info,omitempty"`
+ // Save current configuration
+ SaveConfig bool `protobuf:"varint,10,opt,name=save_config,json=saveConfig,proto3" json:"save_config,omitempty"`
+ // Image local location
+ LocalDir string `protobuf:"bytes,11,opt,name=local_dir,json=localDir,proto3" json:"local_dir,omitempty"`
+ // Image activation state
+ ImageState ImageDownload_ImageActivateState `protobuf:"varint,12,opt,name=image_state,json=imageState,proto3,enum=voltha.ImageDownload_ImageActivateState" json:"image_state,omitempty"`
+ // Image file size
+ FileSize uint32 `protobuf:"varint,13,opt,name=file_size,json=fileSize,proto3" json:"file_size,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *ImageDownload) Reset() { *m = ImageDownload{} }
+func (m *ImageDownload) String() string { return proto.CompactTextString(m) }
+func (*ImageDownload) ProtoMessage() {}
+func (*ImageDownload) Descriptor() ([]byte, []int) {
+ return fileDescriptor_device_8624dad2b773c06a, []int{7}
+}
+func (m *ImageDownload) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_ImageDownload.Unmarshal(m, b)
+}
+func (m *ImageDownload) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_ImageDownload.Marshal(b, m, deterministic)
+}
+func (dst *ImageDownload) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_ImageDownload.Merge(dst, src)
+}
+func (m *ImageDownload) XXX_Size() int {
+ return xxx_messageInfo_ImageDownload.Size(m)
+}
+func (m *ImageDownload) XXX_DiscardUnknown() {
+ xxx_messageInfo_ImageDownload.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_ImageDownload proto.InternalMessageInfo
+
+func (m *ImageDownload) GetId() string {
+ if m != nil {
+ return m.Id
+ }
+ return ""
+}
+
+func (m *ImageDownload) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
+func (m *ImageDownload) GetUrl() string {
+ if m != nil {
+ return m.Url
+ }
+ return ""
+}
+
+func (m *ImageDownload) GetCrc() uint32 {
+ if m != nil {
+ return m.Crc
+ }
+ return 0
+}
+
+func (m *ImageDownload) GetDownloadState() ImageDownload_ImageDownloadState {
+ if m != nil {
+ return m.DownloadState
+ }
+ return ImageDownload_DOWNLOAD_UNKNOWN
+}
+
+func (m *ImageDownload) GetImageVersion() string {
+ if m != nil {
+ return m.ImageVersion
+ }
+ return ""
+}
+
+func (m *ImageDownload) GetDownloadedBytes() uint32 {
+ if m != nil {
+ return m.DownloadedBytes
+ }
+ return 0
+}
+
+func (m *ImageDownload) GetReason() ImageDownload_ImageDownloadFailureReason {
+ if m != nil {
+ return m.Reason
+ }
+ return ImageDownload_NO_ERROR
+}
+
+func (m *ImageDownload) GetAdditionalInfo() string {
+ if m != nil {
+ return m.AdditionalInfo
+ }
+ return ""
+}
+
+func (m *ImageDownload) GetSaveConfig() bool {
+ if m != nil {
+ return m.SaveConfig
+ }
+ return false
+}
+
+func (m *ImageDownload) GetLocalDir() string {
+ if m != nil {
+ return m.LocalDir
+ }
+ return ""
+}
+
+func (m *ImageDownload) GetImageState() ImageDownload_ImageActivateState {
+ if m != nil {
+ return m.ImageState
+ }
+ return ImageDownload_IMAGE_UNKNOWN
+}
+
+func (m *ImageDownload) GetFileSize() uint32 {
+ if m != nil {
+ return m.FileSize
+ }
+ return 0
+}
+
+type ImageDownloads struct {
+ Items []*ImageDownload `protobuf:"bytes,2,rep,name=items,proto3" json:"items,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *ImageDownloads) Reset() { *m = ImageDownloads{} }
+func (m *ImageDownloads) String() string { return proto.CompactTextString(m) }
+func (*ImageDownloads) ProtoMessage() {}
+func (*ImageDownloads) Descriptor() ([]byte, []int) {
+ return fileDescriptor_device_8624dad2b773c06a, []int{8}
+}
+func (m *ImageDownloads) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_ImageDownloads.Unmarshal(m, b)
+}
+func (m *ImageDownloads) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_ImageDownloads.Marshal(b, m, deterministic)
+}
+func (dst *ImageDownloads) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_ImageDownloads.Merge(dst, src)
+}
+func (m *ImageDownloads) XXX_Size() int {
+ return xxx_messageInfo_ImageDownloads.Size(m)
+}
+func (m *ImageDownloads) XXX_DiscardUnknown() {
+ xxx_messageInfo_ImageDownloads.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_ImageDownloads proto.InternalMessageInfo
+
+func (m *ImageDownloads) GetItems() []*ImageDownload {
+ if m != nil {
+ return m.Items
+ }
+ return nil
+}
+
+type Port struct {
+ PortNo uint32 `protobuf:"varint,1,opt,name=port_no,json=portNo,proto3" json:"port_no,omitempty"`
+ Label string `protobuf:"bytes,2,opt,name=label,proto3" json:"label,omitempty"`
+ Type Port_PortType `protobuf:"varint,3,opt,name=type,proto3,enum=voltha.Port_PortType" json:"type,omitempty"`
+ AdminState common.AdminState_AdminState `protobuf:"varint,5,opt,name=admin_state,json=adminState,proto3,enum=voltha.AdminState_AdminState" json:"admin_state,omitempty"`
+ OperStatus common.OperStatus_OperStatus `protobuf:"varint,6,opt,name=oper_status,json=operStatus,proto3,enum=voltha.OperStatus_OperStatus" json:"oper_status,omitempty"`
+ DeviceId string `protobuf:"bytes,7,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
+ Peers []*Port_PeerPort `protobuf:"bytes,8,rep,name=peers,proto3" json:"peers,omitempty"`
+ RxPackets uint64 `protobuf:"fixed64,9,opt,name=rx_packets,json=rxPackets,proto3" json:"rx_packets,omitempty"`
+ RxBytes uint64 `protobuf:"fixed64,10,opt,name=rx_bytes,json=rxBytes,proto3" json:"rx_bytes,omitempty"`
+ RxErrors uint64 `protobuf:"fixed64,11,opt,name=rx_errors,json=rxErrors,proto3" json:"rx_errors,omitempty"`
+ TxPackets uint64 `protobuf:"fixed64,12,opt,name=tx_packets,json=txPackets,proto3" json:"tx_packets,omitempty"`
+ TxBytes uint64 `protobuf:"fixed64,13,opt,name=tx_bytes,json=txBytes,proto3" json:"tx_bytes,omitempty"`
+ TxErrors uint64 `protobuf:"fixed64,14,opt,name=tx_errors,json=txErrors,proto3" json:"tx_errors,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *Port) Reset() { *m = Port{} }
+func (m *Port) String() string { return proto.CompactTextString(m) }
+func (*Port) ProtoMessage() {}
+func (*Port) Descriptor() ([]byte, []int) {
+ return fileDescriptor_device_8624dad2b773c06a, []int{9}
+}
+func (m *Port) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_Port.Unmarshal(m, b)
+}
+func (m *Port) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_Port.Marshal(b, m, deterministic)
+}
+func (dst *Port) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_Port.Merge(dst, src)
+}
+func (m *Port) XXX_Size() int {
+ return xxx_messageInfo_Port.Size(m)
+}
+func (m *Port) XXX_DiscardUnknown() {
+ xxx_messageInfo_Port.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_Port proto.InternalMessageInfo
+
+func (m *Port) GetPortNo() uint32 {
+ if m != nil {
+ return m.PortNo
+ }
+ return 0
+}
+
+func (m *Port) GetLabel() string {
+ if m != nil {
+ return m.Label
+ }
+ return ""
+}
+
+func (m *Port) GetType() Port_PortType {
+ if m != nil {
+ return m.Type
+ }
+ return Port_UNKNOWN
+}
+
+func (m *Port) GetAdminState() common.AdminState_AdminState {
+ if m != nil {
+ return m.AdminState
+ }
+ return common.AdminState_UNKNOWN
+}
+
+func (m *Port) GetOperStatus() common.OperStatus_OperStatus {
+ if m != nil {
+ return m.OperStatus
+ }
+ return common.OperStatus_UNKNOWN
+}
+
+func (m *Port) GetDeviceId() string {
+ if m != nil {
+ return m.DeviceId
+ }
+ return ""
+}
+
+func (m *Port) GetPeers() []*Port_PeerPort {
+ if m != nil {
+ return m.Peers
+ }
+ return nil
+}
+
+func (m *Port) GetRxPackets() uint64 {
+ if m != nil {
+ return m.RxPackets
+ }
+ return 0
+}
+
+func (m *Port) GetRxBytes() uint64 {
+ if m != nil {
+ return m.RxBytes
+ }
+ return 0
+}
+
+func (m *Port) GetRxErrors() uint64 {
+ if m != nil {
+ return m.RxErrors
+ }
+ return 0
+}
+
+func (m *Port) GetTxPackets() uint64 {
+ if m != nil {
+ return m.TxPackets
+ }
+ return 0
+}
+
+func (m *Port) GetTxBytes() uint64 {
+ if m != nil {
+ return m.TxBytes
+ }
+ return 0
+}
+
+func (m *Port) GetTxErrors() uint64 {
+ if m != nil {
+ return m.TxErrors
+ }
+ return 0
+}
+
+type Port_PeerPort struct {
+ DeviceId string `protobuf:"bytes,1,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
+ PortNo uint32 `protobuf:"varint,2,opt,name=port_no,json=portNo,proto3" json:"port_no,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *Port_PeerPort) Reset() { *m = Port_PeerPort{} }
+func (m *Port_PeerPort) String() string { return proto.CompactTextString(m) }
+func (*Port_PeerPort) ProtoMessage() {}
+func (*Port_PeerPort) Descriptor() ([]byte, []int) {
+ return fileDescriptor_device_8624dad2b773c06a, []int{9, 0}
+}
+func (m *Port_PeerPort) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_Port_PeerPort.Unmarshal(m, b)
+}
+func (m *Port_PeerPort) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_Port_PeerPort.Marshal(b, m, deterministic)
+}
+func (dst *Port_PeerPort) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_Port_PeerPort.Merge(dst, src)
+}
+func (m *Port_PeerPort) XXX_Size() int {
+ return xxx_messageInfo_Port_PeerPort.Size(m)
+}
+func (m *Port_PeerPort) XXX_DiscardUnknown() {
+ xxx_messageInfo_Port_PeerPort.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_Port_PeerPort proto.InternalMessageInfo
+
+func (m *Port_PeerPort) GetDeviceId() string {
+ if m != nil {
+ return m.DeviceId
+ }
+ return ""
+}
+
+func (m *Port_PeerPort) GetPortNo() uint32 {
+ if m != nil {
+ return m.PortNo
+ }
+ return 0
+}
+
+type Ports struct {
+ Items []*Port `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *Ports) Reset() { *m = Ports{} }
+func (m *Ports) String() string { return proto.CompactTextString(m) }
+func (*Ports) ProtoMessage() {}
+func (*Ports) Descriptor() ([]byte, []int) {
+ return fileDescriptor_device_8624dad2b773c06a, []int{10}
+}
+func (m *Ports) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_Ports.Unmarshal(m, b)
+}
+func (m *Ports) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_Ports.Marshal(b, m, deterministic)
+}
+func (dst *Ports) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_Ports.Merge(dst, src)
+}
+func (m *Ports) XXX_Size() int {
+ return xxx_messageInfo_Ports.Size(m)
+}
+func (m *Ports) XXX_DiscardUnknown() {
+ xxx_messageInfo_Ports.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_Ports proto.InternalMessageInfo
+
+func (m *Ports) GetItems() []*Port {
+ if m != nil {
+ return m.Items
+ }
+ return nil
+}
+
+// A Physical Device instance
+type Device struct {
+ // Voltha's device identifier
+ Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ // Device type, refers to one of the registered device types
+ Type string `protobuf:"bytes,2,opt,name=type,proto3" json:"type,omitempty"`
+ // Is this device a root device. Each logical switch has one root
+ // device that is associated with the logical flow switch.
+ Root bool `protobuf:"varint,3,opt,name=root,proto3" json:"root,omitempty"`
+ // Parent device id, in the device tree (for a root device, the parent_id
+ // is the logical_device.id)
+ ParentId string `protobuf:"bytes,4,opt,name=parent_id,json=parentId,proto3" json:"parent_id,omitempty"`
+ ParentPortNo uint32 `protobuf:"varint,20,opt,name=parent_port_no,json=parentPortNo,proto3" json:"parent_port_no,omitempty"`
+ // Vendor, version, serial number, etc.
+ Vendor string `protobuf:"bytes,5,opt,name=vendor,proto3" json:"vendor,omitempty"`
+ Model string `protobuf:"bytes,6,opt,name=model,proto3" json:"model,omitempty"`
+ HardwareVersion string `protobuf:"bytes,7,opt,name=hardware_version,json=hardwareVersion,proto3" json:"hardware_version,omitempty"`
+ FirmwareVersion string `protobuf:"bytes,8,opt,name=firmware_version,json=firmwareVersion,proto3" json:"firmware_version,omitempty"`
+ // List of software on the device
+ Images *Images `protobuf:"bytes,9,opt,name=images,proto3" json:"images,omitempty"`
+ SerialNumber string `protobuf:"bytes,10,opt,name=serial_number,json=serialNumber,proto3" json:"serial_number,omitempty"`
+ VendorId string `protobuf:"bytes,24,opt,name=vendor_id,json=vendorId,proto3" json:"vendor_id,omitempty"`
+ // Addapter that takes care of device
+ Adapter string `protobuf:"bytes,11,opt,name=adapter,proto3" json:"adapter,omitempty"`
+ // Device contact on vlan (if 0, no vlan)
+ Vlan uint32 `protobuf:"varint,12,opt,name=vlan,proto3" json:"vlan,omitempty"`
+ // Device contact MAC address (format: "xx:xx:xx:xx:xx:xx")
+ MacAddress string `protobuf:"bytes,13,opt,name=mac_address,json=macAddress,proto3" json:"mac_address,omitempty"`
+ // Types that are valid to be assigned to Address:
+ // *Device_Ipv4Address
+ // *Device_Ipv6Address
+ // *Device_HostAndPort
+ Address isDevice_Address `protobuf_oneof:"address"`
+ ExtraArgs string `protobuf:"bytes,23,opt,name=extra_args,json=extraArgs,proto3" json:"extra_args,omitempty"`
+ ProxyAddress *Device_ProxyAddress `protobuf:"bytes,19,opt,name=proxy_address,json=proxyAddress,proto3" json:"proxy_address,omitempty"`
+ AdminState common.AdminState_AdminState `protobuf:"varint,16,opt,name=admin_state,json=adminState,proto3,enum=voltha.AdminState_AdminState" json:"admin_state,omitempty"`
+ OperStatus common.OperStatus_OperStatus `protobuf:"varint,17,opt,name=oper_status,json=operStatus,proto3,enum=voltha.OperStatus_OperStatus" json:"oper_status,omitempty"`
+ Reason string `protobuf:"bytes,22,opt,name=reason,proto3" json:"reason,omitempty"`
+ ConnectStatus common.ConnectStatus_ConnectStatus `protobuf:"varint,18,opt,name=connect_status,json=connectStatus,proto3,enum=voltha.ConnectStatus_ConnectStatus" json:"connect_status,omitempty"`
+ // Device type specific attributes
+ Custom *any.Any `protobuf:"bytes,64,opt,name=custom,proto3" json:"custom,omitempty"`
+ Ports []*Port `protobuf:"bytes,128,rep,name=ports,proto3" json:"ports,omitempty"`
+ Flows *openflow_13.Flows `protobuf:"bytes,129,opt,name=flows,proto3" json:"flows,omitempty"`
+ FlowGroups *openflow_13.FlowGroups `protobuf:"bytes,130,opt,name=flow_groups,json=flowGroups,proto3" json:"flow_groups,omitempty"`
+ // PmConfigs will eventually converted to a child node of the
+ // device to falicitata callbacks and to simplify manipulation.
+ PmConfigs *PmConfigs `protobuf:"bytes,131,opt,name=pm_configs,json=pmConfigs,proto3" json:"pm_configs,omitempty"`
+ ImageDownloads []*ImageDownload `protobuf:"bytes,133,rep,name=image_downloads,json=imageDownloads,proto3" json:"image_downloads,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *Device) Reset() { *m = Device{} }
+func (m *Device) String() string { return proto.CompactTextString(m) }
+func (*Device) ProtoMessage() {}
+func (*Device) Descriptor() ([]byte, []int) {
+ return fileDescriptor_device_8624dad2b773c06a, []int{11}
+}
+func (m *Device) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_Device.Unmarshal(m, b)
+}
+func (m *Device) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_Device.Marshal(b, m, deterministic)
+}
+func (dst *Device) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_Device.Merge(dst, src)
+}
+func (m *Device) XXX_Size() int {
+ return xxx_messageInfo_Device.Size(m)
+}
+func (m *Device) XXX_DiscardUnknown() {
+ xxx_messageInfo_Device.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_Device proto.InternalMessageInfo
+
+func (m *Device) GetId() string {
+ if m != nil {
+ return m.Id
+ }
+ return ""
+}
+
+func (m *Device) GetType() string {
+ if m != nil {
+ return m.Type
+ }
+ return ""
+}
+
+func (m *Device) GetRoot() bool {
+ if m != nil {
+ return m.Root
+ }
+ return false
+}
+
+func (m *Device) GetParentId() string {
+ if m != nil {
+ return m.ParentId
+ }
+ return ""
+}
+
+func (m *Device) GetParentPortNo() uint32 {
+ if m != nil {
+ return m.ParentPortNo
+ }
+ return 0
+}
+
+func (m *Device) GetVendor() string {
+ if m != nil {
+ return m.Vendor
+ }
+ return ""
+}
+
+func (m *Device) GetModel() string {
+ if m != nil {
+ return m.Model
+ }
+ return ""
+}
+
+func (m *Device) GetHardwareVersion() string {
+ if m != nil {
+ return m.HardwareVersion
+ }
+ return ""
+}
+
+func (m *Device) GetFirmwareVersion() string {
+ if m != nil {
+ return m.FirmwareVersion
+ }
+ return ""
+}
+
+func (m *Device) GetImages() *Images {
+ if m != nil {
+ return m.Images
+ }
+ return nil
+}
+
+func (m *Device) GetSerialNumber() string {
+ if m != nil {
+ return m.SerialNumber
+ }
+ return ""
+}
+
+func (m *Device) GetVendorId() string {
+ if m != nil {
+ return m.VendorId
+ }
+ return ""
+}
+
+func (m *Device) GetAdapter() string {
+ if m != nil {
+ return m.Adapter
+ }
+ return ""
+}
+
+func (m *Device) GetVlan() uint32 {
+ if m != nil {
+ return m.Vlan
+ }
+ return 0
+}
+
+func (m *Device) GetMacAddress() string {
+ if m != nil {
+ return m.MacAddress
+ }
+ return ""
+}
+
+type isDevice_Address interface {
+ isDevice_Address()
+}
+
+type Device_Ipv4Address struct {
+ Ipv4Address string `protobuf:"bytes,14,opt,name=ipv4_address,json=ipv4Address,proto3,oneof"`
+}
+
+type Device_Ipv6Address struct {
+ Ipv6Address string `protobuf:"bytes,15,opt,name=ipv6_address,json=ipv6Address,proto3,oneof"`
+}
+
+type Device_HostAndPort struct {
+ HostAndPort string `protobuf:"bytes,21,opt,name=host_and_port,json=hostAndPort,proto3,oneof"`
+}
+
+func (*Device_Ipv4Address) isDevice_Address() {}
+
+func (*Device_Ipv6Address) isDevice_Address() {}
+
+func (*Device_HostAndPort) isDevice_Address() {}
+
+func (m *Device) GetAddress() isDevice_Address {
+ if m != nil {
+ return m.Address
+ }
+ return nil
+}
+
+func (m *Device) GetIpv4Address() string {
+ if x, ok := m.GetAddress().(*Device_Ipv4Address); ok {
+ return x.Ipv4Address
+ }
+ return ""
+}
+
+func (m *Device) GetIpv6Address() string {
+ if x, ok := m.GetAddress().(*Device_Ipv6Address); ok {
+ return x.Ipv6Address
+ }
+ return ""
+}
+
+func (m *Device) GetHostAndPort() string {
+ if x, ok := m.GetAddress().(*Device_HostAndPort); ok {
+ return x.HostAndPort
+ }
+ return ""
+}
+
+func (m *Device) GetExtraArgs() string {
+ if m != nil {
+ return m.ExtraArgs
+ }
+ return ""
+}
+
+func (m *Device) GetProxyAddress() *Device_ProxyAddress {
+ if m != nil {
+ return m.ProxyAddress
+ }
+ return nil
+}
+
+func (m *Device) GetAdminState() common.AdminState_AdminState {
+ if m != nil {
+ return m.AdminState
+ }
+ return common.AdminState_UNKNOWN
+}
+
+func (m *Device) GetOperStatus() common.OperStatus_OperStatus {
+ if m != nil {
+ return m.OperStatus
+ }
+ return common.OperStatus_UNKNOWN
+}
+
+func (m *Device) GetReason() string {
+ if m != nil {
+ return m.Reason
+ }
+ return ""
+}
+
+func (m *Device) GetConnectStatus() common.ConnectStatus_ConnectStatus {
+ if m != nil {
+ return m.ConnectStatus
+ }
+ return common.ConnectStatus_UNKNOWN
+}
+
+func (m *Device) GetCustom() *any.Any {
+ if m != nil {
+ return m.Custom
+ }
+ return nil
+}
+
+func (m *Device) GetPorts() []*Port {
+ if m != nil {
+ return m.Ports
+ }
+ return nil
+}
+
+func (m *Device) GetFlows() *openflow_13.Flows {
+ if m != nil {
+ return m.Flows
+ }
+ return nil
+}
+
+func (m *Device) GetFlowGroups() *openflow_13.FlowGroups {
+ if m != nil {
+ return m.FlowGroups
+ }
+ return nil
+}
+
+func (m *Device) GetPmConfigs() *PmConfigs {
+ if m != nil {
+ return m.PmConfigs
+ }
+ return nil
+}
+
+func (m *Device) GetImageDownloads() []*ImageDownload {
+ if m != nil {
+ return m.ImageDownloads
+ }
+ return nil
+}
+
+// XXX_OneofFuncs is for the internal use of the proto package.
+func (*Device) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) {
+ return _Device_OneofMarshaler, _Device_OneofUnmarshaler, _Device_OneofSizer, []interface{}{
+ (*Device_Ipv4Address)(nil),
+ (*Device_Ipv6Address)(nil),
+ (*Device_HostAndPort)(nil),
+ }
+}
+
+func _Device_OneofMarshaler(msg proto.Message, b *proto.Buffer) error {
+ m := msg.(*Device)
+ // address
+ switch x := m.Address.(type) {
+ case *Device_Ipv4Address:
+ b.EncodeVarint(14<<3 | proto.WireBytes)
+ b.EncodeStringBytes(x.Ipv4Address)
+ case *Device_Ipv6Address:
+ b.EncodeVarint(15<<3 | proto.WireBytes)
+ b.EncodeStringBytes(x.Ipv6Address)
+ case *Device_HostAndPort:
+ b.EncodeVarint(21<<3 | proto.WireBytes)
+ b.EncodeStringBytes(x.HostAndPort)
+ case nil:
+ default:
+ return fmt.Errorf("Device.Address has unexpected type %T", x)
+ }
+ return nil
+}
+
+func _Device_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) {
+ m := msg.(*Device)
+ switch tag {
+ case 14: // address.ipv4_address
+ if wire != proto.WireBytes {
+ return true, proto.ErrInternalBadWireType
+ }
+ x, err := b.DecodeStringBytes()
+ m.Address = &Device_Ipv4Address{x}
+ return true, err
+ case 15: // address.ipv6_address
+ if wire != proto.WireBytes {
+ return true, proto.ErrInternalBadWireType
+ }
+ x, err := b.DecodeStringBytes()
+ m.Address = &Device_Ipv6Address{x}
+ return true, err
+ case 21: // address.host_and_port
+ if wire != proto.WireBytes {
+ return true, proto.ErrInternalBadWireType
+ }
+ x, err := b.DecodeStringBytes()
+ m.Address = &Device_HostAndPort{x}
+ return true, err
+ default:
+ return false, nil
+ }
+}
+
+func _Device_OneofSizer(msg proto.Message) (n int) {
+ m := msg.(*Device)
+ // address
+ switch x := m.Address.(type) {
+ case *Device_Ipv4Address:
+ n += 1 // tag and wire
+ n += proto.SizeVarint(uint64(len(x.Ipv4Address)))
+ n += len(x.Ipv4Address)
+ case *Device_Ipv6Address:
+ n += 1 // tag and wire
+ n += proto.SizeVarint(uint64(len(x.Ipv6Address)))
+ n += len(x.Ipv6Address)
+ case *Device_HostAndPort:
+ n += 2 // tag and wire
+ n += proto.SizeVarint(uint64(len(x.HostAndPort)))
+ n += len(x.HostAndPort)
+ case nil:
+ default:
+ panic(fmt.Sprintf("proto: unexpected type %T in oneof", x))
+ }
+ return n
+}
+
+type Device_ProxyAddress struct {
+ DeviceId string `protobuf:"bytes,1,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
+ DeviceType string `protobuf:"bytes,2,opt,name=device_type,json=deviceType,proto3" json:"device_type,omitempty"`
+ ChannelId uint32 `protobuf:"varint,3,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"`
+ ChannelGroupId uint32 `protobuf:"varint,4,opt,name=channel_group_id,json=channelGroupId,proto3" json:"channel_group_id,omitempty"`
+ ChannelTermination string `protobuf:"bytes,5,opt,name=channel_termination,json=channelTermination,proto3" json:"channel_termination,omitempty"`
+ OnuId uint32 `protobuf:"varint,6,opt,name=onu_id,json=onuId,proto3" json:"onu_id,omitempty"`
+ OnuSessionId uint32 `protobuf:"varint,7,opt,name=onu_session_id,json=onuSessionId,proto3" json:"onu_session_id,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *Device_ProxyAddress) Reset() { *m = Device_ProxyAddress{} }
+func (m *Device_ProxyAddress) String() string { return proto.CompactTextString(m) }
+func (*Device_ProxyAddress) ProtoMessage() {}
+func (*Device_ProxyAddress) Descriptor() ([]byte, []int) {
+ return fileDescriptor_device_8624dad2b773c06a, []int{11, 0}
+}
+func (m *Device_ProxyAddress) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_Device_ProxyAddress.Unmarshal(m, b)
+}
+func (m *Device_ProxyAddress) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_Device_ProxyAddress.Marshal(b, m, deterministic)
+}
+func (dst *Device_ProxyAddress) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_Device_ProxyAddress.Merge(dst, src)
+}
+func (m *Device_ProxyAddress) XXX_Size() int {
+ return xxx_messageInfo_Device_ProxyAddress.Size(m)
+}
+func (m *Device_ProxyAddress) XXX_DiscardUnknown() {
+ xxx_messageInfo_Device_ProxyAddress.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_Device_ProxyAddress proto.InternalMessageInfo
+
+func (m *Device_ProxyAddress) GetDeviceId() string {
+ if m != nil {
+ return m.DeviceId
+ }
+ return ""
+}
+
+func (m *Device_ProxyAddress) GetDeviceType() string {
+ if m != nil {
+ return m.DeviceType
+ }
+ return ""
+}
+
+func (m *Device_ProxyAddress) GetChannelId() uint32 {
+ if m != nil {
+ return m.ChannelId
+ }
+ return 0
+}
+
+func (m *Device_ProxyAddress) GetChannelGroupId() uint32 {
+ if m != nil {
+ return m.ChannelGroupId
+ }
+ return 0
+}
+
+func (m *Device_ProxyAddress) GetChannelTermination() string {
+ if m != nil {
+ return m.ChannelTermination
+ }
+ return ""
+}
+
+func (m *Device_ProxyAddress) GetOnuId() uint32 {
+ if m != nil {
+ return m.OnuId
+ }
+ return 0
+}
+
+func (m *Device_ProxyAddress) GetOnuSessionId() uint32 {
+ if m != nil {
+ return m.OnuSessionId
+ }
+ return 0
+}
+
+type Devices struct {
+ Items []*Device `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *Devices) Reset() { *m = Devices{} }
+func (m *Devices) String() string { return proto.CompactTextString(m) }
+func (*Devices) ProtoMessage() {}
+func (*Devices) Descriptor() ([]byte, []int) {
+ return fileDescriptor_device_8624dad2b773c06a, []int{12}
+}
+func (m *Devices) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_Devices.Unmarshal(m, b)
+}
+func (m *Devices) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_Devices.Marshal(b, m, deterministic)
+}
+func (dst *Devices) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_Devices.Merge(dst, src)
+}
+func (m *Devices) XXX_Size() int {
+ return xxx_messageInfo_Devices.Size(m)
+}
+func (m *Devices) XXX_DiscardUnknown() {
+ xxx_messageInfo_Devices.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_Devices proto.InternalMessageInfo
+
+func (m *Devices) GetItems() []*Device {
+ if m != nil {
+ return m.Items
+ }
+ return nil
+}
+
+type SimulateAlarmRequest struct {
+ // Device Identifier
+ Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ Indicator string `protobuf:"bytes,2,opt,name=indicator,proto3" json:"indicator,omitempty"`
+ IntfId string `protobuf:"bytes,3,opt,name=intf_id,json=intfId,proto3" json:"intf_id,omitempty"`
+ PortTypeName string `protobuf:"bytes,4,opt,name=port_type_name,json=portTypeName,proto3" json:"port_type_name,omitempty"`
+ OnuDeviceId string `protobuf:"bytes,5,opt,name=onu_device_id,json=onuDeviceId,proto3" json:"onu_device_id,omitempty"`
+ InverseBitErrorRate int32 `protobuf:"varint,6,opt,name=inverse_bit_error_rate,json=inverseBitErrorRate,proto3" json:"inverse_bit_error_rate,omitempty"`
+ Drift int32 `protobuf:"varint,7,opt,name=drift,proto3" json:"drift,omitempty"`
+ NewEqd int32 `protobuf:"varint,8,opt,name=new_eqd,json=newEqd,proto3" json:"new_eqd,omitempty"`
+ OnuSerialNumber string `protobuf:"bytes,9,opt,name=onu_serial_number,json=onuSerialNumber,proto3" json:"onu_serial_number,omitempty"`
+ Operation SimulateAlarmRequest_OperationType `protobuf:"varint,10,opt,name=operation,proto3,enum=voltha.SimulateAlarmRequest_OperationType" json:"operation,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *SimulateAlarmRequest) Reset() { *m = SimulateAlarmRequest{} }
+func (m *SimulateAlarmRequest) String() string { return proto.CompactTextString(m) }
+func (*SimulateAlarmRequest) ProtoMessage() {}
+func (*SimulateAlarmRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_device_8624dad2b773c06a, []int{13}
+}
+func (m *SimulateAlarmRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_SimulateAlarmRequest.Unmarshal(m, b)
+}
+func (m *SimulateAlarmRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_SimulateAlarmRequest.Marshal(b, m, deterministic)
+}
+func (dst *SimulateAlarmRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_SimulateAlarmRequest.Merge(dst, src)
+}
+func (m *SimulateAlarmRequest) XXX_Size() int {
+ return xxx_messageInfo_SimulateAlarmRequest.Size(m)
+}
+func (m *SimulateAlarmRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_SimulateAlarmRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_SimulateAlarmRequest proto.InternalMessageInfo
+
+func (m *SimulateAlarmRequest) GetId() string {
+ if m != nil {
+ return m.Id
+ }
+ return ""
+}
+
+func (m *SimulateAlarmRequest) GetIndicator() string {
+ if m != nil {
+ return m.Indicator
+ }
+ return ""
+}
+
+func (m *SimulateAlarmRequest) GetIntfId() string {
+ if m != nil {
+ return m.IntfId
+ }
+ return ""
+}
+
+func (m *SimulateAlarmRequest) GetPortTypeName() string {
+ if m != nil {
+ return m.PortTypeName
+ }
+ return ""
+}
+
+func (m *SimulateAlarmRequest) GetOnuDeviceId() string {
+ if m != nil {
+ return m.OnuDeviceId
+ }
+ return ""
+}
+
+func (m *SimulateAlarmRequest) GetInverseBitErrorRate() int32 {
+ if m != nil {
+ return m.InverseBitErrorRate
+ }
+ return 0
+}
+
+func (m *SimulateAlarmRequest) GetDrift() int32 {
+ if m != nil {
+ return m.Drift
+ }
+ return 0
+}
+
+func (m *SimulateAlarmRequest) GetNewEqd() int32 {
+ if m != nil {
+ return m.NewEqd
+ }
+ return 0
+}
+
+func (m *SimulateAlarmRequest) GetOnuSerialNumber() string {
+ if m != nil {
+ return m.OnuSerialNumber
+ }
+ return ""
+}
+
+func (m *SimulateAlarmRequest) GetOperation() SimulateAlarmRequest_OperationType {
+ if m != nil {
+ return m.Operation
+ }
+ return SimulateAlarmRequest_RAISE
+}
+
+func init() {
+ proto.RegisterType((*DeviceType)(nil), "voltha.DeviceType")
+ proto.RegisterType((*DeviceTypes)(nil), "voltha.DeviceTypes")
+ proto.RegisterType((*PmConfig)(nil), "voltha.PmConfig")
+ proto.RegisterType((*PmGroupConfig)(nil), "voltha.PmGroupConfig")
+ proto.RegisterType((*PmConfigs)(nil), "voltha.PmConfigs")
+ proto.RegisterType((*Image)(nil), "voltha.Image")
+ proto.RegisterType((*Images)(nil), "voltha.Images")
+ proto.RegisterType((*ImageDownload)(nil), "voltha.ImageDownload")
+ proto.RegisterType((*ImageDownloads)(nil), "voltha.ImageDownloads")
+ proto.RegisterType((*Port)(nil), "voltha.Port")
+ proto.RegisterType((*Port_PeerPort)(nil), "voltha.Port.PeerPort")
+ proto.RegisterType((*Ports)(nil), "voltha.Ports")
+ proto.RegisterType((*Device)(nil), "voltha.Device")
+ proto.RegisterType((*Device_ProxyAddress)(nil), "voltha.Device.ProxyAddress")
+ proto.RegisterType((*Devices)(nil), "voltha.Devices")
+ proto.RegisterType((*SimulateAlarmRequest)(nil), "voltha.SimulateAlarmRequest")
+ proto.RegisterEnum("voltha.PmConfig_PmType", PmConfig_PmType_name, PmConfig_PmType_value)
+ proto.RegisterEnum("voltha.ImageDownload_ImageDownloadState", ImageDownload_ImageDownloadState_name, ImageDownload_ImageDownloadState_value)
+ proto.RegisterEnum("voltha.ImageDownload_ImageDownloadFailureReason", ImageDownload_ImageDownloadFailureReason_name, ImageDownload_ImageDownloadFailureReason_value)
+ proto.RegisterEnum("voltha.ImageDownload_ImageActivateState", ImageDownload_ImageActivateState_name, ImageDownload_ImageActivateState_value)
+ proto.RegisterEnum("voltha.Port_PortType", Port_PortType_name, Port_PortType_value)
+ proto.RegisterEnum("voltha.SimulateAlarmRequest_OperationType", SimulateAlarmRequest_OperationType_name, SimulateAlarmRequest_OperationType_value)
+}
+
+func init() { proto.RegisterFile("voltha_protos/device.proto", fileDescriptor_device_8624dad2b773c06a) }
+
+var fileDescriptor_device_8624dad2b773c06a = []byte{
+ // 2378 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x58, 0x4d, 0x6f, 0xdb, 0xc8,
+ 0xf9, 0x8f, 0x64, 0x93, 0x12, 0x1f, 0xbd, 0x98, 0x99, 0x38, 0x09, 0x63, 0xff, 0x0d, 0xe7, 0xaf,
+ 0x6c, 0x51, 0x27, 0x69, 0xec, 0x34, 0x29, 0x76, 0x17, 0x05, 0x5a, 0x44, 0x96, 0xe8, 0x44, 0xa8,
+ 0x2b, 0x79, 0x47, 0x92, 0xb7, 0xed, 0x85, 0xa0, 0xc5, 0x91, 0x4d, 0x84, 0xe4, 0x28, 0x43, 0xca,
+ 0x2f, 0x7b, 0x6a, 0xbb, 0x68, 0x4f, 0xbd, 0x15, 0xe8, 0x67, 0xe8, 0x37, 0xe8, 0xb1, 0xfd, 0x02,
+ 0x41, 0xbf, 0x40, 0x4f, 0x3d, 0x14, 0x45, 0x4f, 0x3d, 0xe5, 0x5c, 0xcc, 0x9b, 0x44, 0x3a, 0x69,
+ 0x76, 0x7b, 0x21, 0x66, 0x7e, 0xcf, 0xcb, 0xcc, 0xfc, 0x66, 0xe6, 0x79, 0x9e, 0x21, 0x6c, 0x9c,
+ 0xd3, 0x28, 0x3b, 0xf3, 0xbd, 0x19, 0xa3, 0x19, 0x4d, 0xf7, 0x02, 0x72, 0x1e, 0x4e, 0xc8, 0xae,
+ 0xe8, 0x21, 0x53, 0xca, 0x36, 0xee, 0x9d, 0x52, 0x7a, 0x1a, 0x91, 0x3d, 0x81, 0x9e, 0xcc, 0xa7,
+ 0x7b, 0x7e, 0x72, 0x25, 0x55, 0x36, 0xae, 0x99, 0x4f, 0x68, 0x1c, 0xd3, 0x44, 0xc9, 0x9c, 0xa2,
+ 0x2c, 0x26, 0x99, 0xaf, 0x24, 0xdb, 0x45, 0x09, 0x9d, 0x91, 0x64, 0x1a, 0xd1, 0x0b, 0xef, 0xfb,
+ 0xcf, 0x95, 0xc2, 0xfd, 0xa2, 0xc2, 0x95, 0x9f, 0x9c, 0x7a, 0x74, 0x96, 0x85, 0x34, 0x49, 0xa5,
+ 0x46, 0xeb, 0xcf, 0x65, 0x80, 0xae, 0x98, 0xec, 0xe8, 0x6a, 0x46, 0x50, 0x13, 0xca, 0x61, 0xe0,
+ 0x94, 0xee, 0x97, 0x76, 0x2c, 0x5c, 0x0e, 0x03, 0xb4, 0x09, 0xd6, 0x39, 0x49, 0x02, 0xca, 0xbc,
+ 0x30, 0x70, 0x0c, 0x01, 0x57, 0x25, 0xd0, 0x0b, 0xd0, 0x16, 0xc0, 0x42, 0x98, 0x3a, 0xe6, 0xfd,
+ 0x95, 0x1d, 0x0b, 0x5b, 0x5a, 0x9a, 0x22, 0x07, 0x2a, 0x7e, 0xe0, 0xcf, 0x32, 0xc2, 0x9c, 0xb2,
+ 0xb0, 0xd4, 0x5d, 0xf4, 0x19, 0x38, 0xfe, 0x64, 0x42, 0x66, 0x59, 0xea, 0x9d, 0xcc, 0xa3, 0xd7,
+ 0x9e, 0x98, 0xf4, 0x7c, 0x16, 0xf8, 0x19, 0x71, 0x56, 0xee, 0x97, 0x76, 0xaa, 0xf8, 0xb6, 0x92,
+ 0xef, 0xcf, 0xa3, 0xd7, 0x07, 0x11, 0xbd, 0x18, 0x0b, 0x21, 0xea, 0xc2, 0xb6, 0x36, 0xf4, 0x83,
+ 0xc0, 0x63, 0x24, 0xa6, 0xe7, 0x24, 0x6f, 0x9e, 0x3a, 0xab, 0xc2, 0x7e, 0x53, 0xa9, 0xb5, 0x83,
+ 0x00, 0x0b, 0xa5, 0xa5, 0x93, 0x14, 0x1d, 0xc2, 0x03, 0xed, 0x25, 0x08, 0x19, 0x99, 0x64, 0x5e,
+ 0x44, 0x4f, 0xc3, 0x89, 0x1f, 0x09, 0x4f, 0xa9, 0x9e, 0x49, 0x45, 0x78, 0xd2, 0x03, 0x76, 0x85,
+ 0xe6, 0xa1, 0x54, 0xe4, 0xde, 0x52, 0xe9, 0xae, 0xf5, 0x19, 0xd4, 0x96, 0x04, 0xa6, 0x68, 0x07,
+ 0x8c, 0x30, 0x23, 0x71, 0xea, 0x94, 0xee, 0xaf, 0xec, 0xd4, 0x9e, 0xa1, 0x5d, 0xb9, 0x05, 0xbb,
+ 0x4b, 0x1d, 0x2c, 0x15, 0x5a, 0x7f, 0x29, 0x41, 0xf5, 0x28, 0xee, 0xd0, 0x64, 0x1a, 0x9e, 0x22,
+ 0x04, 0xab, 0x89, 0x1f, 0x13, 0x45, 0xbd, 0x68, 0xa3, 0xc7, 0xb0, 0x9a, 0x5d, 0xcd, 0x88, 0x60,
+ 0xaf, 0xf9, 0xec, 0xae, 0xf6, 0xa4, 0x6d, 0x76, 0x8f, 0x62, 0xe1, 0x4e, 0x28, 0x71, 0xb6, 0x49,
+ 0xe2, 0x9f, 0x44, 0x24, 0x50, 0x14, 0xea, 0x2e, 0xda, 0x86, 0x5a, 0xea, 0xc7, 0xb3, 0x88, 0x78,
+ 0x53, 0x46, 0xde, 0x08, 0x82, 0x1a, 0x18, 0x24, 0x74, 0xc0, 0xc8, 0x9b, 0xd6, 0xe7, 0x60, 0x4a,
+ 0x57, 0xa8, 0x06, 0x95, 0xce, 0x60, 0xdc, 0x1f, 0xb9, 0xd8, 0xbe, 0x81, 0x2c, 0x30, 0x5e, 0xb6,
+ 0xc7, 0x2f, 0x5d, 0xbb, 0xc4, 0x9b, 0xc3, 0x51, 0x7b, 0xe4, 0xda, 0x65, 0xa9, 0xd2, 0x1f, 0xb9,
+ 0x3f, 0x1b, 0xd9, 0x2b, 0xad, 0xdf, 0x97, 0xa0, 0x71, 0x14, 0xbf, 0x64, 0x74, 0x3e, 0x53, 0xeb,
+ 0xd8, 0x02, 0x38, 0xe5, 0x5d, 0x2f, 0xb7, 0x1a, 0x4b, 0x20, 0x7d, 0xbe, 0xa4, 0x85, 0x58, 0x4c,
+ 0xa5, 0x2c, 0xa6, 0x22, 0xc5, 0x7c, 0x26, 0x1f, 0x59, 0xc4, 0x23, 0xa8, 0xc4, 0x24, 0x63, 0xe1,
+ 0x84, 0xef, 0x30, 0x27, 0xd6, 0xbe, 0x4e, 0x07, 0xd6, 0x0a, 0xad, 0x7f, 0x94, 0xc0, 0xd2, 0x68,
+ 0xfa, 0xde, 0x91, 0xfe, 0x7f, 0xa8, 0x07, 0x64, 0xea, 0xcf, 0xa3, 0x2c, 0x3f, 0x89, 0x9a, 0xc2,
+ 0xc4, 0x34, 0xb6, 0xa1, 0x22, 0xe6, 0xa4, 0xa7, 0xb1, 0x6f, 0xfc, 0xf3, 0xdd, 0xdb, 0xad, 0x12,
+ 0xd6, 0x28, 0x7a, 0x04, 0x0d, 0x6e, 0xeb, 0xd1, 0x73, 0xc2, 0x58, 0x18, 0x10, 0x79, 0xea, 0xb4,
+ 0x5a, 0x9d, 0xcb, 0x06, 0x4a, 0x84, 0x9e, 0x80, 0x29, 0xcc, 0x52, 0xc7, 0x10, 0x13, 0xbf, 0xbd,
+ 0x9c, 0x78, 0x8e, 0x38, 0xac, 0x94, 0xf2, 0x0b, 0x35, 0xbf, 0x69, 0xa1, 0x7f, 0x2d, 0x81, 0xd1,
+ 0x8b, 0xfd, 0x53, 0xf2, 0xc1, 0xe3, 0xe3, 0x40, 0xe5, 0x9c, 0xb0, 0x34, 0xa4, 0x89, 0xbe, 0x7f,
+ 0xaa, 0xcb, 0xb5, 0xcf, 0xfc, 0xf4, 0x4c, 0x2c, 0xce, 0xc2, 0xa2, 0x8d, 0x1e, 0x82, 0x1d, 0x26,
+ 0x69, 0xe6, 0x47, 0x91, 0xc7, 0x8f, 0x75, 0x16, 0xc6, 0x72, 0x55, 0x16, 0x5e, 0x53, 0x78, 0x57,
+ 0xc1, 0x3c, 0x28, 0x84, 0xa9, 0xe7, 0x4f, 0xb2, 0xf0, 0x9c, 0x88, 0xa0, 0x50, 0xc5, 0xd5, 0x30,
+ 0x6d, 0x8b, 0x3e, 0xa7, 0x37, 0x4c, 0x3d, 0x1e, 0xc0, 0xc2, 0x2c, 0x23, 0x81, 0x63, 0x0a, 0x79,
+ 0x2d, 0x4c, 0x3b, 0x1a, 0x42, 0xf7, 0xa0, 0x1a, 0xa6, 0xde, 0xb9, 0x1f, 0x85, 0x81, 0xba, 0x64,
+ 0x95, 0x30, 0x3d, 0xe6, 0xdd, 0xd6, 0x13, 0x30, 0xc5, 0x82, 0x52, 0xf4, 0x00, 0x8c, 0x90, 0xb7,
+ 0xd4, 0x3d, 0x6a, 0x68, 0x16, 0x84, 0x18, 0x4b, 0x59, 0xeb, 0x5f, 0x15, 0x68, 0x08, 0xa0, 0x4b,
+ 0x2f, 0x92, 0x88, 0xfa, 0xc1, 0x7b, 0xbb, 0xad, 0x89, 0x29, 0xe7, 0x88, 0xb1, 0x61, 0x65, 0xce,
+ 0x22, 0xb5, 0x7a, 0xde, 0xe4, 0xc8, 0x84, 0x4d, 0xd4, 0xd5, 0xe0, 0x4d, 0x34, 0x80, 0x66, 0xa0,
+ 0x7c, 0x7a, 0x69, 0xc6, 0xc3, 0x81, 0x21, 0x6e, 0xe1, 0x4e, 0x61, 0x1e, 0x7a, 0xd8, 0x62, 0x6f,
+ 0xc8, 0xf5, 0x71, 0x23, 0xc8, 0x77, 0xd1, 0x03, 0x68, 0x88, 0x39, 0x7b, 0x7a, 0x4f, 0x4c, 0x31,
+ 0x7c, 0x5d, 0x80, 0xc7, 0x6a, 0x63, 0x1e, 0x82, 0xad, 0xad, 0x48, 0xe0, 0x9d, 0x5c, 0xf1, 0x80,
+ 0x56, 0x11, 0x93, 0x5a, 0x5b, 0xe2, 0xfb, 0x1c, 0x46, 0xaf, 0xc0, 0x64, 0xc4, 0x4f, 0x69, 0xe2,
+ 0x54, 0xc5, 0xc4, 0x9e, 0x7e, 0x8b, 0x89, 0x1d, 0xf8, 0x61, 0x34, 0x67, 0x04, 0x0b, 0x3b, 0xac,
+ 0xec, 0xd1, 0x77, 0x61, 0xcd, 0x0f, 0x82, 0x90, 0x67, 0x05, 0x3f, 0xf2, 0xc2, 0x64, 0x4a, 0x1d,
+ 0x4b, 0xcc, 0xad, 0xb9, 0x84, 0x7b, 0xc9, 0x94, 0xca, 0x40, 0x72, 0x4e, 0xbc, 0x89, 0x38, 0x86,
+ 0x0e, 0x88, 0xad, 0x03, 0x0e, 0xa9, 0xcb, 0xbf, 0x09, 0x56, 0x44, 0x79, 0x1c, 0x0d, 0x42, 0xe6,
+ 0xd4, 0x64, 0xb6, 0x10, 0x40, 0x37, 0x64, 0xa8, 0x07, 0x35, 0x49, 0x80, 0xa4, 0xb3, 0xfe, 0x8d,
+ 0x74, 0x8a, 0x03, 0xe5, 0x67, 0x44, 0xd2, 0x09, 0xc2, 0x58, 0x72, 0xb9, 0x09, 0xd6, 0x34, 0x8c,
+ 0x88, 0x97, 0x86, 0x5f, 0x11, 0xa7, 0x21, 0xf8, 0xa9, 0x72, 0x60, 0x18, 0x7e, 0x45, 0x5a, 0x7f,
+ 0x2a, 0x01, 0x7a, 0x7f, 0x3b, 0xd0, 0x3a, 0xd8, 0xdd, 0xc1, 0x97, 0xfd, 0xc3, 0x41, 0xbb, 0xeb,
+ 0x8d, 0xfb, 0x3f, 0xe9, 0x0f, 0xbe, 0xec, 0xdb, 0x37, 0xd0, 0x1d, 0x40, 0x0b, 0x74, 0x38, 0xee,
+ 0x74, 0x5c, 0xb7, 0xeb, 0x76, 0xed, 0x52, 0x01, 0xc7, 0xee, 0x17, 0x63, 0x77, 0x38, 0x72, 0xbb,
+ 0x76, 0xb9, 0xe0, 0x65, 0x38, 0x6a, 0x63, 0x8e, 0xae, 0xa0, 0x5b, 0xb0, 0xb6, 0x40, 0x0f, 0xda,
+ 0xbd, 0x43, 0xb7, 0x6b, 0xaf, 0x22, 0x07, 0xd6, 0x73, 0x03, 0x0e, 0xc7, 0x47, 0x47, 0x03, 0xa1,
+ 0x6e, 0x14, 0x9c, 0x77, 0xda, 0xfd, 0x8e, 0x7b, 0xc8, 0x2d, 0xcc, 0xd6, 0x6f, 0x4b, 0xb0, 0xf1,
+ 0xdf, 0xf7, 0x0b, 0xd5, 0xa1, 0xda, 0x1f, 0x78, 0x2e, 0xc6, 0x03, 0x1e, 0x9d, 0xd7, 0xa0, 0xd6,
+ 0xeb, 0x1f, 0xb7, 0x0f, 0x7b, 0x5d, 0x6f, 0x8c, 0x0f, 0xed, 0x12, 0x07, 0xba, 0xee, 0x71, 0xaf,
+ 0xe3, 0x7a, 0xfb, 0xe3, 0xe1, 0xcf, 0xed, 0x32, 0x1f, 0xa6, 0xd7, 0x1f, 0x8e, 0x0f, 0x0e, 0x7a,
+ 0x9d, 0x9e, 0xdb, 0x1f, 0x79, 0xc3, 0xa3, 0x76, 0xc7, 0xb5, 0x57, 0xd0, 0x4d, 0x68, 0x28, 0x02,
+ 0x94, 0xb3, 0x55, 0xd4, 0x00, 0x6b, 0x39, 0x11, 0xa3, 0xf5, 0x3b, 0x4d, 0x61, 0x61, 0x0b, 0xb8,
+ 0x61, 0xef, 0xa7, 0xed, 0x97, 0x6e, 0x8e, 0x3f, 0x04, 0x4d, 0x09, 0xf5, 0xfa, 0xed, 0xce, 0xa8,
+ 0x77, 0xcc, 0x93, 0xc5, 0x3a, 0xd8, 0x12, 0x13, 0x48, 0x7b, 0xd4, 0xeb, 0xbf, 0xb4, 0xcb, 0xc8,
+ 0x86, 0x7a, 0x0e, 0x75, 0x25, 0x6b, 0x12, 0xc1, 0xee, 0xb1, 0x8b, 0x85, 0xda, 0xea, 0xd2, 0xa1,
+ 0x04, 0xf9, 0x74, 0x7e, 0x68, 0xfc, 0xfb, 0xdd, 0xdb, 0xad, 0x1b, 0xad, 0x1f, 0x41, 0xb3, 0xc0,
+ 0x4e, 0x8a, 0x1e, 0xeb, 0x5c, 0x5b, 0x2e, 0x46, 0xd6, 0x82, 0x9a, 0x4e, 0xb7, 0x7f, 0x30, 0x60,
+ 0xf5, 0x88, 0xb2, 0x0c, 0xdd, 0x85, 0xca, 0x8c, 0xb2, 0xcc, 0x4b, 0xa8, 0x88, 0x13, 0x0d, 0x6c,
+ 0xf2, 0x6e, 0x9f, 0xa2, 0x75, 0x30, 0x22, 0xff, 0x84, 0x44, 0x2a, 0x58, 0xc8, 0x0e, 0x7a, 0xa8,
+ 0xb2, 0xf0, 0x8a, 0x38, 0xb0, 0xcb, 0xe8, 0x4d, 0x59, 0x26, 0x3e, 0xb9, 0x1c, 0xfc, 0x63, 0xa8,
+ 0xf9, 0x41, 0x1c, 0x26, 0x85, 0x88, 0xb1, 0xa5, 0x2d, 0xda, 0x5c, 0x24, 0x98, 0xcc, 0x35, 0x31,
+ 0xf8, 0x8b, 0x36, 0xb7, 0xa7, 0x33, 0xc2, 0x84, 0xf9, 0x3c, 0x15, 0x11, 0x22, 0x67, 0x3f, 0x98,
+ 0x11, 0x36, 0x14, 0x92, 0x5c, 0x13, 0x03, 0x5d, 0xb4, 0xf9, 0xbd, 0x90, 0x85, 0xa7, 0xa7, 0x22,
+ 0xab, 0x85, 0xab, 0x12, 0xe8, 0x05, 0x9c, 0xac, 0x19, 0x21, 0x2c, 0x75, 0xaa, 0xd7, 0xd2, 0x90,
+ 0x58, 0x08, 0x21, 0x8c, 0x37, 0xb0, 0xd4, 0xe1, 0x79, 0x9a, 0x5d, 0x7a, 0x33, 0x7f, 0xf2, 0x9a,
+ 0x64, 0xa9, 0x08, 0x07, 0x26, 0xb6, 0xd8, 0xe5, 0x91, 0x04, 0x78, 0x04, 0x67, 0x97, 0x2a, 0x3e,
+ 0x81, 0x10, 0x56, 0xd8, 0xa5, 0x8c, 0x4b, 0x9b, 0x60, 0xb1, 0x4b, 0x8f, 0x30, 0x46, 0x59, 0x2a,
+ 0x62, 0x80, 0x89, 0xab, 0xec, 0xd2, 0x15, 0x7d, 0xee, 0x36, 0x5b, 0xba, 0xad, 0x4b, 0xb7, 0x59,
+ 0xde, 0x6d, 0xa6, 0xdd, 0x36, 0xa4, 0xdb, 0x6c, 0xe9, 0x36, 0x5b, 0xb8, 0x6d, 0x4a, 0xb7, 0x99,
+ 0x72, 0xbb, 0xf1, 0x02, 0xaa, 0x7a, 0x01, 0x45, 0x0e, 0x4a, 0xd7, 0x38, 0xc8, 0x6d, 0x7d, 0x39,
+ 0xbf, 0xf5, 0xad, 0x14, 0xaa, 0x7a, 0x2f, 0x79, 0x85, 0xb3, 0x3c, 0xe0, 0x36, 0xd4, 0xdd, 0xd1,
+ 0x2b, 0x17, 0xf7, 0xdd, 0x91, 0xd7, 0xef, 0xf7, 0xec, 0x52, 0x01, 0x19, 0xf7, 0x7b, 0xb2, 0x24,
+ 0x3a, 0x1a, 0xf4, 0xbd, 0xc1, 0xe1, 0xc8, 0x5e, 0x59, 0x74, 0xfa, 0x63, 0x79, 0xaf, 0x8e, 0x5d,
+ 0xae, 0xc8, 0x65, 0x46, 0xae, 0xdb, 0x1f, 0xdb, 0xa6, 0x3e, 0xd7, 0x8f, 0xc1, 0xe0, 0x63, 0xa7,
+ 0xa8, 0x55, 0x2c, 0x1d, 0xeb, 0xf9, 0x1d, 0xd2, 0xa7, 0xf8, 0x6f, 0x75, 0x30, 0x65, 0x29, 0x89,
+ 0x6e, 0x2f, 0x53, 0x9d, 0xae, 0x3c, 0x78, 0xc6, 0xbb, 0x97, 0xab, 0x1a, 0x17, 0x02, 0x79, 0x3e,
+ 0xef, 0xc1, 0x2a, 0xa3, 0x34, 0x2b, 0x16, 0x35, 0x02, 0x42, 0x2d, 0xb0, 0x66, 0x3e, 0x23, 0x49,
+ 0xc6, 0x69, 0x5b, 0xcd, 0x9b, 0x56, 0x25, 0x2e, 0x4e, 0x50, 0x53, 0xe9, 0x68, 0x12, 0xd7, 0x39,
+ 0x89, 0x8b, 0xb2, 0x47, 0x0a, 0x8f, 0xe4, 0x65, 0xda, 0x02, 0x53, 0x3e, 0x05, 0xe4, 0xb3, 0x41,
+ 0x2b, 0x29, 0x10, 0x6d, 0x82, 0x11, 0xd3, 0x80, 0x44, 0x32, 0x0d, 0x6a, 0xa9, 0xc4, 0xd0, 0x53,
+ 0xb0, 0xcf, 0x7c, 0x16, 0x5c, 0xf8, 0x6c, 0x99, 0x2e, 0x2b, 0x79, 0xbd, 0x35, 0x2d, 0xd6, 0x89,
+ 0xf3, 0x29, 0xd8, 0xd3, 0x90, 0xc5, 0x05, 0x8b, 0x6a, 0xc1, 0x42, 0x8b, 0xb5, 0xc5, 0x13, 0x30,
+ 0x45, 0x46, 0x91, 0xa7, 0xbb, 0xf6, 0xac, 0x59, 0x08, 0x1e, 0xe9, 0x62, 0xbe, 0x52, 0x89, 0x57,
+ 0x7c, 0x29, 0x61, 0xa1, 0x1f, 0x79, 0xc9, 0x3c, 0x3e, 0x21, 0x4c, 0x1c, 0xfb, 0x85, 0xf7, 0xba,
+ 0x94, 0xf5, 0x85, 0x88, 0x73, 0xb9, 0x7c, 0x34, 0x39, 0x05, 0x2e, 0x17, 0x6f, 0xa7, 0xed, 0xe5,
+ 0xe3, 0xa8, 0x96, 0xd7, 0x58, 0xbc, 0x91, 0x10, 0xac, 0x9e, 0x47, 0x7e, 0x22, 0x2e, 0x49, 0x03,
+ 0x8b, 0x36, 0x4f, 0xc0, 0xb1, 0x3f, 0xe1, 0x4f, 0x1f, 0x46, 0x52, 0x79, 0x45, 0x2c, 0x0c, 0xb1,
+ 0x3f, 0x69, 0x4b, 0x04, 0x3d, 0x80, 0x7a, 0x38, 0x3b, 0xff, 0xc1, 0x42, 0x83, 0x5f, 0x14, 0xeb,
+ 0xd5, 0x0d, 0x5c, 0xe3, 0x68, 0x51, 0xe9, 0xd3, 0x85, 0xd2, 0x5a, 0x4e, 0xe9, 0x53, 0xad, 0xf4,
+ 0x09, 0x34, 0xce, 0x68, 0x9a, 0x79, 0x7e, 0x12, 0x88, 0xdd, 0x76, 0x6e, 0x6b, 0x2d, 0x0e, 0xb7,
+ 0x93, 0x40, 0x5c, 0xb6, 0x2d, 0x00, 0x72, 0x99, 0x31, 0xdf, 0xf3, 0xd9, 0x69, 0xea, 0xdc, 0x95,
+ 0xd5, 0xbe, 0x40, 0xda, 0xec, 0x34, 0x45, 0x2f, 0xa0, 0x31, 0x63, 0xf4, 0xf2, 0x6a, 0x31, 0xd4,
+ 0x2d, 0x41, 0xf5, 0x66, 0xf1, 0x4d, 0xb4, 0x7b, 0xc4, 0x75, 0xd4, 0xc0, 0xb8, 0x3e, 0xcb, 0xf5,
+ 0xae, 0x47, 0x54, 0xfb, 0x7f, 0x8d, 0xa8, 0x6e, 0x31, 0xa2, 0xde, 0xfc, 0x16, 0x11, 0x55, 0xef,
+ 0x44, 0x3e, 0xb0, 0x6e, 0x2d, 0x8a, 0xad, 0x3b, 0x85, 0xc3, 0xac, 0x2a, 0xa8, 0x2f, 0xa0, 0x39,
+ 0xa1, 0x49, 0xc2, 0x5f, 0x92, 0x6a, 0x20, 0x24, 0x06, 0x7a, 0xa0, 0x07, 0xea, 0x48, 0xa9, 0x1a,
+ 0xab, 0xd0, 0xd3, 0xbe, 0x1a, 0x93, 0x3c, 0x8a, 0xbe, 0x07, 0xe6, 0x64, 0x9e, 0x66, 0x34, 0x76,
+ 0x5e, 0x08, 0xce, 0xd6, 0x77, 0xe5, 0xcf, 0x83, 0x5d, 0xfd, 0xf3, 0x60, 0xb7, 0x9d, 0x5c, 0x61,
+ 0xa5, 0x83, 0x9e, 0x83, 0xc1, 0x37, 0x29, 0x75, 0x7e, 0xf9, 0x81, 0xd0, 0xb1, 0xdf, 0xfc, 0xfb,
+ 0xbb, 0xb7, 0x5b, 0xd6, 0x22, 0xf4, 0x61, 0xa9, 0x8b, 0x9e, 0x82, 0x21, 0xde, 0xbb, 0xce, 0xaf,
+ 0x4a, 0x62, 0x08, 0xb4, 0x9b, 0xff, 0x81, 0x20, 0x9e, 0xb8, 0xfb, 0x06, 0x37, 0xbd, 0x81, 0xa5,
+ 0x22, 0x7a, 0x01, 0x35, 0x21, 0x56, 0xef, 0x99, 0x5f, 0x4b, 0xbb, 0xbb, 0xef, 0xd9, 0x89, 0x77,
+ 0xcd, 0xc2, 0x18, 0xa6, 0x0b, 0x08, 0x7d, 0x0e, 0x30, 0x8b, 0x55, 0x01, 0x99, 0x3a, 0x5f, 0x4b,
+ 0x07, 0x37, 0xaf, 0xbf, 0x70, 0x16, 0xa6, 0xd6, 0x6c, 0xf1, 0x8c, 0x3b, 0x84, 0x35, 0x59, 0x3e,
+ 0xea, 0x42, 0x38, 0x75, 0x7e, 0x53, 0xfa, 0x48, 0xda, 0xdf, 0xaf, 0x71, 0x17, 0xa6, 0x2c, 0xff,
+ 0x71, 0x33, 0x2c, 0x54, 0x0e, 0x1b, 0x5f, 0x97, 0xa1, 0x9e, 0x3f, 0x76, 0x1f, 0x4f, 0x1b, 0xdb,
+ 0x50, 0x53, 0xc2, 0x65, 0x64, 0xc5, 0x10, 0x2c, 0x7f, 0x9b, 0x6c, 0x01, 0x4c, 0xce, 0xfc, 0x24,
+ 0x21, 0x11, 0x37, 0x5f, 0x91, 0xcf, 0x5a, 0x85, 0xf4, 0x02, 0xb4, 0x03, 0xb6, 0x16, 0xcb, 0xd7,
+ 0xaf, 0x8a, 0xb1, 0x0d, 0xdc, 0x54, 0xb8, 0xa0, 0xa7, 0x17, 0xa0, 0x3d, 0xb8, 0xa5, 0x35, 0x33,
+ 0xc2, 0xe2, 0x30, 0xf1, 0x79, 0xfd, 0xad, 0xfe, 0xbc, 0x20, 0x25, 0x1a, 0x2d, 0x25, 0xe8, 0x36,
+ 0x98, 0x34, 0x99, 0x73, 0x87, 0xa6, 0x70, 0x68, 0xd0, 0x64, 0xde, 0x0b, 0xd0, 0x27, 0xd0, 0xe4,
+ 0x70, 0x4a, 0x52, 0x1e, 0xec, 0x74, 0x39, 0xd0, 0xc0, 0x75, 0x9a, 0xcc, 0x87, 0x12, 0xec, 0x05,
+ 0x2a, 0x01, 0xed, 0x5b, 0x3c, 0x16, 0x09, 0x1a, 0x5a, 0x7b, 0x50, 0x91, 0x97, 0x92, 0x47, 0x80,
+ 0x42, 0x36, 0x6a, 0x16, 0x2f, 0xad, 0xce, 0x47, 0x7f, 0x5c, 0x81, 0xf5, 0x61, 0x18, 0xcf, 0x23,
+ 0x3f, 0x23, 0xed, 0xc8, 0x67, 0x31, 0x26, 0x6f, 0xe6, 0x24, 0xcd, 0xde, 0x7b, 0x88, 0xfd, 0x1f,
+ 0x58, 0x61, 0x12, 0x84, 0x13, 0x3f, 0xa3, 0xfa, 0x7f, 0xd0, 0x12, 0xe0, 0x89, 0x39, 0x4c, 0xb2,
+ 0xa9, 0x66, 0xcf, 0xc2, 0x26, 0xef, 0xca, 0x85, 0x88, 0x63, 0xcb, 0x89, 0x97, 0xff, 0x14, 0xe4,
+ 0xa3, 0xb4, 0x3e, 0x53, 0xe9, 0x5a, 0xfc, 0x56, 0x68, 0x41, 0x83, 0x2f, 0x77, 0xb9, 0x83, 0x92,
+ 0xb0, 0x1a, 0x4d, 0xe6, 0x5d, 0xbd, 0x89, 0xcf, 0xe1, 0x4e, 0x98, 0xf0, 0xdc, 0x40, 0xbc, 0x93,
+ 0x30, 0x93, 0xa5, 0x84, 0xc7, 0x78, 0x54, 0xe1, 0xcc, 0x19, 0xf8, 0x96, 0x92, 0xee, 0x87, 0x99,
+ 0x28, 0x2b, 0xb0, 0x7c, 0x35, 0x18, 0x01, 0x0b, 0xa7, 0x99, 0xa0, 0xcf, 0xc0, 0xb2, 0xc3, 0x67,
+ 0x9b, 0x90, 0x0b, 0x8f, 0xbc, 0x09, 0x44, 0x92, 0x31, 0xb0, 0x99, 0x90, 0x0b, 0xf7, 0x4d, 0x80,
+ 0x1e, 0xc1, 0x4d, 0x49, 0x7b, 0x3e, 0x53, 0xc8, 0xc7, 0xd4, 0x9a, 0x60, 0x3e, 0x97, 0x25, 0x5e,
+ 0x81, 0xc5, 0x23, 0x8c, 0xdc, 0x60, 0x10, 0xf1, 0xe2, 0x91, 0xe6, 0xf8, 0x43, 0x8c, 0x8a, 0x10,
+ 0x25, 0xb4, 0x45, 0xc5, 0xb9, 0x34, 0x6e, 0x7d, 0x07, 0x1a, 0x05, 0x19, 0xb2, 0xc0, 0xc0, 0xed,
+ 0xde, 0xd0, 0x95, 0x3f, 0x71, 0x3a, 0x87, 0x6e, 0x1b, 0xdb, 0xa5, 0xfd, 0x27, 0xbf, 0x78, 0x7c,
+ 0x1a, 0x66, 0x67, 0xf3, 0x93, 0xdd, 0x09, 0x8d, 0xc5, 0xcf, 0xc2, 0x09, 0x65, 0xc1, 0x9e, 0x1c,
+ 0xf2, 0x89, 0xfa, 0x45, 0x78, 0x4a, 0x15, 0x70, 0x62, 0x0a, 0xe4, 0xf9, 0x7f, 0x02, 0x00, 0x00,
+ 0xff, 0xff, 0x64, 0xd9, 0xf9, 0x5b, 0xda, 0x14, 0x00, 0x00,
+}
diff --git a/go/voltha/device.proto b/go/voltha/device.proto
deleted file mode 100644
index bbe8894..0000000
--- a/go/voltha/device.proto
+++ /dev/null
@@ -1,329 +0,0 @@
-syntax = "proto3";
-
-option go_package = "github.com/opencord/voltha-protos/go/voltha";
-
-package voltha;
-
-import "google/protobuf/any.proto";
-import "voltha_protos/common.proto";
-import "voltha_protos/meta.proto";
-import "voltha_protos/openflow_13.proto";
-import "voltha_protos/yang_options.proto";
-
-// A Device Type
-message DeviceType {
-
- // Unique name for the device type
- string id = 1;
-
- // Unique vendor id for the device type applicable to ONU
- // 4 bytes of vendor id from ONU serial number
- string vendor_id = 5;
-
- repeated string vendor_ids = 6;
-
- // Name of the adapter that handles device type
- string adapter = 2;
-
- // Capabilities
- bool accepts_bulk_flow_update = 3;
- bool accepts_add_remove_flow_updates = 4;
- bool accepts_direct_logical_flows_update = 7;
-
-}
-
-// A plurality of device types
-message DeviceTypes {
- repeated DeviceType items = 1;
-}
-
-message PmConfig {
- enum PmType {
- COUNTER = 0;
- GAUGE = 1;
- STATE = 2;
- CONTEXT = 3;
- }
- string name = 1;
- PmType type = 2;
- bool enabled = 3; // Whether or not this metric makes it to Kafka
- uint32 sample_freq = 4; // Sample rate in 10ths of a second
-}
-
-message PmGroupConfig {
- string group_name = 1;
- uint32 group_freq = 2; // Frequency applicable to the grop
- bool enabled = 3; // Enable/disable group level only
- repeated PmConfig metrics = 4;
-}
-
-message PmConfigs {
- string id = 1; // To work around a chameleon POST bug
- uint32 default_freq = 2; // Default sample rate
- // Forces group names and group semantics
- bool grouped = 3 [(access) = READ_ONLY];
- // Allows Pm to set an individual sample frequency
- bool freq_override = 4 [(access) = READ_ONLY];
- repeated PmGroupConfig groups = 5; // The groups if grouped is true
- repeated PmConfig metrics = 6; // The metrics themselves if grouped is false.
-}
-
-// Describes instance of software image on the device
-message Image {
- string name = 1; // software patch name
- string version = 2; // version of software
- string hash = 3; // md5 hash
- string install_datetime = 4; // combined date and time expressed in UTC.
- // use ISO 8601 format for date and time
-
- // The active software image is one that is currently loaded and executing
- // in the ONU or circuit pack. Under normal operation, one software image
- // is always active while the other is inactive. Under no circumstances are
- // both software images allowed to be active at the same time
- bool is_active = 5; // True if the image is active
-
- // The committed software image is loaded and executed upon reboot of the
- // ONU and/or circuit pack. During normal operation, one software image is
- // always committed, while the other is uncommitted.
- bool is_committed = 6; // True if the image is committed
-
- // A software image is valid if it has been verified to be an executable
- // code image. The verification mechanism is not subject to standardization;
- // however, it should include at least a data integrity (e.g., CRC) check of
- // the entire code image.
- bool is_valid = 7; // True if the image is valid
-}
-
-// List of software on the device
-message Images {
- repeated Image image = 1;
-}
-
-message ImageDownload {
- option (yang_child_rule) = MOVE_TO_PARENT_LEVEL;
-
- enum ImageDownloadState {
- DOWNLOAD_UNKNOWN = 0;
- DOWNLOAD_SUCCEEDED = 1;
- DOWNLOAD_REQUESTED = 2;
- DOWNLOAD_STARTED = 3;
- DOWNLOAD_FAILED = 4;
- DOWNLOAD_UNSUPPORTED = 5;
- DOWNLOAD_CANCELLED = 6;
- }
-
- enum ImageDownloadFailureReason {
- NO_ERROR = 0;
- INVALID_URL = 1;
- DEVICE_BUSY = 2;
- INSUFFICIENT_SPACE = 3;
- UNKNOWN_ERROR = 4;
- CANCELLED = 5;
- }
-
- enum ImageActivateState {
- IMAGE_UNKNOWN = 0;
- IMAGE_INACTIVE = 1;
- IMAGE_ACTIVATING = 2;
- IMAGE_ACTIVE = 3;
- IMAGE_REVERTING = 4;
- IMAGE_REVERTED = 5;
- }
-
- // Device Identifier
- string id = 1;
-
- // Image unique identifier
- string name = 2;
-
- // URL where the image is available
- // should include username password
- string url = 3;
-
- // CRC of the image to be verified aginst
- uint32 crc = 4;
-
- // Download state
- ImageDownloadState download_state = 5;
-
- // Downloaded version
- string image_version = 6;
-
- // Bytes downloaded
- uint32 downloaded_bytes = 7;
-
- // Download failure reason
- ImageDownloadFailureReason reason= 8;
-
- // Additional info
- string additional_info = 9;
-
- // Save current configuration
- bool save_config = 10;
-
- // Image local location
- string local_dir = 11;
-
- // Image activation state
- ImageActivateState image_state = 12;
-
- // Image file size
- uint32 file_size = 13;
-}
-
-message ImageDownloads {
- repeated ImageDownload items = 2;
-}
-
-message Port {
- option (voltha.yang_child_rule) = MOVE_TO_PARENT_LEVEL;
-
- enum PortType {
- UNKNOWN = 0;
- ETHERNET_NNI = 1;
- ETHERNET_UNI = 2;
- PON_OLT = 3;
- PON_ONU = 4;
- VENET_OLT = 5;
- VENET_ONU = 6;
- }
-
- uint32 port_no = 1; // Device-unique port number
-
- string label = 2; // Arbitrary port label
-
- PortType type = 3; // Type of port
-
- AdminState.AdminState admin_state = 5;
-
- OperStatus.OperStatus oper_status = 6;
-
- string device_id = 7; // Unique .id of device that owns this port
-
- message PeerPort {
- string device_id = 1;
- uint32 port_no = 2;
- }
- repeated PeerPort peers = 8;
-
- fixed64 rx_packets = 9;
- fixed64 rx_bytes = 10;
- fixed64 rx_errors = 11;
- fixed64 tx_packets = 12;
- fixed64 tx_bytes = 13;
- fixed64 tx_errors = 14;
-
-}
-
-message Ports {
- repeated Port items = 1;
-}
-
-// A Physical Device instance
-message Device {
- option (voltha.yang_child_rule) = MOVE_TO_PARENT_LEVEL;
-
- // Voltha's device identifier
- string id = 1 [(access) = READ_ONLY];
-
- // Device type, refers to one of the registered device types
- string type = 2 [(access) = READ_ONLY];
-
- // Is this device a root device. Each logical switch has one root
- // device that is associated with the logical flow switch.
- bool root = 3 [(access) = READ_ONLY];
-
- // Parent device id, in the device tree (for a root device, the parent_id
- // is the logical_device.id)
- string parent_id = 4 [(access) = READ_ONLY];
- uint32 parent_port_no = 20 [(access) = READ_ONLY];
-
- // Vendor, version, serial number, etc.
- string vendor = 5 [(access) = READ_ONLY];
- string model = 6 [(access) = READ_ONLY];
- string hardware_version = 7 [(access) = READ_ONLY];
- string firmware_version = 8 [(access) = READ_ONLY];
- // List of software on the device
- Images images = 9 [(access) = READ_ONLY];
- string serial_number = 10 [(access) = READ_ONLY];
- string vendor_id = 24 [(access) = READ_ONLY];
-
- // Addapter that takes care of device
- string adapter = 11 [(access) = READ_ONLY];
-
- // Device contact on vlan (if 0, no vlan)
- uint32 vlan = 12;
-
- message ProxyAddress {
- string device_id = 1; // Which device to use as proxy to this device
- string device_type = 2; // The device type of the proxy device to use as the adapter name
- uint32 channel_id = 3; // Sub-address within proxy
- uint32 channel_group_id = 4; // Channel Group index
- string channel_termination = 5; // Channel Termination name
- uint32 onu_id = 6; // onu identifier; optional
- uint32 onu_session_id = 7; // session identifier for the ONU; optional
- };
-
- // Device contact MAC address (format: "xx:xx:xx:xx:xx:xx")
- string mac_address = 13;
-
- oneof address {
-
- // Device contact IPv4 address (format: "a.b.c.d" or can use hostname too)
- string ipv4_address = 14;
-
- // Device contact IPv6 address using the canonical string form
- // ("xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx")
- string ipv6_address = 15;
-
- string host_and_port = 21;
-
- };
- string extra_args = 23; // Used to pass additional device specific arguments
-
- ProxyAddress proxy_address = 19;
-
- AdminState.AdminState admin_state = 16;
-
- OperStatus.OperStatus oper_status = 17 [(access) = READ_ONLY];
-
- string reason = 22 [(access) = READ_ONLY]; // Used in FAILED state
-
- ConnectStatus.ConnectStatus connect_status = 18 [(access) = READ_ONLY];
-
- // TODO additional common attribute here
-
- // Device type specific attributes
- google.protobuf.Any custom = 64;
-
- repeated Port ports = 128 [(child_node) = {key: "port_no"}];
- openflow_13.Flows flows = 129 [(child_node) = {}];
- openflow_13.FlowGroups flow_groups = 130 [(child_node) = {}];
- // PmConfigs will eventually converted to a child node of the
- // device to falicitata callbacks and to simplify manipulation.
- PmConfigs pm_configs = 131 [(child_node) = {}];
-
- repeated ImageDownload image_downloads = 133 [(child_node) = {key: "name"}];
-}
-
-message Devices {
- repeated Device items = 1;
-}
-
-message SimulateAlarmRequest {
- enum OperationType {
- RAISE = 0;
- CLEAR = 1;
- }
- // Device Identifier
- string id = 1;
- string indicator = 2;
- string intf_id = 3;
- string port_type_name = 4;
- string onu_device_id = 5;
- int32 inverse_bit_error_rate = 6;
- int32 drift = 7;
- int32 new_eqd = 8;
- string onu_serial_number = 9;
- OperationType operation = 10;
-}
diff --git a/go/voltha/events.pb.go b/go/voltha/events.pb.go
new file mode 100644
index 0000000..cb08d90
--- /dev/null
+++ b/go/voltha/events.pb.go
@@ -0,0 +1,969 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// source: voltha_protos/events.proto
+
+package voltha // import "github.com/opencord/voltha-protos/go/voltha"
+
+import proto "github.com/golang/protobuf/proto"
+import fmt "fmt"
+import math "math"
+import _ "github.com/opencord/voltha-protos/go/common"
+import _ "google.golang.org/genproto/googleapis/api/annotations"
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ = proto.Marshal
+var _ = fmt.Errorf
+var _ = math.Inf
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the proto package it is being compiled against.
+// A compilation error at this line likely means your copy of the
+// proto package needs to be updated.
+const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
+
+type ConfigEventType_ConfigEventType int32
+
+const (
+ ConfigEventType_add ConfigEventType_ConfigEventType = 0
+ ConfigEventType_remove ConfigEventType_ConfigEventType = 1
+ ConfigEventType_update ConfigEventType_ConfigEventType = 2
+)
+
+var ConfigEventType_ConfigEventType_name = map[int32]string{
+ 0: "add",
+ 1: "remove",
+ 2: "update",
+}
+var ConfigEventType_ConfigEventType_value = map[string]int32{
+ "add": 0,
+ "remove": 1,
+ "update": 2,
+}
+
+func (x ConfigEventType_ConfigEventType) String() string {
+ return proto.EnumName(ConfigEventType_ConfigEventType_name, int32(x))
+}
+func (ConfigEventType_ConfigEventType) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_events_26477559e5dbfb38, []int{0, 0}
+}
+
+type KpiEventType_KpiEventType int32
+
+const (
+ KpiEventType_slice KpiEventType_KpiEventType = 0
+ KpiEventType_ts KpiEventType_KpiEventType = 1
+)
+
+var KpiEventType_KpiEventType_name = map[int32]string{
+ 0: "slice",
+ 1: "ts",
+}
+var KpiEventType_KpiEventType_value = map[string]int32{
+ "slice": 0,
+ "ts": 1,
+}
+
+func (x KpiEventType_KpiEventType) String() string {
+ return proto.EnumName(KpiEventType_KpiEventType_name, int32(x))
+}
+func (KpiEventType_KpiEventType) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_events_26477559e5dbfb38, []int{2, 0}
+}
+
+type AlarmEventType_AlarmEventType int32
+
+const (
+ AlarmEventType_COMMUNICATION AlarmEventType_AlarmEventType = 0
+ AlarmEventType_ENVIRONMENT AlarmEventType_AlarmEventType = 1
+ AlarmEventType_EQUIPMENT AlarmEventType_AlarmEventType = 2
+ AlarmEventType_SERVICE AlarmEventType_AlarmEventType = 3
+ AlarmEventType_PROCESSING AlarmEventType_AlarmEventType = 4
+ AlarmEventType_SECURITY AlarmEventType_AlarmEventType = 5
+)
+
+var AlarmEventType_AlarmEventType_name = map[int32]string{
+ 0: "COMMUNICATION",
+ 1: "ENVIRONMENT",
+ 2: "EQUIPMENT",
+ 3: "SERVICE",
+ 4: "PROCESSING",
+ 5: "SECURITY",
+}
+var AlarmEventType_AlarmEventType_value = map[string]int32{
+ "COMMUNICATION": 0,
+ "ENVIRONMENT": 1,
+ "EQUIPMENT": 2,
+ "SERVICE": 3,
+ "PROCESSING": 4,
+ "SECURITY": 5,
+}
+
+func (x AlarmEventType_AlarmEventType) String() string {
+ return proto.EnumName(AlarmEventType_AlarmEventType_name, int32(x))
+}
+func (AlarmEventType_AlarmEventType) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_events_26477559e5dbfb38, []int{8, 0}
+}
+
+type AlarmEventCategory_AlarmEventCategory int32
+
+const (
+ AlarmEventCategory_PON AlarmEventCategory_AlarmEventCategory = 0
+ AlarmEventCategory_OLT AlarmEventCategory_AlarmEventCategory = 1
+ AlarmEventCategory_ONT AlarmEventCategory_AlarmEventCategory = 2
+ AlarmEventCategory_ONU AlarmEventCategory_AlarmEventCategory = 3
+ AlarmEventCategory_NNI AlarmEventCategory_AlarmEventCategory = 4
+)
+
+var AlarmEventCategory_AlarmEventCategory_name = map[int32]string{
+ 0: "PON",
+ 1: "OLT",
+ 2: "ONT",
+ 3: "ONU",
+ 4: "NNI",
+}
+var AlarmEventCategory_AlarmEventCategory_value = map[string]int32{
+ "PON": 0,
+ "OLT": 1,
+ "ONT": 2,
+ "ONU": 3,
+ "NNI": 4,
+}
+
+func (x AlarmEventCategory_AlarmEventCategory) String() string {
+ return proto.EnumName(AlarmEventCategory_AlarmEventCategory_name, int32(x))
+}
+func (AlarmEventCategory_AlarmEventCategory) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_events_26477559e5dbfb38, []int{9, 0}
+}
+
+type AlarmEventState_AlarmEventState int32
+
+const (
+ AlarmEventState_RAISED AlarmEventState_AlarmEventState = 0
+ AlarmEventState_CLEARED AlarmEventState_AlarmEventState = 1
+)
+
+var AlarmEventState_AlarmEventState_name = map[int32]string{
+ 0: "RAISED",
+ 1: "CLEARED",
+}
+var AlarmEventState_AlarmEventState_value = map[string]int32{
+ "RAISED": 0,
+ "CLEARED": 1,
+}
+
+func (x AlarmEventState_AlarmEventState) String() string {
+ return proto.EnumName(AlarmEventState_AlarmEventState_name, int32(x))
+}
+func (AlarmEventState_AlarmEventState) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_events_26477559e5dbfb38, []int{10, 0}
+}
+
+type AlarmEventSeverity_AlarmEventSeverity int32
+
+const (
+ AlarmEventSeverity_INDETERMINATE AlarmEventSeverity_AlarmEventSeverity = 0
+ AlarmEventSeverity_WARNING AlarmEventSeverity_AlarmEventSeverity = 1
+ AlarmEventSeverity_MINOR AlarmEventSeverity_AlarmEventSeverity = 2
+ AlarmEventSeverity_MAJOR AlarmEventSeverity_AlarmEventSeverity = 3
+ AlarmEventSeverity_CRITICAL AlarmEventSeverity_AlarmEventSeverity = 4
+)
+
+var AlarmEventSeverity_AlarmEventSeverity_name = map[int32]string{
+ 0: "INDETERMINATE",
+ 1: "WARNING",
+ 2: "MINOR",
+ 3: "MAJOR",
+ 4: "CRITICAL",
+}
+var AlarmEventSeverity_AlarmEventSeverity_value = map[string]int32{
+ "INDETERMINATE": 0,
+ "WARNING": 1,
+ "MINOR": 2,
+ "MAJOR": 3,
+ "CRITICAL": 4,
+}
+
+func (x AlarmEventSeverity_AlarmEventSeverity) String() string {
+ return proto.EnumName(AlarmEventSeverity_AlarmEventSeverity_name, int32(x))
+}
+func (AlarmEventSeverity_AlarmEventSeverity) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_events_26477559e5dbfb38, []int{11, 0}
+}
+
+type ConfigEventType struct {
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *ConfigEventType) Reset() { *m = ConfigEventType{} }
+func (m *ConfigEventType) String() string { return proto.CompactTextString(m) }
+func (*ConfigEventType) ProtoMessage() {}
+func (*ConfigEventType) Descriptor() ([]byte, []int) {
+ return fileDescriptor_events_26477559e5dbfb38, []int{0}
+}
+func (m *ConfigEventType) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_ConfigEventType.Unmarshal(m, b)
+}
+func (m *ConfigEventType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_ConfigEventType.Marshal(b, m, deterministic)
+}
+func (dst *ConfigEventType) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_ConfigEventType.Merge(dst, src)
+}
+func (m *ConfigEventType) XXX_Size() int {
+ return xxx_messageInfo_ConfigEventType.Size(m)
+}
+func (m *ConfigEventType) XXX_DiscardUnknown() {
+ xxx_messageInfo_ConfigEventType.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_ConfigEventType proto.InternalMessageInfo
+
+type ConfigEvent struct {
+ Type ConfigEventType_ConfigEventType `protobuf:"varint,1,opt,name=type,proto3,enum=voltha.ConfigEventType_ConfigEventType" json:"type,omitempty"`
+ Hash string `protobuf:"bytes,2,opt,name=hash,proto3" json:"hash,omitempty"`
+ Data string `protobuf:"bytes,3,opt,name=data,proto3" json:"data,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *ConfigEvent) Reset() { *m = ConfigEvent{} }
+func (m *ConfigEvent) String() string { return proto.CompactTextString(m) }
+func (*ConfigEvent) ProtoMessage() {}
+func (*ConfigEvent) Descriptor() ([]byte, []int) {
+ return fileDescriptor_events_26477559e5dbfb38, []int{1}
+}
+func (m *ConfigEvent) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_ConfigEvent.Unmarshal(m, b)
+}
+func (m *ConfigEvent) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_ConfigEvent.Marshal(b, m, deterministic)
+}
+func (dst *ConfigEvent) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_ConfigEvent.Merge(dst, src)
+}
+func (m *ConfigEvent) XXX_Size() int {
+ return xxx_messageInfo_ConfigEvent.Size(m)
+}
+func (m *ConfigEvent) XXX_DiscardUnknown() {
+ xxx_messageInfo_ConfigEvent.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_ConfigEvent proto.InternalMessageInfo
+
+func (m *ConfigEvent) GetType() ConfigEventType_ConfigEventType {
+ if m != nil {
+ return m.Type
+ }
+ return ConfigEventType_add
+}
+
+func (m *ConfigEvent) GetHash() string {
+ if m != nil {
+ return m.Hash
+ }
+ return ""
+}
+
+func (m *ConfigEvent) GetData() string {
+ if m != nil {
+ return m.Data
+ }
+ return ""
+}
+
+type KpiEventType struct {
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *KpiEventType) Reset() { *m = KpiEventType{} }
+func (m *KpiEventType) String() string { return proto.CompactTextString(m) }
+func (*KpiEventType) ProtoMessage() {}
+func (*KpiEventType) Descriptor() ([]byte, []int) {
+ return fileDescriptor_events_26477559e5dbfb38, []int{2}
+}
+func (m *KpiEventType) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_KpiEventType.Unmarshal(m, b)
+}
+func (m *KpiEventType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_KpiEventType.Marshal(b, m, deterministic)
+}
+func (dst *KpiEventType) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_KpiEventType.Merge(dst, src)
+}
+func (m *KpiEventType) XXX_Size() int {
+ return xxx_messageInfo_KpiEventType.Size(m)
+}
+func (m *KpiEventType) XXX_DiscardUnknown() {
+ xxx_messageInfo_KpiEventType.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_KpiEventType proto.InternalMessageInfo
+
+//
+// Struct to convey a dictionary of metric metadata.
+type MetricMetaData struct {
+ Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
+ Ts float64 `protobuf:"fixed64,2,opt,name=ts,proto3" json:"ts,omitempty"`
+ LogicalDeviceId string `protobuf:"bytes,3,opt,name=logical_device_id,json=logicalDeviceId,proto3" json:"logical_device_id,omitempty"`
+ // (equivalent to the DPID that ONOS has
+ // for the VOLTHA device without the
+ // 'of:' prefix
+ SerialNo string `protobuf:"bytes,4,opt,name=serial_no,json=serialNo,proto3" json:"serial_no,omitempty"`
+ DeviceId string `protobuf:"bytes,5,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
+ Context map[string]string `protobuf:"bytes,6,rep,name=context,proto3" json:"context,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *MetricMetaData) Reset() { *m = MetricMetaData{} }
+func (m *MetricMetaData) String() string { return proto.CompactTextString(m) }
+func (*MetricMetaData) ProtoMessage() {}
+func (*MetricMetaData) Descriptor() ([]byte, []int) {
+ return fileDescriptor_events_26477559e5dbfb38, []int{3}
+}
+func (m *MetricMetaData) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_MetricMetaData.Unmarshal(m, b)
+}
+func (m *MetricMetaData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_MetricMetaData.Marshal(b, m, deterministic)
+}
+func (dst *MetricMetaData) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_MetricMetaData.Merge(dst, src)
+}
+func (m *MetricMetaData) XXX_Size() int {
+ return xxx_messageInfo_MetricMetaData.Size(m)
+}
+func (m *MetricMetaData) XXX_DiscardUnknown() {
+ xxx_messageInfo_MetricMetaData.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_MetricMetaData proto.InternalMessageInfo
+
+func (m *MetricMetaData) GetTitle() string {
+ if m != nil {
+ return m.Title
+ }
+ return ""
+}
+
+func (m *MetricMetaData) GetTs() float64 {
+ if m != nil {
+ return m.Ts
+ }
+ return 0
+}
+
+func (m *MetricMetaData) GetLogicalDeviceId() string {
+ if m != nil {
+ return m.LogicalDeviceId
+ }
+ return ""
+}
+
+func (m *MetricMetaData) GetSerialNo() string {
+ if m != nil {
+ return m.SerialNo
+ }
+ return ""
+}
+
+func (m *MetricMetaData) GetDeviceId() string {
+ if m != nil {
+ return m.DeviceId
+ }
+ return ""
+}
+
+func (m *MetricMetaData) GetContext() map[string]string {
+ if m != nil {
+ return m.Context
+ }
+ return nil
+}
+
+//
+// Struct to convey a dictionary of metric->value pairs. Typically used in
+// pure shared-timestamp or shared-timestamp + shared object prefix situations.
+type MetricValuePairs struct {
+ // Metric / value pairs.
+ Metrics map[string]float32 `protobuf:"bytes,1,rep,name=metrics,proto3" json:"metrics,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"fixed32,2,opt,name=value,proto3"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *MetricValuePairs) Reset() { *m = MetricValuePairs{} }
+func (m *MetricValuePairs) String() string { return proto.CompactTextString(m) }
+func (*MetricValuePairs) ProtoMessage() {}
+func (*MetricValuePairs) Descriptor() ([]byte, []int) {
+ return fileDescriptor_events_26477559e5dbfb38, []int{4}
+}
+func (m *MetricValuePairs) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_MetricValuePairs.Unmarshal(m, b)
+}
+func (m *MetricValuePairs) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_MetricValuePairs.Marshal(b, m, deterministic)
+}
+func (dst *MetricValuePairs) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_MetricValuePairs.Merge(dst, src)
+}
+func (m *MetricValuePairs) XXX_Size() int {
+ return xxx_messageInfo_MetricValuePairs.Size(m)
+}
+func (m *MetricValuePairs) XXX_DiscardUnknown() {
+ xxx_messageInfo_MetricValuePairs.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_MetricValuePairs proto.InternalMessageInfo
+
+func (m *MetricValuePairs) GetMetrics() map[string]float32 {
+ if m != nil {
+ return m.Metrics
+ }
+ return nil
+}
+
+//
+// Struct to group metadata for a metric (or group of metrics) with the key-value
+// pairs of collected metrics
+type MetricInformation struct {
+ Metadata *MetricMetaData `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"`
+ Metrics map[string]float32 `protobuf:"bytes,2,rep,name=metrics,proto3" json:"metrics,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"fixed32,2,opt,name=value,proto3"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *MetricInformation) Reset() { *m = MetricInformation{} }
+func (m *MetricInformation) String() string { return proto.CompactTextString(m) }
+func (*MetricInformation) ProtoMessage() {}
+func (*MetricInformation) Descriptor() ([]byte, []int) {
+ return fileDescriptor_events_26477559e5dbfb38, []int{5}
+}
+func (m *MetricInformation) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_MetricInformation.Unmarshal(m, b)
+}
+func (m *MetricInformation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_MetricInformation.Marshal(b, m, deterministic)
+}
+func (dst *MetricInformation) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_MetricInformation.Merge(dst, src)
+}
+func (m *MetricInformation) XXX_Size() int {
+ return xxx_messageInfo_MetricInformation.Size(m)
+}
+func (m *MetricInformation) XXX_DiscardUnknown() {
+ xxx_messageInfo_MetricInformation.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_MetricInformation proto.InternalMessageInfo
+
+func (m *MetricInformation) GetMetadata() *MetricMetaData {
+ if m != nil {
+ return m.Metadata
+ }
+ return nil
+}
+
+func (m *MetricInformation) GetMetrics() map[string]float32 {
+ if m != nil {
+ return m.Metrics
+ }
+ return nil
+}
+
+//
+// Legacy KPI Event structured. In mid-August, the KPI event format was updated
+// to a more easily parsable format. See VOL-1140
+// for more information.
+type KpiEvent struct {
+ Type KpiEventType_KpiEventType `protobuf:"varint,1,opt,name=type,proto3,enum=voltha.KpiEventType_KpiEventType" json:"type,omitempty"`
+ Ts float32 `protobuf:"fixed32,2,opt,name=ts,proto3" json:"ts,omitempty"`
+ Prefixes map[string]*MetricValuePairs `protobuf:"bytes,3,rep,name=prefixes,proto3" json:"prefixes,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *KpiEvent) Reset() { *m = KpiEvent{} }
+func (m *KpiEvent) String() string { return proto.CompactTextString(m) }
+func (*KpiEvent) ProtoMessage() {}
+func (*KpiEvent) Descriptor() ([]byte, []int) {
+ return fileDescriptor_events_26477559e5dbfb38, []int{6}
+}
+func (m *KpiEvent) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_KpiEvent.Unmarshal(m, b)
+}
+func (m *KpiEvent) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_KpiEvent.Marshal(b, m, deterministic)
+}
+func (dst *KpiEvent) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_KpiEvent.Merge(dst, src)
+}
+func (m *KpiEvent) XXX_Size() int {
+ return xxx_messageInfo_KpiEvent.Size(m)
+}
+func (m *KpiEvent) XXX_DiscardUnknown() {
+ xxx_messageInfo_KpiEvent.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_KpiEvent proto.InternalMessageInfo
+
+func (m *KpiEvent) GetType() KpiEventType_KpiEventType {
+ if m != nil {
+ return m.Type
+ }
+ return KpiEventType_slice
+}
+
+func (m *KpiEvent) GetTs() float32 {
+ if m != nil {
+ return m.Ts
+ }
+ return 0
+}
+
+func (m *KpiEvent) GetPrefixes() map[string]*MetricValuePairs {
+ if m != nil {
+ return m.Prefixes
+ }
+ return nil
+}
+
+type KpiEvent2 struct {
+ // Type of KPI Event
+ Type KpiEventType_KpiEventType `protobuf:"varint,1,opt,name=type,proto3,enum=voltha.KpiEventType_KpiEventType" json:"type,omitempty"`
+ // Fields used when for slice:
+ Ts float64 `protobuf:"fixed64,2,opt,name=ts,proto3" json:"ts,omitempty"`
+ SliceData []*MetricInformation `protobuf:"bytes,3,rep,name=slice_data,json=sliceData,proto3" json:"slice_data,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *KpiEvent2) Reset() { *m = KpiEvent2{} }
+func (m *KpiEvent2) String() string { return proto.CompactTextString(m) }
+func (*KpiEvent2) ProtoMessage() {}
+func (*KpiEvent2) Descriptor() ([]byte, []int) {
+ return fileDescriptor_events_26477559e5dbfb38, []int{7}
+}
+func (m *KpiEvent2) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_KpiEvent2.Unmarshal(m, b)
+}
+func (m *KpiEvent2) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_KpiEvent2.Marshal(b, m, deterministic)
+}
+func (dst *KpiEvent2) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_KpiEvent2.Merge(dst, src)
+}
+func (m *KpiEvent2) XXX_Size() int {
+ return xxx_messageInfo_KpiEvent2.Size(m)
+}
+func (m *KpiEvent2) XXX_DiscardUnknown() {
+ xxx_messageInfo_KpiEvent2.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_KpiEvent2 proto.InternalMessageInfo
+
+func (m *KpiEvent2) GetType() KpiEventType_KpiEventType {
+ if m != nil {
+ return m.Type
+ }
+ return KpiEventType_slice
+}
+
+func (m *KpiEvent2) GetTs() float64 {
+ if m != nil {
+ return m.Ts
+ }
+ return 0
+}
+
+func (m *KpiEvent2) GetSliceData() []*MetricInformation {
+ if m != nil {
+ return m.SliceData
+ }
+ return nil
+}
+
+//
+// Identify to the area of the system impacted by the alarm
+type AlarmEventType struct {
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *AlarmEventType) Reset() { *m = AlarmEventType{} }
+func (m *AlarmEventType) String() string { return proto.CompactTextString(m) }
+func (*AlarmEventType) ProtoMessage() {}
+func (*AlarmEventType) Descriptor() ([]byte, []int) {
+ return fileDescriptor_events_26477559e5dbfb38, []int{8}
+}
+func (m *AlarmEventType) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_AlarmEventType.Unmarshal(m, b)
+}
+func (m *AlarmEventType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_AlarmEventType.Marshal(b, m, deterministic)
+}
+func (dst *AlarmEventType) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_AlarmEventType.Merge(dst, src)
+}
+func (m *AlarmEventType) XXX_Size() int {
+ return xxx_messageInfo_AlarmEventType.Size(m)
+}
+func (m *AlarmEventType) XXX_DiscardUnknown() {
+ xxx_messageInfo_AlarmEventType.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_AlarmEventType proto.InternalMessageInfo
+
+//
+// Identify to the functional category originating the alarm
+type AlarmEventCategory struct {
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *AlarmEventCategory) Reset() { *m = AlarmEventCategory{} }
+func (m *AlarmEventCategory) String() string { return proto.CompactTextString(m) }
+func (*AlarmEventCategory) ProtoMessage() {}
+func (*AlarmEventCategory) Descriptor() ([]byte, []int) {
+ return fileDescriptor_events_26477559e5dbfb38, []int{9}
+}
+func (m *AlarmEventCategory) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_AlarmEventCategory.Unmarshal(m, b)
+}
+func (m *AlarmEventCategory) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_AlarmEventCategory.Marshal(b, m, deterministic)
+}
+func (dst *AlarmEventCategory) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_AlarmEventCategory.Merge(dst, src)
+}
+func (m *AlarmEventCategory) XXX_Size() int {
+ return xxx_messageInfo_AlarmEventCategory.Size(m)
+}
+func (m *AlarmEventCategory) XXX_DiscardUnknown() {
+ xxx_messageInfo_AlarmEventCategory.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_AlarmEventCategory proto.InternalMessageInfo
+
+//
+// Active state of the alarm
+type AlarmEventState struct {
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *AlarmEventState) Reset() { *m = AlarmEventState{} }
+func (m *AlarmEventState) String() string { return proto.CompactTextString(m) }
+func (*AlarmEventState) ProtoMessage() {}
+func (*AlarmEventState) Descriptor() ([]byte, []int) {
+ return fileDescriptor_events_26477559e5dbfb38, []int{10}
+}
+func (m *AlarmEventState) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_AlarmEventState.Unmarshal(m, b)
+}
+func (m *AlarmEventState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_AlarmEventState.Marshal(b, m, deterministic)
+}
+func (dst *AlarmEventState) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_AlarmEventState.Merge(dst, src)
+}
+func (m *AlarmEventState) XXX_Size() int {
+ return xxx_messageInfo_AlarmEventState.Size(m)
+}
+func (m *AlarmEventState) XXX_DiscardUnknown() {
+ xxx_messageInfo_AlarmEventState.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_AlarmEventState proto.InternalMessageInfo
+
+//
+// Identify the overall impact of the alarm on the system
+type AlarmEventSeverity struct {
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *AlarmEventSeverity) Reset() { *m = AlarmEventSeverity{} }
+func (m *AlarmEventSeverity) String() string { return proto.CompactTextString(m) }
+func (*AlarmEventSeverity) ProtoMessage() {}
+func (*AlarmEventSeverity) Descriptor() ([]byte, []int) {
+ return fileDescriptor_events_26477559e5dbfb38, []int{11}
+}
+func (m *AlarmEventSeverity) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_AlarmEventSeverity.Unmarshal(m, b)
+}
+func (m *AlarmEventSeverity) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_AlarmEventSeverity.Marshal(b, m, deterministic)
+}
+func (dst *AlarmEventSeverity) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_AlarmEventSeverity.Merge(dst, src)
+}
+func (m *AlarmEventSeverity) XXX_Size() int {
+ return xxx_messageInfo_AlarmEventSeverity.Size(m)
+}
+func (m *AlarmEventSeverity) XXX_DiscardUnknown() {
+ xxx_messageInfo_AlarmEventSeverity.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_AlarmEventSeverity proto.InternalMessageInfo
+
+//
+//
+type AlarmEvent struct {
+ // Unique ID for this alarm. e.g. voltha.some_olt.1234
+ Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ // Refers to the area of the system impacted by the alarm
+ Type AlarmEventType_AlarmEventType `protobuf:"varint,2,opt,name=type,proto3,enum=voltha.AlarmEventType_AlarmEventType" json:"type,omitempty"`
+ // Refers to functional category of the alarm
+ Category AlarmEventCategory_AlarmEventCategory `protobuf:"varint,3,opt,name=category,proto3,enum=voltha.AlarmEventCategory_AlarmEventCategory" json:"category,omitempty"`
+ // Current active state of the alarm
+ State AlarmEventState_AlarmEventState `protobuf:"varint,4,opt,name=state,proto3,enum=voltha.AlarmEventState_AlarmEventState" json:"state,omitempty"`
+ // Overall impact of the alarm on the system
+ Severity AlarmEventSeverity_AlarmEventSeverity `protobuf:"varint,5,opt,name=severity,proto3,enum=voltha.AlarmEventSeverity_AlarmEventSeverity" json:"severity,omitempty"`
+ // Timestamp at which the alarm was first raised
+ RaisedTs float32 `protobuf:"fixed32,6,opt,name=raised_ts,json=raisedTs,proto3" json:"raised_ts,omitempty"`
+ // Timestamp at which the alarm was reported
+ ReportedTs float32 `protobuf:"fixed32,7,opt,name=reported_ts,json=reportedTs,proto3" json:"reported_ts,omitempty"`
+ // Timestamp at which the alarm has changed since it was raised
+ ChangedTs float32 `protobuf:"fixed32,8,opt,name=changed_ts,json=changedTs,proto3" json:"changed_ts,omitempty"`
+ // Identifier of the originating resource of the alarm
+ ResourceId string `protobuf:"bytes,9,opt,name=resource_id,json=resourceId,proto3" json:"resource_id,omitempty"`
+ // Textual explanation of the alarm
+ Description string `protobuf:"bytes,10,opt,name=description,proto3" json:"description,omitempty"`
+ // Key/Value storage for extra information that may give context to the alarm
+ Context map[string]string `protobuf:"bytes,11,rep,name=context,proto3" json:"context,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+ // logical device id
+ LogicalDeviceId string `protobuf:"bytes,12,opt,name=logical_device_id,json=logicalDeviceId,proto3" json:"logical_device_id,omitempty"`
+ // alarm_type name indicates clearly the name of the alarm
+ AlarmTypeName string `protobuf:"bytes,13,opt,name=alarm_type_name,json=alarmTypeName,proto3" json:"alarm_type_name,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *AlarmEvent) Reset() { *m = AlarmEvent{} }
+func (m *AlarmEvent) String() string { return proto.CompactTextString(m) }
+func (*AlarmEvent) ProtoMessage() {}
+func (*AlarmEvent) Descriptor() ([]byte, []int) {
+ return fileDescriptor_events_26477559e5dbfb38, []int{12}
+}
+func (m *AlarmEvent) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_AlarmEvent.Unmarshal(m, b)
+}
+func (m *AlarmEvent) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_AlarmEvent.Marshal(b, m, deterministic)
+}
+func (dst *AlarmEvent) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_AlarmEvent.Merge(dst, src)
+}
+func (m *AlarmEvent) XXX_Size() int {
+ return xxx_messageInfo_AlarmEvent.Size(m)
+}
+func (m *AlarmEvent) XXX_DiscardUnknown() {
+ xxx_messageInfo_AlarmEvent.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_AlarmEvent proto.InternalMessageInfo
+
+func (m *AlarmEvent) GetId() string {
+ if m != nil {
+ return m.Id
+ }
+ return ""
+}
+
+func (m *AlarmEvent) GetType() AlarmEventType_AlarmEventType {
+ if m != nil {
+ return m.Type
+ }
+ return AlarmEventType_COMMUNICATION
+}
+
+func (m *AlarmEvent) GetCategory() AlarmEventCategory_AlarmEventCategory {
+ if m != nil {
+ return m.Category
+ }
+ return AlarmEventCategory_PON
+}
+
+func (m *AlarmEvent) GetState() AlarmEventState_AlarmEventState {
+ if m != nil {
+ return m.State
+ }
+ return AlarmEventState_RAISED
+}
+
+func (m *AlarmEvent) GetSeverity() AlarmEventSeverity_AlarmEventSeverity {
+ if m != nil {
+ return m.Severity
+ }
+ return AlarmEventSeverity_INDETERMINATE
+}
+
+func (m *AlarmEvent) GetRaisedTs() float32 {
+ if m != nil {
+ return m.RaisedTs
+ }
+ return 0
+}
+
+func (m *AlarmEvent) GetReportedTs() float32 {
+ if m != nil {
+ return m.ReportedTs
+ }
+ return 0
+}
+
+func (m *AlarmEvent) GetChangedTs() float32 {
+ if m != nil {
+ return m.ChangedTs
+ }
+ return 0
+}
+
+func (m *AlarmEvent) GetResourceId() string {
+ if m != nil {
+ return m.ResourceId
+ }
+ return ""
+}
+
+func (m *AlarmEvent) GetDescription() string {
+ if m != nil {
+ return m.Description
+ }
+ return ""
+}
+
+func (m *AlarmEvent) GetContext() map[string]string {
+ if m != nil {
+ return m.Context
+ }
+ return nil
+}
+
+func (m *AlarmEvent) GetLogicalDeviceId() string {
+ if m != nil {
+ return m.LogicalDeviceId
+ }
+ return ""
+}
+
+func (m *AlarmEvent) GetAlarmTypeName() string {
+ if m != nil {
+ return m.AlarmTypeName
+ }
+ return ""
+}
+
+func init() {
+ proto.RegisterType((*ConfigEventType)(nil), "voltha.ConfigEventType")
+ proto.RegisterType((*ConfigEvent)(nil), "voltha.ConfigEvent")
+ proto.RegisterType((*KpiEventType)(nil), "voltha.KpiEventType")
+ proto.RegisterType((*MetricMetaData)(nil), "voltha.MetricMetaData")
+ proto.RegisterMapType((map[string]string)(nil), "voltha.MetricMetaData.ContextEntry")
+ proto.RegisterType((*MetricValuePairs)(nil), "voltha.MetricValuePairs")
+ proto.RegisterMapType((map[string]float32)(nil), "voltha.MetricValuePairs.MetricsEntry")
+ proto.RegisterType((*MetricInformation)(nil), "voltha.MetricInformation")
+ proto.RegisterMapType((map[string]float32)(nil), "voltha.MetricInformation.MetricsEntry")
+ proto.RegisterType((*KpiEvent)(nil), "voltha.KpiEvent")
+ proto.RegisterMapType((map[string]*MetricValuePairs)(nil), "voltha.KpiEvent.PrefixesEntry")
+ proto.RegisterType((*KpiEvent2)(nil), "voltha.KpiEvent2")
+ proto.RegisterType((*AlarmEventType)(nil), "voltha.AlarmEventType")
+ proto.RegisterType((*AlarmEventCategory)(nil), "voltha.AlarmEventCategory")
+ proto.RegisterType((*AlarmEventState)(nil), "voltha.AlarmEventState")
+ proto.RegisterType((*AlarmEventSeverity)(nil), "voltha.AlarmEventSeverity")
+ proto.RegisterType((*AlarmEvent)(nil), "voltha.AlarmEvent")
+ proto.RegisterMapType((map[string]string)(nil), "voltha.AlarmEvent.ContextEntry")
+ proto.RegisterEnum("voltha.ConfigEventType_ConfigEventType", ConfigEventType_ConfigEventType_name, ConfigEventType_ConfigEventType_value)
+ proto.RegisterEnum("voltha.KpiEventType_KpiEventType", KpiEventType_KpiEventType_name, KpiEventType_KpiEventType_value)
+ proto.RegisterEnum("voltha.AlarmEventType_AlarmEventType", AlarmEventType_AlarmEventType_name, AlarmEventType_AlarmEventType_value)
+ proto.RegisterEnum("voltha.AlarmEventCategory_AlarmEventCategory", AlarmEventCategory_AlarmEventCategory_name, AlarmEventCategory_AlarmEventCategory_value)
+ proto.RegisterEnum("voltha.AlarmEventState_AlarmEventState", AlarmEventState_AlarmEventState_name, AlarmEventState_AlarmEventState_value)
+ proto.RegisterEnum("voltha.AlarmEventSeverity_AlarmEventSeverity", AlarmEventSeverity_AlarmEventSeverity_name, AlarmEventSeverity_AlarmEventSeverity_value)
+}
+
+func init() { proto.RegisterFile("voltha_protos/events.proto", fileDescriptor_events_26477559e5dbfb38) }
+
+var fileDescriptor_events_26477559e5dbfb38 = []byte{
+ // 1033 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x56, 0xdd, 0x6e, 0xe3, 0x44,
+ 0x14, 0xae, 0x9d, 0xff, 0x93, 0x36, 0xf5, 0x8e, 0x10, 0x32, 0xe5, 0x67, 0xbb, 0x46, 0x2c, 0xd5,
+ 0xa2, 0xa6, 0x22, 0x08, 0x69, 0xb7, 0xa8, 0x82, 0xe0, 0x5a, 0xc8, 0xd0, 0x38, 0x65, 0x92, 0x76,
+ 0x81, 0x9b, 0x68, 0xd6, 0x9e, 0xa6, 0x16, 0x89, 0xc7, 0xb2, 0xa7, 0xd1, 0xe6, 0x8e, 0x07, 0x40,
+ 0xe2, 0x72, 0x9f, 0x88, 0x37, 0xe1, 0x41, 0xd0, 0xcc, 0xd8, 0xb5, 0x93, 0x7a, 0xc5, 0xc5, 0x8a,
+ 0xbb, 0x39, 0xdf, 0xf9, 0xf1, 0x77, 0xce, 0x9c, 0x39, 0xc7, 0x70, 0xb0, 0x62, 0x0b, 0x7e, 0x4b,
+ 0x66, 0x71, 0xc2, 0x38, 0x4b, 0x4f, 0xe8, 0x8a, 0x46, 0x3c, 0xed, 0x4b, 0x09, 0x35, 0x95, 0xee,
+ 0xc0, 0xdc, 0xb4, 0x59, 0x52, 0x4e, 0x94, 0xc5, 0xc1, 0x47, 0x73, 0xc6, 0xe6, 0x0b, 0x7a, 0x42,
+ 0xe2, 0xf0, 0x84, 0x44, 0x11, 0xe3, 0x84, 0x87, 0x2c, 0xca, 0xfc, 0x2d, 0x07, 0xf6, 0x6d, 0x16,
+ 0xdd, 0x84, 0x73, 0x47, 0x44, 0x9d, 0xae, 0x63, 0x6a, 0x0d, 0x1e, 0x40, 0xa8, 0x05, 0x35, 0x12,
+ 0x04, 0xc6, 0x0e, 0x02, 0x68, 0x26, 0x74, 0xc9, 0x56, 0xd4, 0xd0, 0xc4, 0xf9, 0x2e, 0x0e, 0x08,
+ 0xa7, 0x86, 0x6e, 0x25, 0xd0, 0x2d, 0xf9, 0xa0, 0x6f, 0xa0, 0xce, 0xd7, 0x31, 0x35, 0xb5, 0x43,
+ 0xed, 0xa8, 0x37, 0xf8, 0xbc, 0xaf, 0xc8, 0xf5, 0xb7, 0xc2, 0x6e, 0xcb, 0x58, 0x3a, 0x21, 0x04,
+ 0xf5, 0x5b, 0x92, 0xde, 0x9a, 0xfa, 0xa1, 0x76, 0xd4, 0xc1, 0xf2, 0x2c, 0xb0, 0x80, 0x70, 0x62,
+ 0xd6, 0x14, 0x26, 0xce, 0xd6, 0x97, 0xb0, 0xfb, 0x53, 0x1c, 0x16, 0xbc, 0x9f, 0x6c, 0xca, 0xa8,
+ 0x03, 0x8d, 0x74, 0x11, 0xfa, 0xd4, 0xd8, 0x41, 0x4d, 0xd0, 0x79, 0x6a, 0x68, 0xd6, 0x1b, 0x1d,
+ 0x7a, 0x23, 0xca, 0x93, 0xd0, 0x1f, 0x51, 0x4e, 0xce, 0x09, 0x27, 0xe8, 0x3d, 0x68, 0xf0, 0x90,
+ 0x2f, 0x14, 0xd7, 0x0e, 0x56, 0x02, 0xea, 0x09, 0x07, 0xc9, 0x40, 0xc3, 0x3a, 0x4f, 0xd1, 0x33,
+ 0x78, 0xb4, 0x60, 0xf3, 0xd0, 0x27, 0x8b, 0x59, 0x40, 0x57, 0xa1, 0x4f, 0x67, 0x61, 0x90, 0x91,
+ 0xd9, 0xcf, 0x14, 0xe7, 0x12, 0x77, 0x03, 0xf4, 0x21, 0x74, 0x52, 0x9a, 0x84, 0x64, 0x31, 0x8b,
+ 0x98, 0x59, 0x97, 0x36, 0x6d, 0x05, 0x78, 0x4c, 0x28, 0x8b, 0x00, 0x0d, 0xa5, 0x0c, 0x72, 0xcf,
+ 0x33, 0x68, 0xf9, 0x2c, 0xe2, 0xf4, 0x35, 0x37, 0x9b, 0x87, 0xb5, 0xa3, 0xee, 0xe0, 0xd3, 0xbc,
+ 0x72, 0x9b, 0xa4, 0x45, 0xe1, 0x84, 0x95, 0x13, 0xf1, 0x64, 0x8d, 0x73, 0x9f, 0x83, 0x53, 0xd8,
+ 0x2d, 0x2b, 0x90, 0x01, 0xb5, 0xdf, 0xe9, 0x3a, 0x4b, 0x4c, 0x1c, 0x45, 0xb2, 0x2b, 0xb2, 0xb8,
+ 0xa3, 0x59, 0x6d, 0x95, 0x70, 0xaa, 0x3f, 0xd7, 0xac, 0xbf, 0x34, 0x30, 0xd4, 0x47, 0xae, 0x05,
+ 0x76, 0x49, 0xc2, 0x24, 0x45, 0xdf, 0x42, 0x6b, 0x29, 0xb1, 0xd4, 0xd4, 0x24, 0x9f, 0xcf, 0x36,
+ 0xf9, 0x14, 0xa6, 0x19, 0x90, 0x66, 0x8c, 0x32, 0x2f, 0xc1, 0xa8, 0xac, 0xf8, 0x2f, 0x46, 0x7a,
+ 0x99, 0xd1, 0xdf, 0x1a, 0x3c, 0x52, 0xce, 0x6e, 0x74, 0xc3, 0x92, 0xa5, 0x6c, 0x5b, 0x34, 0x80,
+ 0xb6, 0xe8, 0x6d, 0xd9, 0x0c, 0x22, 0x4c, 0x77, 0xf0, 0x7e, 0x75, 0x8d, 0xf0, 0xbd, 0x1d, 0xfa,
+ 0xae, 0x48, 0x43, 0x97, 0x69, 0x3c, 0xdd, 0x74, 0x29, 0xc5, 0xff, 0x1f, 0xf2, 0xf8, 0x47, 0x83,
+ 0x76, 0xde, 0x97, 0xe8, 0xeb, 0x8d, 0x87, 0xf1, 0x24, 0xe7, 0x51, 0xee, 0xdb, 0x0d, 0x21, 0x7b,
+ 0x12, 0x45, 0x3b, 0xea, 0xb2, 0x1d, 0x4f, 0xa1, 0x1d, 0x27, 0xf4, 0x26, 0x7c, 0x4d, 0x53, 0xb3,
+ 0x26, 0x53, 0xfa, 0x64, 0x3b, 0x54, 0xff, 0x32, 0x33, 0x50, 0xa9, 0xdc, 0xdb, 0x1f, 0x5c, 0xc1,
+ 0xde, 0x86, 0xaa, 0x22, 0x99, 0x7e, 0x39, 0x99, 0xee, 0xc0, 0x7c, 0xdb, 0xad, 0x97, 0xd3, 0xfc,
+ 0x53, 0x83, 0x4e, 0xfe, 0xed, 0xc1, 0xbb, 0xe7, 0xa9, 0x9e, 0xdd, 0x73, 0x00, 0xf9, 0x84, 0x67,
+ 0xd9, 0xe3, 0x17, 0x99, 0x7e, 0xf0, 0xd6, 0xcb, 0xc3, 0x1d, 0x69, 0x2c, 0x6e, 0xdf, 0xfa, 0x43,
+ 0x83, 0xde, 0x70, 0x41, 0x92, 0x65, 0x31, 0x1f, 0xa2, 0x6d, 0x04, 0x3d, 0x82, 0x3d, 0x7b, 0x3c,
+ 0x1a, 0x5d, 0x79, 0xae, 0x3d, 0x9c, 0xba, 0x63, 0xcf, 0xd8, 0x41, 0xfb, 0xd0, 0x75, 0xbc, 0x6b,
+ 0x17, 0x8f, 0xbd, 0x91, 0xe3, 0x4d, 0x0d, 0x0d, 0xed, 0x41, 0xc7, 0xf9, 0xf9, 0xca, 0xbd, 0x94,
+ 0xa2, 0x8e, 0xba, 0xd0, 0x9a, 0x38, 0xf8, 0xda, 0xb5, 0x1d, 0xa3, 0x86, 0x7a, 0x00, 0x97, 0x78,
+ 0x6c, 0x3b, 0x93, 0x89, 0xeb, 0xfd, 0x60, 0xd4, 0xd1, 0x2e, 0xb4, 0x27, 0x8e, 0x7d, 0x85, 0xdd,
+ 0xe9, 0xaf, 0x46, 0xc3, 0x7a, 0x09, 0xa8, 0xf8, 0x9e, 0x4d, 0x38, 0x9d, 0xb3, 0x64, 0x6d, 0x0d,
+ 0xab, 0x50, 0x31, 0x60, 0x2f, 0xe5, 0xf7, 0x5b, 0x50, 0x1b, 0x5f, 0x88, 0xef, 0x8a, 0x83, 0xfc,
+ 0xa2, 0x3c, 0x5c, 0x19, 0x35, 0x71, 0xf0, 0x3c, 0xd7, 0xa8, 0x5b, 0x67, 0xb0, 0x5f, 0x84, 0x98,
+ 0x70, 0xc2, 0xa9, 0xf5, 0xec, 0x01, 0x24, 0xc6, 0x33, 0x1e, 0xba, 0x13, 0xe7, 0xdc, 0xd8, 0x11,
+ 0xac, 0xed, 0x0b, 0x67, 0x88, 0x9d, 0x73, 0x43, 0xb3, 0xa2, 0x32, 0x83, 0x09, 0x5d, 0xd1, 0x24,
+ 0xe4, 0x6b, 0xeb, 0x97, 0x2a, 0x54, 0x54, 0xc8, 0xf5, 0xce, 0x9d, 0xa9, 0x83, 0x47, 0xae, 0x37,
+ 0x9c, 0x3a, 0x2a, 0xd6, 0xcb, 0x21, 0xf6, 0x44, 0xc6, 0x9a, 0x98, 0xb1, 0x23, 0xd7, 0x1b, 0x63,
+ 0x43, 0x97, 0xc7, 0xe1, 0x8f, 0x63, 0x6c, 0xd4, 0x44, 0x1d, 0x6c, 0xec, 0x4e, 0x5d, 0x7b, 0x78,
+ 0x61, 0xd4, 0xad, 0x37, 0x0d, 0x80, 0x22, 0xb4, 0xb8, 0xe3, 0x30, 0xc8, 0xba, 0x4d, 0x0f, 0x03,
+ 0xf4, 0x22, 0x6b, 0x15, 0x5d, 0xb6, 0xca, 0xfd, 0x84, 0xd9, 0xbc, 0xaa, 0x2d, 0x31, 0x6b, 0x17,
+ 0x17, 0xda, 0x7e, 0x56, 0x41, 0x39, 0x8c, 0x7b, 0x83, 0xe3, 0x87, 0xee, 0x79, 0x8d, 0x2b, 0x20,
+ 0x7c, 0xef, 0x8e, 0xce, 0xa0, 0x91, 0x8a, 0xb2, 0xc9, 0x81, 0x5d, 0x5a, 0x59, 0x5b, 0x55, 0xdd,
+ 0x96, 0xb1, 0xf2, 0x12, 0x4c, 0xd2, 0xac, 0x66, 0x72, 0xaa, 0x57, 0x32, 0xc9, 0xab, 0x5a, 0x01,
+ 0xe1, 0x7b, 0x77, 0xb1, 0x21, 0x12, 0x12, 0xa6, 0x34, 0x98, 0xf1, 0xd4, 0x6c, 0xca, 0x27, 0xdf,
+ 0x56, 0xc0, 0x34, 0x45, 0x8f, 0xa1, 0x9b, 0xd0, 0x98, 0x25, 0x5c, 0xa9, 0x5b, 0x52, 0x0d, 0x39,
+ 0x34, 0x4d, 0xd1, 0xc7, 0x00, 0xfe, 0x2d, 0x89, 0xe6, 0x4a, 0xdf, 0x96, 0xfa, 0x4e, 0x86, 0xe4,
+ 0xfe, 0x29, 0xbb, 0x4b, 0xd4, 0x02, 0xea, 0xc8, 0x5b, 0x80, 0x1c, 0x72, 0x03, 0x74, 0x08, 0xdd,
+ 0x80, 0xa6, 0x7e, 0x12, 0xc6, 0xe2, 0x45, 0x99, 0x20, 0x0d, 0xca, 0x10, 0x7a, 0x51, 0x2c, 0xa9,
+ 0xae, 0x7c, 0x90, 0x8f, 0x1f, 0x66, 0x5a, 0xbd, 0xa0, 0xaa, 0xb7, 0xe8, 0x6e, 0xf5, 0x16, 0x7d,
+ 0x0a, 0xfb, 0x44, 0xc4, 0x9b, 0x89, 0x9b, 0x9e, 0x45, 0x64, 0x49, 0xcd, 0x3d, 0x69, 0xb9, 0x27,
+ 0x61, 0xd1, 0x05, 0x1e, 0x59, 0xd2, 0x77, 0x59, 0x7a, 0xdf, 0x1f, 0xff, 0xf6, 0xc5, 0x3c, 0xe4,
+ 0xb7, 0x77, 0xaf, 0xfa, 0x3e, 0x5b, 0x9e, 0xb0, 0x98, 0x46, 0x3e, 0x4b, 0x82, 0x13, 0x95, 0xce,
+ 0x71, 0xf6, 0x2b, 0x35, 0x67, 0x19, 0xf0, 0xaa, 0x29, 0x91, 0xaf, 0xfe, 0x0d, 0x00, 0x00, 0xff,
+ 0xff, 0xba, 0xd4, 0xc8, 0xc8, 0x90, 0x09, 0x00, 0x00,
+}
diff --git a/go/voltha/events.proto b/go/voltha/events.proto
deleted file mode 100644
index 0a2c0e4..0000000
--- a/go/voltha/events.proto
+++ /dev/null
@@ -1,195 +0,0 @@
-syntax = "proto3";
-
-option go_package = "github.com/opencord/voltha-protos/go/voltha";
-
-package voltha;
-
-import "voltha_protos/meta.proto";
-import "google/api/annotations.proto";
-
-message ConfigEventType {
- enum ConfigEventType {
- add = 0; // A new config has been added
- remove = 1; // A config has been removed
- update = 2; // A config has been updated
- }
-}
-
-message ConfigEvent {
- ConfigEventType.ConfigEventType type = 1;
-
- string hash = 2; // hash for this change, can be used for quick lookup
- string data = 3; // the actual new data, in json format
-}
-
-message KpiEventType {
- enum KpiEventType {
- slice = 0; // slice: a set of path/metric data for same time-stamp
- ts = 1; // time-series: array of data for same metric
- }
-}
-
-/*
- * Struct to convey a dictionary of metric metadata.
- */
-message MetricMetaData {
- string title = 1; // Metric group or individual metric name
- double ts = 2; // UTC time-stamp of data (seconds since epoch) of
- // when the metric or metric group was collected.
- // If this is a 15-min historical group, it is the
- // time of the collection and reporting, not the
- // start or end of the 15-min group interval.
-
- string logical_device_id = 3; // The logical device ID of the VOLTHA
- // (equivalent to the DPID that ONOS has
- // for the VOLTHA device without the
- // 'of:' prefix
- string serial_no = 4; // The OLT, ONU, ... device serial number
- string device_id = 5; // The OLT, ONU, ... physical device ID
-
- map<string, string> context = 6; // Name value pairs that provide additional
- // context information on the metrics being
- // reported.
-}
-
-/*
- * Struct to convey a dictionary of metric->value pairs. Typically used in
- * pure shared-timestamp or shared-timestamp + shared object prefix situations.
- */
-message MetricValuePairs {
-
- // Metric / value pairs.
- map<string, float> metrics = 1;
-
-}
-
-/*
- * Struct to group metadata for a metric (or group of metrics) with the key-value
- * pairs of collected metrics
- */
-message MetricInformation {
- MetricMetaData metadata = 1;
- map<string, float> metrics = 2;
-}
-
-/*
- * Legacy KPI Event structured. In mid-August, the KPI event format was updated
- * to a more easily parsable format. See VOL-1140
- * for more information.
- */
-message KpiEvent {
-
- KpiEventType.KpiEventType type = 1;
-
- // Fields used when for slice:
-
- float ts = 2; // UTC time-stamp of data in slice mode (seconds since epoc)
-
- map<string, MetricValuePairs> prefixes = 3;
-
-}
-
-message KpiEvent2 {
- // Type of KPI Event
- KpiEventType.KpiEventType type = 1;
-
- // Fields used when for slice:
- double ts = 2; // UTC time-stamp of data in slice mode (seconds since epoch)
- // of the time this entire KpiEvent was published to the kafka bus
-
- repeated MetricInformation slice_data = 3;
-}
-
-/*
- * Identify to the area of the system impacted by the alarm
- */
-message AlarmEventType {
- enum AlarmEventType {
- COMMUNICATION = 0;
- ENVIRONMENT = 1;
- EQUIPMENT = 2;
- SERVICE = 3;
- PROCESSING = 4;
- SECURITY = 5;
- }
-}
-
-/*
- * Identify to the functional category originating the alarm
- */
-message AlarmEventCategory {
- enum AlarmEventCategory {
- PON = 0;
- OLT = 1;
- ONT = 2;
- ONU = 3;
- NNI = 4;
- }
-}
-
-/*
- * Active state of the alarm
- */
-message AlarmEventState {
- enum AlarmEventState {
- RAISED = 0;
- CLEARED = 1;
- }
-}
-
-/*
- * Identify the overall impact of the alarm on the system
- */
-message AlarmEventSeverity {
- enum AlarmEventSeverity {
- INDETERMINATE = 0;
- WARNING = 1;
- MINOR = 2;
- MAJOR = 3;
- CRITICAL = 4;
- }
-}
-
-/*
- *
- */
-message AlarmEvent {
- // Unique ID for this alarm. e.g. voltha.some_olt.1234
- string id = 1;
-
- // Refers to the area of the system impacted by the alarm
- AlarmEventType.AlarmEventType type = 2;
-
- // Refers to functional category of the alarm
- AlarmEventCategory.AlarmEventCategory category = 3;
-
- // Current active state of the alarm
- AlarmEventState.AlarmEventState state = 4;
-
- // Overall impact of the alarm on the system
- AlarmEventSeverity.AlarmEventSeverity severity = 5;
-
- // Timestamp at which the alarm was first raised
- float raised_ts = 6;
-
- // Timestamp at which the alarm was reported
- float reported_ts = 7;
-
- // Timestamp at which the alarm has changed since it was raised
- float changed_ts = 8;
-
- // Identifier of the originating resource of the alarm
- string resource_id = 9;
-
- // Textual explanation of the alarm
- string description = 10;
-
- // Key/Value storage for extra information that may give context to the alarm
- map<string, string> context = 11;
-
- // logical device id
- string logical_device_id = 12;
-
- // alarm_type name indicates clearly the name of the alarm
- string alarm_type_name = 13;
-}
diff --git a/go/voltha/health.pb.go b/go/voltha/health.pb.go
new file mode 100644
index 0000000..aa7d788
--- /dev/null
+++ b/go/voltha/health.pb.go
@@ -0,0 +1,198 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// source: voltha_protos/health.proto
+
+package voltha // import "github.com/opencord/voltha-protos/go/voltha"
+
+import proto "github.com/golang/protobuf/proto"
+import fmt "fmt"
+import math "math"
+import empty "github.com/golang/protobuf/ptypes/empty"
+import _ "github.com/opencord/voltha-protos/go/common"
+import _ "google.golang.org/genproto/googleapis/api/annotations"
+
+import (
+ context "golang.org/x/net/context"
+ grpc "google.golang.org/grpc"
+)
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ = proto.Marshal
+var _ = fmt.Errorf
+var _ = math.Inf
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the proto package it is being compiled against.
+// A compilation error at this line likely means your copy of the
+// proto package needs to be updated.
+const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
+
+// Health states
+type HealthStatus_HealthState int32
+
+const (
+ HealthStatus_HEALTHY HealthStatus_HealthState = 0
+ HealthStatus_OVERLOADED HealthStatus_HealthState = 1
+ HealthStatus_DYING HealthStatus_HealthState = 2
+)
+
+var HealthStatus_HealthState_name = map[int32]string{
+ 0: "HEALTHY",
+ 1: "OVERLOADED",
+ 2: "DYING",
+}
+var HealthStatus_HealthState_value = map[string]int32{
+ "HEALTHY": 0,
+ "OVERLOADED": 1,
+ "DYING": 2,
+}
+
+func (x HealthStatus_HealthState) String() string {
+ return proto.EnumName(HealthStatus_HealthState_name, int32(x))
+}
+func (HealthStatus_HealthState) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_health_6b50bf63b9bb04db, []int{0, 0}
+}
+
+// Encode health status of a Voltha instance
+type HealthStatus struct {
+ // Current state of health of this Voltha instance
+ State HealthStatus_HealthState `protobuf:"varint,1,opt,name=state,proto3,enum=voltha.HealthStatus_HealthState" json:"state,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *HealthStatus) Reset() { *m = HealthStatus{} }
+func (m *HealthStatus) String() string { return proto.CompactTextString(m) }
+func (*HealthStatus) ProtoMessage() {}
+func (*HealthStatus) Descriptor() ([]byte, []int) {
+ return fileDescriptor_health_6b50bf63b9bb04db, []int{0}
+}
+func (m *HealthStatus) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_HealthStatus.Unmarshal(m, b)
+}
+func (m *HealthStatus) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_HealthStatus.Marshal(b, m, deterministic)
+}
+func (dst *HealthStatus) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_HealthStatus.Merge(dst, src)
+}
+func (m *HealthStatus) XXX_Size() int {
+ return xxx_messageInfo_HealthStatus.Size(m)
+}
+func (m *HealthStatus) XXX_DiscardUnknown() {
+ xxx_messageInfo_HealthStatus.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_HealthStatus proto.InternalMessageInfo
+
+func (m *HealthStatus) GetState() HealthStatus_HealthState {
+ if m != nil {
+ return m.State
+ }
+ return HealthStatus_HEALTHY
+}
+
+func init() {
+ proto.RegisterType((*HealthStatus)(nil), "voltha.HealthStatus")
+ proto.RegisterEnum("voltha.HealthStatus_HealthState", HealthStatus_HealthState_name, HealthStatus_HealthState_value)
+}
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ context.Context
+var _ grpc.ClientConn
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+const _ = grpc.SupportPackageIsVersion4
+
+// HealthServiceClient is the client API for HealthService service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
+type HealthServiceClient interface {
+ // Return current health status of a Voltha instance
+ GetHealthStatus(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*HealthStatus, error)
+}
+
+type healthServiceClient struct {
+ cc *grpc.ClientConn
+}
+
+func NewHealthServiceClient(cc *grpc.ClientConn) HealthServiceClient {
+ return &healthServiceClient{cc}
+}
+
+func (c *healthServiceClient) GetHealthStatus(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*HealthStatus, error) {
+ out := new(HealthStatus)
+ err := c.cc.Invoke(ctx, "/voltha.HealthService/GetHealthStatus", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// HealthServiceServer is the server API for HealthService service.
+type HealthServiceServer interface {
+ // Return current health status of a Voltha instance
+ GetHealthStatus(context.Context, *empty.Empty) (*HealthStatus, error)
+}
+
+func RegisterHealthServiceServer(s *grpc.Server, srv HealthServiceServer) {
+ s.RegisterService(&_HealthService_serviceDesc, srv)
+}
+
+func _HealthService_GetHealthStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(empty.Empty)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(HealthServiceServer).GetHealthStatus(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.HealthService/GetHealthStatus",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(HealthServiceServer).GetHealthStatus(ctx, req.(*empty.Empty))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+var _HealthService_serviceDesc = grpc.ServiceDesc{
+ ServiceName: "voltha.HealthService",
+ HandlerType: (*HealthServiceServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "GetHealthStatus",
+ Handler: _HealthService_GetHealthStatus_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "voltha_protos/health.proto",
+}
+
+func init() { proto.RegisterFile("voltha_protos/health.proto", fileDescriptor_health_6b50bf63b9bb04db) }
+
+var fileDescriptor_health_6b50bf63b9bb04db = []byte{
+ // 289 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x92, 0x2a, 0xcb, 0xcf, 0x29,
+ 0xc9, 0x48, 0x8c, 0x2f, 0x28, 0xca, 0x2f, 0xc9, 0x2f, 0xd6, 0xcf, 0x48, 0x4d, 0xcc, 0x29, 0xc9,
+ 0xd0, 0x03, 0xf3, 0x84, 0xd8, 0x20, 0x72, 0x52, 0x32, 0xe9, 0xf9, 0xf9, 0xe9, 0x39, 0xa9, 0xfa,
+ 0x89, 0x05, 0x99, 0xfa, 0x89, 0x79, 0x79, 0xf9, 0x25, 0x89, 0x25, 0x99, 0xf9, 0x79, 0xc5, 0x10,
+ 0x55, 0x52, 0xd2, 0x50, 0x59, 0x30, 0x2f, 0xa9, 0x34, 0x4d, 0x3f, 0x35, 0xb7, 0xa0, 0xa4, 0x12,
+ 0x2a, 0x29, 0x81, 0x6a, 0x7c, 0x6e, 0x6a, 0x49, 0x22, 0x44, 0x46, 0xa9, 0x85, 0x91, 0x8b, 0xc7,
+ 0x03, 0x6c, 0x5b, 0x70, 0x49, 0x62, 0x49, 0x69, 0xb1, 0x90, 0x2d, 0x17, 0x6b, 0x71, 0x49, 0x62,
+ 0x49, 0xaa, 0x04, 0xa3, 0x02, 0xa3, 0x06, 0x9f, 0x91, 0x82, 0x1e, 0x44, 0xab, 0x1e, 0xb2, 0x22,
+ 0x24, 0x4e, 0xaa, 0x13, 0xeb, 0x8b, 0x6f, 0x67, 0x65, 0x19, 0x83, 0x20, 0xba, 0x94, 0x4c, 0xb9,
+ 0xb8, 0x91, 0x24, 0x85, 0xb8, 0xb9, 0xd8, 0x3d, 0x5c, 0x1d, 0x7d, 0x42, 0x3c, 0x22, 0x05, 0x18,
+ 0x84, 0xf8, 0xb8, 0xb8, 0xfc, 0xc3, 0x5c, 0x83, 0x7c, 0xfc, 0x1d, 0x5d, 0x5c, 0x5d, 0x04, 0x18,
+ 0x85, 0x38, 0xb9, 0x58, 0x5d, 0x22, 0x3d, 0xfd, 0xdc, 0x05, 0x98, 0x8c, 0x12, 0xb9, 0x78, 0xa1,
+ 0xda, 0x52, 0x8b, 0xca, 0x32, 0x93, 0x53, 0x85, 0x02, 0xb8, 0xf8, 0xdd, 0x53, 0x4b, 0x50, 0x5c,
+ 0x26, 0xa6, 0x07, 0xf1, 0xa2, 0x1e, 0xcc, 0x8b, 0x7a, 0xae, 0x20, 0x2f, 0x4a, 0x89, 0x60, 0x73,
+ 0xa2, 0x12, 0x7f, 0xd3, 0xe5, 0x27, 0x93, 0x99, 0x38, 0x85, 0xd8, 0xa1, 0x81, 0xe9, 0xa4, 0x1b,
+ 0xa5, 0x9d, 0x9e, 0x59, 0x92, 0x51, 0x9a, 0xa4, 0x97, 0x9c, 0x9f, 0xab, 0x9f, 0x5f, 0x90, 0x9a,
+ 0x97, 0x9c, 0x5f, 0x94, 0xa2, 0x0f, 0xd1, 0xab, 0x0b, 0x0d, 0x99, 0xf4, 0x7c, 0xa8, 0x40, 0x12,
+ 0x1b, 0x58, 0xc4, 0x18, 0x10, 0x00, 0x00, 0xff, 0xff, 0x06, 0x8f, 0xa7, 0x7d, 0x9a, 0x01, 0x00,
+ 0x00,
+}
diff --git a/go/voltha/health.proto b/go/voltha/health.proto
deleted file mode 100644
index 7721825..0000000
--- a/go/voltha/health.proto
+++ /dev/null
@@ -1,36 +0,0 @@
-syntax = "proto3";
-
-option go_package = "github.com/opencord/voltha-protos/go/voltha";
-
-package voltha;
-
-import "google/api/annotations.proto";
-import "google/protobuf/empty.proto";
-import "voltha_protos/meta.proto";
-
-// Encode health status of a Voltha instance
-message HealthStatus {
-
- // Health states
- enum HealthState {
- HEALTHY = 0; // The instance is healthy
- OVERLOADED = 1; // The instance is overloaded, decrease query rate
- DYING = 2; // The instance is in a critical condition, do not use it
- }
-
- // Current state of health of this Voltha instance
- HealthState state = 1 [(access) = READ_ONLY];
-}
-
-// Health related services
-service HealthService {
-
- // Return current health status of a Voltha instance
- rpc GetHealthStatus(google.protobuf.Empty) returns (HealthStatus) {
- option (google.api.http) = {
- get: "/health"
- };
- }
-
-}
-
diff --git a/go/voltha/logical_device.pb.go b/go/voltha/logical_device.pb.go
new file mode 100644
index 0000000..0008876
--- /dev/null
+++ b/go/voltha/logical_device.pb.go
@@ -0,0 +1,365 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// source: voltha_protos/logical_device.proto
+
+package voltha // import "github.com/opencord/voltha-protos/go/voltha"
+
+import proto "github.com/golang/protobuf/proto"
+import fmt "fmt"
+import math "math"
+import _ "github.com/opencord/voltha-protos/go/common"
+import openflow_13 "github.com/opencord/voltha-protos/go/openflow_13"
+import _ "google.golang.org/genproto/googleapis/api/annotations"
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ = proto.Marshal
+var _ = fmt.Errorf
+var _ = math.Inf
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the proto package it is being compiled against.
+// A compilation error at this line likely means your copy of the
+// proto package needs to be updated.
+const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
+
+type LogicalPortId struct {
+ // unique id of logical device
+ Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ // id of the port on the logical device
+ PortId string `protobuf:"bytes,2,opt,name=port_id,json=portId,proto3" json:"port_id,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *LogicalPortId) Reset() { *m = LogicalPortId{} }
+func (m *LogicalPortId) String() string { return proto.CompactTextString(m) }
+func (*LogicalPortId) ProtoMessage() {}
+func (*LogicalPortId) Descriptor() ([]byte, []int) {
+ return fileDescriptor_logical_device_33972ea6b3a0b7e8, []int{0}
+}
+func (m *LogicalPortId) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_LogicalPortId.Unmarshal(m, b)
+}
+func (m *LogicalPortId) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_LogicalPortId.Marshal(b, m, deterministic)
+}
+func (dst *LogicalPortId) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_LogicalPortId.Merge(dst, src)
+}
+func (m *LogicalPortId) XXX_Size() int {
+ return xxx_messageInfo_LogicalPortId.Size(m)
+}
+func (m *LogicalPortId) XXX_DiscardUnknown() {
+ xxx_messageInfo_LogicalPortId.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_LogicalPortId proto.InternalMessageInfo
+
+func (m *LogicalPortId) GetId() string {
+ if m != nil {
+ return m.Id
+ }
+ return ""
+}
+
+func (m *LogicalPortId) GetPortId() string {
+ if m != nil {
+ return m.PortId
+ }
+ return ""
+}
+
+type LogicalPort struct {
+ Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ OfpPort *openflow_13.OfpPort `protobuf:"bytes,2,opt,name=ofp_port,json=ofpPort,proto3" json:"ofp_port,omitempty"`
+ DeviceId string `protobuf:"bytes,3,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
+ DevicePortNo uint32 `protobuf:"varint,4,opt,name=device_port_no,json=devicePortNo,proto3" json:"device_port_no,omitempty"`
+ RootPort bool `protobuf:"varint,5,opt,name=root_port,json=rootPort,proto3" json:"root_port,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *LogicalPort) Reset() { *m = LogicalPort{} }
+func (m *LogicalPort) String() string { return proto.CompactTextString(m) }
+func (*LogicalPort) ProtoMessage() {}
+func (*LogicalPort) Descriptor() ([]byte, []int) {
+ return fileDescriptor_logical_device_33972ea6b3a0b7e8, []int{1}
+}
+func (m *LogicalPort) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_LogicalPort.Unmarshal(m, b)
+}
+func (m *LogicalPort) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_LogicalPort.Marshal(b, m, deterministic)
+}
+func (dst *LogicalPort) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_LogicalPort.Merge(dst, src)
+}
+func (m *LogicalPort) XXX_Size() int {
+ return xxx_messageInfo_LogicalPort.Size(m)
+}
+func (m *LogicalPort) XXX_DiscardUnknown() {
+ xxx_messageInfo_LogicalPort.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_LogicalPort proto.InternalMessageInfo
+
+func (m *LogicalPort) GetId() string {
+ if m != nil {
+ return m.Id
+ }
+ return ""
+}
+
+func (m *LogicalPort) GetOfpPort() *openflow_13.OfpPort {
+ if m != nil {
+ return m.OfpPort
+ }
+ return nil
+}
+
+func (m *LogicalPort) GetDeviceId() string {
+ if m != nil {
+ return m.DeviceId
+ }
+ return ""
+}
+
+func (m *LogicalPort) GetDevicePortNo() uint32 {
+ if m != nil {
+ return m.DevicePortNo
+ }
+ return 0
+}
+
+func (m *LogicalPort) GetRootPort() bool {
+ if m != nil {
+ return m.RootPort
+ }
+ return false
+}
+
+type LogicalPorts struct {
+ Items []*LogicalPort `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *LogicalPorts) Reset() { *m = LogicalPorts{} }
+func (m *LogicalPorts) String() string { return proto.CompactTextString(m) }
+func (*LogicalPorts) ProtoMessage() {}
+func (*LogicalPorts) Descriptor() ([]byte, []int) {
+ return fileDescriptor_logical_device_33972ea6b3a0b7e8, []int{2}
+}
+func (m *LogicalPorts) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_LogicalPorts.Unmarshal(m, b)
+}
+func (m *LogicalPorts) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_LogicalPorts.Marshal(b, m, deterministic)
+}
+func (dst *LogicalPorts) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_LogicalPorts.Merge(dst, src)
+}
+func (m *LogicalPorts) XXX_Size() int {
+ return xxx_messageInfo_LogicalPorts.Size(m)
+}
+func (m *LogicalPorts) XXX_DiscardUnknown() {
+ xxx_messageInfo_LogicalPorts.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_LogicalPorts proto.InternalMessageInfo
+
+func (m *LogicalPorts) GetItems() []*LogicalPort {
+ if m != nil {
+ return m.Items
+ }
+ return nil
+}
+
+type LogicalDevice struct {
+ // unique id of logical device
+ Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ // unique datapath id for the logical device (used by the SDN controller)
+ DatapathId uint64 `protobuf:"varint,2,opt,name=datapath_id,json=datapathId,proto3" json:"datapath_id,omitempty"`
+ // device description
+ Desc *openflow_13.OfpDesc `protobuf:"bytes,3,opt,name=desc,proto3" json:"desc,omitempty"`
+ // device features
+ SwitchFeatures *openflow_13.OfpSwitchFeatures `protobuf:"bytes,4,opt,name=switch_features,json=switchFeatures,proto3" json:"switch_features,omitempty"`
+ // name of the root device anchoring logical device
+ RootDeviceId string `protobuf:"bytes,5,opt,name=root_device_id,json=rootDeviceId,proto3" json:"root_device_id,omitempty"`
+ // logical device ports
+ Ports []*LogicalPort `protobuf:"bytes,128,rep,name=ports,proto3" json:"ports,omitempty"`
+ // flows configured on the logical device
+ Flows *openflow_13.Flows `protobuf:"bytes,129,opt,name=flows,proto3" json:"flows,omitempty"`
+ // flow groups configured on the logical device
+ FlowGroups *openflow_13.FlowGroups `protobuf:"bytes,130,opt,name=flow_groups,json=flowGroups,proto3" json:"flow_groups,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *LogicalDevice) Reset() { *m = LogicalDevice{} }
+func (m *LogicalDevice) String() string { return proto.CompactTextString(m) }
+func (*LogicalDevice) ProtoMessage() {}
+func (*LogicalDevice) Descriptor() ([]byte, []int) {
+ return fileDescriptor_logical_device_33972ea6b3a0b7e8, []int{3}
+}
+func (m *LogicalDevice) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_LogicalDevice.Unmarshal(m, b)
+}
+func (m *LogicalDevice) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_LogicalDevice.Marshal(b, m, deterministic)
+}
+func (dst *LogicalDevice) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_LogicalDevice.Merge(dst, src)
+}
+func (m *LogicalDevice) XXX_Size() int {
+ return xxx_messageInfo_LogicalDevice.Size(m)
+}
+func (m *LogicalDevice) XXX_DiscardUnknown() {
+ xxx_messageInfo_LogicalDevice.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_LogicalDevice proto.InternalMessageInfo
+
+func (m *LogicalDevice) GetId() string {
+ if m != nil {
+ return m.Id
+ }
+ return ""
+}
+
+func (m *LogicalDevice) GetDatapathId() uint64 {
+ if m != nil {
+ return m.DatapathId
+ }
+ return 0
+}
+
+func (m *LogicalDevice) GetDesc() *openflow_13.OfpDesc {
+ if m != nil {
+ return m.Desc
+ }
+ return nil
+}
+
+func (m *LogicalDevice) GetSwitchFeatures() *openflow_13.OfpSwitchFeatures {
+ if m != nil {
+ return m.SwitchFeatures
+ }
+ return nil
+}
+
+func (m *LogicalDevice) GetRootDeviceId() string {
+ if m != nil {
+ return m.RootDeviceId
+ }
+ return ""
+}
+
+func (m *LogicalDevice) GetPorts() []*LogicalPort {
+ if m != nil {
+ return m.Ports
+ }
+ return nil
+}
+
+func (m *LogicalDevice) GetFlows() *openflow_13.Flows {
+ if m != nil {
+ return m.Flows
+ }
+ return nil
+}
+
+func (m *LogicalDevice) GetFlowGroups() *openflow_13.FlowGroups {
+ if m != nil {
+ return m.FlowGroups
+ }
+ return nil
+}
+
+type LogicalDevices struct {
+ Items []*LogicalDevice `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *LogicalDevices) Reset() { *m = LogicalDevices{} }
+func (m *LogicalDevices) String() string { return proto.CompactTextString(m) }
+func (*LogicalDevices) ProtoMessage() {}
+func (*LogicalDevices) Descriptor() ([]byte, []int) {
+ return fileDescriptor_logical_device_33972ea6b3a0b7e8, []int{4}
+}
+func (m *LogicalDevices) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_LogicalDevices.Unmarshal(m, b)
+}
+func (m *LogicalDevices) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_LogicalDevices.Marshal(b, m, deterministic)
+}
+func (dst *LogicalDevices) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_LogicalDevices.Merge(dst, src)
+}
+func (m *LogicalDevices) XXX_Size() int {
+ return xxx_messageInfo_LogicalDevices.Size(m)
+}
+func (m *LogicalDevices) XXX_DiscardUnknown() {
+ xxx_messageInfo_LogicalDevices.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_LogicalDevices proto.InternalMessageInfo
+
+func (m *LogicalDevices) GetItems() []*LogicalDevice {
+ if m != nil {
+ return m.Items
+ }
+ return nil
+}
+
+func init() {
+ proto.RegisterType((*LogicalPortId)(nil), "voltha.LogicalPortId")
+ proto.RegisterType((*LogicalPort)(nil), "voltha.LogicalPort")
+ proto.RegisterType((*LogicalPorts)(nil), "voltha.LogicalPorts")
+ proto.RegisterType((*LogicalDevice)(nil), "voltha.LogicalDevice")
+ proto.RegisterType((*LogicalDevices)(nil), "voltha.LogicalDevices")
+}
+
+func init() {
+ proto.RegisterFile("voltha_protos/logical_device.proto", fileDescriptor_logical_device_33972ea6b3a0b7e8)
+}
+
+var fileDescriptor_logical_device_33972ea6b3a0b7e8 = []byte{
+ // 488 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x74, 0x53, 0x4f, 0x6b, 0xd4, 0x40,
+ 0x14, 0x37, 0xdd, 0xcd, 0x76, 0xf7, 0x65, 0xbb, 0xc2, 0x48, 0x69, 0xa8, 0x4a, 0x43, 0xf0, 0xb0,
+ 0xa5, 0x34, 0x5b, 0xb7, 0x08, 0x7a, 0x10, 0x64, 0x29, 0x95, 0x05, 0x11, 0x99, 0xa3, 0x97, 0x30,
+ 0xcd, 0x24, 0xd9, 0x81, 0x6c, 0x5e, 0xc8, 0xcc, 0xb6, 0x57, 0xf5, 0xe2, 0xc7, 0xf1, 0x93, 0xf8,
+ 0x25, 0xfc, 0x10, 0x9e, 0x65, 0x66, 0x92, 0xba, 0xe9, 0xea, 0x31, 0xbf, 0x3f, 0xef, 0xfd, 0xde,
+ 0x6f, 0x08, 0x84, 0xb7, 0x58, 0xa8, 0x15, 0x8b, 0xab, 0x1a, 0x15, 0xca, 0x59, 0x81, 0xb9, 0x48,
+ 0x58, 0x11, 0xf3, 0xf4, 0x56, 0x24, 0x69, 0x64, 0x50, 0x32, 0xb0, 0x9a, 0xe3, 0x67, 0x39, 0x62,
+ 0x5e, 0xa4, 0x33, 0x56, 0x89, 0x19, 0x2b, 0x4b, 0x54, 0x4c, 0x09, 0x2c, 0xa5, 0x55, 0x1d, 0xfb,
+ 0xdd, 0x49, 0xeb, 0x54, 0xb1, 0x86, 0x39, 0xe9, 0x32, 0x58, 0xa5, 0x65, 0x56, 0xe0, 0x5d, 0xfc,
+ 0xf2, 0xd2, 0x0a, 0xc2, 0xd7, 0x70, 0xf0, 0xc1, 0x2e, 0xfe, 0x84, 0xb5, 0x5a, 0x72, 0x32, 0x81,
+ 0x3d, 0xc1, 0x7d, 0x27, 0x70, 0xa6, 0x23, 0xba, 0x27, 0x38, 0x39, 0x82, 0xfd, 0x0a, 0x6b, 0x15,
+ 0x0b, 0xee, 0xef, 0x19, 0x70, 0x50, 0x19, 0x61, 0xf8, 0xc3, 0x01, 0x6f, 0xcb, 0xba, 0x63, 0xbc,
+ 0x80, 0x21, 0x66, 0x55, 0xac, 0xd5, 0xc6, 0xe9, 0xcd, 0x0f, 0xa3, 0xed, 0xfd, 0x2d, 0x49, 0xf7,
+ 0x31, 0xab, 0xcc, 0x84, 0xa7, 0x30, 0xb2, 0xc7, 0xeb, 0x65, 0x3d, 0x33, 0x68, 0x68, 0x81, 0x25,
+ 0x27, 0x2f, 0x60, 0xd2, 0x90, 0x26, 0x4e, 0x89, 0x7e, 0x3f, 0x70, 0xa6, 0x07, 0x74, 0x6c, 0x51,
+ 0x3d, 0xe0, 0x23, 0xea, 0x11, 0x35, 0xa2, 0xb2, 0x5b, 0xdd, 0xc0, 0x99, 0x0e, 0xe9, 0x50, 0x03,
+ 0x9a, 0x0e, 0xdf, 0xc0, 0x78, 0x2b, 0xb0, 0x24, 0xa7, 0xe0, 0x0a, 0x95, 0xae, 0xa5, 0xef, 0x04,
+ 0xbd, 0xa9, 0x37, 0x7f, 0x12, 0xd9, 0xb2, 0xa2, 0x2d, 0x11, 0xb5, 0x8a, 0xf0, 0x7b, 0xef, 0xbe,
+ 0xa7, 0x2b, 0xb3, 0x6f, 0xe7, 0xdc, 0x13, 0xf0, 0x38, 0x53, 0xac, 0x62, 0x6a, 0xd5, 0x76, 0xd5,
+ 0xa7, 0xd0, 0x42, 0x4b, 0x4e, 0x4e, 0xa1, 0xcf, 0x53, 0x99, 0x98, 0xc3, 0xfe, 0xd5, 0x85, 0x26,
+ 0xa9, 0x91, 0x90, 0x25, 0x3c, 0x96, 0x77, 0x42, 0x25, 0xab, 0x38, 0x4b, 0x99, 0xda, 0xd4, 0xa9,
+ 0x34, 0xc7, 0x7a, 0xf3, 0x60, 0xc7, 0xf5, 0x40, 0x47, 0x27, 0x16, 0xb8, 0x6e, 0xbe, 0x75, 0x6d,
+ 0xa6, 0x90, 0xbf, 0xc5, 0xba, 0x26, 0xf2, 0x58, 0xa3, 0x57, 0x6d, 0xb9, 0xaf, 0xc0, 0xd5, 0x8d,
+ 0x49, 0xff, 0xcb, 0xff, 0xab, 0x58, 0x8c, 0x7e, 0xfd, 0xfe, 0xf9, 0xbc, 0xaf, 0xcf, 0xa6, 0x56,
+ 0x4d, 0x2e, 0xc0, 0xd5, 0x59, 0xa4, 0xff, 0xd5, 0x31, 0xf1, 0x48, 0x27, 0xde, 0xb5, 0xa6, 0x16,
+ 0xae, 0x76, 0x3d, 0xa2, 0x56, 0x48, 0xde, 0x81, 0x67, 0xe8, 0xbc, 0xc6, 0x4d, 0x25, 0xfd, 0x6f,
+ 0xd6, 0x77, 0xb4, 0xe3, 0x7b, 0x6f, 0xf8, 0xd6, 0x0c, 0xd9, 0x3d, 0x14, 0xbe, 0x85, 0x49, 0xe7,
+ 0x21, 0x24, 0x39, 0xeb, 0x3e, 0xe3, 0xe1, 0x83, 0xec, 0x56, 0xd6, 0x3c, 0xe4, 0xe2, 0xfc, 0xf3,
+ 0x59, 0x2e, 0xd4, 0x6a, 0x73, 0x13, 0x25, 0xb8, 0x36, 0xff, 0x43, 0x82, 0x35, 0x9f, 0x59, 0xcb,
+ 0x79, 0xf3, 0x9b, 0xe4, 0xd8, 0x00, 0x37, 0x03, 0x83, 0x5c, 0xfe, 0x09, 0x00, 0x00, 0xff, 0xff,
+ 0xe6, 0x88, 0x38, 0xe0, 0xac, 0x03, 0x00, 0x00,
+}
diff --git a/go/voltha/logical_device.proto b/go/voltha/logical_device.proto
deleted file mode 100644
index 6e3a233..0000000
--- a/go/voltha/logical_device.proto
+++ /dev/null
@@ -1,61 +0,0 @@
-syntax = "proto3";
-
-option go_package = "github.com/opencord/voltha-protos/go/voltha";
-
-package voltha;
-
-import "google/api/annotations.proto";
-import "voltha_protos/meta.proto";
-import "voltha_protos/openflow_13.proto";
-
-message LogicalPortId {
- // unique id of logical device
- string id = 1;
-
- // id of the port on the logical device
- string port_id = 2;
-}
-
-message LogicalPort {
- string id = 1;
- openflow_13.ofp_port ofp_port = 2;
- string device_id = 3;
- uint32 device_port_no = 4;
- bool root_port = 5;
-}
-
-message LogicalPorts {
- repeated LogicalPort items = 1;
-}
-
-message LogicalDevice {
-
- // unique id of logical device
- string id = 1;
-
- // unique datapath id for the logical device (used by the SDN controller)
- uint64 datapath_id = 2;
-
- // device description
- openflow_13.ofp_desc desc = 3;
-
- // device features
- openflow_13.ofp_switch_features switch_features = 4;
-
- // name of the root device anchoring logical device
- string root_device_id = 5;
-
- // logical device ports
- repeated LogicalPort ports = 128 [(child_node) = {key: "id"}];
-
- // flows configured on the logical device
- openflow_13.Flows flows = 129 [(child_node) = {}];
-
- // flow groups configured on the logical device
- openflow_13.FlowGroups flow_groups = 130 [(child_node) = {}];
-
-}
-
-message LogicalDevices {
- repeated LogicalDevice items = 1;
-}
diff --git a/go/voltha/ponsim.pb.go b/go/voltha/ponsim.pb.go
new file mode 100644
index 0000000..2fac739
--- /dev/null
+++ b/go/voltha/ponsim.pb.go
@@ -0,0 +1,678 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// source: voltha_protos/ponsim.proto
+
+package voltha // import "github.com/opencord/voltha-protos/go/voltha"
+
+import proto "github.com/golang/protobuf/proto"
+import fmt "fmt"
+import math "math"
+import empty "github.com/golang/protobuf/ptypes/empty"
+import openflow_13 "github.com/opencord/voltha-protos/go/openflow_13"
+
+import (
+ context "golang.org/x/net/context"
+ grpc "google.golang.org/grpc"
+)
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ = proto.Marshal
+var _ = fmt.Errorf
+var _ = math.Inf
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the proto package it is being compiled against.
+// A compilation error at this line likely means your copy of the
+// proto package needs to be updated.
+const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
+
+type PonSimOnuDeviceInfo struct {
+ UniPort int32 `protobuf:"varint,1,opt,name=uni_port,json=uniPort,proto3" json:"uni_port,omitempty"`
+ SerialNumber string `protobuf:"bytes,2,opt,name=serial_number,json=serialNumber,proto3" json:"serial_number,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *PonSimOnuDeviceInfo) Reset() { *m = PonSimOnuDeviceInfo{} }
+func (m *PonSimOnuDeviceInfo) String() string { return proto.CompactTextString(m) }
+func (*PonSimOnuDeviceInfo) ProtoMessage() {}
+func (*PonSimOnuDeviceInfo) Descriptor() ([]byte, []int) {
+ return fileDescriptor_ponsim_bb56e7457209b09b, []int{0}
+}
+func (m *PonSimOnuDeviceInfo) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_PonSimOnuDeviceInfo.Unmarshal(m, b)
+}
+func (m *PonSimOnuDeviceInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_PonSimOnuDeviceInfo.Marshal(b, m, deterministic)
+}
+func (dst *PonSimOnuDeviceInfo) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_PonSimOnuDeviceInfo.Merge(dst, src)
+}
+func (m *PonSimOnuDeviceInfo) XXX_Size() int {
+ return xxx_messageInfo_PonSimOnuDeviceInfo.Size(m)
+}
+func (m *PonSimOnuDeviceInfo) XXX_DiscardUnknown() {
+ xxx_messageInfo_PonSimOnuDeviceInfo.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_PonSimOnuDeviceInfo proto.InternalMessageInfo
+
+func (m *PonSimOnuDeviceInfo) GetUniPort() int32 {
+ if m != nil {
+ return m.UniPort
+ }
+ return 0
+}
+
+func (m *PonSimOnuDeviceInfo) GetSerialNumber() string {
+ if m != nil {
+ return m.SerialNumber
+ }
+ return ""
+}
+
+type PonSimDeviceInfo struct {
+ NniPort int32 `protobuf:"varint,1,opt,name=nni_port,json=nniPort,proto3" json:"nni_port,omitempty"`
+ Onus []*PonSimOnuDeviceInfo `protobuf:"bytes,2,rep,name=onus,proto3" json:"onus,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *PonSimDeviceInfo) Reset() { *m = PonSimDeviceInfo{} }
+func (m *PonSimDeviceInfo) String() string { return proto.CompactTextString(m) }
+func (*PonSimDeviceInfo) ProtoMessage() {}
+func (*PonSimDeviceInfo) Descriptor() ([]byte, []int) {
+ return fileDescriptor_ponsim_bb56e7457209b09b, []int{1}
+}
+func (m *PonSimDeviceInfo) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_PonSimDeviceInfo.Unmarshal(m, b)
+}
+func (m *PonSimDeviceInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_PonSimDeviceInfo.Marshal(b, m, deterministic)
+}
+func (dst *PonSimDeviceInfo) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_PonSimDeviceInfo.Merge(dst, src)
+}
+func (m *PonSimDeviceInfo) XXX_Size() int {
+ return xxx_messageInfo_PonSimDeviceInfo.Size(m)
+}
+func (m *PonSimDeviceInfo) XXX_DiscardUnknown() {
+ xxx_messageInfo_PonSimDeviceInfo.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_PonSimDeviceInfo proto.InternalMessageInfo
+
+func (m *PonSimDeviceInfo) GetNniPort() int32 {
+ if m != nil {
+ return m.NniPort
+ }
+ return 0
+}
+
+func (m *PonSimDeviceInfo) GetOnus() []*PonSimOnuDeviceInfo {
+ if m != nil {
+ return m.Onus
+ }
+ return nil
+}
+
+type FlowTable struct {
+ Port int32 `protobuf:"varint,1,opt,name=port,proto3" json:"port,omitempty"`
+ Flows []*openflow_13.OfpFlowStats `protobuf:"bytes,2,rep,name=flows,proto3" json:"flows,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *FlowTable) Reset() { *m = FlowTable{} }
+func (m *FlowTable) String() string { return proto.CompactTextString(m) }
+func (*FlowTable) ProtoMessage() {}
+func (*FlowTable) Descriptor() ([]byte, []int) {
+ return fileDescriptor_ponsim_bb56e7457209b09b, []int{2}
+}
+func (m *FlowTable) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_FlowTable.Unmarshal(m, b)
+}
+func (m *FlowTable) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_FlowTable.Marshal(b, m, deterministic)
+}
+func (dst *FlowTable) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_FlowTable.Merge(dst, src)
+}
+func (m *FlowTable) XXX_Size() int {
+ return xxx_messageInfo_FlowTable.Size(m)
+}
+func (m *FlowTable) XXX_DiscardUnknown() {
+ xxx_messageInfo_FlowTable.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_FlowTable proto.InternalMessageInfo
+
+func (m *FlowTable) GetPort() int32 {
+ if m != nil {
+ return m.Port
+ }
+ return 0
+}
+
+func (m *FlowTable) GetFlows() []*openflow_13.OfpFlowStats {
+ if m != nil {
+ return m.Flows
+ }
+ return nil
+}
+
+type PonSimFrame struct {
+ Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ Payload []byte `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"`
+ OutPort int32 `protobuf:"varint,3,opt,name=out_port,json=outPort,proto3" json:"out_port,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *PonSimFrame) Reset() { *m = PonSimFrame{} }
+func (m *PonSimFrame) String() string { return proto.CompactTextString(m) }
+func (*PonSimFrame) ProtoMessage() {}
+func (*PonSimFrame) Descriptor() ([]byte, []int) {
+ return fileDescriptor_ponsim_bb56e7457209b09b, []int{3}
+}
+func (m *PonSimFrame) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_PonSimFrame.Unmarshal(m, b)
+}
+func (m *PonSimFrame) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_PonSimFrame.Marshal(b, m, deterministic)
+}
+func (dst *PonSimFrame) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_PonSimFrame.Merge(dst, src)
+}
+func (m *PonSimFrame) XXX_Size() int {
+ return xxx_messageInfo_PonSimFrame.Size(m)
+}
+func (m *PonSimFrame) XXX_DiscardUnknown() {
+ xxx_messageInfo_PonSimFrame.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_PonSimFrame proto.InternalMessageInfo
+
+func (m *PonSimFrame) GetId() string {
+ if m != nil {
+ return m.Id
+ }
+ return ""
+}
+
+func (m *PonSimFrame) GetPayload() []byte {
+ if m != nil {
+ return m.Payload
+ }
+ return nil
+}
+
+func (m *PonSimFrame) GetOutPort() int32 {
+ if m != nil {
+ return m.OutPort
+ }
+ return 0
+}
+
+type PonSimPacketCounter struct {
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ Value int64 `protobuf:"varint,2,opt,name=value,proto3" json:"value,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *PonSimPacketCounter) Reset() { *m = PonSimPacketCounter{} }
+func (m *PonSimPacketCounter) String() string { return proto.CompactTextString(m) }
+func (*PonSimPacketCounter) ProtoMessage() {}
+func (*PonSimPacketCounter) Descriptor() ([]byte, []int) {
+ return fileDescriptor_ponsim_bb56e7457209b09b, []int{4}
+}
+func (m *PonSimPacketCounter) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_PonSimPacketCounter.Unmarshal(m, b)
+}
+func (m *PonSimPacketCounter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_PonSimPacketCounter.Marshal(b, m, deterministic)
+}
+func (dst *PonSimPacketCounter) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_PonSimPacketCounter.Merge(dst, src)
+}
+func (m *PonSimPacketCounter) XXX_Size() int {
+ return xxx_messageInfo_PonSimPacketCounter.Size(m)
+}
+func (m *PonSimPacketCounter) XXX_DiscardUnknown() {
+ xxx_messageInfo_PonSimPacketCounter.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_PonSimPacketCounter proto.InternalMessageInfo
+
+func (m *PonSimPacketCounter) GetName() string {
+ if m != nil {
+ return m.Name
+ }
+ return ""
+}
+
+func (m *PonSimPacketCounter) GetValue() int64 {
+ if m != nil {
+ return m.Value
+ }
+ return 0
+}
+
+type PonSimPortMetrics struct {
+ PortName string `protobuf:"bytes,1,opt,name=port_name,json=portName,proto3" json:"port_name,omitempty"`
+ Packets []*PonSimPacketCounter `protobuf:"bytes,2,rep,name=packets,proto3" json:"packets,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *PonSimPortMetrics) Reset() { *m = PonSimPortMetrics{} }
+func (m *PonSimPortMetrics) String() string { return proto.CompactTextString(m) }
+func (*PonSimPortMetrics) ProtoMessage() {}
+func (*PonSimPortMetrics) Descriptor() ([]byte, []int) {
+ return fileDescriptor_ponsim_bb56e7457209b09b, []int{5}
+}
+func (m *PonSimPortMetrics) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_PonSimPortMetrics.Unmarshal(m, b)
+}
+func (m *PonSimPortMetrics) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_PonSimPortMetrics.Marshal(b, m, deterministic)
+}
+func (dst *PonSimPortMetrics) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_PonSimPortMetrics.Merge(dst, src)
+}
+func (m *PonSimPortMetrics) XXX_Size() int {
+ return xxx_messageInfo_PonSimPortMetrics.Size(m)
+}
+func (m *PonSimPortMetrics) XXX_DiscardUnknown() {
+ xxx_messageInfo_PonSimPortMetrics.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_PonSimPortMetrics proto.InternalMessageInfo
+
+func (m *PonSimPortMetrics) GetPortName() string {
+ if m != nil {
+ return m.PortName
+ }
+ return ""
+}
+
+func (m *PonSimPortMetrics) GetPackets() []*PonSimPacketCounter {
+ if m != nil {
+ return m.Packets
+ }
+ return nil
+}
+
+type PonSimMetrics struct {
+ Device string `protobuf:"bytes,1,opt,name=device,proto3" json:"device,omitempty"`
+ Metrics []*PonSimPortMetrics `protobuf:"bytes,2,rep,name=metrics,proto3" json:"metrics,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *PonSimMetrics) Reset() { *m = PonSimMetrics{} }
+func (m *PonSimMetrics) String() string { return proto.CompactTextString(m) }
+func (*PonSimMetrics) ProtoMessage() {}
+func (*PonSimMetrics) Descriptor() ([]byte, []int) {
+ return fileDescriptor_ponsim_bb56e7457209b09b, []int{6}
+}
+func (m *PonSimMetrics) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_PonSimMetrics.Unmarshal(m, b)
+}
+func (m *PonSimMetrics) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_PonSimMetrics.Marshal(b, m, deterministic)
+}
+func (dst *PonSimMetrics) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_PonSimMetrics.Merge(dst, src)
+}
+func (m *PonSimMetrics) XXX_Size() int {
+ return xxx_messageInfo_PonSimMetrics.Size(m)
+}
+func (m *PonSimMetrics) XXX_DiscardUnknown() {
+ xxx_messageInfo_PonSimMetrics.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_PonSimMetrics proto.InternalMessageInfo
+
+func (m *PonSimMetrics) GetDevice() string {
+ if m != nil {
+ return m.Device
+ }
+ return ""
+}
+
+func (m *PonSimMetrics) GetMetrics() []*PonSimPortMetrics {
+ if m != nil {
+ return m.Metrics
+ }
+ return nil
+}
+
+type PonSimMetricsRequest struct {
+ Port int32 `protobuf:"varint,1,opt,name=port,proto3" json:"port,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *PonSimMetricsRequest) Reset() { *m = PonSimMetricsRequest{} }
+func (m *PonSimMetricsRequest) String() string { return proto.CompactTextString(m) }
+func (*PonSimMetricsRequest) ProtoMessage() {}
+func (*PonSimMetricsRequest) Descriptor() ([]byte, []int) {
+ return fileDescriptor_ponsim_bb56e7457209b09b, []int{7}
+}
+func (m *PonSimMetricsRequest) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_PonSimMetricsRequest.Unmarshal(m, b)
+}
+func (m *PonSimMetricsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_PonSimMetricsRequest.Marshal(b, m, deterministic)
+}
+func (dst *PonSimMetricsRequest) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_PonSimMetricsRequest.Merge(dst, src)
+}
+func (m *PonSimMetricsRequest) XXX_Size() int {
+ return xxx_messageInfo_PonSimMetricsRequest.Size(m)
+}
+func (m *PonSimMetricsRequest) XXX_DiscardUnknown() {
+ xxx_messageInfo_PonSimMetricsRequest.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_PonSimMetricsRequest proto.InternalMessageInfo
+
+func (m *PonSimMetricsRequest) GetPort() int32 {
+ if m != nil {
+ return m.Port
+ }
+ return 0
+}
+
+func init() {
+ proto.RegisterType((*PonSimOnuDeviceInfo)(nil), "voltha.PonSimOnuDeviceInfo")
+ proto.RegisterType((*PonSimDeviceInfo)(nil), "voltha.PonSimDeviceInfo")
+ proto.RegisterType((*FlowTable)(nil), "voltha.FlowTable")
+ proto.RegisterType((*PonSimFrame)(nil), "voltha.PonSimFrame")
+ proto.RegisterType((*PonSimPacketCounter)(nil), "voltha.PonSimPacketCounter")
+ proto.RegisterType((*PonSimPortMetrics)(nil), "voltha.PonSimPortMetrics")
+ proto.RegisterType((*PonSimMetrics)(nil), "voltha.PonSimMetrics")
+ proto.RegisterType((*PonSimMetricsRequest)(nil), "voltha.PonSimMetricsRequest")
+}
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ context.Context
+var _ grpc.ClientConn
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+const _ = grpc.SupportPackageIsVersion4
+
+// PonSimClient is the client API for PonSim service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
+type PonSimClient interface {
+ SendFrame(ctx context.Context, in *PonSimFrame, opts ...grpc.CallOption) (*empty.Empty, error)
+ ReceiveFrames(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (PonSim_ReceiveFramesClient, error)
+ GetDeviceInfo(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*PonSimDeviceInfo, error)
+ UpdateFlowTable(ctx context.Context, in *FlowTable, opts ...grpc.CallOption) (*empty.Empty, error)
+ GetStats(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*PonSimMetrics, error)
+}
+
+type ponSimClient struct {
+ cc *grpc.ClientConn
+}
+
+func NewPonSimClient(cc *grpc.ClientConn) PonSimClient {
+ return &ponSimClient{cc}
+}
+
+func (c *ponSimClient) SendFrame(ctx context.Context, in *PonSimFrame, opts ...grpc.CallOption) (*empty.Empty, error) {
+ out := new(empty.Empty)
+ err := c.cc.Invoke(ctx, "/voltha.PonSim/SendFrame", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *ponSimClient) ReceiveFrames(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (PonSim_ReceiveFramesClient, error) {
+ stream, err := c.cc.NewStream(ctx, &_PonSim_serviceDesc.Streams[0], "/voltha.PonSim/ReceiveFrames", opts...)
+ if err != nil {
+ return nil, err
+ }
+ x := &ponSimReceiveFramesClient{stream}
+ if err := x.ClientStream.SendMsg(in); err != nil {
+ return nil, err
+ }
+ if err := x.ClientStream.CloseSend(); err != nil {
+ return nil, err
+ }
+ return x, nil
+}
+
+type PonSim_ReceiveFramesClient interface {
+ Recv() (*PonSimFrame, error)
+ grpc.ClientStream
+}
+
+type ponSimReceiveFramesClient struct {
+ grpc.ClientStream
+}
+
+func (x *ponSimReceiveFramesClient) Recv() (*PonSimFrame, error) {
+ m := new(PonSimFrame)
+ if err := x.ClientStream.RecvMsg(m); err != nil {
+ return nil, err
+ }
+ return m, nil
+}
+
+func (c *ponSimClient) GetDeviceInfo(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*PonSimDeviceInfo, error) {
+ out := new(PonSimDeviceInfo)
+ err := c.cc.Invoke(ctx, "/voltha.PonSim/GetDeviceInfo", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *ponSimClient) UpdateFlowTable(ctx context.Context, in *FlowTable, opts ...grpc.CallOption) (*empty.Empty, error) {
+ out := new(empty.Empty)
+ err := c.cc.Invoke(ctx, "/voltha.PonSim/UpdateFlowTable", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *ponSimClient) GetStats(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*PonSimMetrics, error) {
+ out := new(PonSimMetrics)
+ err := c.cc.Invoke(ctx, "/voltha.PonSim/GetStats", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// PonSimServer is the server API for PonSim service.
+type PonSimServer interface {
+ SendFrame(context.Context, *PonSimFrame) (*empty.Empty, error)
+ ReceiveFrames(*empty.Empty, PonSim_ReceiveFramesServer) error
+ GetDeviceInfo(context.Context, *empty.Empty) (*PonSimDeviceInfo, error)
+ UpdateFlowTable(context.Context, *FlowTable) (*empty.Empty, error)
+ GetStats(context.Context, *empty.Empty) (*PonSimMetrics, error)
+}
+
+func RegisterPonSimServer(s *grpc.Server, srv PonSimServer) {
+ s.RegisterService(&_PonSim_serviceDesc, srv)
+}
+
+func _PonSim_SendFrame_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(PonSimFrame)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(PonSimServer).SendFrame(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.PonSim/SendFrame",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(PonSimServer).SendFrame(ctx, req.(*PonSimFrame))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _PonSim_ReceiveFrames_Handler(srv interface{}, stream grpc.ServerStream) error {
+ m := new(empty.Empty)
+ if err := stream.RecvMsg(m); err != nil {
+ return err
+ }
+ return srv.(PonSimServer).ReceiveFrames(m, &ponSimReceiveFramesServer{stream})
+}
+
+type PonSim_ReceiveFramesServer interface {
+ Send(*PonSimFrame) error
+ grpc.ServerStream
+}
+
+type ponSimReceiveFramesServer struct {
+ grpc.ServerStream
+}
+
+func (x *ponSimReceiveFramesServer) Send(m *PonSimFrame) error {
+ return x.ServerStream.SendMsg(m)
+}
+
+func _PonSim_GetDeviceInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(empty.Empty)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(PonSimServer).GetDeviceInfo(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.PonSim/GetDeviceInfo",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(PonSimServer).GetDeviceInfo(ctx, req.(*empty.Empty))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _PonSim_UpdateFlowTable_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(FlowTable)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(PonSimServer).UpdateFlowTable(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.PonSim/UpdateFlowTable",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(PonSimServer).UpdateFlowTable(ctx, req.(*FlowTable))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _PonSim_GetStats_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(empty.Empty)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(PonSimServer).GetStats(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.PonSim/GetStats",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(PonSimServer).GetStats(ctx, req.(*empty.Empty))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+var _PonSim_serviceDesc = grpc.ServiceDesc{
+ ServiceName: "voltha.PonSim",
+ HandlerType: (*PonSimServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "SendFrame",
+ Handler: _PonSim_SendFrame_Handler,
+ },
+ {
+ MethodName: "GetDeviceInfo",
+ Handler: _PonSim_GetDeviceInfo_Handler,
+ },
+ {
+ MethodName: "UpdateFlowTable",
+ Handler: _PonSim_UpdateFlowTable_Handler,
+ },
+ {
+ MethodName: "GetStats",
+ Handler: _PonSim_GetStats_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{
+ {
+ StreamName: "ReceiveFrames",
+ Handler: _PonSim_ReceiveFrames_Handler,
+ ServerStreams: true,
+ },
+ },
+ Metadata: "voltha_protos/ponsim.proto",
+}
+
+func init() { proto.RegisterFile("voltha_protos/ponsim.proto", fileDescriptor_ponsim_bb56e7457209b09b) }
+
+var fileDescriptor_ponsim_bb56e7457209b09b = []byte{
+ // 555 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x7c, 0x94, 0x41, 0x6f, 0xd3, 0x4e,
+ 0x10, 0xc5, 0x93, 0xb4, 0x4d, 0x9b, 0x69, 0xf3, 0xff, 0xd3, 0x6d, 0xa9, 0xd2, 0xf4, 0x40, 0xb4,
+ 0x5c, 0x22, 0x50, 0x1d, 0xda, 0x88, 0x0b, 0x48, 0x80, 0x28, 0xb4, 0xe2, 0x40, 0x89, 0x36, 0xf4,
+ 0x82, 0x10, 0x96, 0x63, 0x4f, 0x52, 0x0b, 0x7b, 0xc7, 0xd8, 0xbb, 0xa9, 0xfa, 0x0d, 0xf9, 0x58,
+ 0xc8, 0xbb, 0x36, 0x89, 0xab, 0x84, 0xdb, 0xee, 0xf8, 0xe5, 0xf7, 0xe6, 0x8d, 0x27, 0x86, 0xee,
+ 0x9c, 0x22, 0x75, 0xeb, 0xb9, 0x49, 0x4a, 0x8a, 0xb2, 0x41, 0x42, 0x32, 0x0b, 0x63, 0xc7, 0xdc,
+ 0x58, 0xd3, 0x3e, 0xeb, 0x9e, 0xcc, 0x88, 0x66, 0x11, 0x0e, 0x4c, 0x75, 0xa2, 0xa7, 0x03, 0x8c,
+ 0x13, 0x75, 0x6f, 0x45, 0xdd, 0x27, 0x55, 0x00, 0x25, 0x28, 0xa7, 0x11, 0xdd, 0xb9, 0x67, 0x43,
+ 0x2b, 0xe0, 0x37, 0x70, 0x30, 0x22, 0x39, 0x0e, 0xe3, 0x2f, 0x52, 0x7f, 0xc0, 0x79, 0xe8, 0xe3,
+ 0x27, 0x39, 0x25, 0x76, 0x0c, 0x3b, 0x5a, 0x86, 0x6e, 0x42, 0xa9, 0xea, 0xd4, 0x7b, 0xf5, 0xfe,
+ 0x96, 0xd8, 0xd6, 0x32, 0x1c, 0x51, 0xaa, 0xd8, 0x53, 0x68, 0x67, 0x98, 0x86, 0x5e, 0xe4, 0x4a,
+ 0x1d, 0x4f, 0x30, 0xed, 0x34, 0x7a, 0xf5, 0x7e, 0x4b, 0xec, 0xd9, 0xe2, 0xb5, 0xa9, 0xf1, 0x1f,
+ 0xf0, 0xc8, 0x62, 0xab, 0x4c, 0xf9, 0x80, 0x29, 0x0b, 0xe6, 0x00, 0x36, 0x49, 0xea, 0xac, 0xd3,
+ 0xe8, 0x6d, 0xf4, 0x77, 0xcf, 0x4f, 0x1c, 0xdb, 0xb5, 0xb3, 0xa2, 0x33, 0x61, 0x84, 0x5c, 0x40,
+ 0xeb, 0x32, 0xa2, 0xbb, 0xaf, 0xde, 0x24, 0x42, 0xc6, 0x60, 0x73, 0x09, 0x6a, 0xce, 0xec, 0x0c,
+ 0xb6, 0xf2, 0xa0, 0x0b, 0xe4, 0x72, 0x74, 0x9a, 0x26, 0xae, 0x39, 0x67, 0xca, 0x53, 0x99, 0xb0,
+ 0x4a, 0x2e, 0x60, 0xd7, 0x1a, 0x5e, 0xa6, 0x5e, 0x8c, 0xec, 0x3f, 0x68, 0x84, 0x81, 0x61, 0xb6,
+ 0x44, 0x23, 0x0c, 0x58, 0x07, 0xb6, 0x13, 0xef, 0x3e, 0x22, 0x2f, 0x30, 0x89, 0xf7, 0x44, 0x79,
+ 0xcd, 0x83, 0x91, 0x56, 0x36, 0xd8, 0x86, 0x0d, 0x46, 0x5a, 0xe5, 0xc1, 0xf8, 0xdb, 0x72, 0xbc,
+ 0x23, 0xcf, 0xff, 0x89, 0xea, 0x82, 0xb4, 0x54, 0x98, 0xe6, 0x1d, 0x4b, 0x2f, 0xc6, 0x82, 0x6e,
+ 0xce, 0xec, 0x10, 0xb6, 0xe6, 0x5e, 0xa4, 0xd1, 0xd0, 0x37, 0x84, 0xbd, 0xf0, 0x19, 0xec, 0x17,
+ 0x00, 0x4a, 0xd5, 0x67, 0x54, 0x69, 0xe8, 0x67, 0xec, 0x04, 0x5a, 0xb9, 0x99, 0xbb, 0xc4, 0xd8,
+ 0xc9, 0x0b, 0xd7, 0x39, 0xe7, 0x65, 0xde, 0x67, 0x6e, 0xb6, 0x66, 0x9c, 0x95, 0x4e, 0x44, 0xa9,
+ 0xe5, 0xdf, 0xa1, 0x6d, 0x9f, 0x97, 0x26, 0x47, 0xd0, 0x0c, 0xcc, 0xd8, 0x0b, 0x87, 0xe2, 0xc6,
+ 0x86, 0xb0, 0x1d, 0x5b, 0x49, 0xc1, 0x3f, 0x7e, 0xc0, 0x5f, 0x34, 0x2a, 0x4a, 0x25, 0x7f, 0x06,
+ 0x87, 0x15, 0xba, 0xc0, 0x5f, 0x1a, 0x33, 0xb5, 0xea, 0xd5, 0x9d, 0xff, 0x6e, 0x40, 0xd3, 0x8a,
+ 0xd9, 0x2b, 0x68, 0x8d, 0x51, 0x06, 0xf6, 0x85, 0x1c, 0x54, 0x7d, 0x4c, 0xb1, 0x7b, 0xe4, 0xd8,
+ 0xf5, 0x77, 0xca, 0xf5, 0x77, 0x3e, 0xe6, 0xeb, 0xcf, 0x6b, 0xec, 0x1d, 0xb4, 0x05, 0xfa, 0x18,
+ 0xce, 0xd1, 0x28, 0x33, 0xb6, 0x46, 0xda, 0x5d, 0xc5, 0xe5, 0xb5, 0x17, 0x75, 0x76, 0x01, 0xed,
+ 0x2b, 0x54, 0x4b, 0x1b, 0xbc, 0x8e, 0xd0, 0xa9, 0x12, 0x16, 0xbf, 0xe0, 0x35, 0xf6, 0x06, 0xfe,
+ 0xbf, 0x49, 0x02, 0x4f, 0xe1, 0x62, 0x5f, 0xf7, 0x4b, 0xf9, 0xdf, 0xd2, 0x3f, 0x62, 0xbc, 0x86,
+ 0x9d, 0x2b, 0x54, 0xe3, 0x7c, 0x51, 0xd7, 0xfa, 0x3f, 0xae, 0xfa, 0x17, 0x33, 0xe6, 0xb5, 0xf7,
+ 0xa7, 0xdf, 0x9e, 0xcf, 0x42, 0x75, 0xab, 0x27, 0x8e, 0x4f, 0xb1, 0xf9, 0xf7, 0xfb, 0x94, 0x06,
+ 0x03, 0xab, 0x3e, 0x2d, 0x3e, 0x0a, 0x33, 0x2a, 0x0a, 0x93, 0xa6, 0xa9, 0x0c, 0xff, 0x04, 0x00,
+ 0x00, 0xff, 0xff, 0x62, 0xcb, 0x74, 0xbe, 0x77, 0x04, 0x00, 0x00,
+}
diff --git a/go/voltha/ponsim.proto b/go/voltha/ponsim.proto
deleted file mode 100644
index d4cbaa2..0000000
--- a/go/voltha/ponsim.proto
+++ /dev/null
@@ -1,67 +0,0 @@
-syntax = "proto3";
-
-option go_package = "github.com/opencord/voltha-protos/go/voltha";
-
-package voltha;
-
-import "google/protobuf/empty.proto";
-import "voltha_protos/openflow_13.proto";
-
-
-message PonSimOnuDeviceInfo {
- int32 uni_port = 1;
- string serial_number = 2;
-}
-
-message PonSimDeviceInfo {
- int32 nni_port = 1;
- repeated PonSimOnuDeviceInfo onus = 2;
-}
-
-message FlowTable {
- int32 port = 1; // Used to address right device
- repeated openflow_13.ofp_flow_stats flows = 2;
-}
-
-message PonSimFrame {
- string id = 1;
- bytes payload = 2;
- int32 out_port = 3;
-}
-
-message PonSimPacketCounter {
- string name = 1;
- int64 value = 2;
-}
-
-message PonSimPortMetrics {
- string port_name = 1;
- repeated PonSimPacketCounter packets = 2;
-}
-
-message PonSimMetrics {
- string device = 1;
- repeated PonSimPortMetrics metrics = 2;
-}
-
-message PonSimMetricsRequest {
- int32 port = 1;
-}
-
-service PonSim {
- rpc SendFrame(PonSimFrame)
- returns (google.protobuf.Empty) {}
-
- rpc ReceiveFrames(google.protobuf.Empty)
- returns (stream PonSimFrame) {}
-
- rpc GetDeviceInfo(google.protobuf.Empty)
- returns(PonSimDeviceInfo) {}
-
- rpc UpdateFlowTable(FlowTable)
- returns(google.protobuf.Empty) {}
-
- rpc GetStats(google.protobuf.Empty)
- returns(PonSimMetrics) {}
-
-}
diff --git a/go/voltha/voltha.pb.go b/go/voltha/voltha.pb.go
new file mode 100644
index 0000000..b0c42b0
--- /dev/null
+++ b/go/voltha/voltha.pb.go
@@ -0,0 +1,4368 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// source: voltha_protos/voltha.proto
+
+package voltha // import "github.com/opencord/voltha-protos/go/voltha"
+
+import proto "github.com/golang/protobuf/proto"
+import fmt "fmt"
+import math "math"
+import empty "github.com/golang/protobuf/ptypes/empty"
+import common "github.com/opencord/voltha-protos/go/common"
+import omci "github.com/opencord/voltha-protos/go/omci"
+import openflow_13 "github.com/opencord/voltha-protos/go/openflow_13"
+import _ "google.golang.org/genproto/googleapis/api/annotations"
+
+import (
+ context "golang.org/x/net/context"
+ grpc "google.golang.org/grpc"
+)
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ = proto.Marshal
+var _ = fmt.Errorf
+var _ = math.Inf
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the proto package it is being compiled against.
+// A compilation error at this line likely means your copy of the
+// proto package needs to be updated.
+const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
+
+// ChildNode from public import voltha_protos/meta.proto
+type ChildNode = common.ChildNode
+
+// Access from public import voltha_protos/meta.proto
+type Access = common.Access
+
+var Access_name = common.Access_name
+var Access_value = common.Access_value
+
+const Access_CONFIG = Access(common.Access_CONFIG)
+const Access_READ_ONLY = Access(common.Access_READ_ONLY)
+const Access_REAL_TIME = Access(common.Access_REAL_TIME)
+
+// child_node from public import voltha_protos/meta.proto
+var E_ChildNode = common.E_ChildNode
+
+// access from public import voltha_protos/meta.proto
+var E_Access = common.E_Access
+
+// ID from public import voltha_protos/common.proto
+type ID = common.ID
+
+// IDs from public import voltha_protos/common.proto
+type IDs = common.IDs
+
+// LogLevel from public import voltha_protos/common.proto
+type LogLevel = common.LogLevel
+
+// AdminState from public import voltha_protos/common.proto
+type AdminState = common.AdminState
+
+// OperStatus from public import voltha_protos/common.proto
+type OperStatus = common.OperStatus
+
+// ConnectStatus from public import voltha_protos/common.proto
+type ConnectStatus = common.ConnectStatus
+
+// OperationResp from public import voltha_protos/common.proto
+type OperationResp = common.OperationResp
+
+// TestModeKeys from public import voltha_protos/common.proto
+type TestModeKeys = common.TestModeKeys
+
+var TestModeKeys_name = common.TestModeKeys_name
+var TestModeKeys_value = common.TestModeKeys_value
+
+const TestModeKeys_api_test = TestModeKeys(common.TestModeKeys_api_test)
+
+// LogLevel from public import voltha_protos/common.proto
+type LogLevel_LogLevel = common.LogLevel_LogLevel
+
+var LogLevel_LogLevel_name = common.LogLevel_LogLevel_name
+var LogLevel_LogLevel_value = common.LogLevel_LogLevel_value
+
+const LogLevel_DEBUG = LogLevel_LogLevel(common.LogLevel_DEBUG)
+const LogLevel_INFO = LogLevel_LogLevel(common.LogLevel_INFO)
+const LogLevel_WARNING = LogLevel_LogLevel(common.LogLevel_WARNING)
+const LogLevel_ERROR = LogLevel_LogLevel(common.LogLevel_ERROR)
+const LogLevel_CRITICAL = LogLevel_LogLevel(common.LogLevel_CRITICAL)
+const LogLevel_FATAL = LogLevel_LogLevel(common.LogLevel_FATAL)
+
+// AdminState from public import voltha_protos/common.proto
+type AdminState_AdminState = common.AdminState_AdminState
+
+var AdminState_AdminState_name = common.AdminState_AdminState_name
+var AdminState_AdminState_value = common.AdminState_AdminState_value
+
+const AdminState_UNKNOWN = AdminState_AdminState(common.AdminState_UNKNOWN)
+const AdminState_PREPROVISIONED = AdminState_AdminState(common.AdminState_PREPROVISIONED)
+const AdminState_ENABLED = AdminState_AdminState(common.AdminState_ENABLED)
+const AdminState_DISABLED = AdminState_AdminState(common.AdminState_DISABLED)
+const AdminState_DOWNLOADING_IMAGE = AdminState_AdminState(common.AdminState_DOWNLOADING_IMAGE)
+const AdminState_DELETED = AdminState_AdminState(common.AdminState_DELETED)
+
+// OperStatus from public import voltha_protos/common.proto
+type OperStatus_OperStatus = common.OperStatus_OperStatus
+
+var OperStatus_OperStatus_name = common.OperStatus_OperStatus_name
+var OperStatus_OperStatus_value = common.OperStatus_OperStatus_value
+
+const OperStatus_UNKNOWN = OperStatus_OperStatus(common.OperStatus_UNKNOWN)
+const OperStatus_DISCOVERED = OperStatus_OperStatus(common.OperStatus_DISCOVERED)
+const OperStatus_ACTIVATING = OperStatus_OperStatus(common.OperStatus_ACTIVATING)
+const OperStatus_TESTING = OperStatus_OperStatus(common.OperStatus_TESTING)
+const OperStatus_ACTIVE = OperStatus_OperStatus(common.OperStatus_ACTIVE)
+const OperStatus_FAILED = OperStatus_OperStatus(common.OperStatus_FAILED)
+
+// ConnectStatus from public import voltha_protos/common.proto
+type ConnectStatus_ConnectStatus = common.ConnectStatus_ConnectStatus
+
+var ConnectStatus_ConnectStatus_name = common.ConnectStatus_ConnectStatus_name
+var ConnectStatus_ConnectStatus_value = common.ConnectStatus_ConnectStatus_value
+
+const ConnectStatus_UNKNOWN = ConnectStatus_ConnectStatus(common.ConnectStatus_UNKNOWN)
+const ConnectStatus_UNREACHABLE = ConnectStatus_ConnectStatus(common.ConnectStatus_UNREACHABLE)
+const ConnectStatus_REACHABLE = ConnectStatus_ConnectStatus(common.ConnectStatus_REACHABLE)
+
+// OperationReturnCode from public import voltha_protos/common.proto
+type OperationResp_OperationReturnCode = common.OperationResp_OperationReturnCode
+
+var OperationResp_OperationReturnCode_name = common.OperationResp_OperationReturnCode_name
+var OperationResp_OperationReturnCode_value = common.OperationResp_OperationReturnCode_value
+
+const OperationResp_OPERATION_SUCCESS = OperationResp_OperationReturnCode(common.OperationResp_OPERATION_SUCCESS)
+const OperationResp_OPERATION_FAILURE = OperationResp_OperationReturnCode(common.OperationResp_OPERATION_FAILURE)
+const OperationResp_OPERATION_UNSUPPORTED = OperationResp_OperationReturnCode(common.OperationResp_OPERATION_UNSUPPORTED)
+
+// Ignoring public import of HealthStatus from voltha_protos/health.proto
+
+// Ignoring public import of HealthState from voltha_protos/health.proto
+
+// Ignoring public import of LogicalPortId from voltha_protos/logical_device.proto
+
+// Ignoring public import of LogicalPort from voltha_protos/logical_device.proto
+
+// Ignoring public import of LogicalPorts from voltha_protos/logical_device.proto
+
+// Ignoring public import of LogicalDevice from voltha_protos/logical_device.proto
+
+// Ignoring public import of LogicalDevices from voltha_protos/logical_device.proto
+
+// Ignoring public import of DeviceType from voltha_protos/device.proto
+
+// Ignoring public import of DeviceTypes from voltha_protos/device.proto
+
+// Ignoring public import of PmConfig from voltha_protos/device.proto
+
+// Ignoring public import of PmGroupConfig from voltha_protos/device.proto
+
+// Ignoring public import of PmConfigs from voltha_protos/device.proto
+
+// Ignoring public import of Image from voltha_protos/device.proto
+
+// Ignoring public import of Images from voltha_protos/device.proto
+
+// Ignoring public import of ImageDownload from voltha_protos/device.proto
+
+// Ignoring public import of ImageDownloads from voltha_protos/device.proto
+
+// Ignoring public import of Port from voltha_protos/device.proto
+
+// Ignoring public import of PeerPort from voltha_protos/device.proto
+
+// Ignoring public import of Ports from voltha_protos/device.proto
+
+// Ignoring public import of Device from voltha_protos/device.proto
+
+// Ignoring public import of ProxyAddress from voltha_protos/device.proto
+
+// Ignoring public import of Devices from voltha_protos/device.proto
+
+// Ignoring public import of SimulateAlarmRequest from voltha_protos/device.proto
+
+// Ignoring public import of PmType from voltha_protos/device.proto
+
+// Ignoring public import of ImageDownloadState from voltha_protos/device.proto
+
+// Ignoring public import of ImageDownloadFailureReason from voltha_protos/device.proto
+
+// Ignoring public import of ImageActivateState from voltha_protos/device.proto
+
+// Ignoring public import of PortType from voltha_protos/device.proto
+
+// Ignoring public import of OperationType from voltha_protos/device.proto
+
+// Ignoring public import of AdapterConfig from voltha_protos/adapter.proto
+
+// Ignoring public import of Adapter from voltha_protos/adapter.proto
+
+// Ignoring public import of Adapters from voltha_protos/adapter.proto
+
+// ofp_header from public import voltha_protos/openflow_13.proto
+type OfpHeader = openflow_13.OfpHeader
+
+// ofp_hello_elem_header from public import voltha_protos/openflow_13.proto
+type OfpHelloElemHeader = openflow_13.OfpHelloElemHeader
+type OfpHelloElemHeader_Versionbitmap = openflow_13.OfpHelloElemHeader_Versionbitmap
+
+// ofp_hello_elem_versionbitmap from public import voltha_protos/openflow_13.proto
+type OfpHelloElemVersionbitmap = openflow_13.OfpHelloElemVersionbitmap
+
+// ofp_hello from public import voltha_protos/openflow_13.proto
+type OfpHello = openflow_13.OfpHello
+
+// ofp_switch_config from public import voltha_protos/openflow_13.proto
+type OfpSwitchConfig = openflow_13.OfpSwitchConfig
+
+// ofp_table_mod from public import voltha_protos/openflow_13.proto
+type OfpTableMod = openflow_13.OfpTableMod
+
+// ofp_port from public import voltha_protos/openflow_13.proto
+type OfpPort = openflow_13.OfpPort
+
+// ofp_switch_features from public import voltha_protos/openflow_13.proto
+type OfpSwitchFeatures = openflow_13.OfpSwitchFeatures
+
+// ofp_port_status from public import voltha_protos/openflow_13.proto
+type OfpPortStatus = openflow_13.OfpPortStatus
+
+// ofp_port_mod from public import voltha_protos/openflow_13.proto
+type OfpPortMod = openflow_13.OfpPortMod
+
+// ofp_match from public import voltha_protos/openflow_13.proto
+type OfpMatch = openflow_13.OfpMatch
+
+// ofp_oxm_field from public import voltha_protos/openflow_13.proto
+type OfpOxmField = openflow_13.OfpOxmField
+type OfpOxmField_OfbField = openflow_13.OfpOxmField_OfbField
+type OfpOxmField_ExperimenterField = openflow_13.OfpOxmField_ExperimenterField
+
+// ofp_oxm_ofb_field from public import voltha_protos/openflow_13.proto
+type OfpOxmOfbField = openflow_13.OfpOxmOfbField
+type OfpOxmOfbField_Port = openflow_13.OfpOxmOfbField_Port
+type OfpOxmOfbField_PhysicalPort = openflow_13.OfpOxmOfbField_PhysicalPort
+type OfpOxmOfbField_TableMetadata = openflow_13.OfpOxmOfbField_TableMetadata
+type OfpOxmOfbField_EthDst = openflow_13.OfpOxmOfbField_EthDst
+type OfpOxmOfbField_EthSrc = openflow_13.OfpOxmOfbField_EthSrc
+type OfpOxmOfbField_EthType = openflow_13.OfpOxmOfbField_EthType
+type OfpOxmOfbField_VlanVid = openflow_13.OfpOxmOfbField_VlanVid
+type OfpOxmOfbField_VlanPcp = openflow_13.OfpOxmOfbField_VlanPcp
+type OfpOxmOfbField_IpDscp = openflow_13.OfpOxmOfbField_IpDscp
+type OfpOxmOfbField_IpEcn = openflow_13.OfpOxmOfbField_IpEcn
+type OfpOxmOfbField_IpProto = openflow_13.OfpOxmOfbField_IpProto
+type OfpOxmOfbField_Ipv4Src = openflow_13.OfpOxmOfbField_Ipv4Src
+type OfpOxmOfbField_Ipv4Dst = openflow_13.OfpOxmOfbField_Ipv4Dst
+type OfpOxmOfbField_TcpSrc = openflow_13.OfpOxmOfbField_TcpSrc
+type OfpOxmOfbField_TcpDst = openflow_13.OfpOxmOfbField_TcpDst
+type OfpOxmOfbField_UdpSrc = openflow_13.OfpOxmOfbField_UdpSrc
+type OfpOxmOfbField_UdpDst = openflow_13.OfpOxmOfbField_UdpDst
+type OfpOxmOfbField_SctpSrc = openflow_13.OfpOxmOfbField_SctpSrc
+type OfpOxmOfbField_SctpDst = openflow_13.OfpOxmOfbField_SctpDst
+type OfpOxmOfbField_Icmpv4Type = openflow_13.OfpOxmOfbField_Icmpv4Type
+type OfpOxmOfbField_Icmpv4Code = openflow_13.OfpOxmOfbField_Icmpv4Code
+type OfpOxmOfbField_ArpOp = openflow_13.OfpOxmOfbField_ArpOp
+type OfpOxmOfbField_ArpSpa = openflow_13.OfpOxmOfbField_ArpSpa
+type OfpOxmOfbField_ArpTpa = openflow_13.OfpOxmOfbField_ArpTpa
+type OfpOxmOfbField_ArpSha = openflow_13.OfpOxmOfbField_ArpSha
+type OfpOxmOfbField_ArpTha = openflow_13.OfpOxmOfbField_ArpTha
+type OfpOxmOfbField_Ipv6Src = openflow_13.OfpOxmOfbField_Ipv6Src
+type OfpOxmOfbField_Ipv6Dst = openflow_13.OfpOxmOfbField_Ipv6Dst
+type OfpOxmOfbField_Ipv6Flabel = openflow_13.OfpOxmOfbField_Ipv6Flabel
+type OfpOxmOfbField_Icmpv6Type = openflow_13.OfpOxmOfbField_Icmpv6Type
+type OfpOxmOfbField_Icmpv6Code = openflow_13.OfpOxmOfbField_Icmpv6Code
+type OfpOxmOfbField_Ipv6NdTarget = openflow_13.OfpOxmOfbField_Ipv6NdTarget
+type OfpOxmOfbField_Ipv6NdSsl = openflow_13.OfpOxmOfbField_Ipv6NdSsl
+type OfpOxmOfbField_Ipv6NdTll = openflow_13.OfpOxmOfbField_Ipv6NdTll
+type OfpOxmOfbField_MplsLabel = openflow_13.OfpOxmOfbField_MplsLabel
+type OfpOxmOfbField_MplsTc = openflow_13.OfpOxmOfbField_MplsTc
+type OfpOxmOfbField_MplsBos = openflow_13.OfpOxmOfbField_MplsBos
+type OfpOxmOfbField_PbbIsid = openflow_13.OfpOxmOfbField_PbbIsid
+type OfpOxmOfbField_TunnelId = openflow_13.OfpOxmOfbField_TunnelId
+type OfpOxmOfbField_Ipv6Exthdr = openflow_13.OfpOxmOfbField_Ipv6Exthdr
+type OfpOxmOfbField_TableMetadataMask = openflow_13.OfpOxmOfbField_TableMetadataMask
+type OfpOxmOfbField_EthDstMask = openflow_13.OfpOxmOfbField_EthDstMask
+type OfpOxmOfbField_EthSrcMask = openflow_13.OfpOxmOfbField_EthSrcMask
+type OfpOxmOfbField_VlanVidMask = openflow_13.OfpOxmOfbField_VlanVidMask
+type OfpOxmOfbField_Ipv4SrcMask = openflow_13.OfpOxmOfbField_Ipv4SrcMask
+type OfpOxmOfbField_Ipv4DstMask = openflow_13.OfpOxmOfbField_Ipv4DstMask
+type OfpOxmOfbField_ArpSpaMask = openflow_13.OfpOxmOfbField_ArpSpaMask
+type OfpOxmOfbField_ArpTpaMask = openflow_13.OfpOxmOfbField_ArpTpaMask
+type OfpOxmOfbField_Ipv6SrcMask = openflow_13.OfpOxmOfbField_Ipv6SrcMask
+type OfpOxmOfbField_Ipv6DstMask = openflow_13.OfpOxmOfbField_Ipv6DstMask
+type OfpOxmOfbField_Ipv6FlabelMask = openflow_13.OfpOxmOfbField_Ipv6FlabelMask
+type OfpOxmOfbField_PbbIsidMask = openflow_13.OfpOxmOfbField_PbbIsidMask
+type OfpOxmOfbField_TunnelIdMask = openflow_13.OfpOxmOfbField_TunnelIdMask
+type OfpOxmOfbField_Ipv6ExthdrMask = openflow_13.OfpOxmOfbField_Ipv6ExthdrMask
+
+// ofp_oxm_experimenter_field from public import voltha_protos/openflow_13.proto
+type OfpOxmExperimenterField = openflow_13.OfpOxmExperimenterField
+
+// ofp_action from public import voltha_protos/openflow_13.proto
+type OfpAction = openflow_13.OfpAction
+type OfpAction_Output = openflow_13.OfpAction_Output
+type OfpAction_MplsTtl = openflow_13.OfpAction_MplsTtl
+type OfpAction_Push = openflow_13.OfpAction_Push
+type OfpAction_PopMpls = openflow_13.OfpAction_PopMpls
+type OfpAction_Group = openflow_13.OfpAction_Group
+type OfpAction_NwTtl = openflow_13.OfpAction_NwTtl
+type OfpAction_SetField = openflow_13.OfpAction_SetField
+type OfpAction_Experimenter = openflow_13.OfpAction_Experimenter
+
+// ofp_action_output from public import voltha_protos/openflow_13.proto
+type OfpActionOutput = openflow_13.OfpActionOutput
+
+// ofp_action_mpls_ttl from public import voltha_protos/openflow_13.proto
+type OfpActionMplsTtl = openflow_13.OfpActionMplsTtl
+
+// ofp_action_push from public import voltha_protos/openflow_13.proto
+type OfpActionPush = openflow_13.OfpActionPush
+
+// ofp_action_pop_mpls from public import voltha_protos/openflow_13.proto
+type OfpActionPopMpls = openflow_13.OfpActionPopMpls
+
+// ofp_action_group from public import voltha_protos/openflow_13.proto
+type OfpActionGroup = openflow_13.OfpActionGroup
+
+// ofp_action_nw_ttl from public import voltha_protos/openflow_13.proto
+type OfpActionNwTtl = openflow_13.OfpActionNwTtl
+
+// ofp_action_set_field from public import voltha_protos/openflow_13.proto
+type OfpActionSetField = openflow_13.OfpActionSetField
+
+// ofp_action_experimenter from public import voltha_protos/openflow_13.proto
+type OfpActionExperimenter = openflow_13.OfpActionExperimenter
+
+// ofp_instruction from public import voltha_protos/openflow_13.proto
+type OfpInstruction = openflow_13.OfpInstruction
+type OfpInstruction_GotoTable = openflow_13.OfpInstruction_GotoTable
+type OfpInstruction_WriteMetadata = openflow_13.OfpInstruction_WriteMetadata
+type OfpInstruction_Actions = openflow_13.OfpInstruction_Actions
+type OfpInstruction_Meter = openflow_13.OfpInstruction_Meter
+type OfpInstruction_Experimenter = openflow_13.OfpInstruction_Experimenter
+
+// ofp_instruction_goto_table from public import voltha_protos/openflow_13.proto
+type OfpInstructionGotoTable = openflow_13.OfpInstructionGotoTable
+
+// ofp_instruction_write_metadata from public import voltha_protos/openflow_13.proto
+type OfpInstructionWriteMetadata = openflow_13.OfpInstructionWriteMetadata
+
+// ofp_instruction_actions from public import voltha_protos/openflow_13.proto
+type OfpInstructionActions = openflow_13.OfpInstructionActions
+
+// ofp_instruction_meter from public import voltha_protos/openflow_13.proto
+type OfpInstructionMeter = openflow_13.OfpInstructionMeter
+
+// ofp_instruction_experimenter from public import voltha_protos/openflow_13.proto
+type OfpInstructionExperimenter = openflow_13.OfpInstructionExperimenter
+
+// ofp_flow_mod from public import voltha_protos/openflow_13.proto
+type OfpFlowMod = openflow_13.OfpFlowMod
+
+// ofp_bucket from public import voltha_protos/openflow_13.proto
+type OfpBucket = openflow_13.OfpBucket
+
+// ofp_group_mod from public import voltha_protos/openflow_13.proto
+type OfpGroupMod = openflow_13.OfpGroupMod
+
+// ofp_packet_out from public import voltha_protos/openflow_13.proto
+type OfpPacketOut = openflow_13.OfpPacketOut
+
+// ofp_packet_in from public import voltha_protos/openflow_13.proto
+type OfpPacketIn = openflow_13.OfpPacketIn
+
+// ofp_flow_removed from public import voltha_protos/openflow_13.proto
+type OfpFlowRemoved = openflow_13.OfpFlowRemoved
+
+// ofp_meter_band_header from public import voltha_protos/openflow_13.proto
+type OfpMeterBandHeader = openflow_13.OfpMeterBandHeader
+type OfpMeterBandHeader_Drop = openflow_13.OfpMeterBandHeader_Drop
+type OfpMeterBandHeader_DscpRemark = openflow_13.OfpMeterBandHeader_DscpRemark
+type OfpMeterBandHeader_Experimenter = openflow_13.OfpMeterBandHeader_Experimenter
+
+// ofp_meter_band_drop from public import voltha_protos/openflow_13.proto
+type OfpMeterBandDrop = openflow_13.OfpMeterBandDrop
+
+// ofp_meter_band_dscp_remark from public import voltha_protos/openflow_13.proto
+type OfpMeterBandDscpRemark = openflow_13.OfpMeterBandDscpRemark
+
+// ofp_meter_band_experimenter from public import voltha_protos/openflow_13.proto
+type OfpMeterBandExperimenter = openflow_13.OfpMeterBandExperimenter
+
+// ofp_meter_mod from public import voltha_protos/openflow_13.proto
+type OfpMeterMod = openflow_13.OfpMeterMod
+
+// ofp_error_msg from public import voltha_protos/openflow_13.proto
+type OfpErrorMsg = openflow_13.OfpErrorMsg
+
+// ofp_error_experimenter_msg from public import voltha_protos/openflow_13.proto
+type OfpErrorExperimenterMsg = openflow_13.OfpErrorExperimenterMsg
+
+// ofp_multipart_request from public import voltha_protos/openflow_13.proto
+type OfpMultipartRequest = openflow_13.OfpMultipartRequest
+
+// ofp_multipart_reply from public import voltha_protos/openflow_13.proto
+type OfpMultipartReply = openflow_13.OfpMultipartReply
+
+// ofp_desc from public import voltha_protos/openflow_13.proto
+type OfpDesc = openflow_13.OfpDesc
+
+// ofp_flow_stats_request from public import voltha_protos/openflow_13.proto
+type OfpFlowStatsRequest = openflow_13.OfpFlowStatsRequest
+
+// ofp_flow_stats from public import voltha_protos/openflow_13.proto
+type OfpFlowStats = openflow_13.OfpFlowStats
+
+// ofp_aggregate_stats_request from public import voltha_protos/openflow_13.proto
+type OfpAggregateStatsRequest = openflow_13.OfpAggregateStatsRequest
+
+// ofp_aggregate_stats_reply from public import voltha_protos/openflow_13.proto
+type OfpAggregateStatsReply = openflow_13.OfpAggregateStatsReply
+
+// ofp_table_feature_property from public import voltha_protos/openflow_13.proto
+type OfpTableFeatureProperty = openflow_13.OfpTableFeatureProperty
+type OfpTableFeatureProperty_Instructions = openflow_13.OfpTableFeatureProperty_Instructions
+type OfpTableFeatureProperty_NextTables = openflow_13.OfpTableFeatureProperty_NextTables
+type OfpTableFeatureProperty_Actions = openflow_13.OfpTableFeatureProperty_Actions
+type OfpTableFeatureProperty_Oxm = openflow_13.OfpTableFeatureProperty_Oxm
+type OfpTableFeatureProperty_Experimenter = openflow_13.OfpTableFeatureProperty_Experimenter
+
+// ofp_table_feature_prop_instructions from public import voltha_protos/openflow_13.proto
+type OfpTableFeaturePropInstructions = openflow_13.OfpTableFeaturePropInstructions
+
+// ofp_table_feature_prop_next_tables from public import voltha_protos/openflow_13.proto
+type OfpTableFeaturePropNextTables = openflow_13.OfpTableFeaturePropNextTables
+
+// ofp_table_feature_prop_actions from public import voltha_protos/openflow_13.proto
+type OfpTableFeaturePropActions = openflow_13.OfpTableFeaturePropActions
+
+// ofp_table_feature_prop_oxm from public import voltha_protos/openflow_13.proto
+type OfpTableFeaturePropOxm = openflow_13.OfpTableFeaturePropOxm
+
+// ofp_table_feature_prop_experimenter from public import voltha_protos/openflow_13.proto
+type OfpTableFeaturePropExperimenter = openflow_13.OfpTableFeaturePropExperimenter
+
+// ofp_table_features from public import voltha_protos/openflow_13.proto
+type OfpTableFeatures = openflow_13.OfpTableFeatures
+
+// ofp_table_stats from public import voltha_protos/openflow_13.proto
+type OfpTableStats = openflow_13.OfpTableStats
+
+// ofp_port_stats_request from public import voltha_protos/openflow_13.proto
+type OfpPortStatsRequest = openflow_13.OfpPortStatsRequest
+
+// ofp_port_stats from public import voltha_protos/openflow_13.proto
+type OfpPortStats = openflow_13.OfpPortStats
+
+// ofp_group_stats_request from public import voltha_protos/openflow_13.proto
+type OfpGroupStatsRequest = openflow_13.OfpGroupStatsRequest
+
+// ofp_bucket_counter from public import voltha_protos/openflow_13.proto
+type OfpBucketCounter = openflow_13.OfpBucketCounter
+
+// ofp_group_stats from public import voltha_protos/openflow_13.proto
+type OfpGroupStats = openflow_13.OfpGroupStats
+
+// ofp_group_desc from public import voltha_protos/openflow_13.proto
+type OfpGroupDesc = openflow_13.OfpGroupDesc
+
+// ofp_group_entry from public import voltha_protos/openflow_13.proto
+type OfpGroupEntry = openflow_13.OfpGroupEntry
+
+// ofp_group_features from public import voltha_protos/openflow_13.proto
+type OfpGroupFeatures = openflow_13.OfpGroupFeatures
+
+// ofp_meter_multipart_request from public import voltha_protos/openflow_13.proto
+type OfpMeterMultipartRequest = openflow_13.OfpMeterMultipartRequest
+
+// ofp_meter_band_stats from public import voltha_protos/openflow_13.proto
+type OfpMeterBandStats = openflow_13.OfpMeterBandStats
+
+// ofp_meter_stats from public import voltha_protos/openflow_13.proto
+type OfpMeterStats = openflow_13.OfpMeterStats
+
+// ofp_meter_config from public import voltha_protos/openflow_13.proto
+type OfpMeterConfig = openflow_13.OfpMeterConfig
+
+// ofp_meter_features from public import voltha_protos/openflow_13.proto
+type OfpMeterFeatures = openflow_13.OfpMeterFeatures
+
+// ofp_experimenter_multipart_header from public import voltha_protos/openflow_13.proto
+type OfpExperimenterMultipartHeader = openflow_13.OfpExperimenterMultipartHeader
+
+// ofp_experimenter_header from public import voltha_protos/openflow_13.proto
+type OfpExperimenterHeader = openflow_13.OfpExperimenterHeader
+
+// ofp_queue_prop_header from public import voltha_protos/openflow_13.proto
+type OfpQueuePropHeader = openflow_13.OfpQueuePropHeader
+
+// ofp_queue_prop_min_rate from public import voltha_protos/openflow_13.proto
+type OfpQueuePropMinRate = openflow_13.OfpQueuePropMinRate
+
+// ofp_queue_prop_max_rate from public import voltha_protos/openflow_13.proto
+type OfpQueuePropMaxRate = openflow_13.OfpQueuePropMaxRate
+
+// ofp_queue_prop_experimenter from public import voltha_protos/openflow_13.proto
+type OfpQueuePropExperimenter = openflow_13.OfpQueuePropExperimenter
+
+// ofp_packet_queue from public import voltha_protos/openflow_13.proto
+type OfpPacketQueue = openflow_13.OfpPacketQueue
+
+// ofp_queue_get_config_request from public import voltha_protos/openflow_13.proto
+type OfpQueueGetConfigRequest = openflow_13.OfpQueueGetConfigRequest
+
+// ofp_queue_get_config_reply from public import voltha_protos/openflow_13.proto
+type OfpQueueGetConfigReply = openflow_13.OfpQueueGetConfigReply
+
+// ofp_action_set_queue from public import voltha_protos/openflow_13.proto
+type OfpActionSetQueue = openflow_13.OfpActionSetQueue
+
+// ofp_queue_stats_request from public import voltha_protos/openflow_13.proto
+type OfpQueueStatsRequest = openflow_13.OfpQueueStatsRequest
+
+// ofp_queue_stats from public import voltha_protos/openflow_13.proto
+type OfpQueueStats = openflow_13.OfpQueueStats
+
+// ofp_role_request from public import voltha_protos/openflow_13.proto
+type OfpRoleRequest = openflow_13.OfpRoleRequest
+
+// ofp_async_config from public import voltha_protos/openflow_13.proto
+type OfpAsyncConfig = openflow_13.OfpAsyncConfig
+
+// MeterModUpdate from public import voltha_protos/openflow_13.proto
+type MeterModUpdate = openflow_13.MeterModUpdate
+
+// MeterStatsReply from public import voltha_protos/openflow_13.proto
+type MeterStatsReply = openflow_13.MeterStatsReply
+
+// FlowTableUpdate from public import voltha_protos/openflow_13.proto
+type FlowTableUpdate = openflow_13.FlowTableUpdate
+
+// FlowGroupTableUpdate from public import voltha_protos/openflow_13.proto
+type FlowGroupTableUpdate = openflow_13.FlowGroupTableUpdate
+
+// Flows from public import voltha_protos/openflow_13.proto
+type Flows = openflow_13.Flows
+
+// Meters from public import voltha_protos/openflow_13.proto
+type Meters = openflow_13.Meters
+
+// FlowGroups from public import voltha_protos/openflow_13.proto
+type FlowGroups = openflow_13.FlowGroups
+
+// FlowChanges from public import voltha_protos/openflow_13.proto
+type FlowChanges = openflow_13.FlowChanges
+
+// FlowGroupChanges from public import voltha_protos/openflow_13.proto
+type FlowGroupChanges = openflow_13.FlowGroupChanges
+
+// PacketIn from public import voltha_protos/openflow_13.proto
+type PacketIn = openflow_13.PacketIn
+
+// PacketOut from public import voltha_protos/openflow_13.proto
+type PacketOut = openflow_13.PacketOut
+
+// ChangeEvent from public import voltha_protos/openflow_13.proto
+type ChangeEvent = openflow_13.ChangeEvent
+type ChangeEvent_PortStatus = openflow_13.ChangeEvent_PortStatus
+
+// ofp_port_no from public import voltha_protos/openflow_13.proto
+type OfpPortNo = openflow_13.OfpPortNo
+
+var OfpPortNo_name = openflow_13.OfpPortNo_name
+var OfpPortNo_value = openflow_13.OfpPortNo_value
+
+const OfpPortNo_OFPP_INVALID = OfpPortNo(openflow_13.OfpPortNo_OFPP_INVALID)
+const OfpPortNo_OFPP_MAX = OfpPortNo(openflow_13.OfpPortNo_OFPP_MAX)
+const OfpPortNo_OFPP_IN_PORT = OfpPortNo(openflow_13.OfpPortNo_OFPP_IN_PORT)
+const OfpPortNo_OFPP_TABLE = OfpPortNo(openflow_13.OfpPortNo_OFPP_TABLE)
+const OfpPortNo_OFPP_NORMAL = OfpPortNo(openflow_13.OfpPortNo_OFPP_NORMAL)
+const OfpPortNo_OFPP_FLOOD = OfpPortNo(openflow_13.OfpPortNo_OFPP_FLOOD)
+const OfpPortNo_OFPP_ALL = OfpPortNo(openflow_13.OfpPortNo_OFPP_ALL)
+const OfpPortNo_OFPP_CONTROLLER = OfpPortNo(openflow_13.OfpPortNo_OFPP_CONTROLLER)
+const OfpPortNo_OFPP_LOCAL = OfpPortNo(openflow_13.OfpPortNo_OFPP_LOCAL)
+const OfpPortNo_OFPP_ANY = OfpPortNo(openflow_13.OfpPortNo_OFPP_ANY)
+
+// ofp_type from public import voltha_protos/openflow_13.proto
+type OfpType = openflow_13.OfpType
+
+var OfpType_name = openflow_13.OfpType_name
+var OfpType_value = openflow_13.OfpType_value
+
+const OfpType_OFPT_HELLO = OfpType(openflow_13.OfpType_OFPT_HELLO)
+const OfpType_OFPT_ERROR = OfpType(openflow_13.OfpType_OFPT_ERROR)
+const OfpType_OFPT_ECHO_REQUEST = OfpType(openflow_13.OfpType_OFPT_ECHO_REQUEST)
+const OfpType_OFPT_ECHO_REPLY = OfpType(openflow_13.OfpType_OFPT_ECHO_REPLY)
+const OfpType_OFPT_EXPERIMENTER = OfpType(openflow_13.OfpType_OFPT_EXPERIMENTER)
+const OfpType_OFPT_FEATURES_REQUEST = OfpType(openflow_13.OfpType_OFPT_FEATURES_REQUEST)
+const OfpType_OFPT_FEATURES_REPLY = OfpType(openflow_13.OfpType_OFPT_FEATURES_REPLY)
+const OfpType_OFPT_GET_CONFIG_REQUEST = OfpType(openflow_13.OfpType_OFPT_GET_CONFIG_REQUEST)
+const OfpType_OFPT_GET_CONFIG_REPLY = OfpType(openflow_13.OfpType_OFPT_GET_CONFIG_REPLY)
+const OfpType_OFPT_SET_CONFIG = OfpType(openflow_13.OfpType_OFPT_SET_CONFIG)
+const OfpType_OFPT_PACKET_IN = OfpType(openflow_13.OfpType_OFPT_PACKET_IN)
+const OfpType_OFPT_FLOW_REMOVED = OfpType(openflow_13.OfpType_OFPT_FLOW_REMOVED)
+const OfpType_OFPT_PORT_STATUS = OfpType(openflow_13.OfpType_OFPT_PORT_STATUS)
+const OfpType_OFPT_PACKET_OUT = OfpType(openflow_13.OfpType_OFPT_PACKET_OUT)
+const OfpType_OFPT_FLOW_MOD = OfpType(openflow_13.OfpType_OFPT_FLOW_MOD)
+const OfpType_OFPT_GROUP_MOD = OfpType(openflow_13.OfpType_OFPT_GROUP_MOD)
+const OfpType_OFPT_PORT_MOD = OfpType(openflow_13.OfpType_OFPT_PORT_MOD)
+const OfpType_OFPT_TABLE_MOD = OfpType(openflow_13.OfpType_OFPT_TABLE_MOD)
+const OfpType_OFPT_MULTIPART_REQUEST = OfpType(openflow_13.OfpType_OFPT_MULTIPART_REQUEST)
+const OfpType_OFPT_MULTIPART_REPLY = OfpType(openflow_13.OfpType_OFPT_MULTIPART_REPLY)
+const OfpType_OFPT_BARRIER_REQUEST = OfpType(openflow_13.OfpType_OFPT_BARRIER_REQUEST)
+const OfpType_OFPT_BARRIER_REPLY = OfpType(openflow_13.OfpType_OFPT_BARRIER_REPLY)
+const OfpType_OFPT_QUEUE_GET_CONFIG_REQUEST = OfpType(openflow_13.OfpType_OFPT_QUEUE_GET_CONFIG_REQUEST)
+const OfpType_OFPT_QUEUE_GET_CONFIG_REPLY = OfpType(openflow_13.OfpType_OFPT_QUEUE_GET_CONFIG_REPLY)
+const OfpType_OFPT_ROLE_REQUEST = OfpType(openflow_13.OfpType_OFPT_ROLE_REQUEST)
+const OfpType_OFPT_ROLE_REPLY = OfpType(openflow_13.OfpType_OFPT_ROLE_REPLY)
+const OfpType_OFPT_GET_ASYNC_REQUEST = OfpType(openflow_13.OfpType_OFPT_GET_ASYNC_REQUEST)
+const OfpType_OFPT_GET_ASYNC_REPLY = OfpType(openflow_13.OfpType_OFPT_GET_ASYNC_REPLY)
+const OfpType_OFPT_SET_ASYNC = OfpType(openflow_13.OfpType_OFPT_SET_ASYNC)
+const OfpType_OFPT_METER_MOD = OfpType(openflow_13.OfpType_OFPT_METER_MOD)
+
+// ofp_hello_elem_type from public import voltha_protos/openflow_13.proto
+type OfpHelloElemType = openflow_13.OfpHelloElemType
+
+var OfpHelloElemType_name = openflow_13.OfpHelloElemType_name
+var OfpHelloElemType_value = openflow_13.OfpHelloElemType_value
+
+const OfpHelloElemType_OFPHET_INVALID = OfpHelloElemType(openflow_13.OfpHelloElemType_OFPHET_INVALID)
+const OfpHelloElemType_OFPHET_VERSIONBITMAP = OfpHelloElemType(openflow_13.OfpHelloElemType_OFPHET_VERSIONBITMAP)
+
+// ofp_config_flags from public import voltha_protos/openflow_13.proto
+type OfpConfigFlags = openflow_13.OfpConfigFlags
+
+var OfpConfigFlags_name = openflow_13.OfpConfigFlags_name
+var OfpConfigFlags_value = openflow_13.OfpConfigFlags_value
+
+const OfpConfigFlags_OFPC_FRAG_NORMAL = OfpConfigFlags(openflow_13.OfpConfigFlags_OFPC_FRAG_NORMAL)
+const OfpConfigFlags_OFPC_FRAG_DROP = OfpConfigFlags(openflow_13.OfpConfigFlags_OFPC_FRAG_DROP)
+const OfpConfigFlags_OFPC_FRAG_REASM = OfpConfigFlags(openflow_13.OfpConfigFlags_OFPC_FRAG_REASM)
+const OfpConfigFlags_OFPC_FRAG_MASK = OfpConfigFlags(openflow_13.OfpConfigFlags_OFPC_FRAG_MASK)
+
+// ofp_table_config from public import voltha_protos/openflow_13.proto
+type OfpTableConfig = openflow_13.OfpTableConfig
+
+var OfpTableConfig_name = openflow_13.OfpTableConfig_name
+var OfpTableConfig_value = openflow_13.OfpTableConfig_value
+
+const OfpTableConfig_OFPTC_INVALID = OfpTableConfig(openflow_13.OfpTableConfig_OFPTC_INVALID)
+const OfpTableConfig_OFPTC_DEPRECATED_MASK = OfpTableConfig(openflow_13.OfpTableConfig_OFPTC_DEPRECATED_MASK)
+
+// ofp_table from public import voltha_protos/openflow_13.proto
+type OfpTable = openflow_13.OfpTable
+
+var OfpTable_name = openflow_13.OfpTable_name
+var OfpTable_value = openflow_13.OfpTable_value
+
+const OfpTable_OFPTT_INVALID = OfpTable(openflow_13.OfpTable_OFPTT_INVALID)
+const OfpTable_OFPTT_MAX = OfpTable(openflow_13.OfpTable_OFPTT_MAX)
+const OfpTable_OFPTT_ALL = OfpTable(openflow_13.OfpTable_OFPTT_ALL)
+
+// ofp_capabilities from public import voltha_protos/openflow_13.proto
+type OfpCapabilities = openflow_13.OfpCapabilities
+
+var OfpCapabilities_name = openflow_13.OfpCapabilities_name
+var OfpCapabilities_value = openflow_13.OfpCapabilities_value
+
+const OfpCapabilities_OFPC_INVALID = OfpCapabilities(openflow_13.OfpCapabilities_OFPC_INVALID)
+const OfpCapabilities_OFPC_FLOW_STATS = OfpCapabilities(openflow_13.OfpCapabilities_OFPC_FLOW_STATS)
+const OfpCapabilities_OFPC_TABLE_STATS = OfpCapabilities(openflow_13.OfpCapabilities_OFPC_TABLE_STATS)
+const OfpCapabilities_OFPC_PORT_STATS = OfpCapabilities(openflow_13.OfpCapabilities_OFPC_PORT_STATS)
+const OfpCapabilities_OFPC_GROUP_STATS = OfpCapabilities(openflow_13.OfpCapabilities_OFPC_GROUP_STATS)
+const OfpCapabilities_OFPC_IP_REASM = OfpCapabilities(openflow_13.OfpCapabilities_OFPC_IP_REASM)
+const OfpCapabilities_OFPC_QUEUE_STATS = OfpCapabilities(openflow_13.OfpCapabilities_OFPC_QUEUE_STATS)
+const OfpCapabilities_OFPC_PORT_BLOCKED = OfpCapabilities(openflow_13.OfpCapabilities_OFPC_PORT_BLOCKED)
+
+// ofp_port_config from public import voltha_protos/openflow_13.proto
+type OfpPortConfig = openflow_13.OfpPortConfig
+
+var OfpPortConfig_name = openflow_13.OfpPortConfig_name
+var OfpPortConfig_value = openflow_13.OfpPortConfig_value
+
+const OfpPortConfig_OFPPC_INVALID = OfpPortConfig(openflow_13.OfpPortConfig_OFPPC_INVALID)
+const OfpPortConfig_OFPPC_PORT_DOWN = OfpPortConfig(openflow_13.OfpPortConfig_OFPPC_PORT_DOWN)
+const OfpPortConfig_OFPPC_NO_RECV = OfpPortConfig(openflow_13.OfpPortConfig_OFPPC_NO_RECV)
+const OfpPortConfig_OFPPC_NO_FWD = OfpPortConfig(openflow_13.OfpPortConfig_OFPPC_NO_FWD)
+const OfpPortConfig_OFPPC_NO_PACKET_IN = OfpPortConfig(openflow_13.OfpPortConfig_OFPPC_NO_PACKET_IN)
+
+// ofp_port_state from public import voltha_protos/openflow_13.proto
+type OfpPortState = openflow_13.OfpPortState
+
+var OfpPortState_name = openflow_13.OfpPortState_name
+var OfpPortState_value = openflow_13.OfpPortState_value
+
+const OfpPortState_OFPPS_INVALID = OfpPortState(openflow_13.OfpPortState_OFPPS_INVALID)
+const OfpPortState_OFPPS_LINK_DOWN = OfpPortState(openflow_13.OfpPortState_OFPPS_LINK_DOWN)
+const OfpPortState_OFPPS_BLOCKED = OfpPortState(openflow_13.OfpPortState_OFPPS_BLOCKED)
+const OfpPortState_OFPPS_LIVE = OfpPortState(openflow_13.OfpPortState_OFPPS_LIVE)
+
+// ofp_port_features from public import voltha_protos/openflow_13.proto
+type OfpPortFeatures = openflow_13.OfpPortFeatures
+
+var OfpPortFeatures_name = openflow_13.OfpPortFeatures_name
+var OfpPortFeatures_value = openflow_13.OfpPortFeatures_value
+
+const OfpPortFeatures_OFPPF_INVALID = OfpPortFeatures(openflow_13.OfpPortFeatures_OFPPF_INVALID)
+const OfpPortFeatures_OFPPF_10MB_HD = OfpPortFeatures(openflow_13.OfpPortFeatures_OFPPF_10MB_HD)
+const OfpPortFeatures_OFPPF_10MB_FD = OfpPortFeatures(openflow_13.OfpPortFeatures_OFPPF_10MB_FD)
+const OfpPortFeatures_OFPPF_100MB_HD = OfpPortFeatures(openflow_13.OfpPortFeatures_OFPPF_100MB_HD)
+const OfpPortFeatures_OFPPF_100MB_FD = OfpPortFeatures(openflow_13.OfpPortFeatures_OFPPF_100MB_FD)
+const OfpPortFeatures_OFPPF_1GB_HD = OfpPortFeatures(openflow_13.OfpPortFeatures_OFPPF_1GB_HD)
+const OfpPortFeatures_OFPPF_1GB_FD = OfpPortFeatures(openflow_13.OfpPortFeatures_OFPPF_1GB_FD)
+const OfpPortFeatures_OFPPF_10GB_FD = OfpPortFeatures(openflow_13.OfpPortFeatures_OFPPF_10GB_FD)
+const OfpPortFeatures_OFPPF_40GB_FD = OfpPortFeatures(openflow_13.OfpPortFeatures_OFPPF_40GB_FD)
+const OfpPortFeatures_OFPPF_100GB_FD = OfpPortFeatures(openflow_13.OfpPortFeatures_OFPPF_100GB_FD)
+const OfpPortFeatures_OFPPF_1TB_FD = OfpPortFeatures(openflow_13.OfpPortFeatures_OFPPF_1TB_FD)
+const OfpPortFeatures_OFPPF_OTHER = OfpPortFeatures(openflow_13.OfpPortFeatures_OFPPF_OTHER)
+const OfpPortFeatures_OFPPF_COPPER = OfpPortFeatures(openflow_13.OfpPortFeatures_OFPPF_COPPER)
+const OfpPortFeatures_OFPPF_FIBER = OfpPortFeatures(openflow_13.OfpPortFeatures_OFPPF_FIBER)
+const OfpPortFeatures_OFPPF_AUTONEG = OfpPortFeatures(openflow_13.OfpPortFeatures_OFPPF_AUTONEG)
+const OfpPortFeatures_OFPPF_PAUSE = OfpPortFeatures(openflow_13.OfpPortFeatures_OFPPF_PAUSE)
+const OfpPortFeatures_OFPPF_PAUSE_ASYM = OfpPortFeatures(openflow_13.OfpPortFeatures_OFPPF_PAUSE_ASYM)
+
+// ofp_port_reason from public import voltha_protos/openflow_13.proto
+type OfpPortReason = openflow_13.OfpPortReason
+
+var OfpPortReason_name = openflow_13.OfpPortReason_name
+var OfpPortReason_value = openflow_13.OfpPortReason_value
+
+const OfpPortReason_OFPPR_ADD = OfpPortReason(openflow_13.OfpPortReason_OFPPR_ADD)
+const OfpPortReason_OFPPR_DELETE = OfpPortReason(openflow_13.OfpPortReason_OFPPR_DELETE)
+const OfpPortReason_OFPPR_MODIFY = OfpPortReason(openflow_13.OfpPortReason_OFPPR_MODIFY)
+
+// ofp_match_type from public import voltha_protos/openflow_13.proto
+type OfpMatchType = openflow_13.OfpMatchType
+
+var OfpMatchType_name = openflow_13.OfpMatchType_name
+var OfpMatchType_value = openflow_13.OfpMatchType_value
+
+const OfpMatchType_OFPMT_STANDARD = OfpMatchType(openflow_13.OfpMatchType_OFPMT_STANDARD)
+const OfpMatchType_OFPMT_OXM = OfpMatchType(openflow_13.OfpMatchType_OFPMT_OXM)
+
+// ofp_oxm_class from public import voltha_protos/openflow_13.proto
+type OfpOxmClass = openflow_13.OfpOxmClass
+
+var OfpOxmClass_name = openflow_13.OfpOxmClass_name
+var OfpOxmClass_value = openflow_13.OfpOxmClass_value
+
+const OfpOxmClass_OFPXMC_NXM_0 = OfpOxmClass(openflow_13.OfpOxmClass_OFPXMC_NXM_0)
+const OfpOxmClass_OFPXMC_NXM_1 = OfpOxmClass(openflow_13.OfpOxmClass_OFPXMC_NXM_1)
+const OfpOxmClass_OFPXMC_OPENFLOW_BASIC = OfpOxmClass(openflow_13.OfpOxmClass_OFPXMC_OPENFLOW_BASIC)
+const OfpOxmClass_OFPXMC_EXPERIMENTER = OfpOxmClass(openflow_13.OfpOxmClass_OFPXMC_EXPERIMENTER)
+
+// oxm_ofb_field_types from public import voltha_protos/openflow_13.proto
+type OxmOfbFieldTypes = openflow_13.OxmOfbFieldTypes
+
+var OxmOfbFieldTypes_name = openflow_13.OxmOfbFieldTypes_name
+var OxmOfbFieldTypes_value = openflow_13.OxmOfbFieldTypes_value
+
+const OxmOfbFieldTypes_OFPXMT_OFB_IN_PORT = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_IN_PORT)
+const OxmOfbFieldTypes_OFPXMT_OFB_IN_PHY_PORT = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_IN_PHY_PORT)
+const OxmOfbFieldTypes_OFPXMT_OFB_METADATA = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_METADATA)
+const OxmOfbFieldTypes_OFPXMT_OFB_ETH_DST = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_ETH_DST)
+const OxmOfbFieldTypes_OFPXMT_OFB_ETH_SRC = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_ETH_SRC)
+const OxmOfbFieldTypes_OFPXMT_OFB_ETH_TYPE = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_ETH_TYPE)
+const OxmOfbFieldTypes_OFPXMT_OFB_VLAN_VID = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_VLAN_VID)
+const OxmOfbFieldTypes_OFPXMT_OFB_VLAN_PCP = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_VLAN_PCP)
+const OxmOfbFieldTypes_OFPXMT_OFB_IP_DSCP = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_IP_DSCP)
+const OxmOfbFieldTypes_OFPXMT_OFB_IP_ECN = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_IP_ECN)
+const OxmOfbFieldTypes_OFPXMT_OFB_IP_PROTO = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_IP_PROTO)
+const OxmOfbFieldTypes_OFPXMT_OFB_IPV4_SRC = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_IPV4_SRC)
+const OxmOfbFieldTypes_OFPXMT_OFB_IPV4_DST = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_IPV4_DST)
+const OxmOfbFieldTypes_OFPXMT_OFB_TCP_SRC = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_TCP_SRC)
+const OxmOfbFieldTypes_OFPXMT_OFB_TCP_DST = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_TCP_DST)
+const OxmOfbFieldTypes_OFPXMT_OFB_UDP_SRC = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_UDP_SRC)
+const OxmOfbFieldTypes_OFPXMT_OFB_UDP_DST = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_UDP_DST)
+const OxmOfbFieldTypes_OFPXMT_OFB_SCTP_SRC = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_SCTP_SRC)
+const OxmOfbFieldTypes_OFPXMT_OFB_SCTP_DST = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_SCTP_DST)
+const OxmOfbFieldTypes_OFPXMT_OFB_ICMPV4_TYPE = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_ICMPV4_TYPE)
+const OxmOfbFieldTypes_OFPXMT_OFB_ICMPV4_CODE = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_ICMPV4_CODE)
+const OxmOfbFieldTypes_OFPXMT_OFB_ARP_OP = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_ARP_OP)
+const OxmOfbFieldTypes_OFPXMT_OFB_ARP_SPA = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_ARP_SPA)
+const OxmOfbFieldTypes_OFPXMT_OFB_ARP_TPA = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_ARP_TPA)
+const OxmOfbFieldTypes_OFPXMT_OFB_ARP_SHA = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_ARP_SHA)
+const OxmOfbFieldTypes_OFPXMT_OFB_ARP_THA = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_ARP_THA)
+const OxmOfbFieldTypes_OFPXMT_OFB_IPV6_SRC = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_IPV6_SRC)
+const OxmOfbFieldTypes_OFPXMT_OFB_IPV6_DST = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_IPV6_DST)
+const OxmOfbFieldTypes_OFPXMT_OFB_IPV6_FLABEL = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_IPV6_FLABEL)
+const OxmOfbFieldTypes_OFPXMT_OFB_ICMPV6_TYPE = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_ICMPV6_TYPE)
+const OxmOfbFieldTypes_OFPXMT_OFB_ICMPV6_CODE = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_ICMPV6_CODE)
+const OxmOfbFieldTypes_OFPXMT_OFB_IPV6_ND_TARGET = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_IPV6_ND_TARGET)
+const OxmOfbFieldTypes_OFPXMT_OFB_IPV6_ND_SLL = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_IPV6_ND_SLL)
+const OxmOfbFieldTypes_OFPXMT_OFB_IPV6_ND_TLL = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_IPV6_ND_TLL)
+const OxmOfbFieldTypes_OFPXMT_OFB_MPLS_LABEL = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_MPLS_LABEL)
+const OxmOfbFieldTypes_OFPXMT_OFB_MPLS_TC = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_MPLS_TC)
+const OxmOfbFieldTypes_OFPXMT_OFB_MPLS_BOS = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_MPLS_BOS)
+const OxmOfbFieldTypes_OFPXMT_OFB_PBB_ISID = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_PBB_ISID)
+const OxmOfbFieldTypes_OFPXMT_OFB_TUNNEL_ID = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_TUNNEL_ID)
+const OxmOfbFieldTypes_OFPXMT_OFB_IPV6_EXTHDR = OxmOfbFieldTypes(openflow_13.OxmOfbFieldTypes_OFPXMT_OFB_IPV6_EXTHDR)
+
+// ofp_vlan_id from public import voltha_protos/openflow_13.proto
+type OfpVlanId = openflow_13.OfpVlanId
+
+var OfpVlanId_name = openflow_13.OfpVlanId_name
+var OfpVlanId_value = openflow_13.OfpVlanId_value
+
+const OfpVlanId_OFPVID_NONE = OfpVlanId(openflow_13.OfpVlanId_OFPVID_NONE)
+const OfpVlanId_OFPVID_PRESENT = OfpVlanId(openflow_13.OfpVlanId_OFPVID_PRESENT)
+
+// ofp_ipv6exthdr_flags from public import voltha_protos/openflow_13.proto
+type OfpIpv6ExthdrFlags = openflow_13.OfpIpv6ExthdrFlags
+
+var OfpIpv6ExthdrFlags_name = openflow_13.OfpIpv6ExthdrFlags_name
+var OfpIpv6ExthdrFlags_value = openflow_13.OfpIpv6ExthdrFlags_value
+
+const OfpIpv6ExthdrFlags_OFPIEH_INVALID = OfpIpv6ExthdrFlags(openflow_13.OfpIpv6ExthdrFlags_OFPIEH_INVALID)
+const OfpIpv6ExthdrFlags_OFPIEH_NONEXT = OfpIpv6ExthdrFlags(openflow_13.OfpIpv6ExthdrFlags_OFPIEH_NONEXT)
+const OfpIpv6ExthdrFlags_OFPIEH_ESP = OfpIpv6ExthdrFlags(openflow_13.OfpIpv6ExthdrFlags_OFPIEH_ESP)
+const OfpIpv6ExthdrFlags_OFPIEH_AUTH = OfpIpv6ExthdrFlags(openflow_13.OfpIpv6ExthdrFlags_OFPIEH_AUTH)
+const OfpIpv6ExthdrFlags_OFPIEH_DEST = OfpIpv6ExthdrFlags(openflow_13.OfpIpv6ExthdrFlags_OFPIEH_DEST)
+const OfpIpv6ExthdrFlags_OFPIEH_FRAG = OfpIpv6ExthdrFlags(openflow_13.OfpIpv6ExthdrFlags_OFPIEH_FRAG)
+const OfpIpv6ExthdrFlags_OFPIEH_ROUTER = OfpIpv6ExthdrFlags(openflow_13.OfpIpv6ExthdrFlags_OFPIEH_ROUTER)
+const OfpIpv6ExthdrFlags_OFPIEH_HOP = OfpIpv6ExthdrFlags(openflow_13.OfpIpv6ExthdrFlags_OFPIEH_HOP)
+const OfpIpv6ExthdrFlags_OFPIEH_UNREP = OfpIpv6ExthdrFlags(openflow_13.OfpIpv6ExthdrFlags_OFPIEH_UNREP)
+const OfpIpv6ExthdrFlags_OFPIEH_UNSEQ = OfpIpv6ExthdrFlags(openflow_13.OfpIpv6ExthdrFlags_OFPIEH_UNSEQ)
+
+// ofp_action_type from public import voltha_protos/openflow_13.proto
+type OfpActionType = openflow_13.OfpActionType
+
+var OfpActionType_name = openflow_13.OfpActionType_name
+var OfpActionType_value = openflow_13.OfpActionType_value
+
+const OfpActionType_OFPAT_OUTPUT = OfpActionType(openflow_13.OfpActionType_OFPAT_OUTPUT)
+const OfpActionType_OFPAT_COPY_TTL_OUT = OfpActionType(openflow_13.OfpActionType_OFPAT_COPY_TTL_OUT)
+const OfpActionType_OFPAT_COPY_TTL_IN = OfpActionType(openflow_13.OfpActionType_OFPAT_COPY_TTL_IN)
+const OfpActionType_OFPAT_SET_MPLS_TTL = OfpActionType(openflow_13.OfpActionType_OFPAT_SET_MPLS_TTL)
+const OfpActionType_OFPAT_DEC_MPLS_TTL = OfpActionType(openflow_13.OfpActionType_OFPAT_DEC_MPLS_TTL)
+const OfpActionType_OFPAT_PUSH_VLAN = OfpActionType(openflow_13.OfpActionType_OFPAT_PUSH_VLAN)
+const OfpActionType_OFPAT_POP_VLAN = OfpActionType(openflow_13.OfpActionType_OFPAT_POP_VLAN)
+const OfpActionType_OFPAT_PUSH_MPLS = OfpActionType(openflow_13.OfpActionType_OFPAT_PUSH_MPLS)
+const OfpActionType_OFPAT_POP_MPLS = OfpActionType(openflow_13.OfpActionType_OFPAT_POP_MPLS)
+const OfpActionType_OFPAT_SET_QUEUE = OfpActionType(openflow_13.OfpActionType_OFPAT_SET_QUEUE)
+const OfpActionType_OFPAT_GROUP = OfpActionType(openflow_13.OfpActionType_OFPAT_GROUP)
+const OfpActionType_OFPAT_SET_NW_TTL = OfpActionType(openflow_13.OfpActionType_OFPAT_SET_NW_TTL)
+const OfpActionType_OFPAT_DEC_NW_TTL = OfpActionType(openflow_13.OfpActionType_OFPAT_DEC_NW_TTL)
+const OfpActionType_OFPAT_SET_FIELD = OfpActionType(openflow_13.OfpActionType_OFPAT_SET_FIELD)
+const OfpActionType_OFPAT_PUSH_PBB = OfpActionType(openflow_13.OfpActionType_OFPAT_PUSH_PBB)
+const OfpActionType_OFPAT_POP_PBB = OfpActionType(openflow_13.OfpActionType_OFPAT_POP_PBB)
+const OfpActionType_OFPAT_EXPERIMENTER = OfpActionType(openflow_13.OfpActionType_OFPAT_EXPERIMENTER)
+
+// ofp_controller_max_len from public import voltha_protos/openflow_13.proto
+type OfpControllerMaxLen = openflow_13.OfpControllerMaxLen
+
+var OfpControllerMaxLen_name = openflow_13.OfpControllerMaxLen_name
+var OfpControllerMaxLen_value = openflow_13.OfpControllerMaxLen_value
+
+const OfpControllerMaxLen_OFPCML_INVALID = OfpControllerMaxLen(openflow_13.OfpControllerMaxLen_OFPCML_INVALID)
+const OfpControllerMaxLen_OFPCML_MAX = OfpControllerMaxLen(openflow_13.OfpControllerMaxLen_OFPCML_MAX)
+const OfpControllerMaxLen_OFPCML_NO_BUFFER = OfpControllerMaxLen(openflow_13.OfpControllerMaxLen_OFPCML_NO_BUFFER)
+
+// ofp_instruction_type from public import voltha_protos/openflow_13.proto
+type OfpInstructionType = openflow_13.OfpInstructionType
+
+var OfpInstructionType_name = openflow_13.OfpInstructionType_name
+var OfpInstructionType_value = openflow_13.OfpInstructionType_value
+
+const OfpInstructionType_OFPIT_INVALID = OfpInstructionType(openflow_13.OfpInstructionType_OFPIT_INVALID)
+const OfpInstructionType_OFPIT_GOTO_TABLE = OfpInstructionType(openflow_13.OfpInstructionType_OFPIT_GOTO_TABLE)
+const OfpInstructionType_OFPIT_WRITE_METADATA = OfpInstructionType(openflow_13.OfpInstructionType_OFPIT_WRITE_METADATA)
+const OfpInstructionType_OFPIT_WRITE_ACTIONS = OfpInstructionType(openflow_13.OfpInstructionType_OFPIT_WRITE_ACTIONS)
+const OfpInstructionType_OFPIT_APPLY_ACTIONS = OfpInstructionType(openflow_13.OfpInstructionType_OFPIT_APPLY_ACTIONS)
+const OfpInstructionType_OFPIT_CLEAR_ACTIONS = OfpInstructionType(openflow_13.OfpInstructionType_OFPIT_CLEAR_ACTIONS)
+const OfpInstructionType_OFPIT_METER = OfpInstructionType(openflow_13.OfpInstructionType_OFPIT_METER)
+const OfpInstructionType_OFPIT_EXPERIMENTER = OfpInstructionType(openflow_13.OfpInstructionType_OFPIT_EXPERIMENTER)
+
+// ofp_flow_mod_command from public import voltha_protos/openflow_13.proto
+type OfpFlowModCommand = openflow_13.OfpFlowModCommand
+
+var OfpFlowModCommand_name = openflow_13.OfpFlowModCommand_name
+var OfpFlowModCommand_value = openflow_13.OfpFlowModCommand_value
+
+const OfpFlowModCommand_OFPFC_ADD = OfpFlowModCommand(openflow_13.OfpFlowModCommand_OFPFC_ADD)
+const OfpFlowModCommand_OFPFC_MODIFY = OfpFlowModCommand(openflow_13.OfpFlowModCommand_OFPFC_MODIFY)
+const OfpFlowModCommand_OFPFC_MODIFY_STRICT = OfpFlowModCommand(openflow_13.OfpFlowModCommand_OFPFC_MODIFY_STRICT)
+const OfpFlowModCommand_OFPFC_DELETE = OfpFlowModCommand(openflow_13.OfpFlowModCommand_OFPFC_DELETE)
+const OfpFlowModCommand_OFPFC_DELETE_STRICT = OfpFlowModCommand(openflow_13.OfpFlowModCommand_OFPFC_DELETE_STRICT)
+
+// ofp_flow_mod_flags from public import voltha_protos/openflow_13.proto
+type OfpFlowModFlags = openflow_13.OfpFlowModFlags
+
+var OfpFlowModFlags_name = openflow_13.OfpFlowModFlags_name
+var OfpFlowModFlags_value = openflow_13.OfpFlowModFlags_value
+
+const OfpFlowModFlags_OFPFF_INVALID = OfpFlowModFlags(openflow_13.OfpFlowModFlags_OFPFF_INVALID)
+const OfpFlowModFlags_OFPFF_SEND_FLOW_REM = OfpFlowModFlags(openflow_13.OfpFlowModFlags_OFPFF_SEND_FLOW_REM)
+const OfpFlowModFlags_OFPFF_CHECK_OVERLAP = OfpFlowModFlags(openflow_13.OfpFlowModFlags_OFPFF_CHECK_OVERLAP)
+const OfpFlowModFlags_OFPFF_RESET_COUNTS = OfpFlowModFlags(openflow_13.OfpFlowModFlags_OFPFF_RESET_COUNTS)
+const OfpFlowModFlags_OFPFF_NO_PKT_COUNTS = OfpFlowModFlags(openflow_13.OfpFlowModFlags_OFPFF_NO_PKT_COUNTS)
+const OfpFlowModFlags_OFPFF_NO_BYT_COUNTS = OfpFlowModFlags(openflow_13.OfpFlowModFlags_OFPFF_NO_BYT_COUNTS)
+
+// ofp_group from public import voltha_protos/openflow_13.proto
+type OfpGroup = openflow_13.OfpGroup
+
+var OfpGroup_name = openflow_13.OfpGroup_name
+var OfpGroup_value = openflow_13.OfpGroup_value
+
+const OfpGroup_OFPG_INVALID = OfpGroup(openflow_13.OfpGroup_OFPG_INVALID)
+const OfpGroup_OFPG_MAX = OfpGroup(openflow_13.OfpGroup_OFPG_MAX)
+const OfpGroup_OFPG_ALL = OfpGroup(openflow_13.OfpGroup_OFPG_ALL)
+const OfpGroup_OFPG_ANY = OfpGroup(openflow_13.OfpGroup_OFPG_ANY)
+
+// ofp_group_mod_command from public import voltha_protos/openflow_13.proto
+type OfpGroupModCommand = openflow_13.OfpGroupModCommand
+
+var OfpGroupModCommand_name = openflow_13.OfpGroupModCommand_name
+var OfpGroupModCommand_value = openflow_13.OfpGroupModCommand_value
+
+const OfpGroupModCommand_OFPGC_ADD = OfpGroupModCommand(openflow_13.OfpGroupModCommand_OFPGC_ADD)
+const OfpGroupModCommand_OFPGC_MODIFY = OfpGroupModCommand(openflow_13.OfpGroupModCommand_OFPGC_MODIFY)
+const OfpGroupModCommand_OFPGC_DELETE = OfpGroupModCommand(openflow_13.OfpGroupModCommand_OFPGC_DELETE)
+
+// ofp_group_type from public import voltha_protos/openflow_13.proto
+type OfpGroupType = openflow_13.OfpGroupType
+
+var OfpGroupType_name = openflow_13.OfpGroupType_name
+var OfpGroupType_value = openflow_13.OfpGroupType_value
+
+const OfpGroupType_OFPGT_ALL = OfpGroupType(openflow_13.OfpGroupType_OFPGT_ALL)
+const OfpGroupType_OFPGT_SELECT = OfpGroupType(openflow_13.OfpGroupType_OFPGT_SELECT)
+const OfpGroupType_OFPGT_INDIRECT = OfpGroupType(openflow_13.OfpGroupType_OFPGT_INDIRECT)
+const OfpGroupType_OFPGT_FF = OfpGroupType(openflow_13.OfpGroupType_OFPGT_FF)
+
+// ofp_packet_in_reason from public import voltha_protos/openflow_13.proto
+type OfpPacketInReason = openflow_13.OfpPacketInReason
+
+var OfpPacketInReason_name = openflow_13.OfpPacketInReason_name
+var OfpPacketInReason_value = openflow_13.OfpPacketInReason_value
+
+const OfpPacketInReason_OFPR_NO_MATCH = OfpPacketInReason(openflow_13.OfpPacketInReason_OFPR_NO_MATCH)
+const OfpPacketInReason_OFPR_ACTION = OfpPacketInReason(openflow_13.OfpPacketInReason_OFPR_ACTION)
+const OfpPacketInReason_OFPR_INVALID_TTL = OfpPacketInReason(openflow_13.OfpPacketInReason_OFPR_INVALID_TTL)
+
+// ofp_flow_removed_reason from public import voltha_protos/openflow_13.proto
+type OfpFlowRemovedReason = openflow_13.OfpFlowRemovedReason
+
+var OfpFlowRemovedReason_name = openflow_13.OfpFlowRemovedReason_name
+var OfpFlowRemovedReason_value = openflow_13.OfpFlowRemovedReason_value
+
+const OfpFlowRemovedReason_OFPRR_IDLE_TIMEOUT = OfpFlowRemovedReason(openflow_13.OfpFlowRemovedReason_OFPRR_IDLE_TIMEOUT)
+const OfpFlowRemovedReason_OFPRR_HARD_TIMEOUT = OfpFlowRemovedReason(openflow_13.OfpFlowRemovedReason_OFPRR_HARD_TIMEOUT)
+const OfpFlowRemovedReason_OFPRR_DELETE = OfpFlowRemovedReason(openflow_13.OfpFlowRemovedReason_OFPRR_DELETE)
+const OfpFlowRemovedReason_OFPRR_GROUP_DELETE = OfpFlowRemovedReason(openflow_13.OfpFlowRemovedReason_OFPRR_GROUP_DELETE)
+const OfpFlowRemovedReason_OFPRR_METER_DELETE = OfpFlowRemovedReason(openflow_13.OfpFlowRemovedReason_OFPRR_METER_DELETE)
+
+// ofp_meter from public import voltha_protos/openflow_13.proto
+type OfpMeter = openflow_13.OfpMeter
+
+var OfpMeter_name = openflow_13.OfpMeter_name
+var OfpMeter_value = openflow_13.OfpMeter_value
+
+const OfpMeter_OFPM_ZERO = OfpMeter(openflow_13.OfpMeter_OFPM_ZERO)
+const OfpMeter_OFPM_MAX = OfpMeter(openflow_13.OfpMeter_OFPM_MAX)
+const OfpMeter_OFPM_SLOWPATH = OfpMeter(openflow_13.OfpMeter_OFPM_SLOWPATH)
+const OfpMeter_OFPM_CONTROLLER = OfpMeter(openflow_13.OfpMeter_OFPM_CONTROLLER)
+const OfpMeter_OFPM_ALL = OfpMeter(openflow_13.OfpMeter_OFPM_ALL)
+
+// ofp_meter_band_type from public import voltha_protos/openflow_13.proto
+type OfpMeterBandType = openflow_13.OfpMeterBandType
+
+var OfpMeterBandType_name = openflow_13.OfpMeterBandType_name
+var OfpMeterBandType_value = openflow_13.OfpMeterBandType_value
+
+const OfpMeterBandType_OFPMBT_INVALID = OfpMeterBandType(openflow_13.OfpMeterBandType_OFPMBT_INVALID)
+const OfpMeterBandType_OFPMBT_DROP = OfpMeterBandType(openflow_13.OfpMeterBandType_OFPMBT_DROP)
+const OfpMeterBandType_OFPMBT_DSCP_REMARK = OfpMeterBandType(openflow_13.OfpMeterBandType_OFPMBT_DSCP_REMARK)
+const OfpMeterBandType_OFPMBT_EXPERIMENTER = OfpMeterBandType(openflow_13.OfpMeterBandType_OFPMBT_EXPERIMENTER)
+
+// ofp_meter_mod_command from public import voltha_protos/openflow_13.proto
+type OfpMeterModCommand = openflow_13.OfpMeterModCommand
+
+var OfpMeterModCommand_name = openflow_13.OfpMeterModCommand_name
+var OfpMeterModCommand_value = openflow_13.OfpMeterModCommand_value
+
+const OfpMeterModCommand_OFPMC_ADD = OfpMeterModCommand(openflow_13.OfpMeterModCommand_OFPMC_ADD)
+const OfpMeterModCommand_OFPMC_MODIFY = OfpMeterModCommand(openflow_13.OfpMeterModCommand_OFPMC_MODIFY)
+const OfpMeterModCommand_OFPMC_DELETE = OfpMeterModCommand(openflow_13.OfpMeterModCommand_OFPMC_DELETE)
+
+// ofp_meter_flags from public import voltha_protos/openflow_13.proto
+type OfpMeterFlags = openflow_13.OfpMeterFlags
+
+var OfpMeterFlags_name = openflow_13.OfpMeterFlags_name
+var OfpMeterFlags_value = openflow_13.OfpMeterFlags_value
+
+const OfpMeterFlags_OFPMF_INVALID = OfpMeterFlags(openflow_13.OfpMeterFlags_OFPMF_INVALID)
+const OfpMeterFlags_OFPMF_KBPS = OfpMeterFlags(openflow_13.OfpMeterFlags_OFPMF_KBPS)
+const OfpMeterFlags_OFPMF_PKTPS = OfpMeterFlags(openflow_13.OfpMeterFlags_OFPMF_PKTPS)
+const OfpMeterFlags_OFPMF_BURST = OfpMeterFlags(openflow_13.OfpMeterFlags_OFPMF_BURST)
+const OfpMeterFlags_OFPMF_STATS = OfpMeterFlags(openflow_13.OfpMeterFlags_OFPMF_STATS)
+
+// ofp_error_type from public import voltha_protos/openflow_13.proto
+type OfpErrorType = openflow_13.OfpErrorType
+
+var OfpErrorType_name = openflow_13.OfpErrorType_name
+var OfpErrorType_value = openflow_13.OfpErrorType_value
+
+const OfpErrorType_OFPET_HELLO_FAILED = OfpErrorType(openflow_13.OfpErrorType_OFPET_HELLO_FAILED)
+const OfpErrorType_OFPET_BAD_REQUEST = OfpErrorType(openflow_13.OfpErrorType_OFPET_BAD_REQUEST)
+const OfpErrorType_OFPET_BAD_ACTION = OfpErrorType(openflow_13.OfpErrorType_OFPET_BAD_ACTION)
+const OfpErrorType_OFPET_BAD_INSTRUCTION = OfpErrorType(openflow_13.OfpErrorType_OFPET_BAD_INSTRUCTION)
+const OfpErrorType_OFPET_BAD_MATCH = OfpErrorType(openflow_13.OfpErrorType_OFPET_BAD_MATCH)
+const OfpErrorType_OFPET_FLOW_MOD_FAILED = OfpErrorType(openflow_13.OfpErrorType_OFPET_FLOW_MOD_FAILED)
+const OfpErrorType_OFPET_GROUP_MOD_FAILED = OfpErrorType(openflow_13.OfpErrorType_OFPET_GROUP_MOD_FAILED)
+const OfpErrorType_OFPET_PORT_MOD_FAILED = OfpErrorType(openflow_13.OfpErrorType_OFPET_PORT_MOD_FAILED)
+const OfpErrorType_OFPET_TABLE_MOD_FAILED = OfpErrorType(openflow_13.OfpErrorType_OFPET_TABLE_MOD_FAILED)
+const OfpErrorType_OFPET_QUEUE_OP_FAILED = OfpErrorType(openflow_13.OfpErrorType_OFPET_QUEUE_OP_FAILED)
+const OfpErrorType_OFPET_SWITCH_CONFIG_FAILED = OfpErrorType(openflow_13.OfpErrorType_OFPET_SWITCH_CONFIG_FAILED)
+const OfpErrorType_OFPET_ROLE_REQUEST_FAILED = OfpErrorType(openflow_13.OfpErrorType_OFPET_ROLE_REQUEST_FAILED)
+const OfpErrorType_OFPET_METER_MOD_FAILED = OfpErrorType(openflow_13.OfpErrorType_OFPET_METER_MOD_FAILED)
+const OfpErrorType_OFPET_TABLE_FEATURES_FAILED = OfpErrorType(openflow_13.OfpErrorType_OFPET_TABLE_FEATURES_FAILED)
+const OfpErrorType_OFPET_EXPERIMENTER = OfpErrorType(openflow_13.OfpErrorType_OFPET_EXPERIMENTER)
+
+// ofp_hello_failed_code from public import voltha_protos/openflow_13.proto
+type OfpHelloFailedCode = openflow_13.OfpHelloFailedCode
+
+var OfpHelloFailedCode_name = openflow_13.OfpHelloFailedCode_name
+var OfpHelloFailedCode_value = openflow_13.OfpHelloFailedCode_value
+
+const OfpHelloFailedCode_OFPHFC_INCOMPATIBLE = OfpHelloFailedCode(openflow_13.OfpHelloFailedCode_OFPHFC_INCOMPATIBLE)
+const OfpHelloFailedCode_OFPHFC_EPERM = OfpHelloFailedCode(openflow_13.OfpHelloFailedCode_OFPHFC_EPERM)
+
+// ofp_bad_request_code from public import voltha_protos/openflow_13.proto
+type OfpBadRequestCode = openflow_13.OfpBadRequestCode
+
+var OfpBadRequestCode_name = openflow_13.OfpBadRequestCode_name
+var OfpBadRequestCode_value = openflow_13.OfpBadRequestCode_value
+
+const OfpBadRequestCode_OFPBRC_BAD_VERSION = OfpBadRequestCode(openflow_13.OfpBadRequestCode_OFPBRC_BAD_VERSION)
+const OfpBadRequestCode_OFPBRC_BAD_TYPE = OfpBadRequestCode(openflow_13.OfpBadRequestCode_OFPBRC_BAD_TYPE)
+const OfpBadRequestCode_OFPBRC_BAD_MULTIPART = OfpBadRequestCode(openflow_13.OfpBadRequestCode_OFPBRC_BAD_MULTIPART)
+const OfpBadRequestCode_OFPBRC_BAD_EXPERIMENTER = OfpBadRequestCode(openflow_13.OfpBadRequestCode_OFPBRC_BAD_EXPERIMENTER)
+const OfpBadRequestCode_OFPBRC_BAD_EXP_TYPE = OfpBadRequestCode(openflow_13.OfpBadRequestCode_OFPBRC_BAD_EXP_TYPE)
+const OfpBadRequestCode_OFPBRC_EPERM = OfpBadRequestCode(openflow_13.OfpBadRequestCode_OFPBRC_EPERM)
+const OfpBadRequestCode_OFPBRC_BAD_LEN = OfpBadRequestCode(openflow_13.OfpBadRequestCode_OFPBRC_BAD_LEN)
+const OfpBadRequestCode_OFPBRC_BUFFER_EMPTY = OfpBadRequestCode(openflow_13.OfpBadRequestCode_OFPBRC_BUFFER_EMPTY)
+const OfpBadRequestCode_OFPBRC_BUFFER_UNKNOWN = OfpBadRequestCode(openflow_13.OfpBadRequestCode_OFPBRC_BUFFER_UNKNOWN)
+const OfpBadRequestCode_OFPBRC_BAD_TABLE_ID = OfpBadRequestCode(openflow_13.OfpBadRequestCode_OFPBRC_BAD_TABLE_ID)
+const OfpBadRequestCode_OFPBRC_IS_SLAVE = OfpBadRequestCode(openflow_13.OfpBadRequestCode_OFPBRC_IS_SLAVE)
+const OfpBadRequestCode_OFPBRC_BAD_PORT = OfpBadRequestCode(openflow_13.OfpBadRequestCode_OFPBRC_BAD_PORT)
+const OfpBadRequestCode_OFPBRC_BAD_PACKET = OfpBadRequestCode(openflow_13.OfpBadRequestCode_OFPBRC_BAD_PACKET)
+const OfpBadRequestCode_OFPBRC_MULTIPART_BUFFER_OVERFLOW = OfpBadRequestCode(openflow_13.OfpBadRequestCode_OFPBRC_MULTIPART_BUFFER_OVERFLOW)
+
+// ofp_bad_action_code from public import voltha_protos/openflow_13.proto
+type OfpBadActionCode = openflow_13.OfpBadActionCode
+
+var OfpBadActionCode_name = openflow_13.OfpBadActionCode_name
+var OfpBadActionCode_value = openflow_13.OfpBadActionCode_value
+
+const OfpBadActionCode_OFPBAC_BAD_TYPE = OfpBadActionCode(openflow_13.OfpBadActionCode_OFPBAC_BAD_TYPE)
+const OfpBadActionCode_OFPBAC_BAD_LEN = OfpBadActionCode(openflow_13.OfpBadActionCode_OFPBAC_BAD_LEN)
+const OfpBadActionCode_OFPBAC_BAD_EXPERIMENTER = OfpBadActionCode(openflow_13.OfpBadActionCode_OFPBAC_BAD_EXPERIMENTER)
+const OfpBadActionCode_OFPBAC_BAD_EXP_TYPE = OfpBadActionCode(openflow_13.OfpBadActionCode_OFPBAC_BAD_EXP_TYPE)
+const OfpBadActionCode_OFPBAC_BAD_OUT_PORT = OfpBadActionCode(openflow_13.OfpBadActionCode_OFPBAC_BAD_OUT_PORT)
+const OfpBadActionCode_OFPBAC_BAD_ARGUMENT = OfpBadActionCode(openflow_13.OfpBadActionCode_OFPBAC_BAD_ARGUMENT)
+const OfpBadActionCode_OFPBAC_EPERM = OfpBadActionCode(openflow_13.OfpBadActionCode_OFPBAC_EPERM)
+const OfpBadActionCode_OFPBAC_TOO_MANY = OfpBadActionCode(openflow_13.OfpBadActionCode_OFPBAC_TOO_MANY)
+const OfpBadActionCode_OFPBAC_BAD_QUEUE = OfpBadActionCode(openflow_13.OfpBadActionCode_OFPBAC_BAD_QUEUE)
+const OfpBadActionCode_OFPBAC_BAD_OUT_GROUP = OfpBadActionCode(openflow_13.OfpBadActionCode_OFPBAC_BAD_OUT_GROUP)
+const OfpBadActionCode_OFPBAC_MATCH_INCONSISTENT = OfpBadActionCode(openflow_13.OfpBadActionCode_OFPBAC_MATCH_INCONSISTENT)
+const OfpBadActionCode_OFPBAC_UNSUPPORTED_ORDER = OfpBadActionCode(openflow_13.OfpBadActionCode_OFPBAC_UNSUPPORTED_ORDER)
+const OfpBadActionCode_OFPBAC_BAD_TAG = OfpBadActionCode(openflow_13.OfpBadActionCode_OFPBAC_BAD_TAG)
+const OfpBadActionCode_OFPBAC_BAD_SET_TYPE = OfpBadActionCode(openflow_13.OfpBadActionCode_OFPBAC_BAD_SET_TYPE)
+const OfpBadActionCode_OFPBAC_BAD_SET_LEN = OfpBadActionCode(openflow_13.OfpBadActionCode_OFPBAC_BAD_SET_LEN)
+const OfpBadActionCode_OFPBAC_BAD_SET_ARGUMENT = OfpBadActionCode(openflow_13.OfpBadActionCode_OFPBAC_BAD_SET_ARGUMENT)
+
+// ofp_bad_instruction_code from public import voltha_protos/openflow_13.proto
+type OfpBadInstructionCode = openflow_13.OfpBadInstructionCode
+
+var OfpBadInstructionCode_name = openflow_13.OfpBadInstructionCode_name
+var OfpBadInstructionCode_value = openflow_13.OfpBadInstructionCode_value
+
+const OfpBadInstructionCode_OFPBIC_UNKNOWN_INST = OfpBadInstructionCode(openflow_13.OfpBadInstructionCode_OFPBIC_UNKNOWN_INST)
+const OfpBadInstructionCode_OFPBIC_UNSUP_INST = OfpBadInstructionCode(openflow_13.OfpBadInstructionCode_OFPBIC_UNSUP_INST)
+const OfpBadInstructionCode_OFPBIC_BAD_TABLE_ID = OfpBadInstructionCode(openflow_13.OfpBadInstructionCode_OFPBIC_BAD_TABLE_ID)
+const OfpBadInstructionCode_OFPBIC_UNSUP_METADATA = OfpBadInstructionCode(openflow_13.OfpBadInstructionCode_OFPBIC_UNSUP_METADATA)
+const OfpBadInstructionCode_OFPBIC_UNSUP_METADATA_MASK = OfpBadInstructionCode(openflow_13.OfpBadInstructionCode_OFPBIC_UNSUP_METADATA_MASK)
+const OfpBadInstructionCode_OFPBIC_BAD_EXPERIMENTER = OfpBadInstructionCode(openflow_13.OfpBadInstructionCode_OFPBIC_BAD_EXPERIMENTER)
+const OfpBadInstructionCode_OFPBIC_BAD_EXP_TYPE = OfpBadInstructionCode(openflow_13.OfpBadInstructionCode_OFPBIC_BAD_EXP_TYPE)
+const OfpBadInstructionCode_OFPBIC_BAD_LEN = OfpBadInstructionCode(openflow_13.OfpBadInstructionCode_OFPBIC_BAD_LEN)
+const OfpBadInstructionCode_OFPBIC_EPERM = OfpBadInstructionCode(openflow_13.OfpBadInstructionCode_OFPBIC_EPERM)
+
+// ofp_bad_match_code from public import voltha_protos/openflow_13.proto
+type OfpBadMatchCode = openflow_13.OfpBadMatchCode
+
+var OfpBadMatchCode_name = openflow_13.OfpBadMatchCode_name
+var OfpBadMatchCode_value = openflow_13.OfpBadMatchCode_value
+
+const OfpBadMatchCode_OFPBMC_BAD_TYPE = OfpBadMatchCode(openflow_13.OfpBadMatchCode_OFPBMC_BAD_TYPE)
+const OfpBadMatchCode_OFPBMC_BAD_LEN = OfpBadMatchCode(openflow_13.OfpBadMatchCode_OFPBMC_BAD_LEN)
+const OfpBadMatchCode_OFPBMC_BAD_TAG = OfpBadMatchCode(openflow_13.OfpBadMatchCode_OFPBMC_BAD_TAG)
+const OfpBadMatchCode_OFPBMC_BAD_DL_ADDR_MASK = OfpBadMatchCode(openflow_13.OfpBadMatchCode_OFPBMC_BAD_DL_ADDR_MASK)
+const OfpBadMatchCode_OFPBMC_BAD_NW_ADDR_MASK = OfpBadMatchCode(openflow_13.OfpBadMatchCode_OFPBMC_BAD_NW_ADDR_MASK)
+const OfpBadMatchCode_OFPBMC_BAD_WILDCARDS = OfpBadMatchCode(openflow_13.OfpBadMatchCode_OFPBMC_BAD_WILDCARDS)
+const OfpBadMatchCode_OFPBMC_BAD_FIELD = OfpBadMatchCode(openflow_13.OfpBadMatchCode_OFPBMC_BAD_FIELD)
+const OfpBadMatchCode_OFPBMC_BAD_VALUE = OfpBadMatchCode(openflow_13.OfpBadMatchCode_OFPBMC_BAD_VALUE)
+const OfpBadMatchCode_OFPBMC_BAD_MASK = OfpBadMatchCode(openflow_13.OfpBadMatchCode_OFPBMC_BAD_MASK)
+const OfpBadMatchCode_OFPBMC_BAD_PREREQ = OfpBadMatchCode(openflow_13.OfpBadMatchCode_OFPBMC_BAD_PREREQ)
+const OfpBadMatchCode_OFPBMC_DUP_FIELD = OfpBadMatchCode(openflow_13.OfpBadMatchCode_OFPBMC_DUP_FIELD)
+const OfpBadMatchCode_OFPBMC_EPERM = OfpBadMatchCode(openflow_13.OfpBadMatchCode_OFPBMC_EPERM)
+
+// ofp_flow_mod_failed_code from public import voltha_protos/openflow_13.proto
+type OfpFlowModFailedCode = openflow_13.OfpFlowModFailedCode
+
+var OfpFlowModFailedCode_name = openflow_13.OfpFlowModFailedCode_name
+var OfpFlowModFailedCode_value = openflow_13.OfpFlowModFailedCode_value
+
+const OfpFlowModFailedCode_OFPFMFC_UNKNOWN = OfpFlowModFailedCode(openflow_13.OfpFlowModFailedCode_OFPFMFC_UNKNOWN)
+const OfpFlowModFailedCode_OFPFMFC_TABLE_FULL = OfpFlowModFailedCode(openflow_13.OfpFlowModFailedCode_OFPFMFC_TABLE_FULL)
+const OfpFlowModFailedCode_OFPFMFC_BAD_TABLE_ID = OfpFlowModFailedCode(openflow_13.OfpFlowModFailedCode_OFPFMFC_BAD_TABLE_ID)
+const OfpFlowModFailedCode_OFPFMFC_OVERLAP = OfpFlowModFailedCode(openflow_13.OfpFlowModFailedCode_OFPFMFC_OVERLAP)
+const OfpFlowModFailedCode_OFPFMFC_EPERM = OfpFlowModFailedCode(openflow_13.OfpFlowModFailedCode_OFPFMFC_EPERM)
+const OfpFlowModFailedCode_OFPFMFC_BAD_TIMEOUT = OfpFlowModFailedCode(openflow_13.OfpFlowModFailedCode_OFPFMFC_BAD_TIMEOUT)
+const OfpFlowModFailedCode_OFPFMFC_BAD_COMMAND = OfpFlowModFailedCode(openflow_13.OfpFlowModFailedCode_OFPFMFC_BAD_COMMAND)
+const OfpFlowModFailedCode_OFPFMFC_BAD_FLAGS = OfpFlowModFailedCode(openflow_13.OfpFlowModFailedCode_OFPFMFC_BAD_FLAGS)
+
+// ofp_group_mod_failed_code from public import voltha_protos/openflow_13.proto
+type OfpGroupModFailedCode = openflow_13.OfpGroupModFailedCode
+
+var OfpGroupModFailedCode_name = openflow_13.OfpGroupModFailedCode_name
+var OfpGroupModFailedCode_value = openflow_13.OfpGroupModFailedCode_value
+
+const OfpGroupModFailedCode_OFPGMFC_GROUP_EXISTS = OfpGroupModFailedCode(openflow_13.OfpGroupModFailedCode_OFPGMFC_GROUP_EXISTS)
+const OfpGroupModFailedCode_OFPGMFC_INVALID_GROUP = OfpGroupModFailedCode(openflow_13.OfpGroupModFailedCode_OFPGMFC_INVALID_GROUP)
+const OfpGroupModFailedCode_OFPGMFC_WEIGHT_UNSUPPORTED = OfpGroupModFailedCode(openflow_13.OfpGroupModFailedCode_OFPGMFC_WEIGHT_UNSUPPORTED)
+const OfpGroupModFailedCode_OFPGMFC_OUT_OF_GROUPS = OfpGroupModFailedCode(openflow_13.OfpGroupModFailedCode_OFPGMFC_OUT_OF_GROUPS)
+const OfpGroupModFailedCode_OFPGMFC_OUT_OF_BUCKETS = OfpGroupModFailedCode(openflow_13.OfpGroupModFailedCode_OFPGMFC_OUT_OF_BUCKETS)
+const OfpGroupModFailedCode_OFPGMFC_CHAINING_UNSUPPORTED = OfpGroupModFailedCode(openflow_13.OfpGroupModFailedCode_OFPGMFC_CHAINING_UNSUPPORTED)
+const OfpGroupModFailedCode_OFPGMFC_WATCH_UNSUPPORTED = OfpGroupModFailedCode(openflow_13.OfpGroupModFailedCode_OFPGMFC_WATCH_UNSUPPORTED)
+const OfpGroupModFailedCode_OFPGMFC_LOOP = OfpGroupModFailedCode(openflow_13.OfpGroupModFailedCode_OFPGMFC_LOOP)
+const OfpGroupModFailedCode_OFPGMFC_UNKNOWN_GROUP = OfpGroupModFailedCode(openflow_13.OfpGroupModFailedCode_OFPGMFC_UNKNOWN_GROUP)
+const OfpGroupModFailedCode_OFPGMFC_CHAINED_GROUP = OfpGroupModFailedCode(openflow_13.OfpGroupModFailedCode_OFPGMFC_CHAINED_GROUP)
+const OfpGroupModFailedCode_OFPGMFC_BAD_TYPE = OfpGroupModFailedCode(openflow_13.OfpGroupModFailedCode_OFPGMFC_BAD_TYPE)
+const OfpGroupModFailedCode_OFPGMFC_BAD_COMMAND = OfpGroupModFailedCode(openflow_13.OfpGroupModFailedCode_OFPGMFC_BAD_COMMAND)
+const OfpGroupModFailedCode_OFPGMFC_BAD_BUCKET = OfpGroupModFailedCode(openflow_13.OfpGroupModFailedCode_OFPGMFC_BAD_BUCKET)
+const OfpGroupModFailedCode_OFPGMFC_BAD_WATCH = OfpGroupModFailedCode(openflow_13.OfpGroupModFailedCode_OFPGMFC_BAD_WATCH)
+const OfpGroupModFailedCode_OFPGMFC_EPERM = OfpGroupModFailedCode(openflow_13.OfpGroupModFailedCode_OFPGMFC_EPERM)
+
+// ofp_port_mod_failed_code from public import voltha_protos/openflow_13.proto
+type OfpPortModFailedCode = openflow_13.OfpPortModFailedCode
+
+var OfpPortModFailedCode_name = openflow_13.OfpPortModFailedCode_name
+var OfpPortModFailedCode_value = openflow_13.OfpPortModFailedCode_value
+
+const OfpPortModFailedCode_OFPPMFC_BAD_PORT = OfpPortModFailedCode(openflow_13.OfpPortModFailedCode_OFPPMFC_BAD_PORT)
+const OfpPortModFailedCode_OFPPMFC_BAD_HW_ADDR = OfpPortModFailedCode(openflow_13.OfpPortModFailedCode_OFPPMFC_BAD_HW_ADDR)
+const OfpPortModFailedCode_OFPPMFC_BAD_CONFIG = OfpPortModFailedCode(openflow_13.OfpPortModFailedCode_OFPPMFC_BAD_CONFIG)
+const OfpPortModFailedCode_OFPPMFC_BAD_ADVERTISE = OfpPortModFailedCode(openflow_13.OfpPortModFailedCode_OFPPMFC_BAD_ADVERTISE)
+const OfpPortModFailedCode_OFPPMFC_EPERM = OfpPortModFailedCode(openflow_13.OfpPortModFailedCode_OFPPMFC_EPERM)
+
+// ofp_table_mod_failed_code from public import voltha_protos/openflow_13.proto
+type OfpTableModFailedCode = openflow_13.OfpTableModFailedCode
+
+var OfpTableModFailedCode_name = openflow_13.OfpTableModFailedCode_name
+var OfpTableModFailedCode_value = openflow_13.OfpTableModFailedCode_value
+
+const OfpTableModFailedCode_OFPTMFC_BAD_TABLE = OfpTableModFailedCode(openflow_13.OfpTableModFailedCode_OFPTMFC_BAD_TABLE)
+const OfpTableModFailedCode_OFPTMFC_BAD_CONFIG = OfpTableModFailedCode(openflow_13.OfpTableModFailedCode_OFPTMFC_BAD_CONFIG)
+const OfpTableModFailedCode_OFPTMFC_EPERM = OfpTableModFailedCode(openflow_13.OfpTableModFailedCode_OFPTMFC_EPERM)
+
+// ofp_queue_op_failed_code from public import voltha_protos/openflow_13.proto
+type OfpQueueOpFailedCode = openflow_13.OfpQueueOpFailedCode
+
+var OfpQueueOpFailedCode_name = openflow_13.OfpQueueOpFailedCode_name
+var OfpQueueOpFailedCode_value = openflow_13.OfpQueueOpFailedCode_value
+
+const OfpQueueOpFailedCode_OFPQOFC_BAD_PORT = OfpQueueOpFailedCode(openflow_13.OfpQueueOpFailedCode_OFPQOFC_BAD_PORT)
+const OfpQueueOpFailedCode_OFPQOFC_BAD_QUEUE = OfpQueueOpFailedCode(openflow_13.OfpQueueOpFailedCode_OFPQOFC_BAD_QUEUE)
+const OfpQueueOpFailedCode_OFPQOFC_EPERM = OfpQueueOpFailedCode(openflow_13.OfpQueueOpFailedCode_OFPQOFC_EPERM)
+
+// ofp_switch_config_failed_code from public import voltha_protos/openflow_13.proto
+type OfpSwitchConfigFailedCode = openflow_13.OfpSwitchConfigFailedCode
+
+var OfpSwitchConfigFailedCode_name = openflow_13.OfpSwitchConfigFailedCode_name
+var OfpSwitchConfigFailedCode_value = openflow_13.OfpSwitchConfigFailedCode_value
+
+const OfpSwitchConfigFailedCode_OFPSCFC_BAD_FLAGS = OfpSwitchConfigFailedCode(openflow_13.OfpSwitchConfigFailedCode_OFPSCFC_BAD_FLAGS)
+const OfpSwitchConfigFailedCode_OFPSCFC_BAD_LEN = OfpSwitchConfigFailedCode(openflow_13.OfpSwitchConfigFailedCode_OFPSCFC_BAD_LEN)
+const OfpSwitchConfigFailedCode_OFPSCFC_EPERM = OfpSwitchConfigFailedCode(openflow_13.OfpSwitchConfigFailedCode_OFPSCFC_EPERM)
+
+// ofp_role_request_failed_code from public import voltha_protos/openflow_13.proto
+type OfpRoleRequestFailedCode = openflow_13.OfpRoleRequestFailedCode
+
+var OfpRoleRequestFailedCode_name = openflow_13.OfpRoleRequestFailedCode_name
+var OfpRoleRequestFailedCode_value = openflow_13.OfpRoleRequestFailedCode_value
+
+const OfpRoleRequestFailedCode_OFPRRFC_STALE = OfpRoleRequestFailedCode(openflow_13.OfpRoleRequestFailedCode_OFPRRFC_STALE)
+const OfpRoleRequestFailedCode_OFPRRFC_UNSUP = OfpRoleRequestFailedCode(openflow_13.OfpRoleRequestFailedCode_OFPRRFC_UNSUP)
+const OfpRoleRequestFailedCode_OFPRRFC_BAD_ROLE = OfpRoleRequestFailedCode(openflow_13.OfpRoleRequestFailedCode_OFPRRFC_BAD_ROLE)
+
+// ofp_meter_mod_failed_code from public import voltha_protos/openflow_13.proto
+type OfpMeterModFailedCode = openflow_13.OfpMeterModFailedCode
+
+var OfpMeterModFailedCode_name = openflow_13.OfpMeterModFailedCode_name
+var OfpMeterModFailedCode_value = openflow_13.OfpMeterModFailedCode_value
+
+const OfpMeterModFailedCode_OFPMMFC_UNKNOWN = OfpMeterModFailedCode(openflow_13.OfpMeterModFailedCode_OFPMMFC_UNKNOWN)
+const OfpMeterModFailedCode_OFPMMFC_METER_EXISTS = OfpMeterModFailedCode(openflow_13.OfpMeterModFailedCode_OFPMMFC_METER_EXISTS)
+const OfpMeterModFailedCode_OFPMMFC_INVALID_METER = OfpMeterModFailedCode(openflow_13.OfpMeterModFailedCode_OFPMMFC_INVALID_METER)
+const OfpMeterModFailedCode_OFPMMFC_UNKNOWN_METER = OfpMeterModFailedCode(openflow_13.OfpMeterModFailedCode_OFPMMFC_UNKNOWN_METER)
+const OfpMeterModFailedCode_OFPMMFC_BAD_COMMAND = OfpMeterModFailedCode(openflow_13.OfpMeterModFailedCode_OFPMMFC_BAD_COMMAND)
+const OfpMeterModFailedCode_OFPMMFC_BAD_FLAGS = OfpMeterModFailedCode(openflow_13.OfpMeterModFailedCode_OFPMMFC_BAD_FLAGS)
+const OfpMeterModFailedCode_OFPMMFC_BAD_RATE = OfpMeterModFailedCode(openflow_13.OfpMeterModFailedCode_OFPMMFC_BAD_RATE)
+const OfpMeterModFailedCode_OFPMMFC_BAD_BURST = OfpMeterModFailedCode(openflow_13.OfpMeterModFailedCode_OFPMMFC_BAD_BURST)
+const OfpMeterModFailedCode_OFPMMFC_BAD_BAND = OfpMeterModFailedCode(openflow_13.OfpMeterModFailedCode_OFPMMFC_BAD_BAND)
+const OfpMeterModFailedCode_OFPMMFC_BAD_BAND_VALUE = OfpMeterModFailedCode(openflow_13.OfpMeterModFailedCode_OFPMMFC_BAD_BAND_VALUE)
+const OfpMeterModFailedCode_OFPMMFC_OUT_OF_METERS = OfpMeterModFailedCode(openflow_13.OfpMeterModFailedCode_OFPMMFC_OUT_OF_METERS)
+const OfpMeterModFailedCode_OFPMMFC_OUT_OF_BANDS = OfpMeterModFailedCode(openflow_13.OfpMeterModFailedCode_OFPMMFC_OUT_OF_BANDS)
+
+// ofp_table_features_failed_code from public import voltha_protos/openflow_13.proto
+type OfpTableFeaturesFailedCode = openflow_13.OfpTableFeaturesFailedCode
+
+var OfpTableFeaturesFailedCode_name = openflow_13.OfpTableFeaturesFailedCode_name
+var OfpTableFeaturesFailedCode_value = openflow_13.OfpTableFeaturesFailedCode_value
+
+const OfpTableFeaturesFailedCode_OFPTFFC_BAD_TABLE = OfpTableFeaturesFailedCode(openflow_13.OfpTableFeaturesFailedCode_OFPTFFC_BAD_TABLE)
+const OfpTableFeaturesFailedCode_OFPTFFC_BAD_METADATA = OfpTableFeaturesFailedCode(openflow_13.OfpTableFeaturesFailedCode_OFPTFFC_BAD_METADATA)
+const OfpTableFeaturesFailedCode_OFPTFFC_BAD_TYPE = OfpTableFeaturesFailedCode(openflow_13.OfpTableFeaturesFailedCode_OFPTFFC_BAD_TYPE)
+const OfpTableFeaturesFailedCode_OFPTFFC_BAD_LEN = OfpTableFeaturesFailedCode(openflow_13.OfpTableFeaturesFailedCode_OFPTFFC_BAD_LEN)
+const OfpTableFeaturesFailedCode_OFPTFFC_BAD_ARGUMENT = OfpTableFeaturesFailedCode(openflow_13.OfpTableFeaturesFailedCode_OFPTFFC_BAD_ARGUMENT)
+const OfpTableFeaturesFailedCode_OFPTFFC_EPERM = OfpTableFeaturesFailedCode(openflow_13.OfpTableFeaturesFailedCode_OFPTFFC_EPERM)
+
+// ofp_multipart_type from public import voltha_protos/openflow_13.proto
+type OfpMultipartType = openflow_13.OfpMultipartType
+
+var OfpMultipartType_name = openflow_13.OfpMultipartType_name
+var OfpMultipartType_value = openflow_13.OfpMultipartType_value
+
+const OfpMultipartType_OFPMP_DESC = OfpMultipartType(openflow_13.OfpMultipartType_OFPMP_DESC)
+const OfpMultipartType_OFPMP_FLOW = OfpMultipartType(openflow_13.OfpMultipartType_OFPMP_FLOW)
+const OfpMultipartType_OFPMP_AGGREGATE = OfpMultipartType(openflow_13.OfpMultipartType_OFPMP_AGGREGATE)
+const OfpMultipartType_OFPMP_TABLE = OfpMultipartType(openflow_13.OfpMultipartType_OFPMP_TABLE)
+const OfpMultipartType_OFPMP_PORT_STATS = OfpMultipartType(openflow_13.OfpMultipartType_OFPMP_PORT_STATS)
+const OfpMultipartType_OFPMP_QUEUE = OfpMultipartType(openflow_13.OfpMultipartType_OFPMP_QUEUE)
+const OfpMultipartType_OFPMP_GROUP = OfpMultipartType(openflow_13.OfpMultipartType_OFPMP_GROUP)
+const OfpMultipartType_OFPMP_GROUP_DESC = OfpMultipartType(openflow_13.OfpMultipartType_OFPMP_GROUP_DESC)
+const OfpMultipartType_OFPMP_GROUP_FEATURES = OfpMultipartType(openflow_13.OfpMultipartType_OFPMP_GROUP_FEATURES)
+const OfpMultipartType_OFPMP_METER = OfpMultipartType(openflow_13.OfpMultipartType_OFPMP_METER)
+const OfpMultipartType_OFPMP_METER_CONFIG = OfpMultipartType(openflow_13.OfpMultipartType_OFPMP_METER_CONFIG)
+const OfpMultipartType_OFPMP_METER_FEATURES = OfpMultipartType(openflow_13.OfpMultipartType_OFPMP_METER_FEATURES)
+const OfpMultipartType_OFPMP_TABLE_FEATURES = OfpMultipartType(openflow_13.OfpMultipartType_OFPMP_TABLE_FEATURES)
+const OfpMultipartType_OFPMP_PORT_DESC = OfpMultipartType(openflow_13.OfpMultipartType_OFPMP_PORT_DESC)
+const OfpMultipartType_OFPMP_EXPERIMENTER = OfpMultipartType(openflow_13.OfpMultipartType_OFPMP_EXPERIMENTER)
+
+// ofp_multipart_request_flags from public import voltha_protos/openflow_13.proto
+type OfpMultipartRequestFlags = openflow_13.OfpMultipartRequestFlags
+
+var OfpMultipartRequestFlags_name = openflow_13.OfpMultipartRequestFlags_name
+var OfpMultipartRequestFlags_value = openflow_13.OfpMultipartRequestFlags_value
+
+const OfpMultipartRequestFlags_OFPMPF_REQ_INVALID = OfpMultipartRequestFlags(openflow_13.OfpMultipartRequestFlags_OFPMPF_REQ_INVALID)
+const OfpMultipartRequestFlags_OFPMPF_REQ_MORE = OfpMultipartRequestFlags(openflow_13.OfpMultipartRequestFlags_OFPMPF_REQ_MORE)
+
+// ofp_multipart_reply_flags from public import voltha_protos/openflow_13.proto
+type OfpMultipartReplyFlags = openflow_13.OfpMultipartReplyFlags
+
+var OfpMultipartReplyFlags_name = openflow_13.OfpMultipartReplyFlags_name
+var OfpMultipartReplyFlags_value = openflow_13.OfpMultipartReplyFlags_value
+
+const OfpMultipartReplyFlags_OFPMPF_REPLY_INVALID = OfpMultipartReplyFlags(openflow_13.OfpMultipartReplyFlags_OFPMPF_REPLY_INVALID)
+const OfpMultipartReplyFlags_OFPMPF_REPLY_MORE = OfpMultipartReplyFlags(openflow_13.OfpMultipartReplyFlags_OFPMPF_REPLY_MORE)
+
+// ofp_table_feature_prop_type from public import voltha_protos/openflow_13.proto
+type OfpTableFeaturePropType = openflow_13.OfpTableFeaturePropType
+
+var OfpTableFeaturePropType_name = openflow_13.OfpTableFeaturePropType_name
+var OfpTableFeaturePropType_value = openflow_13.OfpTableFeaturePropType_value
+
+const OfpTableFeaturePropType_OFPTFPT_INSTRUCTIONS = OfpTableFeaturePropType(openflow_13.OfpTableFeaturePropType_OFPTFPT_INSTRUCTIONS)
+const OfpTableFeaturePropType_OFPTFPT_INSTRUCTIONS_MISS = OfpTableFeaturePropType(openflow_13.OfpTableFeaturePropType_OFPTFPT_INSTRUCTIONS_MISS)
+const OfpTableFeaturePropType_OFPTFPT_NEXT_TABLES = OfpTableFeaturePropType(openflow_13.OfpTableFeaturePropType_OFPTFPT_NEXT_TABLES)
+const OfpTableFeaturePropType_OFPTFPT_NEXT_TABLES_MISS = OfpTableFeaturePropType(openflow_13.OfpTableFeaturePropType_OFPTFPT_NEXT_TABLES_MISS)
+const OfpTableFeaturePropType_OFPTFPT_WRITE_ACTIONS = OfpTableFeaturePropType(openflow_13.OfpTableFeaturePropType_OFPTFPT_WRITE_ACTIONS)
+const OfpTableFeaturePropType_OFPTFPT_WRITE_ACTIONS_MISS = OfpTableFeaturePropType(openflow_13.OfpTableFeaturePropType_OFPTFPT_WRITE_ACTIONS_MISS)
+const OfpTableFeaturePropType_OFPTFPT_APPLY_ACTIONS = OfpTableFeaturePropType(openflow_13.OfpTableFeaturePropType_OFPTFPT_APPLY_ACTIONS)
+const OfpTableFeaturePropType_OFPTFPT_APPLY_ACTIONS_MISS = OfpTableFeaturePropType(openflow_13.OfpTableFeaturePropType_OFPTFPT_APPLY_ACTIONS_MISS)
+const OfpTableFeaturePropType_OFPTFPT_MATCH = OfpTableFeaturePropType(openflow_13.OfpTableFeaturePropType_OFPTFPT_MATCH)
+const OfpTableFeaturePropType_OFPTFPT_WILDCARDS = OfpTableFeaturePropType(openflow_13.OfpTableFeaturePropType_OFPTFPT_WILDCARDS)
+const OfpTableFeaturePropType_OFPTFPT_WRITE_SETFIELD = OfpTableFeaturePropType(openflow_13.OfpTableFeaturePropType_OFPTFPT_WRITE_SETFIELD)
+const OfpTableFeaturePropType_OFPTFPT_WRITE_SETFIELD_MISS = OfpTableFeaturePropType(openflow_13.OfpTableFeaturePropType_OFPTFPT_WRITE_SETFIELD_MISS)
+const OfpTableFeaturePropType_OFPTFPT_APPLY_SETFIELD = OfpTableFeaturePropType(openflow_13.OfpTableFeaturePropType_OFPTFPT_APPLY_SETFIELD)
+const OfpTableFeaturePropType_OFPTFPT_APPLY_SETFIELD_MISS = OfpTableFeaturePropType(openflow_13.OfpTableFeaturePropType_OFPTFPT_APPLY_SETFIELD_MISS)
+const OfpTableFeaturePropType_OFPTFPT_EXPERIMENTER = OfpTableFeaturePropType(openflow_13.OfpTableFeaturePropType_OFPTFPT_EXPERIMENTER)
+const OfpTableFeaturePropType_OFPTFPT_EXPERIMENTER_MISS = OfpTableFeaturePropType(openflow_13.OfpTableFeaturePropType_OFPTFPT_EXPERIMENTER_MISS)
+
+// ofp_group_capabilities from public import voltha_protos/openflow_13.proto
+type OfpGroupCapabilities = openflow_13.OfpGroupCapabilities
+
+var OfpGroupCapabilities_name = openflow_13.OfpGroupCapabilities_name
+var OfpGroupCapabilities_value = openflow_13.OfpGroupCapabilities_value
+
+const OfpGroupCapabilities_OFPGFC_INVALID = OfpGroupCapabilities(openflow_13.OfpGroupCapabilities_OFPGFC_INVALID)
+const OfpGroupCapabilities_OFPGFC_SELECT_WEIGHT = OfpGroupCapabilities(openflow_13.OfpGroupCapabilities_OFPGFC_SELECT_WEIGHT)
+const OfpGroupCapabilities_OFPGFC_SELECT_LIVENESS = OfpGroupCapabilities(openflow_13.OfpGroupCapabilities_OFPGFC_SELECT_LIVENESS)
+const OfpGroupCapabilities_OFPGFC_CHAINING = OfpGroupCapabilities(openflow_13.OfpGroupCapabilities_OFPGFC_CHAINING)
+const OfpGroupCapabilities_OFPGFC_CHAINING_CHECKS = OfpGroupCapabilities(openflow_13.OfpGroupCapabilities_OFPGFC_CHAINING_CHECKS)
+
+// ofp_queue_properties from public import voltha_protos/openflow_13.proto
+type OfpQueueProperties = openflow_13.OfpQueueProperties
+
+var OfpQueueProperties_name = openflow_13.OfpQueueProperties_name
+var OfpQueueProperties_value = openflow_13.OfpQueueProperties_value
+
+const OfpQueueProperties_OFPQT_INVALID = OfpQueueProperties(openflow_13.OfpQueueProperties_OFPQT_INVALID)
+const OfpQueueProperties_OFPQT_MIN_RATE = OfpQueueProperties(openflow_13.OfpQueueProperties_OFPQT_MIN_RATE)
+const OfpQueueProperties_OFPQT_MAX_RATE = OfpQueueProperties(openflow_13.OfpQueueProperties_OFPQT_MAX_RATE)
+const OfpQueueProperties_OFPQT_EXPERIMENTER = OfpQueueProperties(openflow_13.OfpQueueProperties_OFPQT_EXPERIMENTER)
+
+// ofp_controller_role from public import voltha_protos/openflow_13.proto
+type OfpControllerRole = openflow_13.OfpControllerRole
+
+var OfpControllerRole_name = openflow_13.OfpControllerRole_name
+var OfpControllerRole_value = openflow_13.OfpControllerRole_value
+
+const OfpControllerRole_OFPCR_ROLE_NOCHANGE = OfpControllerRole(openflow_13.OfpControllerRole_OFPCR_ROLE_NOCHANGE)
+const OfpControllerRole_OFPCR_ROLE_EQUAL = OfpControllerRole(openflow_13.OfpControllerRole_OFPCR_ROLE_EQUAL)
+const OfpControllerRole_OFPCR_ROLE_MASTER = OfpControllerRole(openflow_13.OfpControllerRole_OFPCR_ROLE_MASTER)
+const OfpControllerRole_OFPCR_ROLE_SLAVE = OfpControllerRole(openflow_13.OfpControllerRole_OFPCR_ROLE_SLAVE)
+
+type AlarmFilterRuleKey_AlarmFilterRuleKey int32
+
+const (
+ AlarmFilterRuleKey_id AlarmFilterRuleKey_AlarmFilterRuleKey = 0
+ AlarmFilterRuleKey_type AlarmFilterRuleKey_AlarmFilterRuleKey = 1
+ AlarmFilterRuleKey_severity AlarmFilterRuleKey_AlarmFilterRuleKey = 2
+ AlarmFilterRuleKey_resource_id AlarmFilterRuleKey_AlarmFilterRuleKey = 3
+ AlarmFilterRuleKey_category AlarmFilterRuleKey_AlarmFilterRuleKey = 4
+ AlarmFilterRuleKey_device_id AlarmFilterRuleKey_AlarmFilterRuleKey = 5
+)
+
+var AlarmFilterRuleKey_AlarmFilterRuleKey_name = map[int32]string{
+ 0: "id",
+ 1: "type",
+ 2: "severity",
+ 3: "resource_id",
+ 4: "category",
+ 5: "device_id",
+}
+var AlarmFilterRuleKey_AlarmFilterRuleKey_value = map[string]int32{
+ "id": 0,
+ "type": 1,
+ "severity": 2,
+ "resource_id": 3,
+ "category": 4,
+ "device_id": 5,
+}
+
+func (x AlarmFilterRuleKey_AlarmFilterRuleKey) String() string {
+ return proto.EnumName(AlarmFilterRuleKey_AlarmFilterRuleKey_name, int32(x))
+}
+func (AlarmFilterRuleKey_AlarmFilterRuleKey) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_voltha_1f7600b5a75eb6d1, []int{2, 0}
+}
+
+type SelfTestResponse_SelfTestResult int32
+
+const (
+ SelfTestResponse_SUCCESS SelfTestResponse_SelfTestResult = 0
+ SelfTestResponse_FAILURE SelfTestResponse_SelfTestResult = 1
+ SelfTestResponse_NOT_SUPPORTED SelfTestResponse_SelfTestResult = 2
+ SelfTestResponse_UNKNOWN_ERROR SelfTestResponse_SelfTestResult = 3
+)
+
+var SelfTestResponse_SelfTestResult_name = map[int32]string{
+ 0: "SUCCESS",
+ 1: "FAILURE",
+ 2: "NOT_SUPPORTED",
+ 3: "UNKNOWN_ERROR",
+}
+var SelfTestResponse_SelfTestResult_value = map[string]int32{
+ "SUCCESS": 0,
+ "FAILURE": 1,
+ "NOT_SUPPORTED": 2,
+ "UNKNOWN_ERROR": 3,
+}
+
+func (x SelfTestResponse_SelfTestResult) String() string {
+ return proto.EnumName(SelfTestResponse_SelfTestResult_name, int32(x))
+}
+func (SelfTestResponse_SelfTestResult) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_voltha_1f7600b5a75eb6d1, []int{10, 0}
+}
+
+type DeviceGroup struct {
+ Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ LogicalDevices []*LogicalDevice `protobuf:"bytes,2,rep,name=logical_devices,json=logicalDevices,proto3" json:"logical_devices,omitempty"`
+ Devices []*Device `protobuf:"bytes,3,rep,name=devices,proto3" json:"devices,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *DeviceGroup) Reset() { *m = DeviceGroup{} }
+func (m *DeviceGroup) String() string { return proto.CompactTextString(m) }
+func (*DeviceGroup) ProtoMessage() {}
+func (*DeviceGroup) Descriptor() ([]byte, []int) {
+ return fileDescriptor_voltha_1f7600b5a75eb6d1, []int{0}
+}
+func (m *DeviceGroup) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_DeviceGroup.Unmarshal(m, b)
+}
+func (m *DeviceGroup) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_DeviceGroup.Marshal(b, m, deterministic)
+}
+func (dst *DeviceGroup) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_DeviceGroup.Merge(dst, src)
+}
+func (m *DeviceGroup) XXX_Size() int {
+ return xxx_messageInfo_DeviceGroup.Size(m)
+}
+func (m *DeviceGroup) XXX_DiscardUnknown() {
+ xxx_messageInfo_DeviceGroup.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_DeviceGroup proto.InternalMessageInfo
+
+func (m *DeviceGroup) GetId() string {
+ if m != nil {
+ return m.Id
+ }
+ return ""
+}
+
+func (m *DeviceGroup) GetLogicalDevices() []*LogicalDevice {
+ if m != nil {
+ return m.LogicalDevices
+ }
+ return nil
+}
+
+func (m *DeviceGroup) GetDevices() []*Device {
+ if m != nil {
+ return m.Devices
+ }
+ return nil
+}
+
+type DeviceGroups struct {
+ Items []*DeviceGroup `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *DeviceGroups) Reset() { *m = DeviceGroups{} }
+func (m *DeviceGroups) String() string { return proto.CompactTextString(m) }
+func (*DeviceGroups) ProtoMessage() {}
+func (*DeviceGroups) Descriptor() ([]byte, []int) {
+ return fileDescriptor_voltha_1f7600b5a75eb6d1, []int{1}
+}
+func (m *DeviceGroups) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_DeviceGroups.Unmarshal(m, b)
+}
+func (m *DeviceGroups) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_DeviceGroups.Marshal(b, m, deterministic)
+}
+func (dst *DeviceGroups) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_DeviceGroups.Merge(dst, src)
+}
+func (m *DeviceGroups) XXX_Size() int {
+ return xxx_messageInfo_DeviceGroups.Size(m)
+}
+func (m *DeviceGroups) XXX_DiscardUnknown() {
+ xxx_messageInfo_DeviceGroups.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_DeviceGroups proto.InternalMessageInfo
+
+func (m *DeviceGroups) GetItems() []*DeviceGroup {
+ if m != nil {
+ return m.Items
+ }
+ return nil
+}
+
+type AlarmFilterRuleKey struct {
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *AlarmFilterRuleKey) Reset() { *m = AlarmFilterRuleKey{} }
+func (m *AlarmFilterRuleKey) String() string { return proto.CompactTextString(m) }
+func (*AlarmFilterRuleKey) ProtoMessage() {}
+func (*AlarmFilterRuleKey) Descriptor() ([]byte, []int) {
+ return fileDescriptor_voltha_1f7600b5a75eb6d1, []int{2}
+}
+func (m *AlarmFilterRuleKey) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_AlarmFilterRuleKey.Unmarshal(m, b)
+}
+func (m *AlarmFilterRuleKey) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_AlarmFilterRuleKey.Marshal(b, m, deterministic)
+}
+func (dst *AlarmFilterRuleKey) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_AlarmFilterRuleKey.Merge(dst, src)
+}
+func (m *AlarmFilterRuleKey) XXX_Size() int {
+ return xxx_messageInfo_AlarmFilterRuleKey.Size(m)
+}
+func (m *AlarmFilterRuleKey) XXX_DiscardUnknown() {
+ xxx_messageInfo_AlarmFilterRuleKey.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_AlarmFilterRuleKey proto.InternalMessageInfo
+
+type AlarmFilterRule struct {
+ Key AlarmFilterRuleKey_AlarmFilterRuleKey `protobuf:"varint,1,opt,name=key,proto3,enum=voltha.AlarmFilterRuleKey_AlarmFilterRuleKey" json:"key,omitempty"`
+ Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *AlarmFilterRule) Reset() { *m = AlarmFilterRule{} }
+func (m *AlarmFilterRule) String() string { return proto.CompactTextString(m) }
+func (*AlarmFilterRule) ProtoMessage() {}
+func (*AlarmFilterRule) Descriptor() ([]byte, []int) {
+ return fileDescriptor_voltha_1f7600b5a75eb6d1, []int{3}
+}
+func (m *AlarmFilterRule) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_AlarmFilterRule.Unmarshal(m, b)
+}
+func (m *AlarmFilterRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_AlarmFilterRule.Marshal(b, m, deterministic)
+}
+func (dst *AlarmFilterRule) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_AlarmFilterRule.Merge(dst, src)
+}
+func (m *AlarmFilterRule) XXX_Size() int {
+ return xxx_messageInfo_AlarmFilterRule.Size(m)
+}
+func (m *AlarmFilterRule) XXX_DiscardUnknown() {
+ xxx_messageInfo_AlarmFilterRule.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_AlarmFilterRule proto.InternalMessageInfo
+
+func (m *AlarmFilterRule) GetKey() AlarmFilterRuleKey_AlarmFilterRuleKey {
+ if m != nil {
+ return m.Key
+ }
+ return AlarmFilterRuleKey_id
+}
+
+func (m *AlarmFilterRule) GetValue() string {
+ if m != nil {
+ return m.Value
+ }
+ return ""
+}
+
+type AlarmFilter struct {
+ Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ Rules []*AlarmFilterRule `protobuf:"bytes,2,rep,name=rules,proto3" json:"rules,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *AlarmFilter) Reset() { *m = AlarmFilter{} }
+func (m *AlarmFilter) String() string { return proto.CompactTextString(m) }
+func (*AlarmFilter) ProtoMessage() {}
+func (*AlarmFilter) Descriptor() ([]byte, []int) {
+ return fileDescriptor_voltha_1f7600b5a75eb6d1, []int{4}
+}
+func (m *AlarmFilter) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_AlarmFilter.Unmarshal(m, b)
+}
+func (m *AlarmFilter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_AlarmFilter.Marshal(b, m, deterministic)
+}
+func (dst *AlarmFilter) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_AlarmFilter.Merge(dst, src)
+}
+func (m *AlarmFilter) XXX_Size() int {
+ return xxx_messageInfo_AlarmFilter.Size(m)
+}
+func (m *AlarmFilter) XXX_DiscardUnknown() {
+ xxx_messageInfo_AlarmFilter.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_AlarmFilter proto.InternalMessageInfo
+
+func (m *AlarmFilter) GetId() string {
+ if m != nil {
+ return m.Id
+ }
+ return ""
+}
+
+func (m *AlarmFilter) GetRules() []*AlarmFilterRule {
+ if m != nil {
+ return m.Rules
+ }
+ return nil
+}
+
+type AlarmFilters struct {
+ Filters []*AlarmFilter `protobuf:"bytes,1,rep,name=filters,proto3" json:"filters,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *AlarmFilters) Reset() { *m = AlarmFilters{} }
+func (m *AlarmFilters) String() string { return proto.CompactTextString(m) }
+func (*AlarmFilters) ProtoMessage() {}
+func (*AlarmFilters) Descriptor() ([]byte, []int) {
+ return fileDescriptor_voltha_1f7600b5a75eb6d1, []int{5}
+}
+func (m *AlarmFilters) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_AlarmFilters.Unmarshal(m, b)
+}
+func (m *AlarmFilters) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_AlarmFilters.Marshal(b, m, deterministic)
+}
+func (dst *AlarmFilters) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_AlarmFilters.Merge(dst, src)
+}
+func (m *AlarmFilters) XXX_Size() int {
+ return xxx_messageInfo_AlarmFilters.Size(m)
+}
+func (m *AlarmFilters) XXX_DiscardUnknown() {
+ xxx_messageInfo_AlarmFilters.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_AlarmFilters proto.InternalMessageInfo
+
+func (m *AlarmFilters) GetFilters() []*AlarmFilter {
+ if m != nil {
+ return m.Filters
+ }
+ return nil
+}
+
+type Logging struct {
+ Level common.LogLevel_LogLevel `protobuf:"varint,1,opt,name=level,proto3,enum=voltha.LogLevel_LogLevel" json:"level,omitempty"`
+ PackageName string `protobuf:"bytes,2,opt,name=package_name,json=packageName,proto3" json:"package_name,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *Logging) Reset() { *m = Logging{} }
+func (m *Logging) String() string { return proto.CompactTextString(m) }
+func (*Logging) ProtoMessage() {}
+func (*Logging) Descriptor() ([]byte, []int) {
+ return fileDescriptor_voltha_1f7600b5a75eb6d1, []int{6}
+}
+func (m *Logging) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_Logging.Unmarshal(m, b)
+}
+func (m *Logging) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_Logging.Marshal(b, m, deterministic)
+}
+func (dst *Logging) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_Logging.Merge(dst, src)
+}
+func (m *Logging) XXX_Size() int {
+ return xxx_messageInfo_Logging.Size(m)
+}
+func (m *Logging) XXX_DiscardUnknown() {
+ xxx_messageInfo_Logging.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_Logging proto.InternalMessageInfo
+
+func (m *Logging) GetLevel() common.LogLevel_LogLevel {
+ if m != nil {
+ return m.Level
+ }
+ return common.LogLevel_DEBUG
+}
+
+func (m *Logging) GetPackageName() string {
+ if m != nil {
+ return m.PackageName
+ }
+ return ""
+}
+
+// CoreInstance represents a core instance. It is data held in memory when a core
+// is running. This data is not persistent.
+type CoreInstance struct {
+ InstanceId string `protobuf:"bytes,1,opt,name=instance_id,json=instanceId,proto3" json:"instance_id,omitempty"`
+ Health *HealthStatus `protobuf:"bytes,2,opt,name=health,proto3" json:"health,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *CoreInstance) Reset() { *m = CoreInstance{} }
+func (m *CoreInstance) String() string { return proto.CompactTextString(m) }
+func (*CoreInstance) ProtoMessage() {}
+func (*CoreInstance) Descriptor() ([]byte, []int) {
+ return fileDescriptor_voltha_1f7600b5a75eb6d1, []int{7}
+}
+func (m *CoreInstance) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_CoreInstance.Unmarshal(m, b)
+}
+func (m *CoreInstance) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_CoreInstance.Marshal(b, m, deterministic)
+}
+func (dst *CoreInstance) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_CoreInstance.Merge(dst, src)
+}
+func (m *CoreInstance) XXX_Size() int {
+ return xxx_messageInfo_CoreInstance.Size(m)
+}
+func (m *CoreInstance) XXX_DiscardUnknown() {
+ xxx_messageInfo_CoreInstance.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_CoreInstance proto.InternalMessageInfo
+
+func (m *CoreInstance) GetInstanceId() string {
+ if m != nil {
+ return m.InstanceId
+ }
+ return ""
+}
+
+func (m *CoreInstance) GetHealth() *HealthStatus {
+ if m != nil {
+ return m.Health
+ }
+ return nil
+}
+
+type CoreInstances struct {
+ Items []*CoreInstance `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *CoreInstances) Reset() { *m = CoreInstances{} }
+func (m *CoreInstances) String() string { return proto.CompactTextString(m) }
+func (*CoreInstances) ProtoMessage() {}
+func (*CoreInstances) Descriptor() ([]byte, []int) {
+ return fileDescriptor_voltha_1f7600b5a75eb6d1, []int{8}
+}
+func (m *CoreInstances) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_CoreInstances.Unmarshal(m, b)
+}
+func (m *CoreInstances) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_CoreInstances.Marshal(b, m, deterministic)
+}
+func (dst *CoreInstances) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_CoreInstances.Merge(dst, src)
+}
+func (m *CoreInstances) XXX_Size() int {
+ return xxx_messageInfo_CoreInstances.Size(m)
+}
+func (m *CoreInstances) XXX_DiscardUnknown() {
+ xxx_messageInfo_CoreInstances.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_CoreInstances proto.InternalMessageInfo
+
+func (m *CoreInstances) GetItems() []*CoreInstance {
+ if m != nil {
+ return m.Items
+ }
+ return nil
+}
+
+// Voltha represents the Voltha cluster data. Each Core instance will hold a subset of
+// the entire cluster. However, some items (e.g. adapters) will be held by all cores
+// for better performance
+type Voltha struct {
+ Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
+ Adapters []*Adapter `protobuf:"bytes,2,rep,name=adapters,proto3" json:"adapters,omitempty"`
+ LogicalDevices []*LogicalDevice `protobuf:"bytes,3,rep,name=logical_devices,json=logicalDevices,proto3" json:"logical_devices,omitempty"`
+ Devices []*Device `protobuf:"bytes,4,rep,name=devices,proto3" json:"devices,omitempty"`
+ DeviceTypes []*DeviceType `protobuf:"bytes,5,rep,name=device_types,json=deviceTypes,proto3" json:"device_types,omitempty"`
+ DeviceGroups []*DeviceGroup `protobuf:"bytes,6,rep,name=device_groups,json=deviceGroups,proto3" json:"device_groups,omitempty"`
+ AlarmFilters []*AlarmFilter `protobuf:"bytes,7,rep,name=alarm_filters,json=alarmFilters,proto3" json:"alarm_filters,omitempty"`
+ OmciMibDatabase []*omci.MibDeviceData `protobuf:"bytes,28,rep,name=omci_mib_database,json=omciMibDatabase,proto3" json:"omci_mib_database,omitempty"`
+ OmciAlarmDatabase []*omci.AlarmDeviceData `protobuf:"bytes,29,rep,name=omci_alarm_database,json=omciAlarmDatabase,proto3" json:"omci_alarm_database,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *Voltha) Reset() { *m = Voltha{} }
+func (m *Voltha) String() string { return proto.CompactTextString(m) }
+func (*Voltha) ProtoMessage() {}
+func (*Voltha) Descriptor() ([]byte, []int) {
+ return fileDescriptor_voltha_1f7600b5a75eb6d1, []int{9}
+}
+func (m *Voltha) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_Voltha.Unmarshal(m, b)
+}
+func (m *Voltha) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_Voltha.Marshal(b, m, deterministic)
+}
+func (dst *Voltha) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_Voltha.Merge(dst, src)
+}
+func (m *Voltha) XXX_Size() int {
+ return xxx_messageInfo_Voltha.Size(m)
+}
+func (m *Voltha) XXX_DiscardUnknown() {
+ xxx_messageInfo_Voltha.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_Voltha proto.InternalMessageInfo
+
+func (m *Voltha) GetVersion() string {
+ if m != nil {
+ return m.Version
+ }
+ return ""
+}
+
+func (m *Voltha) GetAdapters() []*Adapter {
+ if m != nil {
+ return m.Adapters
+ }
+ return nil
+}
+
+func (m *Voltha) GetLogicalDevices() []*LogicalDevice {
+ if m != nil {
+ return m.LogicalDevices
+ }
+ return nil
+}
+
+func (m *Voltha) GetDevices() []*Device {
+ if m != nil {
+ return m.Devices
+ }
+ return nil
+}
+
+func (m *Voltha) GetDeviceTypes() []*DeviceType {
+ if m != nil {
+ return m.DeviceTypes
+ }
+ return nil
+}
+
+func (m *Voltha) GetDeviceGroups() []*DeviceGroup {
+ if m != nil {
+ return m.DeviceGroups
+ }
+ return nil
+}
+
+func (m *Voltha) GetAlarmFilters() []*AlarmFilter {
+ if m != nil {
+ return m.AlarmFilters
+ }
+ return nil
+}
+
+func (m *Voltha) GetOmciMibDatabase() []*omci.MibDeviceData {
+ if m != nil {
+ return m.OmciMibDatabase
+ }
+ return nil
+}
+
+func (m *Voltha) GetOmciAlarmDatabase() []*omci.AlarmDeviceData {
+ if m != nil {
+ return m.OmciAlarmDatabase
+ }
+ return nil
+}
+
+// Device Self Test Response
+type SelfTestResponse struct {
+ Result SelfTestResponse_SelfTestResult `protobuf:"varint,1,opt,name=result,proto3,enum=voltha.SelfTestResponse_SelfTestResult" json:"result,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *SelfTestResponse) Reset() { *m = SelfTestResponse{} }
+func (m *SelfTestResponse) String() string { return proto.CompactTextString(m) }
+func (*SelfTestResponse) ProtoMessage() {}
+func (*SelfTestResponse) Descriptor() ([]byte, []int) {
+ return fileDescriptor_voltha_1f7600b5a75eb6d1, []int{10}
+}
+func (m *SelfTestResponse) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_SelfTestResponse.Unmarshal(m, b)
+}
+func (m *SelfTestResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_SelfTestResponse.Marshal(b, m, deterministic)
+}
+func (dst *SelfTestResponse) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_SelfTestResponse.Merge(dst, src)
+}
+func (m *SelfTestResponse) XXX_Size() int {
+ return xxx_messageInfo_SelfTestResponse.Size(m)
+}
+func (m *SelfTestResponse) XXX_DiscardUnknown() {
+ xxx_messageInfo_SelfTestResponse.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_SelfTestResponse proto.InternalMessageInfo
+
+func (m *SelfTestResponse) GetResult() SelfTestResponse_SelfTestResult {
+ if m != nil {
+ return m.Result
+ }
+ return SelfTestResponse_SUCCESS
+}
+
+type OfAgentSubscriber struct {
+ // ID of ofagent instance
+ OfagentId string `protobuf:"bytes,1,opt,name=ofagent_id,json=ofagentId,proto3" json:"ofagent_id,omitempty"`
+ // ID of voltha instance to which the ofagent is subscribed
+ VolthaId string `protobuf:"bytes,2,opt,name=voltha_id,json=volthaId,proto3" json:"voltha_id,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *OfAgentSubscriber) Reset() { *m = OfAgentSubscriber{} }
+func (m *OfAgentSubscriber) String() string { return proto.CompactTextString(m) }
+func (*OfAgentSubscriber) ProtoMessage() {}
+func (*OfAgentSubscriber) Descriptor() ([]byte, []int) {
+ return fileDescriptor_voltha_1f7600b5a75eb6d1, []int{11}
+}
+func (m *OfAgentSubscriber) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_OfAgentSubscriber.Unmarshal(m, b)
+}
+func (m *OfAgentSubscriber) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_OfAgentSubscriber.Marshal(b, m, deterministic)
+}
+func (dst *OfAgentSubscriber) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_OfAgentSubscriber.Merge(dst, src)
+}
+func (m *OfAgentSubscriber) XXX_Size() int {
+ return xxx_messageInfo_OfAgentSubscriber.Size(m)
+}
+func (m *OfAgentSubscriber) XXX_DiscardUnknown() {
+ xxx_messageInfo_OfAgentSubscriber.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_OfAgentSubscriber proto.InternalMessageInfo
+
+func (m *OfAgentSubscriber) GetOfagentId() string {
+ if m != nil {
+ return m.OfagentId
+ }
+ return ""
+}
+
+func (m *OfAgentSubscriber) GetVolthaId() string {
+ if m != nil {
+ return m.VolthaId
+ }
+ return ""
+}
+
+// Identifies a membership group a Core belongs to
+type Membership struct {
+ // Group name
+ GroupName string `protobuf:"bytes,1,opt,name=group_name,json=groupName,proto3" json:"group_name,omitempty"`
+ // Unique ID of a container within that group
+ Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
+}
+
+func (m *Membership) Reset() { *m = Membership{} }
+func (m *Membership) String() string { return proto.CompactTextString(m) }
+func (*Membership) ProtoMessage() {}
+func (*Membership) Descriptor() ([]byte, []int) {
+ return fileDescriptor_voltha_1f7600b5a75eb6d1, []int{12}
+}
+func (m *Membership) XXX_Unmarshal(b []byte) error {
+ return xxx_messageInfo_Membership.Unmarshal(m, b)
+}
+func (m *Membership) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
+ return xxx_messageInfo_Membership.Marshal(b, m, deterministic)
+}
+func (dst *Membership) XXX_Merge(src proto.Message) {
+ xxx_messageInfo_Membership.Merge(dst, src)
+}
+func (m *Membership) XXX_Size() int {
+ return xxx_messageInfo_Membership.Size(m)
+}
+func (m *Membership) XXX_DiscardUnknown() {
+ xxx_messageInfo_Membership.DiscardUnknown(m)
+}
+
+var xxx_messageInfo_Membership proto.InternalMessageInfo
+
+func (m *Membership) GetGroupName() string {
+ if m != nil {
+ return m.GroupName
+ }
+ return ""
+}
+
+func (m *Membership) GetId() string {
+ if m != nil {
+ return m.Id
+ }
+ return ""
+}
+
+func init() {
+ proto.RegisterType((*DeviceGroup)(nil), "voltha.DeviceGroup")
+ proto.RegisterType((*DeviceGroups)(nil), "voltha.DeviceGroups")
+ proto.RegisterType((*AlarmFilterRuleKey)(nil), "voltha.AlarmFilterRuleKey")
+ proto.RegisterType((*AlarmFilterRule)(nil), "voltha.AlarmFilterRule")
+ proto.RegisterType((*AlarmFilter)(nil), "voltha.AlarmFilter")
+ proto.RegisterType((*AlarmFilters)(nil), "voltha.AlarmFilters")
+ proto.RegisterType((*Logging)(nil), "voltha.Logging")
+ proto.RegisterType((*CoreInstance)(nil), "voltha.CoreInstance")
+ proto.RegisterType((*CoreInstances)(nil), "voltha.CoreInstances")
+ proto.RegisterType((*Voltha)(nil), "voltha.Voltha")
+ proto.RegisterType((*SelfTestResponse)(nil), "voltha.SelfTestResponse")
+ proto.RegisterType((*OfAgentSubscriber)(nil), "voltha.OfAgentSubscriber")
+ proto.RegisterType((*Membership)(nil), "voltha.Membership")
+ proto.RegisterEnum("voltha.AlarmFilterRuleKey_AlarmFilterRuleKey", AlarmFilterRuleKey_AlarmFilterRuleKey_name, AlarmFilterRuleKey_AlarmFilterRuleKey_value)
+ proto.RegisterEnum("voltha.SelfTestResponse_SelfTestResult", SelfTestResponse_SelfTestResult_name, SelfTestResponse_SelfTestResult_value)
+}
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ context.Context
+var _ grpc.ClientConn
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+const _ = grpc.SupportPackageIsVersion4
+
+// VolthaServiceClient is the client API for VolthaService service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
+type VolthaServiceClient interface {
+ // Get more information on a given physical device
+ UpdateLogLevel(ctx context.Context, in *Logging, opts ...grpc.CallOption) (*empty.Empty, error)
+ // Get the membership group of a Voltha Core
+ GetMembership(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*Membership, error)
+ // Set the membership group of a Voltha Core
+ UpdateMembership(ctx context.Context, in *Membership, opts ...grpc.CallOption) (*empty.Empty, error)
+ // Get high level information on the Voltha cluster
+ GetVoltha(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*Voltha, error)
+ // List all Voltha cluster core instances
+ ListCoreInstances(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*CoreInstances, error)
+ // Get details on a Voltha cluster instance
+ GetCoreInstance(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*CoreInstance, error)
+ // List all active adapters (plugins) in the Voltha cluster
+ ListAdapters(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*Adapters, error)
+ // List all logical devices managed by the Voltha cluster
+ ListLogicalDevices(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*LogicalDevices, error)
+ // Get additional information on a given logical device
+ GetLogicalDevice(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*LogicalDevice, error)
+ // List ports of a logical device
+ ListLogicalDevicePorts(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*LogicalPorts, error)
+ // Gets a logical device port
+ GetLogicalDevicePort(ctx context.Context, in *LogicalPortId, opts ...grpc.CallOption) (*LogicalPort, error)
+ // Enables a logical device port
+ EnableLogicalDevicePort(ctx context.Context, in *LogicalPortId, opts ...grpc.CallOption) (*empty.Empty, error)
+ // Disables a logical device port
+ DisableLogicalDevicePort(ctx context.Context, in *LogicalPortId, opts ...grpc.CallOption) (*empty.Empty, error)
+ // List all flows of a logical device
+ ListLogicalDeviceFlows(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*openflow_13.Flows, error)
+ // Update flow table for logical device
+ UpdateLogicalDeviceFlowTable(ctx context.Context, in *openflow_13.FlowTableUpdate, opts ...grpc.CallOption) (*empty.Empty, error)
+ // Update meter table for logical device
+ UpdateLogicalDeviceMeterTable(ctx context.Context, in *openflow_13.MeterModUpdate, opts ...grpc.CallOption) (*empty.Empty, error)
+ // Get all meter stats for logical device
+ GetMeterStatsOfLogicalDevice(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*openflow_13.MeterStatsReply, error)
+ // List all flow groups of a logical device
+ ListLogicalDeviceFlowGroups(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*openflow_13.FlowGroups, error)
+ // Update group table for device
+ UpdateLogicalDeviceFlowGroupTable(ctx context.Context, in *openflow_13.FlowGroupTableUpdate, opts ...grpc.CallOption) (*empty.Empty, error)
+ // List all physical devices controlled by the Voltha cluster
+ ListDevices(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*Devices, error)
+ // List all physical devices IDs controlled by the Voltha cluster
+ ListDeviceIds(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*common.IDs, error)
+ // Request to a voltha Core to reconcile a set of devices based on their IDs
+ ReconcileDevices(ctx context.Context, in *common.IDs, opts ...grpc.CallOption) (*empty.Empty, error)
+ // Get more information on a given physical device
+ GetDevice(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*Device, error)
+ // Pre-provision a new physical device
+ CreateDevice(ctx context.Context, in *Device, opts ...grpc.CallOption) (*Device, error)
+ // Enable a device. If the device was in pre-provisioned state then it
+ // will transition to ENABLED state. If it was is DISABLED state then it
+ // will transition to ENABLED state as well.
+ EnableDevice(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*empty.Empty, error)
+ // Disable a device
+ DisableDevice(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*empty.Empty, error)
+ // Reboot a device
+ RebootDevice(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*empty.Empty, error)
+ // Delete a device
+ DeleteDevice(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*empty.Empty, error)
+ // Request an image download to the standby partition
+ // of a device.
+ // Note that the call is expected to be non-blocking.
+ DownloadImage(ctx context.Context, in *ImageDownload, opts ...grpc.CallOption) (*common.OperationResp, error)
+ // Get image download status on a device
+ // The request retrieves progress on device and updates db record
+ GetImageDownloadStatus(ctx context.Context, in *ImageDownload, opts ...grpc.CallOption) (*ImageDownload, error)
+ // Get image download db record
+ GetImageDownload(ctx context.Context, in *ImageDownload, opts ...grpc.CallOption) (*ImageDownload, error)
+ // List image download db records for a given device
+ ListImageDownloads(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*ImageDownloads, error)
+ // Cancel an existing image download process on a device
+ CancelImageDownload(ctx context.Context, in *ImageDownload, opts ...grpc.CallOption) (*common.OperationResp, error)
+ // Activate the specified image at a standby partition
+ // to active partition.
+ // Depending on the device implementation, this call
+ // may or may not cause device reboot.
+ // If no reboot, then a reboot is required to make the
+ // activated image running on device
+ // Note that the call is expected to be non-blocking.
+ ActivateImageUpdate(ctx context.Context, in *ImageDownload, opts ...grpc.CallOption) (*common.OperationResp, error)
+ // Revert the specified image at standby partition
+ // to active partition, and revert to previous image
+ // Depending on the device implementation, this call
+ // may or may not cause device reboot.
+ // If no reboot, then a reboot is required to make the
+ // previous image running on device
+ // Note that the call is expected to be non-blocking.
+ RevertImageUpdate(ctx context.Context, in *ImageDownload, opts ...grpc.CallOption) (*common.OperationResp, error)
+ // List ports of a device
+ ListDevicePorts(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*Ports, error)
+ // List pm config of a device
+ ListDevicePmConfigs(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*PmConfigs, error)
+ // Update the pm config of a device
+ UpdateDevicePmConfigs(ctx context.Context, in *PmConfigs, opts ...grpc.CallOption) (*empty.Empty, error)
+ // List all flows of a device
+ ListDeviceFlows(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*openflow_13.Flows, error)
+ // List all flow groups of a device
+ ListDeviceFlowGroups(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*openflow_13.FlowGroups, error)
+ // List device types known to Voltha
+ ListDeviceTypes(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*DeviceTypes, error)
+ // Get additional information on a device type
+ GetDeviceType(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*DeviceType, error)
+ // List all device sharding groups
+ ListDeviceGroups(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*DeviceGroups, error)
+ // Stream control packets to the dataplane
+ StreamPacketsOut(ctx context.Context, opts ...grpc.CallOption) (VolthaService_StreamPacketsOutClient, error)
+ // Receive control packet stream
+ ReceivePacketsIn(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (VolthaService_ReceivePacketsInClient, error)
+ ReceiveChangeEvents(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (VolthaService_ReceiveChangeEventsClient, error)
+ // Get additional information on a device group
+ GetDeviceGroup(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*DeviceGroup, error)
+ CreateAlarmFilter(ctx context.Context, in *AlarmFilter, opts ...grpc.CallOption) (*AlarmFilter, error)
+ GetAlarmFilter(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*AlarmFilter, error)
+ UpdateAlarmFilter(ctx context.Context, in *AlarmFilter, opts ...grpc.CallOption) (*AlarmFilter, error)
+ DeleteAlarmFilter(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*empty.Empty, error)
+ ListAlarmFilters(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*AlarmFilters, error)
+ GetImages(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*Images, error)
+ SelfTest(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*SelfTestResponse, error)
+ // OpenOMCI MIB information
+ GetMibDeviceData(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*omci.MibDeviceData, error)
+ // OpenOMCI ALARM information
+ GetAlarmDeviceData(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*omci.AlarmDeviceData, error)
+ // Simulate an Alarm
+ SimulateAlarm(ctx context.Context, in *SimulateAlarmRequest, opts ...grpc.CallOption) (*common.OperationResp, error)
+ Subscribe(ctx context.Context, in *OfAgentSubscriber, opts ...grpc.CallOption) (*OfAgentSubscriber, error)
+}
+
+type volthaServiceClient struct {
+ cc *grpc.ClientConn
+}
+
+func NewVolthaServiceClient(cc *grpc.ClientConn) VolthaServiceClient {
+ return &volthaServiceClient{cc}
+}
+
+func (c *volthaServiceClient) UpdateLogLevel(ctx context.Context, in *Logging, opts ...grpc.CallOption) (*empty.Empty, error) {
+ out := new(empty.Empty)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/UpdateLogLevel", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) GetMembership(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*Membership, error) {
+ out := new(Membership)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/GetMembership", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) UpdateMembership(ctx context.Context, in *Membership, opts ...grpc.CallOption) (*empty.Empty, error) {
+ out := new(empty.Empty)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/UpdateMembership", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) GetVoltha(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*Voltha, error) {
+ out := new(Voltha)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/GetVoltha", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) ListCoreInstances(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*CoreInstances, error) {
+ out := new(CoreInstances)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/ListCoreInstances", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) GetCoreInstance(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*CoreInstance, error) {
+ out := new(CoreInstance)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/GetCoreInstance", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) ListAdapters(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*Adapters, error) {
+ out := new(Adapters)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/ListAdapters", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) ListLogicalDevices(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*LogicalDevices, error) {
+ out := new(LogicalDevices)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/ListLogicalDevices", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) GetLogicalDevice(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*LogicalDevice, error) {
+ out := new(LogicalDevice)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/GetLogicalDevice", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) ListLogicalDevicePorts(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*LogicalPorts, error) {
+ out := new(LogicalPorts)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/ListLogicalDevicePorts", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) GetLogicalDevicePort(ctx context.Context, in *LogicalPortId, opts ...grpc.CallOption) (*LogicalPort, error) {
+ out := new(LogicalPort)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/GetLogicalDevicePort", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) EnableLogicalDevicePort(ctx context.Context, in *LogicalPortId, opts ...grpc.CallOption) (*empty.Empty, error) {
+ out := new(empty.Empty)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/EnableLogicalDevicePort", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) DisableLogicalDevicePort(ctx context.Context, in *LogicalPortId, opts ...grpc.CallOption) (*empty.Empty, error) {
+ out := new(empty.Empty)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/DisableLogicalDevicePort", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) ListLogicalDeviceFlows(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*openflow_13.Flows, error) {
+ out := new(openflow_13.Flows)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/ListLogicalDeviceFlows", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) UpdateLogicalDeviceFlowTable(ctx context.Context, in *openflow_13.FlowTableUpdate, opts ...grpc.CallOption) (*empty.Empty, error) {
+ out := new(empty.Empty)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/UpdateLogicalDeviceFlowTable", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) UpdateLogicalDeviceMeterTable(ctx context.Context, in *openflow_13.MeterModUpdate, opts ...grpc.CallOption) (*empty.Empty, error) {
+ out := new(empty.Empty)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/UpdateLogicalDeviceMeterTable", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) GetMeterStatsOfLogicalDevice(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*openflow_13.MeterStatsReply, error) {
+ out := new(openflow_13.MeterStatsReply)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/GetMeterStatsOfLogicalDevice", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) ListLogicalDeviceFlowGroups(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*openflow_13.FlowGroups, error) {
+ out := new(openflow_13.FlowGroups)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/ListLogicalDeviceFlowGroups", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) UpdateLogicalDeviceFlowGroupTable(ctx context.Context, in *openflow_13.FlowGroupTableUpdate, opts ...grpc.CallOption) (*empty.Empty, error) {
+ out := new(empty.Empty)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/UpdateLogicalDeviceFlowGroupTable", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) ListDevices(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*Devices, error) {
+ out := new(Devices)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/ListDevices", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) ListDeviceIds(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*common.IDs, error) {
+ out := new(common.IDs)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/ListDeviceIds", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) ReconcileDevices(ctx context.Context, in *common.IDs, opts ...grpc.CallOption) (*empty.Empty, error) {
+ out := new(empty.Empty)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/ReconcileDevices", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) GetDevice(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*Device, error) {
+ out := new(Device)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/GetDevice", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) CreateDevice(ctx context.Context, in *Device, opts ...grpc.CallOption) (*Device, error) {
+ out := new(Device)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/CreateDevice", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) EnableDevice(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*empty.Empty, error) {
+ out := new(empty.Empty)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/EnableDevice", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) DisableDevice(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*empty.Empty, error) {
+ out := new(empty.Empty)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/DisableDevice", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) RebootDevice(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*empty.Empty, error) {
+ out := new(empty.Empty)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/RebootDevice", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) DeleteDevice(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*empty.Empty, error) {
+ out := new(empty.Empty)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/DeleteDevice", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) DownloadImage(ctx context.Context, in *ImageDownload, opts ...grpc.CallOption) (*common.OperationResp, error) {
+ out := new(common.OperationResp)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/DownloadImage", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) GetImageDownloadStatus(ctx context.Context, in *ImageDownload, opts ...grpc.CallOption) (*ImageDownload, error) {
+ out := new(ImageDownload)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/GetImageDownloadStatus", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) GetImageDownload(ctx context.Context, in *ImageDownload, opts ...grpc.CallOption) (*ImageDownload, error) {
+ out := new(ImageDownload)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/GetImageDownload", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) ListImageDownloads(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*ImageDownloads, error) {
+ out := new(ImageDownloads)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/ListImageDownloads", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) CancelImageDownload(ctx context.Context, in *ImageDownload, opts ...grpc.CallOption) (*common.OperationResp, error) {
+ out := new(common.OperationResp)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/CancelImageDownload", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) ActivateImageUpdate(ctx context.Context, in *ImageDownload, opts ...grpc.CallOption) (*common.OperationResp, error) {
+ out := new(common.OperationResp)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/ActivateImageUpdate", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) RevertImageUpdate(ctx context.Context, in *ImageDownload, opts ...grpc.CallOption) (*common.OperationResp, error) {
+ out := new(common.OperationResp)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/RevertImageUpdate", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) ListDevicePorts(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*Ports, error) {
+ out := new(Ports)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/ListDevicePorts", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) ListDevicePmConfigs(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*PmConfigs, error) {
+ out := new(PmConfigs)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/ListDevicePmConfigs", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) UpdateDevicePmConfigs(ctx context.Context, in *PmConfigs, opts ...grpc.CallOption) (*empty.Empty, error) {
+ out := new(empty.Empty)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/UpdateDevicePmConfigs", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) ListDeviceFlows(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*openflow_13.Flows, error) {
+ out := new(openflow_13.Flows)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/ListDeviceFlows", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) ListDeviceFlowGroups(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*openflow_13.FlowGroups, error) {
+ out := new(openflow_13.FlowGroups)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/ListDeviceFlowGroups", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) ListDeviceTypes(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*DeviceTypes, error) {
+ out := new(DeviceTypes)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/ListDeviceTypes", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) GetDeviceType(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*DeviceType, error) {
+ out := new(DeviceType)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/GetDeviceType", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) ListDeviceGroups(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*DeviceGroups, error) {
+ out := new(DeviceGroups)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/ListDeviceGroups", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) StreamPacketsOut(ctx context.Context, opts ...grpc.CallOption) (VolthaService_StreamPacketsOutClient, error) {
+ stream, err := c.cc.NewStream(ctx, &_VolthaService_serviceDesc.Streams[0], "/voltha.VolthaService/StreamPacketsOut", opts...)
+ if err != nil {
+ return nil, err
+ }
+ x := &volthaServiceStreamPacketsOutClient{stream}
+ return x, nil
+}
+
+type VolthaService_StreamPacketsOutClient interface {
+ Send(*openflow_13.PacketOut) error
+ CloseAndRecv() (*empty.Empty, error)
+ grpc.ClientStream
+}
+
+type volthaServiceStreamPacketsOutClient struct {
+ grpc.ClientStream
+}
+
+func (x *volthaServiceStreamPacketsOutClient) Send(m *openflow_13.PacketOut) error {
+ return x.ClientStream.SendMsg(m)
+}
+
+func (x *volthaServiceStreamPacketsOutClient) CloseAndRecv() (*empty.Empty, error) {
+ if err := x.ClientStream.CloseSend(); err != nil {
+ return nil, err
+ }
+ m := new(empty.Empty)
+ if err := x.ClientStream.RecvMsg(m); err != nil {
+ return nil, err
+ }
+ return m, nil
+}
+
+func (c *volthaServiceClient) ReceivePacketsIn(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (VolthaService_ReceivePacketsInClient, error) {
+ stream, err := c.cc.NewStream(ctx, &_VolthaService_serviceDesc.Streams[1], "/voltha.VolthaService/ReceivePacketsIn", opts...)
+ if err != nil {
+ return nil, err
+ }
+ x := &volthaServiceReceivePacketsInClient{stream}
+ if err := x.ClientStream.SendMsg(in); err != nil {
+ return nil, err
+ }
+ if err := x.ClientStream.CloseSend(); err != nil {
+ return nil, err
+ }
+ return x, nil
+}
+
+type VolthaService_ReceivePacketsInClient interface {
+ Recv() (*openflow_13.PacketIn, error)
+ grpc.ClientStream
+}
+
+type volthaServiceReceivePacketsInClient struct {
+ grpc.ClientStream
+}
+
+func (x *volthaServiceReceivePacketsInClient) Recv() (*openflow_13.PacketIn, error) {
+ m := new(openflow_13.PacketIn)
+ if err := x.ClientStream.RecvMsg(m); err != nil {
+ return nil, err
+ }
+ return m, nil
+}
+
+func (c *volthaServiceClient) ReceiveChangeEvents(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (VolthaService_ReceiveChangeEventsClient, error) {
+ stream, err := c.cc.NewStream(ctx, &_VolthaService_serviceDesc.Streams[2], "/voltha.VolthaService/ReceiveChangeEvents", opts...)
+ if err != nil {
+ return nil, err
+ }
+ x := &volthaServiceReceiveChangeEventsClient{stream}
+ if err := x.ClientStream.SendMsg(in); err != nil {
+ return nil, err
+ }
+ if err := x.ClientStream.CloseSend(); err != nil {
+ return nil, err
+ }
+ return x, nil
+}
+
+type VolthaService_ReceiveChangeEventsClient interface {
+ Recv() (*openflow_13.ChangeEvent, error)
+ grpc.ClientStream
+}
+
+type volthaServiceReceiveChangeEventsClient struct {
+ grpc.ClientStream
+}
+
+func (x *volthaServiceReceiveChangeEventsClient) Recv() (*openflow_13.ChangeEvent, error) {
+ m := new(openflow_13.ChangeEvent)
+ if err := x.ClientStream.RecvMsg(m); err != nil {
+ return nil, err
+ }
+ return m, nil
+}
+
+func (c *volthaServiceClient) GetDeviceGroup(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*DeviceGroup, error) {
+ out := new(DeviceGroup)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/GetDeviceGroup", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) CreateAlarmFilter(ctx context.Context, in *AlarmFilter, opts ...grpc.CallOption) (*AlarmFilter, error) {
+ out := new(AlarmFilter)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/CreateAlarmFilter", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) GetAlarmFilter(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*AlarmFilter, error) {
+ out := new(AlarmFilter)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/GetAlarmFilter", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) UpdateAlarmFilter(ctx context.Context, in *AlarmFilter, opts ...grpc.CallOption) (*AlarmFilter, error) {
+ out := new(AlarmFilter)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/UpdateAlarmFilter", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) DeleteAlarmFilter(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*empty.Empty, error) {
+ out := new(empty.Empty)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/DeleteAlarmFilter", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) ListAlarmFilters(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*AlarmFilters, error) {
+ out := new(AlarmFilters)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/ListAlarmFilters", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) GetImages(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*Images, error) {
+ out := new(Images)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/GetImages", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) SelfTest(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*SelfTestResponse, error) {
+ out := new(SelfTestResponse)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/SelfTest", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) GetMibDeviceData(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*omci.MibDeviceData, error) {
+ out := new(omci.MibDeviceData)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/GetMibDeviceData", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) GetAlarmDeviceData(ctx context.Context, in *common.ID, opts ...grpc.CallOption) (*omci.AlarmDeviceData, error) {
+ out := new(omci.AlarmDeviceData)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/GetAlarmDeviceData", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) SimulateAlarm(ctx context.Context, in *SimulateAlarmRequest, opts ...grpc.CallOption) (*common.OperationResp, error) {
+ out := new(common.OperationResp)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/SimulateAlarm", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *volthaServiceClient) Subscribe(ctx context.Context, in *OfAgentSubscriber, opts ...grpc.CallOption) (*OfAgentSubscriber, error) {
+ out := new(OfAgentSubscriber)
+ err := c.cc.Invoke(ctx, "/voltha.VolthaService/Subscribe", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// VolthaServiceServer is the server API for VolthaService service.
+type VolthaServiceServer interface {
+ // Get more information on a given physical device
+ UpdateLogLevel(context.Context, *Logging) (*empty.Empty, error)
+ // Get the membership group of a Voltha Core
+ GetMembership(context.Context, *empty.Empty) (*Membership, error)
+ // Set the membership group of a Voltha Core
+ UpdateMembership(context.Context, *Membership) (*empty.Empty, error)
+ // Get high level information on the Voltha cluster
+ GetVoltha(context.Context, *empty.Empty) (*Voltha, error)
+ // List all Voltha cluster core instances
+ ListCoreInstances(context.Context, *empty.Empty) (*CoreInstances, error)
+ // Get details on a Voltha cluster instance
+ GetCoreInstance(context.Context, *common.ID) (*CoreInstance, error)
+ // List all active adapters (plugins) in the Voltha cluster
+ ListAdapters(context.Context, *empty.Empty) (*Adapters, error)
+ // List all logical devices managed by the Voltha cluster
+ ListLogicalDevices(context.Context, *empty.Empty) (*LogicalDevices, error)
+ // Get additional information on a given logical device
+ GetLogicalDevice(context.Context, *common.ID) (*LogicalDevice, error)
+ // List ports of a logical device
+ ListLogicalDevicePorts(context.Context, *common.ID) (*LogicalPorts, error)
+ // Gets a logical device port
+ GetLogicalDevicePort(context.Context, *LogicalPortId) (*LogicalPort, error)
+ // Enables a logical device port
+ EnableLogicalDevicePort(context.Context, *LogicalPortId) (*empty.Empty, error)
+ // Disables a logical device port
+ DisableLogicalDevicePort(context.Context, *LogicalPortId) (*empty.Empty, error)
+ // List all flows of a logical device
+ ListLogicalDeviceFlows(context.Context, *common.ID) (*openflow_13.Flows, error)
+ // Update flow table for logical device
+ UpdateLogicalDeviceFlowTable(context.Context, *openflow_13.FlowTableUpdate) (*empty.Empty, error)
+ // Update meter table for logical device
+ UpdateLogicalDeviceMeterTable(context.Context, *openflow_13.MeterModUpdate) (*empty.Empty, error)
+ // Get all meter stats for logical device
+ GetMeterStatsOfLogicalDevice(context.Context, *common.ID) (*openflow_13.MeterStatsReply, error)
+ // List all flow groups of a logical device
+ ListLogicalDeviceFlowGroups(context.Context, *common.ID) (*openflow_13.FlowGroups, error)
+ // Update group table for device
+ UpdateLogicalDeviceFlowGroupTable(context.Context, *openflow_13.FlowGroupTableUpdate) (*empty.Empty, error)
+ // List all physical devices controlled by the Voltha cluster
+ ListDevices(context.Context, *empty.Empty) (*Devices, error)
+ // List all physical devices IDs controlled by the Voltha cluster
+ ListDeviceIds(context.Context, *empty.Empty) (*common.IDs, error)
+ // Request to a voltha Core to reconcile a set of devices based on their IDs
+ ReconcileDevices(context.Context, *common.IDs) (*empty.Empty, error)
+ // Get more information on a given physical device
+ GetDevice(context.Context, *common.ID) (*Device, error)
+ // Pre-provision a new physical device
+ CreateDevice(context.Context, *Device) (*Device, error)
+ // Enable a device. If the device was in pre-provisioned state then it
+ // will transition to ENABLED state. If it was is DISABLED state then it
+ // will transition to ENABLED state as well.
+ EnableDevice(context.Context, *common.ID) (*empty.Empty, error)
+ // Disable a device
+ DisableDevice(context.Context, *common.ID) (*empty.Empty, error)
+ // Reboot a device
+ RebootDevice(context.Context, *common.ID) (*empty.Empty, error)
+ // Delete a device
+ DeleteDevice(context.Context, *common.ID) (*empty.Empty, error)
+ // Request an image download to the standby partition
+ // of a device.
+ // Note that the call is expected to be non-blocking.
+ DownloadImage(context.Context, *ImageDownload) (*common.OperationResp, error)
+ // Get image download status on a device
+ // The request retrieves progress on device and updates db record
+ GetImageDownloadStatus(context.Context, *ImageDownload) (*ImageDownload, error)
+ // Get image download db record
+ GetImageDownload(context.Context, *ImageDownload) (*ImageDownload, error)
+ // List image download db records for a given device
+ ListImageDownloads(context.Context, *common.ID) (*ImageDownloads, error)
+ // Cancel an existing image download process on a device
+ CancelImageDownload(context.Context, *ImageDownload) (*common.OperationResp, error)
+ // Activate the specified image at a standby partition
+ // to active partition.
+ // Depending on the device implementation, this call
+ // may or may not cause device reboot.
+ // If no reboot, then a reboot is required to make the
+ // activated image running on device
+ // Note that the call is expected to be non-blocking.
+ ActivateImageUpdate(context.Context, *ImageDownload) (*common.OperationResp, error)
+ // Revert the specified image at standby partition
+ // to active partition, and revert to previous image
+ // Depending on the device implementation, this call
+ // may or may not cause device reboot.
+ // If no reboot, then a reboot is required to make the
+ // previous image running on device
+ // Note that the call is expected to be non-blocking.
+ RevertImageUpdate(context.Context, *ImageDownload) (*common.OperationResp, error)
+ // List ports of a device
+ ListDevicePorts(context.Context, *common.ID) (*Ports, error)
+ // List pm config of a device
+ ListDevicePmConfigs(context.Context, *common.ID) (*PmConfigs, error)
+ // Update the pm config of a device
+ UpdateDevicePmConfigs(context.Context, *PmConfigs) (*empty.Empty, error)
+ // List all flows of a device
+ ListDeviceFlows(context.Context, *common.ID) (*openflow_13.Flows, error)
+ // List all flow groups of a device
+ ListDeviceFlowGroups(context.Context, *common.ID) (*openflow_13.FlowGroups, error)
+ // List device types known to Voltha
+ ListDeviceTypes(context.Context, *empty.Empty) (*DeviceTypes, error)
+ // Get additional information on a device type
+ GetDeviceType(context.Context, *common.ID) (*DeviceType, error)
+ // List all device sharding groups
+ ListDeviceGroups(context.Context, *empty.Empty) (*DeviceGroups, error)
+ // Stream control packets to the dataplane
+ StreamPacketsOut(VolthaService_StreamPacketsOutServer) error
+ // Receive control packet stream
+ ReceivePacketsIn(*empty.Empty, VolthaService_ReceivePacketsInServer) error
+ ReceiveChangeEvents(*empty.Empty, VolthaService_ReceiveChangeEventsServer) error
+ // Get additional information on a device group
+ GetDeviceGroup(context.Context, *common.ID) (*DeviceGroup, error)
+ CreateAlarmFilter(context.Context, *AlarmFilter) (*AlarmFilter, error)
+ GetAlarmFilter(context.Context, *common.ID) (*AlarmFilter, error)
+ UpdateAlarmFilter(context.Context, *AlarmFilter) (*AlarmFilter, error)
+ DeleteAlarmFilter(context.Context, *common.ID) (*empty.Empty, error)
+ ListAlarmFilters(context.Context, *empty.Empty) (*AlarmFilters, error)
+ GetImages(context.Context, *common.ID) (*Images, error)
+ SelfTest(context.Context, *common.ID) (*SelfTestResponse, error)
+ // OpenOMCI MIB information
+ GetMibDeviceData(context.Context, *common.ID) (*omci.MibDeviceData, error)
+ // OpenOMCI ALARM information
+ GetAlarmDeviceData(context.Context, *common.ID) (*omci.AlarmDeviceData, error)
+ // Simulate an Alarm
+ SimulateAlarm(context.Context, *SimulateAlarmRequest) (*common.OperationResp, error)
+ Subscribe(context.Context, *OfAgentSubscriber) (*OfAgentSubscriber, error)
+}
+
+func RegisterVolthaServiceServer(s *grpc.Server, srv VolthaServiceServer) {
+ s.RegisterService(&_VolthaService_serviceDesc, srv)
+}
+
+func _VolthaService_UpdateLogLevel_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(Logging)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).UpdateLogLevel(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/UpdateLogLevel",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).UpdateLogLevel(ctx, req.(*Logging))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_GetMembership_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(empty.Empty)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).GetMembership(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/GetMembership",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).GetMembership(ctx, req.(*empty.Empty))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_UpdateMembership_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(Membership)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).UpdateMembership(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/UpdateMembership",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).UpdateMembership(ctx, req.(*Membership))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_GetVoltha_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(empty.Empty)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).GetVoltha(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/GetVoltha",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).GetVoltha(ctx, req.(*empty.Empty))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_ListCoreInstances_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(empty.Empty)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).ListCoreInstances(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/ListCoreInstances",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).ListCoreInstances(ctx, req.(*empty.Empty))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_GetCoreInstance_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(common.ID)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).GetCoreInstance(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/GetCoreInstance",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).GetCoreInstance(ctx, req.(*common.ID))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_ListAdapters_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(empty.Empty)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).ListAdapters(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/ListAdapters",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).ListAdapters(ctx, req.(*empty.Empty))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_ListLogicalDevices_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(empty.Empty)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).ListLogicalDevices(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/ListLogicalDevices",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).ListLogicalDevices(ctx, req.(*empty.Empty))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_GetLogicalDevice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(common.ID)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).GetLogicalDevice(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/GetLogicalDevice",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).GetLogicalDevice(ctx, req.(*common.ID))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_ListLogicalDevicePorts_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(common.ID)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).ListLogicalDevicePorts(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/ListLogicalDevicePorts",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).ListLogicalDevicePorts(ctx, req.(*common.ID))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_GetLogicalDevicePort_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(LogicalPortId)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).GetLogicalDevicePort(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/GetLogicalDevicePort",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).GetLogicalDevicePort(ctx, req.(*LogicalPortId))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_EnableLogicalDevicePort_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(LogicalPortId)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).EnableLogicalDevicePort(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/EnableLogicalDevicePort",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).EnableLogicalDevicePort(ctx, req.(*LogicalPortId))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_DisableLogicalDevicePort_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(LogicalPortId)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).DisableLogicalDevicePort(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/DisableLogicalDevicePort",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).DisableLogicalDevicePort(ctx, req.(*LogicalPortId))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_ListLogicalDeviceFlows_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(common.ID)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).ListLogicalDeviceFlows(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/ListLogicalDeviceFlows",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).ListLogicalDeviceFlows(ctx, req.(*common.ID))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_UpdateLogicalDeviceFlowTable_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(openflow_13.FlowTableUpdate)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).UpdateLogicalDeviceFlowTable(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/UpdateLogicalDeviceFlowTable",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).UpdateLogicalDeviceFlowTable(ctx, req.(*openflow_13.FlowTableUpdate))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_UpdateLogicalDeviceMeterTable_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(openflow_13.MeterModUpdate)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).UpdateLogicalDeviceMeterTable(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/UpdateLogicalDeviceMeterTable",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).UpdateLogicalDeviceMeterTable(ctx, req.(*openflow_13.MeterModUpdate))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_GetMeterStatsOfLogicalDevice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(common.ID)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).GetMeterStatsOfLogicalDevice(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/GetMeterStatsOfLogicalDevice",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).GetMeterStatsOfLogicalDevice(ctx, req.(*common.ID))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_ListLogicalDeviceFlowGroups_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(common.ID)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).ListLogicalDeviceFlowGroups(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/ListLogicalDeviceFlowGroups",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).ListLogicalDeviceFlowGroups(ctx, req.(*common.ID))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_UpdateLogicalDeviceFlowGroupTable_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(openflow_13.FlowGroupTableUpdate)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).UpdateLogicalDeviceFlowGroupTable(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/UpdateLogicalDeviceFlowGroupTable",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).UpdateLogicalDeviceFlowGroupTable(ctx, req.(*openflow_13.FlowGroupTableUpdate))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_ListDevices_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(empty.Empty)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).ListDevices(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/ListDevices",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).ListDevices(ctx, req.(*empty.Empty))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_ListDeviceIds_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(empty.Empty)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).ListDeviceIds(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/ListDeviceIds",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).ListDeviceIds(ctx, req.(*empty.Empty))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_ReconcileDevices_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(common.IDs)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).ReconcileDevices(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/ReconcileDevices",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).ReconcileDevices(ctx, req.(*common.IDs))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_GetDevice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(common.ID)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).GetDevice(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/GetDevice",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).GetDevice(ctx, req.(*common.ID))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_CreateDevice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(Device)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).CreateDevice(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/CreateDevice",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).CreateDevice(ctx, req.(*Device))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_EnableDevice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(common.ID)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).EnableDevice(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/EnableDevice",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).EnableDevice(ctx, req.(*common.ID))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_DisableDevice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(common.ID)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).DisableDevice(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/DisableDevice",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).DisableDevice(ctx, req.(*common.ID))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_RebootDevice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(common.ID)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).RebootDevice(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/RebootDevice",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).RebootDevice(ctx, req.(*common.ID))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_DeleteDevice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(common.ID)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).DeleteDevice(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/DeleteDevice",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).DeleteDevice(ctx, req.(*common.ID))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_DownloadImage_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ImageDownload)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).DownloadImage(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/DownloadImage",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).DownloadImage(ctx, req.(*ImageDownload))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_GetImageDownloadStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ImageDownload)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).GetImageDownloadStatus(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/GetImageDownloadStatus",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).GetImageDownloadStatus(ctx, req.(*ImageDownload))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_GetImageDownload_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ImageDownload)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).GetImageDownload(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/GetImageDownload",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).GetImageDownload(ctx, req.(*ImageDownload))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_ListImageDownloads_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(common.ID)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).ListImageDownloads(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/ListImageDownloads",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).ListImageDownloads(ctx, req.(*common.ID))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_CancelImageDownload_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ImageDownload)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).CancelImageDownload(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/CancelImageDownload",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).CancelImageDownload(ctx, req.(*ImageDownload))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_ActivateImageUpdate_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ImageDownload)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).ActivateImageUpdate(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/ActivateImageUpdate",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).ActivateImageUpdate(ctx, req.(*ImageDownload))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_RevertImageUpdate_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ImageDownload)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).RevertImageUpdate(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/RevertImageUpdate",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).RevertImageUpdate(ctx, req.(*ImageDownload))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_ListDevicePorts_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(common.ID)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).ListDevicePorts(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/ListDevicePorts",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).ListDevicePorts(ctx, req.(*common.ID))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_ListDevicePmConfigs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(common.ID)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).ListDevicePmConfigs(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/ListDevicePmConfigs",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).ListDevicePmConfigs(ctx, req.(*common.ID))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_UpdateDevicePmConfigs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(PmConfigs)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).UpdateDevicePmConfigs(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/UpdateDevicePmConfigs",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).UpdateDevicePmConfigs(ctx, req.(*PmConfigs))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_ListDeviceFlows_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(common.ID)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).ListDeviceFlows(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/ListDeviceFlows",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).ListDeviceFlows(ctx, req.(*common.ID))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_ListDeviceFlowGroups_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(common.ID)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).ListDeviceFlowGroups(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/ListDeviceFlowGroups",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).ListDeviceFlowGroups(ctx, req.(*common.ID))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_ListDeviceTypes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(empty.Empty)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).ListDeviceTypes(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/ListDeviceTypes",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).ListDeviceTypes(ctx, req.(*empty.Empty))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_GetDeviceType_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(common.ID)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).GetDeviceType(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/GetDeviceType",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).GetDeviceType(ctx, req.(*common.ID))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_ListDeviceGroups_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(empty.Empty)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).ListDeviceGroups(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/ListDeviceGroups",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).ListDeviceGroups(ctx, req.(*empty.Empty))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_StreamPacketsOut_Handler(srv interface{}, stream grpc.ServerStream) error {
+ return srv.(VolthaServiceServer).StreamPacketsOut(&volthaServiceStreamPacketsOutServer{stream})
+}
+
+type VolthaService_StreamPacketsOutServer interface {
+ SendAndClose(*empty.Empty) error
+ Recv() (*openflow_13.PacketOut, error)
+ grpc.ServerStream
+}
+
+type volthaServiceStreamPacketsOutServer struct {
+ grpc.ServerStream
+}
+
+func (x *volthaServiceStreamPacketsOutServer) SendAndClose(m *empty.Empty) error {
+ return x.ServerStream.SendMsg(m)
+}
+
+func (x *volthaServiceStreamPacketsOutServer) Recv() (*openflow_13.PacketOut, error) {
+ m := new(openflow_13.PacketOut)
+ if err := x.ServerStream.RecvMsg(m); err != nil {
+ return nil, err
+ }
+ return m, nil
+}
+
+func _VolthaService_ReceivePacketsIn_Handler(srv interface{}, stream grpc.ServerStream) error {
+ m := new(empty.Empty)
+ if err := stream.RecvMsg(m); err != nil {
+ return err
+ }
+ return srv.(VolthaServiceServer).ReceivePacketsIn(m, &volthaServiceReceivePacketsInServer{stream})
+}
+
+type VolthaService_ReceivePacketsInServer interface {
+ Send(*openflow_13.PacketIn) error
+ grpc.ServerStream
+}
+
+type volthaServiceReceivePacketsInServer struct {
+ grpc.ServerStream
+}
+
+func (x *volthaServiceReceivePacketsInServer) Send(m *openflow_13.PacketIn) error {
+ return x.ServerStream.SendMsg(m)
+}
+
+func _VolthaService_ReceiveChangeEvents_Handler(srv interface{}, stream grpc.ServerStream) error {
+ m := new(empty.Empty)
+ if err := stream.RecvMsg(m); err != nil {
+ return err
+ }
+ return srv.(VolthaServiceServer).ReceiveChangeEvents(m, &volthaServiceReceiveChangeEventsServer{stream})
+}
+
+type VolthaService_ReceiveChangeEventsServer interface {
+ Send(*openflow_13.ChangeEvent) error
+ grpc.ServerStream
+}
+
+type volthaServiceReceiveChangeEventsServer struct {
+ grpc.ServerStream
+}
+
+func (x *volthaServiceReceiveChangeEventsServer) Send(m *openflow_13.ChangeEvent) error {
+ return x.ServerStream.SendMsg(m)
+}
+
+func _VolthaService_GetDeviceGroup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(common.ID)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).GetDeviceGroup(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/GetDeviceGroup",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).GetDeviceGroup(ctx, req.(*common.ID))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_CreateAlarmFilter_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(AlarmFilter)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).CreateAlarmFilter(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/CreateAlarmFilter",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).CreateAlarmFilter(ctx, req.(*AlarmFilter))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_GetAlarmFilter_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(common.ID)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).GetAlarmFilter(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/GetAlarmFilter",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).GetAlarmFilter(ctx, req.(*common.ID))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_UpdateAlarmFilter_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(AlarmFilter)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).UpdateAlarmFilter(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/UpdateAlarmFilter",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).UpdateAlarmFilter(ctx, req.(*AlarmFilter))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_DeleteAlarmFilter_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(common.ID)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).DeleteAlarmFilter(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/DeleteAlarmFilter",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).DeleteAlarmFilter(ctx, req.(*common.ID))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_ListAlarmFilters_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(empty.Empty)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).ListAlarmFilters(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/ListAlarmFilters",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).ListAlarmFilters(ctx, req.(*empty.Empty))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_GetImages_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(common.ID)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).GetImages(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/GetImages",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).GetImages(ctx, req.(*common.ID))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_SelfTest_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(common.ID)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).SelfTest(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/SelfTest",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).SelfTest(ctx, req.(*common.ID))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_GetMibDeviceData_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(common.ID)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).GetMibDeviceData(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/GetMibDeviceData",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).GetMibDeviceData(ctx, req.(*common.ID))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_GetAlarmDeviceData_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(common.ID)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).GetAlarmDeviceData(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/GetAlarmDeviceData",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).GetAlarmDeviceData(ctx, req.(*common.ID))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_SimulateAlarm_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(SimulateAlarmRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).SimulateAlarm(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/SimulateAlarm",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).SimulateAlarm(ctx, req.(*SimulateAlarmRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _VolthaService_Subscribe_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(OfAgentSubscriber)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VolthaServiceServer).Subscribe(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/voltha.VolthaService/Subscribe",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VolthaServiceServer).Subscribe(ctx, req.(*OfAgentSubscriber))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+var _VolthaService_serviceDesc = grpc.ServiceDesc{
+ ServiceName: "voltha.VolthaService",
+ HandlerType: (*VolthaServiceServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "UpdateLogLevel",
+ Handler: _VolthaService_UpdateLogLevel_Handler,
+ },
+ {
+ MethodName: "GetMembership",
+ Handler: _VolthaService_GetMembership_Handler,
+ },
+ {
+ MethodName: "UpdateMembership",
+ Handler: _VolthaService_UpdateMembership_Handler,
+ },
+ {
+ MethodName: "GetVoltha",
+ Handler: _VolthaService_GetVoltha_Handler,
+ },
+ {
+ MethodName: "ListCoreInstances",
+ Handler: _VolthaService_ListCoreInstances_Handler,
+ },
+ {
+ MethodName: "GetCoreInstance",
+ Handler: _VolthaService_GetCoreInstance_Handler,
+ },
+ {
+ MethodName: "ListAdapters",
+ Handler: _VolthaService_ListAdapters_Handler,
+ },
+ {
+ MethodName: "ListLogicalDevices",
+ Handler: _VolthaService_ListLogicalDevices_Handler,
+ },
+ {
+ MethodName: "GetLogicalDevice",
+ Handler: _VolthaService_GetLogicalDevice_Handler,
+ },
+ {
+ MethodName: "ListLogicalDevicePorts",
+ Handler: _VolthaService_ListLogicalDevicePorts_Handler,
+ },
+ {
+ MethodName: "GetLogicalDevicePort",
+ Handler: _VolthaService_GetLogicalDevicePort_Handler,
+ },
+ {
+ MethodName: "EnableLogicalDevicePort",
+ Handler: _VolthaService_EnableLogicalDevicePort_Handler,
+ },
+ {
+ MethodName: "DisableLogicalDevicePort",
+ Handler: _VolthaService_DisableLogicalDevicePort_Handler,
+ },
+ {
+ MethodName: "ListLogicalDeviceFlows",
+ Handler: _VolthaService_ListLogicalDeviceFlows_Handler,
+ },
+ {
+ MethodName: "UpdateLogicalDeviceFlowTable",
+ Handler: _VolthaService_UpdateLogicalDeviceFlowTable_Handler,
+ },
+ {
+ MethodName: "UpdateLogicalDeviceMeterTable",
+ Handler: _VolthaService_UpdateLogicalDeviceMeterTable_Handler,
+ },
+ {
+ MethodName: "GetMeterStatsOfLogicalDevice",
+ Handler: _VolthaService_GetMeterStatsOfLogicalDevice_Handler,
+ },
+ {
+ MethodName: "ListLogicalDeviceFlowGroups",
+ Handler: _VolthaService_ListLogicalDeviceFlowGroups_Handler,
+ },
+ {
+ MethodName: "UpdateLogicalDeviceFlowGroupTable",
+ Handler: _VolthaService_UpdateLogicalDeviceFlowGroupTable_Handler,
+ },
+ {
+ MethodName: "ListDevices",
+ Handler: _VolthaService_ListDevices_Handler,
+ },
+ {
+ MethodName: "ListDeviceIds",
+ Handler: _VolthaService_ListDeviceIds_Handler,
+ },
+ {
+ MethodName: "ReconcileDevices",
+ Handler: _VolthaService_ReconcileDevices_Handler,
+ },
+ {
+ MethodName: "GetDevice",
+ Handler: _VolthaService_GetDevice_Handler,
+ },
+ {
+ MethodName: "CreateDevice",
+ Handler: _VolthaService_CreateDevice_Handler,
+ },
+ {
+ MethodName: "EnableDevice",
+ Handler: _VolthaService_EnableDevice_Handler,
+ },
+ {
+ MethodName: "DisableDevice",
+ Handler: _VolthaService_DisableDevice_Handler,
+ },
+ {
+ MethodName: "RebootDevice",
+ Handler: _VolthaService_RebootDevice_Handler,
+ },
+ {
+ MethodName: "DeleteDevice",
+ Handler: _VolthaService_DeleteDevice_Handler,
+ },
+ {
+ MethodName: "DownloadImage",
+ Handler: _VolthaService_DownloadImage_Handler,
+ },
+ {
+ MethodName: "GetImageDownloadStatus",
+ Handler: _VolthaService_GetImageDownloadStatus_Handler,
+ },
+ {
+ MethodName: "GetImageDownload",
+ Handler: _VolthaService_GetImageDownload_Handler,
+ },
+ {
+ MethodName: "ListImageDownloads",
+ Handler: _VolthaService_ListImageDownloads_Handler,
+ },
+ {
+ MethodName: "CancelImageDownload",
+ Handler: _VolthaService_CancelImageDownload_Handler,
+ },
+ {
+ MethodName: "ActivateImageUpdate",
+ Handler: _VolthaService_ActivateImageUpdate_Handler,
+ },
+ {
+ MethodName: "RevertImageUpdate",
+ Handler: _VolthaService_RevertImageUpdate_Handler,
+ },
+ {
+ MethodName: "ListDevicePorts",
+ Handler: _VolthaService_ListDevicePorts_Handler,
+ },
+ {
+ MethodName: "ListDevicePmConfigs",
+ Handler: _VolthaService_ListDevicePmConfigs_Handler,
+ },
+ {
+ MethodName: "UpdateDevicePmConfigs",
+ Handler: _VolthaService_UpdateDevicePmConfigs_Handler,
+ },
+ {
+ MethodName: "ListDeviceFlows",
+ Handler: _VolthaService_ListDeviceFlows_Handler,
+ },
+ {
+ MethodName: "ListDeviceFlowGroups",
+ Handler: _VolthaService_ListDeviceFlowGroups_Handler,
+ },
+ {
+ MethodName: "ListDeviceTypes",
+ Handler: _VolthaService_ListDeviceTypes_Handler,
+ },
+ {
+ MethodName: "GetDeviceType",
+ Handler: _VolthaService_GetDeviceType_Handler,
+ },
+ {
+ MethodName: "ListDeviceGroups",
+ Handler: _VolthaService_ListDeviceGroups_Handler,
+ },
+ {
+ MethodName: "GetDeviceGroup",
+ Handler: _VolthaService_GetDeviceGroup_Handler,
+ },
+ {
+ MethodName: "CreateAlarmFilter",
+ Handler: _VolthaService_CreateAlarmFilter_Handler,
+ },
+ {
+ MethodName: "GetAlarmFilter",
+ Handler: _VolthaService_GetAlarmFilter_Handler,
+ },
+ {
+ MethodName: "UpdateAlarmFilter",
+ Handler: _VolthaService_UpdateAlarmFilter_Handler,
+ },
+ {
+ MethodName: "DeleteAlarmFilter",
+ Handler: _VolthaService_DeleteAlarmFilter_Handler,
+ },
+ {
+ MethodName: "ListAlarmFilters",
+ Handler: _VolthaService_ListAlarmFilters_Handler,
+ },
+ {
+ MethodName: "GetImages",
+ Handler: _VolthaService_GetImages_Handler,
+ },
+ {
+ MethodName: "SelfTest",
+ Handler: _VolthaService_SelfTest_Handler,
+ },
+ {
+ MethodName: "GetMibDeviceData",
+ Handler: _VolthaService_GetMibDeviceData_Handler,
+ },
+ {
+ MethodName: "GetAlarmDeviceData",
+ Handler: _VolthaService_GetAlarmDeviceData_Handler,
+ },
+ {
+ MethodName: "SimulateAlarm",
+ Handler: _VolthaService_SimulateAlarm_Handler,
+ },
+ {
+ MethodName: "Subscribe",
+ Handler: _VolthaService_Subscribe_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{
+ {
+ StreamName: "StreamPacketsOut",
+ Handler: _VolthaService_StreamPacketsOut_Handler,
+ ClientStreams: true,
+ },
+ {
+ StreamName: "ReceivePacketsIn",
+ Handler: _VolthaService_ReceivePacketsIn_Handler,
+ ServerStreams: true,
+ },
+ {
+ StreamName: "ReceiveChangeEvents",
+ Handler: _VolthaService_ReceiveChangeEvents_Handler,
+ ServerStreams: true,
+ },
+ },
+ Metadata: "voltha_protos/voltha.proto",
+}
+
+func init() { proto.RegisterFile("voltha_protos/voltha.proto", fileDescriptor_voltha_1f7600b5a75eb6d1) }
+
+var fileDescriptor_voltha_1f7600b5a75eb6d1 = []byte{
+ // 2475 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x5a, 0x5b, 0x73, 0xdb, 0xc6,
+ 0x15, 0x16, 0x75, 0xd7, 0x21, 0x29, 0x92, 0x47, 0x17, 0xd3, 0x94, 0x64, 0x4b, 0x1b, 0xc7, 0x76,
+ 0xe4, 0x88, 0x8c, 0xad, 0xc4, 0xd3, 0x3a, 0xcd, 0xa4, 0xd6, 0xc5, 0x2a, 0x6b, 0x59, 0x64, 0x41,
+ 0xcb, 0x4e, 0x9b, 0x7a, 0x38, 0x20, 0xb1, 0xa2, 0x30, 0x06, 0x09, 0x16, 0x0b, 0xca, 0xd5, 0xb8,
+ 0x99, 0xce, 0xa4, 0xd7, 0xe9, 0x63, 0xf3, 0x17, 0xfa, 0xd0, 0xe9, 0xf4, 0xaf, 0xf8, 0xa9, 0xbf,
+ 0xa0, 0x9d, 0x3e, 0xf4, 0xb1, 0x4f, 0x6e, 0x1f, 0x3b, 0x7b, 0x01, 0x09, 0x10, 0x80, 0x2e, 0x69,
+ 0x66, 0xf2, 0x64, 0x62, 0xcf, 0xd9, 0xef, 0xfb, 0xf6, 0xec, 0xd9, 0x83, 0xa3, 0x85, 0xa1, 0x70,
+ 0x62, 0x5b, 0xee, 0xb1, 0x5e, 0xef, 0x3a, 0xb6, 0x6b, 0xb3, 0x92, 0x7c, 0x2a, 0x8a, 0x27, 0x9c,
+ 0x94, 0x4f, 0x85, 0xe5, 0x96, 0x6d, 0xb7, 0x2c, 0x5a, 0xd2, 0xbb, 0x66, 0x49, 0xef, 0x74, 0x6c,
+ 0x57, 0x77, 0x4d, 0xbb, 0xc3, 0xa4, 0x57, 0x61, 0x49, 0x59, 0xc5, 0x53, 0xa3, 0x77, 0x54, 0xa2,
+ 0xed, 0xae, 0x7b, 0xaa, 0x8c, 0xf9, 0x20, 0x7c, 0x9b, 0xba, 0x0a, 0xbc, 0x30, 0x44, 0xdc, 0xb4,
+ 0xdb, 0x6d, 0xbb, 0x13, 0x6d, 0x3b, 0xa6, 0xba, 0xe5, 0x1e, 0x2b, 0x1b, 0x09, 0xda, 0x2c, 0xbb,
+ 0x65, 0x36, 0x75, 0xab, 0x6e, 0xd0, 0x13, 0xb3, 0x49, 0xa3, 0xe7, 0x07, 0x6c, 0x4b, 0x41, 0x9b,
+ 0x6e, 0xe8, 0x5d, 0x97, 0x3a, 0xca, 0x78, 0x3d, 0x68, 0xb4, 0xbb, 0xb4, 0x73, 0x64, 0xd9, 0xaf,
+ 0xea, 0x77, 0x37, 0x63, 0x1c, 0xda, 0x4d, 0xb3, 0xde, 0x36, 0x1b, 0x75, 0xa3, 0xa1, 0x1c, 0xd6,
+ 0x22, 0x1c, 0x74, 0x4b, 0x77, 0xda, 0x03, 0x97, 0xd5, 0xa0, 0xcb, 0xa9, 0xde, 0x69, 0xd5, 0xed,
+ 0xae, 0x2f, 0xa4, 0xe4, 0x4f, 0x09, 0x48, 0xee, 0x08, 0xd1, 0x7b, 0x8e, 0xdd, 0xeb, 0xe2, 0x02,
+ 0x8c, 0x9a, 0x46, 0x3e, 0xb1, 0x9a, 0xb8, 0x3d, 0xb3, 0x35, 0xf1, 0xaf, 0xb7, 0x6f, 0x56, 0x12,
+ 0xda, 0xa8, 0x69, 0x60, 0x19, 0x32, 0xc1, 0xe5, 0xb3, 0xfc, 0xe8, 0xea, 0xd8, 0xed, 0xe4, 0xbd,
+ 0x85, 0xa2, 0xda, 0xc7, 0x7d, 0x69, 0x96, 0x58, 0x5b, 0x33, 0xff, 0x78, 0xfb, 0x66, 0x65, 0x9c,
+ 0x63, 0x69, 0xb3, 0x96, 0xdf, 0xc2, 0x70, 0x13, 0xa6, 0x3c, 0x88, 0x31, 0x01, 0x31, 0xeb, 0x41,
+ 0x84, 0xe7, 0x7a, 0x9e, 0xe4, 0xbb, 0x90, 0xf2, 0xa9, 0x64, 0xf8, 0x1e, 0x4c, 0x98, 0x2e, 0x6d,
+ 0xb3, 0x7c, 0x42, 0x40, 0xcc, 0x05, 0x21, 0x84, 0x93, 0x26, 0x3d, 0xc8, 0x2f, 0x01, 0x1f, 0xf2,
+ 0xa8, 0x3c, 0x32, 0x2d, 0x97, 0x3a, 0x5a, 0xcf, 0xa2, 0x8f, 0xe9, 0x29, 0x69, 0x44, 0x8d, 0xe2,
+ 0x24, 0x67, 0xcd, 0x8e, 0xe0, 0x34, 0x8c, 0xbb, 0xa7, 0x5d, 0x9a, 0x4d, 0x60, 0x0a, 0xa6, 0x19,
+ 0x3d, 0xa1, 0x8e, 0xe9, 0x9e, 0x66, 0x47, 0x31, 0x03, 0x49, 0x87, 0x32, 0xbb, 0xe7, 0x34, 0x69,
+ 0xdd, 0x34, 0xb2, 0x63, 0xdc, 0xdc, 0xd4, 0x5d, 0xda, 0xb2, 0x9d, 0xd3, 0xec, 0x38, 0xa6, 0x61,
+ 0x46, 0x0a, 0xe6, 0xc6, 0x89, 0x07, 0x13, 0xff, 0x7e, 0xfb, 0x66, 0x65, 0x84, 0x1c, 0x43, 0x66,
+ 0x88, 0x0a, 0x3f, 0x85, 0xb1, 0x97, 0xf4, 0x54, 0x84, 0x79, 0xf6, 0xde, 0x86, 0x27, 0x3e, 0x2c,
+ 0x28, 0x62, 0x48, 0xe3, 0x33, 0x71, 0x1e, 0x26, 0x4e, 0x74, 0xab, 0x47, 0xf3, 0xa3, 0x7c, 0xa7,
+ 0x34, 0xf9, 0x40, 0x6a, 0x90, 0xf4, 0x4d, 0x88, 0xdb, 0xcb, 0x0d, 0x98, 0x70, 0x7a, 0x56, 0x7f,
+ 0x07, 0xaf, 0xc4, 0xd0, 0x6b, 0xd2, 0x8b, 0x7c, 0x02, 0x29, 0x9f, 0x85, 0xe1, 0x06, 0x4c, 0x1d,
+ 0xc9, 0x9f, 0xc3, 0xc1, 0xf7, 0x03, 0x78, 0x3e, 0xe4, 0x05, 0x4c, 0xed, 0xdb, 0xad, 0x96, 0xd9,
+ 0x69, 0x61, 0x09, 0x26, 0x2c, 0x7a, 0x42, 0x2d, 0xb5, 0xee, 0xab, 0xbe, 0xd4, 0xd9, 0xe7, 0xe3,
+ 0xfd, 0x1f, 0x9a, 0xf4, 0xc3, 0x35, 0x48, 0x75, 0xf5, 0xe6, 0x4b, 0xbd, 0x45, 0xeb, 0x1d, 0xbd,
+ 0xed, 0x2d, 0x36, 0xa9, 0xc6, 0x0e, 0xf4, 0x36, 0x25, 0x0e, 0xa4, 0xb6, 0x6d, 0x87, 0x96, 0x3b,
+ 0xcc, 0xd5, 0x3b, 0x4d, 0x8a, 0x37, 0x21, 0x69, 0xaa, 0xdf, 0xf5, 0xe1, 0xc5, 0x83, 0x67, 0x29,
+ 0x1b, 0xb8, 0x09, 0x93, 0xf2, 0xac, 0x0b, 0xd0, 0xe4, 0xbd, 0x79, 0x4f, 0xcc, 0x0f, 0xc4, 0x68,
+ 0xcd, 0xd5, 0xdd, 0x1e, 0xdb, 0x9a, 0xe0, 0xa9, 0x38, 0xa2, 0x29, 0xd7, 0x07, 0x13, 0xff, 0xe5,
+ 0x38, 0x64, 0x0b, 0xd2, 0x7e, 0x4e, 0x86, 0xeb, 0xc1, 0x6c, 0xec, 0x63, 0xf9, 0xbd, 0x54, 0x3a,
+ 0x7a, 0x18, 0x7f, 0x1f, 0x87, 0xc9, 0x67, 0xc2, 0x0b, 0xaf, 0xc3, 0xd4, 0x09, 0x75, 0x98, 0x69,
+ 0x77, 0x82, 0x72, 0xbd, 0x51, 0xbc, 0x0f, 0xd3, 0xaa, 0x76, 0x78, 0x7b, 0x96, 0xe9, 0x87, 0x5c,
+ 0x8e, 0xfb, 0xcf, 0x4c, 0xdf, 0x37, 0xea, 0xd0, 0x8e, 0xfd, 0xff, 0x87, 0x76, 0xfc, 0xa2, 0x87,
+ 0x16, 0xbf, 0x0f, 0x29, 0x75, 0x1c, 0xf8, 0x61, 0x62, 0xf9, 0x09, 0x31, 0x13, 0x83, 0x33, 0x9f,
+ 0x9e, 0x76, 0x03, 0xb3, 0x93, 0x46, 0x7f, 0x98, 0xe1, 0x36, 0xa4, 0x15, 0x42, 0x4b, 0x9c, 0xfb,
+ 0xfc, 0x64, 0xec, 0x71, 0xf7, 0x63, 0x28, 0x5a, 0x55, 0x2b, 0xb6, 0x21, 0x2d, 0xcb, 0xa2, 0x97,
+ 0xb6, 0x53, 0xb1, 0x69, 0x1b, 0x00, 0xd1, 0xfd, 0x59, 0xff, 0x23, 0xc8, 0x0d, 0x2a, 0xb0, 0xee,
+ 0xea, 0x0d, 0x9d, 0xd1, 0xfc, 0xb2, 0x02, 0xe2, 0x96, 0xe2, 0x13, 0xb3, 0x21, 0xe5, 0xec, 0xe8,
+ 0xae, 0xbe, 0x95, 0xe5, 0x40, 0x49, 0x5f, 0x3d, 0xd0, 0x32, 0xdc, 0x8b, 0x3b, 0xa9, 0xd9, 0xf8,
+ 0x19, 0xcc, 0xf9, 0x6b, 0xb6, 0x07, 0xba, 0x22, 0x40, 0x17, 0x8b, 0x62, 0x58, 0x8a, 0x3b, 0x13,
+ 0x57, 0xe8, 0x92, 0x6e, 0x0a, 0xc2, 0xcb, 0xb1, 0xbf, 0x26, 0x20, 0x5b, 0xa3, 0xd6, 0xd1, 0x53,
+ 0xca, 0x5c, 0x8d, 0xb2, 0xae, 0xdd, 0x61, 0xbc, 0xf4, 0x4c, 0x3a, 0x94, 0xf5, 0x2c, 0x57, 0x9d,
+ 0xc2, 0x5b, 0x5e, 0x18, 0x86, 0x3d, 0xfd, 0x03, 0x3d, 0xcb, 0xd5, 0xd4, 0x34, 0x52, 0x85, 0xd9,
+ 0xa0, 0x05, 0x93, 0x30, 0x55, 0x3b, 0xdc, 0xde, 0xde, 0xad, 0xd5, 0xb2, 0x23, 0xfc, 0xe1, 0xd1,
+ 0xc3, 0xf2, 0xfe, 0xa1, 0xb6, 0x9b, 0x4d, 0x60, 0x0e, 0xd2, 0x07, 0x95, 0xa7, 0xf5, 0xda, 0x61,
+ 0xb5, 0x5a, 0xd1, 0x9e, 0xee, 0xee, 0x64, 0x47, 0xf9, 0xd0, 0xe1, 0xc1, 0xe3, 0x83, 0xca, 0xf3,
+ 0x83, 0xfa, 0xae, 0xa6, 0x55, 0xb4, 0xec, 0x98, 0x57, 0x27, 0x2b, 0x90, 0xab, 0x1c, 0x3d, 0x6c,
+ 0xd1, 0x8e, 0x5b, 0xeb, 0x35, 0x58, 0xd3, 0x31, 0x1b, 0xd4, 0xc1, 0x15, 0x00, 0xfb, 0x48, 0xe7,
+ 0x83, 0xfd, 0xe3, 0xac, 0xcd, 0xa8, 0x91, 0xb2, 0x81, 0x4b, 0x30, 0xa3, 0x5e, 0x71, 0xa6, 0xa1,
+ 0xca, 0xc3, 0xb4, 0x1c, 0x28, 0x1b, 0xe4, 0x63, 0x80, 0x27, 0xb4, 0xdd, 0xa0, 0x0e, 0x3b, 0x36,
+ 0xbb, 0x1c, 0x49, 0x24, 0x91, 0x2c, 0x25, 0x0a, 0x49, 0x8c, 0xf0, 0x42, 0x82, 0xb3, 0xa2, 0x58,
+ 0x4a, 0x88, 0x51, 0xd3, 0xb8, 0xf7, 0xe7, 0x12, 0xa4, 0xe5, 0x01, 0xad, 0x51, 0x87, 0xc7, 0x1a,
+ 0x2b, 0x30, 0x7b, 0xd8, 0x35, 0x74, 0x97, 0x7a, 0x65, 0x0a, 0x33, 0xbe, 0x73, 0xc4, 0x2b, 0x5c,
+ 0x61, 0xb1, 0x28, 0x3b, 0x94, 0xa2, 0xd7, 0xa1, 0x14, 0x77, 0x79, 0x87, 0x42, 0xe6, 0xbf, 0xfc,
+ 0xdb, 0x3f, 0xbf, 0x1a, 0x9d, 0xc5, 0x94, 0x68, 0x6c, 0x4e, 0xee, 0xf2, 0x5e, 0x82, 0xe1, 0x73,
+ 0x48, 0xef, 0x51, 0xd7, 0x27, 0x31, 0x66, 0x7a, 0xa1, 0x7f, 0x64, 0x06, 0xbe, 0xa4, 0x20, 0x20,
+ 0xe7, 0x11, 0x3d, 0xc8, 0xf6, 0x00, 0xe7, 0x05, 0x64, 0xa5, 0x52, 0x1f, 0x76, 0x04, 0x46, 0xac,
+ 0xdc, 0x15, 0x81, 0x7d, 0x85, 0x44, 0x60, 0x3f, 0x48, 0xac, 0xe3, 0x0e, 0xcc, 0xec, 0x51, 0x57,
+ 0x55, 0xaf, 0x38, 0xcd, 0xfd, 0x02, 0x21, 0xfd, 0x48, 0x46, 0x60, 0xce, 0xe0, 0x94, 0xc2, 0xc4,
+ 0x1e, 0xe4, 0xf6, 0x4d, 0xe6, 0x06, 0x2b, 0x69, 0x1c, 0xda, 0x42, 0x54, 0x49, 0x65, 0xe4, 0xee,
+ 0x1f, 0xfe, 0xf3, 0x66, 0x65, 0x4a, 0x55, 0x5f, 0xf1, 0x1b, 0xe5, 0x6f, 0x41, 0x36, 0x87, 0x39,
+ 0x6f, 0x01, 0x66, 0x9f, 0xa1, 0x06, 0x99, 0x3d, 0x1a, 0x60, 0x45, 0xf0, 0xc0, 0xcb, 0x3b, 0x85,
+ 0xc8, 0xda, 0x4d, 0xae, 0x09, 0xbc, 0x3c, 0x2e, 0x86, 0xf0, 0x4a, 0xaf, 0x4d, 0xe3, 0x0b, 0xd4,
+ 0x21, 0xc5, 0xd7, 0xf2, 0xd0, 0xab, 0xbc, 0x71, 0xcb, 0xc8, 0x0e, 0xd5, 0x6d, 0x46, 0x6e, 0x71,
+ 0xd5, 0x30, 0x28, 0xf0, 0x82, 0x08, 0x31, 0xeb, 0x11, 0xf5, 0x8b, 0xf9, 0x6b, 0x40, 0x4e, 0xb1,
+ 0x1f, 0xac, 0xcb, 0x71, 0x44, 0x8b, 0x91, 0x15, 0x9e, 0x91, 0x8f, 0x38, 0x5d, 0x2e, 0xf4, 0x5e,
+ 0x10, 0xac, 0x57, 0xf1, 0x8a, 0x2f, 0x3d, 0xfd, 0x66, 0xfc, 0x1c, 0xb2, 0x7b, 0x34, 0xc8, 0x1d,
+ 0x88, 0x5a, 0xf4, 0x0b, 0x85, 0xdc, 0x10, 0xb8, 0xd7, 0x70, 0x39, 0x06, 0x57, 0x06, 0xcf, 0x81,
+ 0xc5, 0xd0, 0xca, 0xaa, 0xb6, 0xe3, 0xb2, 0xe8, 0x8d, 0x51, 0x7e, 0xc2, 0x83, 0xdc, 0x57, 0x09,
+ 0xd0, 0xe5, 0x4f, 0x82, 0xed, 0x06, 0x92, 0xb3, 0xd8, 0x4a, 0xc2, 0x13, 0x7f, 0x95, 0x80, 0xf9,
+ 0xe1, 0x15, 0x71, 0x44, 0x5c, 0x88, 0xa0, 0x29, 0x1b, 0x85, 0xb9, 0x88, 0x61, 0xf2, 0x29, 0x27,
+ 0x9f, 0x84, 0x71, 0x0e, 0x29, 0xb8, 0x8b, 0xf8, 0xfe, 0xf9, 0xdc, 0xa5, 0xd7, 0xfc, 0x9f, 0x3a,
+ 0x5f, 0xf9, 0x6f, 0x12, 0x70, 0x65, 0xb7, 0xa3, 0x37, 0x2c, 0x7a, 0x61, 0x21, 0x71, 0x47, 0xf6,
+ 0x63, 0x21, 0xe0, 0x23, 0xb2, 0x79, 0x19, 0x01, 0x25, 0x2a, 0xc8, 0xf1, 0x77, 0x09, 0xc8, 0xef,
+ 0x98, 0xec, 0x1b, 0x11, 0xf2, 0x3d, 0x21, 0xe4, 0x3e, 0xf9, 0xf0, 0x52, 0x42, 0x0c, 0xc9, 0x8e,
+ 0xbf, 0x88, 0xc8, 0x85, 0x47, 0x96, 0xfd, 0x2a, 0x98, 0x0b, 0x58, 0xf4, 0xff, 0xb9, 0x24, 0xec,
+ 0x64, 0x4b, 0x65, 0x02, 0x1f, 0x0d, 0x97, 0x82, 0xf3, 0xb2, 0x42, 0xcc, 0xe2, 0x59, 0xb1, 0xdc,
+ 0x2f, 0xf1, 0x41, 0x01, 0x4f, 0x85, 0xbc, 0xe5, 0x10, 0xb1, 0x18, 0x97, 0x73, 0x62, 0x43, 0xb2,
+ 0x21, 0x24, 0xdc, 0x22, 0x17, 0x90, 0xc0, 0xcb, 0xeb, 0xaf, 0x13, 0xb0, 0x12, 0xa1, 0xe2, 0x09,
+ 0x75, 0xa9, 0x23, 0x65, 0x2c, 0x05, 0x64, 0x08, 0xc3, 0x13, 0xdb, 0x38, 0x47, 0x45, 0x51, 0xa8,
+ 0xb8, 0x4d, 0xde, 0x39, 0x53, 0x45, 0x9b, 0x83, 0x09, 0x19, 0xaf, 0x61, 0x59, 0xbc, 0x9d, 0x5c,
+ 0xea, 0xf0, 0x6e, 0x98, 0x55, 0x8e, 0xe2, 0xcf, 0xff, 0x72, 0x58, 0x90, 0x98, 0xa3, 0xd1, 0xae,
+ 0x75, 0x4a, 0xee, 0x0a, 0xe6, 0x3b, 0xf8, 0xde, 0x05, 0x98, 0xeb, 0x8c, 0xcf, 0xc3, 0x3f, 0x26,
+ 0x60, 0x29, 0x32, 0x11, 0x54, 0x4f, 0xe7, 0x27, 0xbf, 0x12, 0xda, 0x14, 0xe9, 0x44, 0x0e, 0x78,
+ 0x1a, 0xa4, 0x21, 0x29, 0x4c, 0xb2, 0x81, 0x0c, 0x25, 0xc6, 0x3a, 0xde, 0x3e, 0x77, 0x57, 0xd4,
+ 0x5c, 0xfc, 0x2a, 0x01, 0x6b, 0x31, 0xe9, 0x21, 0x18, 0xe5, 0xe6, 0xac, 0x45, 0xcb, 0xb9, 0x48,
+ 0xa2, 0x6c, 0x0a, 0x49, 0x1b, 0xe4, 0xc2, 0x92, 0xf8, 0x3e, 0xbd, 0x80, 0x24, 0x8f, 0xd4, 0x79,
+ 0x6f, 0x84, 0x4c, 0xb0, 0x67, 0x66, 0xe4, 0x5d, 0x1e, 0x8b, 0x99, 0x7e, 0x5f, 0x2f, 0xa8, 0x73,
+ 0x98, 0xf1, 0xa8, 0xbd, 0xd2, 0x6f, 0x40, 0x7a, 0x00, 0x5f, 0x36, 0xe2, 0x09, 0x92, 0x83, 0x2d,
+ 0x61, 0xa4, 0xc8, 0xc1, 0x45, 0x1f, 0x7d, 0xd6, 0x5b, 0x59, 0x72, 0x98, 0x06, 0xc3, 0x43, 0xc8,
+ 0x6a, 0xb4, 0x69, 0x77, 0x9a, 0xa6, 0x45, 0xbd, 0x95, 0xf8, 0x01, 0x63, 0x43, 0xb6, 0x2c, 0x30,
+ 0x17, 0x49, 0x18, 0x93, 0xc7, 0x66, 0x57, 0x74, 0x2a, 0x11, 0x09, 0x3b, 0xf4, 0xe7, 0x8b, 0x07,
+ 0x83, 0xf3, 0x43, 0xcb, 0x97, 0x6f, 0xa8, 0x1f, 0x42, 0x6a, 0xdb, 0xa1, 0xba, 0xab, 0xa4, 0xe1,
+ 0xd0, 0xec, 0x10, 0x9a, 0xea, 0xcd, 0xc8, 0x70, 0x30, 0xb9, 0xa4, 0xe7, 0x90, 0x92, 0x25, 0x3f,
+ 0x42, 0x55, 0xdc, 0x22, 0xdf, 0x11, 0x78, 0x2b, 0x64, 0x29, 0x4a, 0x9d, 0x57, 0xc4, 0x7f, 0x0c,
+ 0x69, 0x55, 0xc3, 0x2f, 0x81, 0xac, 0xde, 0xd0, 0x64, 0x39, 0x12, 0xd9, 0xab, 0xca, 0xcf, 0x21,
+ 0xa5, 0xd1, 0x86, 0x6d, 0xbb, 0xdf, 0x98, 0x66, 0x47, 0xc0, 0x71, 0xe0, 0x1d, 0x6a, 0x51, 0xf7,
+ 0x6b, 0x04, 0x63, 0x3d, 0x1a, 0xd8, 0x10, 0x70, 0xd8, 0x83, 0xf4, 0x8e, 0xfd, 0xaa, 0x63, 0xd9,
+ 0xba, 0x51, 0x6e, 0xeb, 0x2d, 0x3a, 0x78, 0x8b, 0x89, 0x47, 0xcf, 0x36, 0x68, 0x5c, 0x2a, 0x5d,
+ 0xea, 0x88, 0xbb, 0x46, 0xfe, 0xe7, 0x0f, 0xb9, 0x2f, 0x38, 0x3e, 0x20, 0x77, 0x22, 0x39, 0x4c,
+ 0x0e, 0x51, 0x37, 0x14, 0x06, 0x2b, 0xbd, 0xe6, 0x7f, 0x51, 0x7c, 0xc1, 0x37, 0xf7, 0xcb, 0x04,
+ 0x2c, 0xee, 0x51, 0x37, 0xc0, 0x21, 0xaf, 0x12, 0xce, 0x15, 0x10, 0x18, 0x26, 0x0f, 0x84, 0x80,
+ 0x0f, 0xf1, 0xde, 0x25, 0x04, 0x94, 0x98, 0x64, 0xea, 0x89, 0x66, 0x2d, 0x80, 0x77, 0x49, 0x76,
+ 0x55, 0x87, 0xf0, 0x32, 0xcb, 0xc7, 0x23, 0xd9, 0xa0, 0x06, 0x90, 0xd8, 0xd0, 0x8e, 0x46, 0xb1,
+ 0x31, 0xf2, 0xbe, 0xa0, 0xbb, 0x89, 0x37, 0x2e, 0x42, 0x87, 0x3f, 0x87, 0xb9, 0x6d, 0xde, 0x7a,
+ 0x5b, 0x97, 0x5b, 0x61, 0x70, 0x83, 0xd5, 0x0a, 0xd7, 0x2f, 0xb5, 0xc2, 0xdf, 0x27, 0x60, 0xee,
+ 0x61, 0xd3, 0x35, 0x4f, 0x74, 0x97, 0x0a, 0x16, 0x59, 0xce, 0x2f, 0x49, 0xbd, 0x2d, 0xa8, 0x3f,
+ 0x21, 0xdf, 0xb9, 0xcc, 0xd6, 0xca, 0xe1, 0x9e, 0xe0, 0xe3, 0x89, 0xf6, 0xdb, 0x04, 0xe4, 0x34,
+ 0x7a, 0x42, 0x1d, 0xf7, 0x5b, 0x11, 0xe2, 0x08, 0x6a, 0x2e, 0xe4, 0xa7, 0x90, 0x19, 0xbc, 0x1e,
+ 0xc2, 0x5d, 0x7b, 0xda, 0xfb, 0x2d, 0xdb, 0xf5, 0x62, 0xa8, 0x5d, 0x5f, 0xc6, 0x42, 0x24, 0xbd,
+ 0x6c, 0xd3, 0x5f, 0xc0, 0x9c, 0x0f, 0xbd, 0xbd, 0x6d, 0x77, 0x8e, 0xcc, 0x56, 0x90, 0x21, 0xd7,
+ 0x67, 0xf0, 0xcc, 0xe4, 0x96, 0x40, 0x5e, 0xc3, 0xeb, 0xd1, 0xc8, 0xed, 0x7a, 0x53, 0xe1, 0x74,
+ 0x60, 0x41, 0x46, 0x6e, 0x98, 0x20, 0x0c, 0x1a, 0x5b, 0x8e, 0xd6, 0x65, 0x7f, 0x49, 0xce, 0x23,
+ 0xe3, 0xc1, 0x6a, 0xfb, 0x83, 0x75, 0xb1, 0xb6, 0xf6, 0xc1, 0x99, 0x6d, 0x6d, 0x5c, 0xf4, 0xfa,
+ 0xed, 0xec, 0x7c, 0x90, 0xef, 0x32, 0xdd, 0xd3, 0xa3, 0x0b, 0x74, 0x4f, 0x04, 0x57, 0x63, 0xf9,
+ 0xbd, 0xae, 0xc9, 0xf6, 0x2f, 0x5a, 0x5e, 0xeb, 0xc5, 0xb5, 0x10, 0x73, 0xe1, 0xab, 0x41, 0x46,
+ 0x4a, 0x9c, 0x75, 0x36, 0x78, 0x95, 0x18, 0xfd, 0xb6, 0x96, 0x36, 0xd4, 0xc4, 0xb5, 0xca, 0x00,
+ 0x62, 0x28, 0xc6, 0x21, 0x0a, 0xb2, 0x26, 0xe0, 0x96, 0xf0, 0x6a, 0x14, 0x9c, 0xec, 0x00, 0x18,
+ 0x64, 0x07, 0x8b, 0x50, 0x51, 0x8c, 0x5b, 0xc5, 0x7c, 0xc4, 0xed, 0xa4, 0xba, 0xaa, 0xc8, 0x0c,
+ 0xdd, 0x67, 0xca, 0x7b, 0x16, 0x5c, 0x18, 0x22, 0x56, 0x91, 0x7b, 0x04, 0xd9, 0x9a, 0xeb, 0x50,
+ 0xbd, 0x5d, 0xd5, 0x9b, 0x2f, 0xa9, 0xcb, 0x2a, 0x3d, 0x17, 0x17, 0x03, 0xdb, 0x25, 0x0d, 0x95,
+ 0x9e, 0x1b, 0x9b, 0x9e, 0x23, 0xb7, 0x13, 0xb8, 0x2b, 0x9a, 0x2b, 0x6a, 0x9e, 0x50, 0x05, 0x54,
+ 0xee, 0x9c, 0x71, 0xd1, 0x12, 0xc6, 0x2f, 0x77, 0xc8, 0xc8, 0x07, 0x09, 0x7c, 0x0c, 0x73, 0x0a,
+ 0x66, 0xfb, 0x58, 0xef, 0xb4, 0xe8, 0xee, 0x09, 0xed, 0xb8, 0xf1, 0x61, 0xc8, 0x07, 0x90, 0x7c,
+ 0x53, 0x04, 0xd8, 0x21, 0xcc, 0xf6, 0x37, 0x49, 0x7e, 0x79, 0xf2, 0xef, 0x52, 0xd4, 0x05, 0x2f,
+ 0x21, 0xd1, 0x29, 0xaf, 0xa2, 0x25, 0xf7, 0xa9, 0x0e, 0x39, 0xd9, 0xa9, 0xf9, 0xbf, 0x83, 0x44,
+ 0xdd, 0xf4, 0x16, 0xa2, 0x06, 0xc9, 0xaa, 0xa0, 0x28, 0x90, 0xfe, 0x86, 0x04, 0x2e, 0x8e, 0xf9,
+ 0x11, 0x96, 0xba, 0xfd, 0xe8, 0x91, 0xba, 0xfd, 0xa0, 0x21, 0xdd, 0x01, 0x50, 0xa9, 0xdb, 0x80,
+ 0x9c, 0xac, 0x44, 0x5f, 0x4f, 0xf7, 0xbb, 0x82, 0xe2, 0x7a, 0xe1, 0x0c, 0x0a, 0x2e, 0xfe, 0x73,
+ 0xc8, 0xc9, 0x76, 0x2b, 0x4e, 0x7f, 0x5c, 0x16, 0xa9, 0x25, 0xac, 0x9f, 0xb5, 0x84, 0xba, 0x3c,
+ 0x22, 0x81, 0x6f, 0x45, 0xe7, 0x1e, 0x11, 0xbf, 0xb7, 0x77, 0xed, 0x88, 0xd1, 0xd1, 0xc7, 0x7d,
+ 0xd1, 0xcc, 0x8b, 0x57, 0x1b, 0x8b, 0x6e, 0xe6, 0xa5, 0xcd, 0xeb, 0x10, 0x71, 0x29, 0xfe, 0xc5,
+ 0xc6, 0xf0, 0x33, 0x98, 0xf6, 0xae, 0xb1, 0x03, 0x60, 0xf9, 0xb8, 0xfb, 0x70, 0x72, 0x53, 0xc0,
+ 0xae, 0x92, 0x6b, 0x91, 0xb0, 0x8c, 0x5a, 0x47, 0x75, 0x97, 0xa3, 0x3d, 0x13, 0xfd, 0x57, 0xe0,
+ 0x73, 0xc0, 0x50, 0x92, 0x84, 0xbf, 0x17, 0x84, 0x6b, 0x10, 0x3f, 0x3c, 0xdc, 0x4f, 0xfd, 0x71,
+ 0x6c, 0x36, 0xf0, 0x05, 0xa0, 0x97, 0x7a, 0x31, 0xc8, 0x31, 0x1f, 0x0d, 0xc2, 0x01, 0x09, 0x82,
+ 0x8b, 0x49, 0xc8, 0x20, 0x5d, 0x33, 0xdb, 0x3d, 0xcb, 0x4b, 0x42, 0x5c, 0xee, 0x47, 0xc2, 0x3f,
+ 0xac, 0xd1, 0x9f, 0xf5, 0x28, 0x73, 0xe3, 0x9a, 0x8a, 0xd0, 0x5d, 0x47, 0x30, 0x48, 0x0a, 0xa9,
+ 0xce, 0x91, 0x78, 0x46, 0x6e, 0xc3, 0x4c, 0xff, 0xb2, 0x1f, 0xfb, 0x1f, 0x04, 0x43, 0x9f, 0x01,
+ 0x0a, 0xf1, 0x26, 0x32, 0xb2, 0x65, 0xc2, 0x9c, 0xed, 0xb4, 0x44, 0xb9, 0x69, 0xda, 0x8e, 0xa1,
+ 0x5c, 0xb7, 0x52, 0xf2, 0xe6, 0xb9, 0x2a, 0xbe, 0x7d, 0xff, 0xe4, 0x4e, 0xcb, 0x74, 0x8f, 0x7b,
+ 0x8d, 0x62, 0xd3, 0x6e, 0x97, 0x3c, 0x4f, 0xf5, 0x7f, 0x10, 0x36, 0xd4, 0xe7, 0xf1, 0x96, 0xad,
+ 0x06, 0xfe, 0x32, 0xba, 0x58, 0xf1, 0xc0, 0x9e, 0xf9, 0x6f, 0xb1, 0xab, 0xa3, 0xd5, 0xb1, 0xea,
+ 0x78, 0x75, 0xa2, 0x3a, 0x59, 0x9d, 0xaa, 0x4e, 0x37, 0x26, 0xc5, 0xc4, 0xcd, 0xff, 0x05, 0x00,
+ 0x00, 0xff, 0xff, 0xe4, 0xcb, 0x00, 0x47, 0xda, 0x20, 0x00, 0x00,
+}
diff --git a/go/voltha/voltha.proto b/go/voltha/voltha.proto
deleted file mode 100644
index c9e7347..0000000
--- a/go/voltha/voltha.proto
+++ /dev/null
@@ -1,604 +0,0 @@
-/*
- * Top-level Voltha API definition
- *
- * For details, see individual definition files.
- */
-
-syntax = "proto3";
-
-option go_package = "github.com/opencord/voltha-protos/go/voltha";
-
-package voltha;
-
-import "google/api/annotations.proto";
-import "google/protobuf/empty.proto";
-
-import public "voltha_protos/meta.proto";
-import public "voltha_protos/common.proto";
-import public "voltha_protos/health.proto";
-import public "voltha_protos/logical_device.proto";
-import public "voltha_protos/device.proto";
-import public "voltha_protos/adapter.proto";
-import public "voltha_protos/openflow_13.proto";
-
-import "voltha_protos/omci_mib_db.proto";
-import "voltha_protos/omci_alarm_db.proto";
-import "voltha_protos/yang_options.proto";
-
-option java_package = "org.opencord.voltha";
-option java_outer_classname = "VolthaProtos";
-option csharp_namespace = "Opencord.Voltha.Voltha";
-
-message DeviceGroup {
-
- string id = 1 [(access) = READ_ONLY];
-
- repeated LogicalDevice logical_devices = 2 [(child_node) = {key: "id"}];
-
- repeated Device devices = 3 [(child_node) = {key: "id"}];
-}
-
-message DeviceGroups {
- repeated DeviceGroup items = 1;
-}
-
-
-message AlarmFilterRuleKey {
- option (yang_child_rule) = MOVE_TO_PARENT_LEVEL;
-
- enum AlarmFilterRuleKey {
- id = 0;
- type = 1;
- severity = 2;
- resource_id = 3;
- category = 4;
- device_id = 5;
- }
-}
-
-message AlarmFilterRule {
- AlarmFilterRuleKey.AlarmFilterRuleKey key = 1;
- string value = 2;
-}
-message AlarmFilter {
- string id = 1 [(access) = READ_ONLY];
-
- repeated AlarmFilterRule rules = 2;
-}
-
-message AlarmFilters {
- repeated AlarmFilter filters = 1;
-}
-
-message Logging {
- LogLevel.LogLevel level = 1;
- string package_name = 2;
-}
-
-// CoreInstance represents a core instance. It is data held in memory when a core
-// is running. This data is not persistent.
-message CoreInstance {
- option (yang_message_rule) = CREATE_BOTH_GROUPING_AND_CONTAINER;
-
- string instance_id = 1 [(access) = READ_ONLY];
-
- HealthStatus health = 2 [(child_node) = {}];
-
-}
-
-message CoreInstances {
- option (yang_message_rule) = CREATE_BOTH_GROUPING_AND_CONTAINER;
- repeated CoreInstance items = 1;
-}
-
-// Voltha represents the Voltha cluster data. Each Core instance will hold a subset of
-// the entire cluster. However, some items (e.g. adapters) will be held by all cores
-// for better performance
-message Voltha {
- option (yang_message_rule) = CREATE_BOTH_GROUPING_AND_CONTAINER;
-
- string version = 1 [(access) = READ_ONLY];
-
- repeated Adapter adapters = 2 [(child_node) = {key: "id"}];
-
- repeated LogicalDevice logical_devices = 3 [(child_node) = {key: "id"}];
-
- repeated Device devices = 4 [(child_node) = {key: "id"}];
-
- repeated DeviceType device_types = 5 [(child_node) = {key: "id"}];
-
- repeated DeviceGroup device_groups = 6 [(child_node) = {key: "id"}];
-
- repeated AlarmFilter alarm_filters = 7 [(child_node) = {key: "id"}];
-
- repeated
- omci.MibDeviceData omci_mib_database = 28
- [(child_node) = {key: "device_id"}];
-
- repeated
- alarm.AlarmDeviceData omci_alarm_database = 29
- [(child_node) = {key: "device_id"}];
-}
-
-// Device Self Test Response
-message SelfTestResponse {
- option (yang_child_rule) = MOVE_TO_PARENT_LEVEL;
-
- enum SelfTestResult {
- SUCCESS = 0;
- FAILURE = 1;
- NOT_SUPPORTED = 2;
- UNKNOWN_ERROR = 3;
- }
- SelfTestResult result = 1;
-}
-
-message OfAgentSubscriber {
- // ID of ofagent instance
- string ofagent_id = 1;
-
- // ID of voltha instance to which the ofagent is subscribed
- string voltha_id = 2;
-}
-
-// Identifies a membership group a Core belongs to
-message Membership {
- // Group name
- string group_name = 1;
-
- // Unique ID of a container within that group
- string id = 2;
-}
-
-/*
- * Voltha APIs
- *
- */
-service VolthaService {
-
- // Get more information on a given physical device
- rpc UpdateLogLevel(Logging) returns(google.protobuf.Empty) {
- option (google.api.http) = {
- get: "/api/v1/logs"
- };
- }
-
- // Get the membership group of a Voltha Core
- rpc GetMembership(google.protobuf.Empty) returns(Membership) {
- option (google.api.http) = {
- get: "/api/v1/membership"
- };
- }
-
- // Set the membership group of a Voltha Core
- rpc UpdateMembership(Membership) returns(google.protobuf.Empty) {
- option (google.api.http) = {
- post: "/api/v1/membership"
- body: "*"
- };
- }
-
- // Get high level information on the Voltha cluster
- rpc GetVoltha(google.protobuf.Empty) returns(Voltha) {
- option (google.api.http) = {
- get: "/api/v1"
- };
- }
-
- // List all Voltha cluster core instances
- rpc ListCoreInstances(google.protobuf.Empty) returns(CoreInstances) {
- option (google.api.http) = {
- get: "/api/v1/instances"
- };
- option (voltha.yang_xml_tag).xml_tag = 'items';
- option (voltha.yang_xml_tag).list_items_name = 'items';
- }
-
- // Get details on a Voltha cluster instance
- rpc GetCoreInstance(ID) returns(CoreInstance) {
- option (google.api.http) = {
- get: "/api/v1/instances/{id}"
- };
- }
-
- // List all active adapters (plugins) in the Voltha cluster
- rpc ListAdapters(google.protobuf.Empty) returns(Adapters) {
- option (google.api.http) = {
- get: "/api/v1/adapters"
- };
- option (voltha.yang_xml_tag).xml_tag = 'adapters';
- }
-
-
- // List all logical devices managed by the Voltha cluster
- rpc ListLogicalDevices(google.protobuf.Empty) returns(LogicalDevices) {
- option (google.api.http) = {
- get: "/api/v1/logical_devices"
- };
- option (voltha.yang_xml_tag).xml_tag = 'logical_devices';
- }
-
- // Get additional information on a given logical device
- rpc GetLogicalDevice(ID) returns(LogicalDevice) {
- option (google.api.http) = {
- get: "/api/v1/logical_devices/{id}"
- };
- }
-
- // List ports of a logical device
- rpc ListLogicalDevicePorts(ID) returns(LogicalPorts) {
- option (google.api.http) = {
- get: "/api/v1/logical_devices/{id}/ports"
- };
- option (voltha.yang_xml_tag).xml_tag = 'ports';
- }
-
- // Gets a logical device port
- rpc GetLogicalDevicePort(LogicalPortId) returns(LogicalPort) {
- option (google.api.http) = {
- get: "/api/v1/logical_devices/{id}/ports/{port_id}"
- };
- option (voltha.yang_xml_tag).xml_tag = 'port';
- }
-
- // Enables a logical device port
- rpc EnableLogicalDevicePort(LogicalPortId) returns(google.protobuf.Empty) {
- option (google.api.http) = {
- post: "/api/v1/logical_devices/{id}/ports/{port_id}/enable"
- };
- }
-
- // Disables a logical device port
- rpc DisableLogicalDevicePort(LogicalPortId) returns(google.protobuf.Empty) {
- option (google.api.http) = {
- post: "/api/v1/logical_devices/{id}/ports/{port_id}/disable"
- };
- }
-
- // List all flows of a logical device
- rpc ListLogicalDeviceFlows(ID) returns(openflow_13.Flows) {
- option (google.api.http) = {
- get: "/api/v1/logical_devices/{id}/flows"
- };
- option (voltha.yang_xml_tag).xml_tag = 'flows';
- option (voltha.yang_xml_tag).list_items_name = 'items';
- }
-
- // Update flow table for logical device
- rpc UpdateLogicalDeviceFlowTable(openflow_13.FlowTableUpdate)
- returns(google.protobuf.Empty) {
- option (google.api.http) = {
- post: "/api/v1/logical_devices/{id}/flows"
- body: "*"
- };
- }
-
- // Update meter table for logical device
- rpc UpdateLogicalDeviceMeterTable(openflow_13.MeterModUpdate)
- returns(google.protobuf.Empty) {
- option (google.api.http) = {
- post: "/api/v1/logical_devices/{id}/meters"
- body: "*"
- };
- }
-
- // Get all meter stats for logical device
- rpc GetMeterStatsOfLogicalDevice(ID)
- returns(openflow_13.MeterStatsReply) {
- option (google.api.http) = {
- get: "/api/v1/logical_devices/{id}/meters_stats"
- };
- }
-
- // List all flow groups of a logical device
- rpc ListLogicalDeviceFlowGroups(ID) returns(openflow_13.FlowGroups) {
- option (google.api.http) = {
- get: "/api/v1/logical_devices/{id}/flow_groups"
- };
- option (voltha.yang_xml_tag).xml_tag = 'flow_groups';
- option (voltha.yang_xml_tag).list_items_name = 'items';
- }
-
- // Update group table for device
- rpc UpdateLogicalDeviceFlowGroupTable(openflow_13.FlowGroupTableUpdate)
- returns(google.protobuf.Empty) {
- option (google.api.http) = {
- post: "/api/v1/logical_devices/{id}/flow_groups"
- body: "*"
- };
- }
-
- // List all physical devices controlled by the Voltha cluster
- rpc ListDevices(google.protobuf.Empty) returns(Devices) {
- option (google.api.http) = {
- get: "/api/v1/devices"
- };
- option (voltha.yang_xml_tag).xml_tag = 'devices';
- }
-
- // List all physical devices IDs controlled by the Voltha cluster
- rpc ListDeviceIds(google.protobuf.Empty) returns(IDs) {
- option (google.api.http) = {
- get: "/api/v1/deviceids"
- };
- option (voltha.yang_xml_tag).xml_tag = 'id';
- option (voltha.yang_xml_tag).list_items_name = 'items';
- }
-
- // Request to a voltha Core to reconcile a set of devices based on their IDs
- rpc ReconcileDevices(IDs) returns(google.protobuf.Empty) {
- option (google.api.http) = {
- post: "/api/v1/deviceids"
- body: "*"
- };
- }
-
- // Get more information on a given physical device
- rpc GetDevice(ID) returns(Device) {
- option (google.api.http) = {
- get: "/api/v1/devices/{id}"
- };
- }
-
- // Pre-provision a new physical device
- rpc CreateDevice(Device) returns(Device) {
- option (google.api.http) = {
- post: "/api/v1/devices"
- body: "*"
- };
- }
-
- // Enable a device. If the device was in pre-provisioned state then it
- // will transition to ENABLED state. If it was is DISABLED state then it
- // will transition to ENABLED state as well.
- rpc EnableDevice(ID) returns(google.protobuf.Empty) {
- option (google.api.http) = {
- post: "/api/v1/devices/{id}/enable"
- };
- }
-
- // Disable a device
- rpc DisableDevice(ID) returns(google.protobuf.Empty) {
- option (google.api.http) = {
- post: "/api/v1/devices/{id}/disable"
- };
- }
-
- // Reboot a device
- rpc RebootDevice(ID) returns(google.protobuf.Empty) {
- option (google.api.http) = {
- post: "/api/v1/devices/{id}/reboot"
- };
- }
-
- // Delete a device
- rpc DeleteDevice(ID) returns(google.protobuf.Empty) {
- option (google.api.http) = {
- delete: "/api/v1/devices/{id}/delete"
- };
- }
-
- // Request an image download to the standby partition
- // of a device.
- // Note that the call is expected to be non-blocking.
- rpc DownloadImage(ImageDownload) returns(OperationResp) {
- option (google.api.http) = {
- post: "/api/v1/devices/{id}/image_downloads/{name}"
- body: "*"
- };
- }
-
- // Get image download status on a device
- // The request retrieves progress on device and updates db record
- rpc GetImageDownloadStatus(ImageDownload) returns(ImageDownload) {
- option (google.api.http) = {
- get: "/api/v1/devices/{id}/image_downloads/{name}/status"
- };
- }
-
- // Get image download db record
- rpc GetImageDownload(ImageDownload) returns(ImageDownload) {
- option (google.api.http) = {
- get: "/api/v1/devices/{id}/image_downloads/{name}"
- };
- }
-
- // List image download db records for a given device
- rpc ListImageDownloads(ID) returns(ImageDownloads) {
- option (google.api.http) = {
- get: "/api/v1/devices/{id}/image_downloads"
- };
- }
-
- // Cancel an existing image download process on a device
- rpc CancelImageDownload(ImageDownload) returns(OperationResp) {
- option (google.api.http) = {
- delete: "/api/v1/devices/{id}/image_downloads/{name}"
- };
- }
-
- // Activate the specified image at a standby partition
- // to active partition.
- // Depending on the device implementation, this call
- // may or may not cause device reboot.
- // If no reboot, then a reboot is required to make the
- // activated image running on device
- // Note that the call is expected to be non-blocking.
- rpc ActivateImageUpdate(ImageDownload) returns(OperationResp) {
- option (google.api.http) = {
- post: "/api/v1/devices/{id}/image_downloads/{name}/image_update"
- body: "*"
- };
- }
-
- // Revert the specified image at standby partition
- // to active partition, and revert to previous image
- // Depending on the device implementation, this call
- // may or may not cause device reboot.
- // If no reboot, then a reboot is required to make the
- // previous image running on device
- // Note that the call is expected to be non-blocking.
- rpc RevertImageUpdate(ImageDownload) returns(OperationResp) {
- option (google.api.http) = {
- post: "/api/v1/devices/{id}/image_downloads/{name}/image_revert"
- body: "*"
- };
- }
-
- // List ports of a device
- rpc ListDevicePorts(ID) returns(Ports) {
- option (google.api.http) = {
- get: "/api/v1/devices/{id}/ports"
- };
- option (voltha.yang_xml_tag).xml_tag = 'ports';
- }
-
- // List pm config of a device
- rpc ListDevicePmConfigs(ID) returns(PmConfigs) {
- option (google.api.http) = {
- get: "/api/v1/devices/{id}/pm_configs"
- };
- }
-
- // Update the pm config of a device
- rpc UpdateDevicePmConfigs(voltha.PmConfigs) returns(google.protobuf.Empty) {
- option (google.api.http) = {
- post: "/api/v1/devices/{id}/pm_configs"
- body: "*"
- };
- }
-
- // List all flows of a device
- rpc ListDeviceFlows(ID) returns(openflow_13.Flows) {
- option (google.api.http) = {
- get: "/api/v1/devices/{id}/flows"
- };
- option (voltha.yang_xml_tag).xml_tag = 'flows';
- option (voltha.yang_xml_tag).list_items_name = 'items';
- }
-
- // List all flow groups of a device
- rpc ListDeviceFlowGroups(ID) returns(openflow_13.FlowGroups) {
- option (google.api.http) = {
- get: "/api/v1/devices/{id}/flow_groups"
- };
- option (voltha.yang_xml_tag).xml_tag = 'flow_groups';
- option (voltha.yang_xml_tag).list_items_name = 'items';
- }
-
- // List device types known to Voltha
- rpc ListDeviceTypes(google.protobuf.Empty) returns(DeviceTypes) {
- option (google.api.http) = {
- get: "/api/v1/device_types"
- };
- option (voltha.yang_xml_tag).xml_tag = 'device_types';
- }
-
- // Get additional information on a device type
- rpc GetDeviceType(ID) returns(DeviceType) {
- option (google.api.http) = {
- get: "/api/v1/device_types/{id}"
- };
- }
-
- // List all device sharding groups
- rpc ListDeviceGroups(google.protobuf.Empty) returns(DeviceGroups) {
- option (google.api.http) = {
- get: "/api/v1/device_groups"
- };
- option (voltha.yang_xml_tag).xml_tag = 'device_groups';
- }
-
- // Stream control packets to the dataplane
- rpc StreamPacketsOut(stream openflow_13.PacketOut)
- returns(google.protobuf.Empty) {
- // This does not have an HTTP representation
- }
-
- // Receive control packet stream
- rpc ReceivePacketsIn(google.protobuf.Empty)
- returns(stream openflow_13.PacketIn) {
- // This does not have an HTTP representation
- }
-
- rpc ReceiveChangeEvents(google.protobuf.Empty)
- returns(stream openflow_13.ChangeEvent) {
- // This does not have an HTTP representation
- }
-
- // Get additional information on a device group
- rpc GetDeviceGroup(ID) returns(DeviceGroup) {
- option (google.api.http) = {
- get: "/api/v1/device_groups/{id}"
- };
- }
-
- rpc CreateAlarmFilter(AlarmFilter) returns(AlarmFilter) {
- option (google.api.http) = {
- post: "/api/v1/alarm_filters"
- body: "*"
- };
- }
-
- rpc GetAlarmFilter(ID) returns(AlarmFilter) {
- option (google.api.http) = {
- get: "/api/v1/alarm_filters/{id}"
- };
- }
-
- rpc UpdateAlarmFilter(AlarmFilter) returns(AlarmFilter) {
- option (google.api.http) = {
- put: "/api/v1/alarm_filters/{id}"
- body: "*"
- };
- }
-
- rpc DeleteAlarmFilter(ID) returns(google.protobuf.Empty) {
- option (google.api.http) = {
- delete: "/api/v1/alarm_filters/{id}"
- };
- }
-
- rpc ListAlarmFilters(google.protobuf.Empty) returns(AlarmFilters) {
- option (google.api.http) = {
- get: "/api/v1/alarm_filters"
- };
- }
-
- rpc GetImages(ID) returns(Images) {
- option (google.api.http) = {
- get: "/api/v1/devices/{id}/images"
- };
- }
-
- rpc SelfTest(ID) returns(SelfTestResponse) {
- option (google.api.http) = {
- post: "/api/v1/devices/{id}/self_test"
- };
- }
-
- // OpenOMCI MIB information
- rpc GetMibDeviceData(ID) returns(omci.MibDeviceData) {
- option (google.api.http) = {
- get: "/api/v1/openomci/{id}/mib"
- };
- }
-
- // OpenOMCI ALARM information
- rpc GetAlarmDeviceData(ID) returns(alarm.AlarmDeviceData) {
- option (google.api.http) = {
- get: "/api/v1/openomci/{id}/alarm"
- };
- }
-
- // Simulate an Alarm
- rpc SimulateAlarm(SimulateAlarmRequest) returns(OperationResp) {
- option (google.api.http) = {
- post: "/api/v1/devices/{id}/simulate_larm"
- body: "*"
- };
- }
- rpc Subscribe (OfAgentSubscriber) returns (OfAgentSubscriber) {
- }
-}
-