VOL-1460
I need to test out a method sharing protos.
In particular, it is the protos under the go/folder
Plus some updates to the build process.
Change-Id: I5878354fd1ef136d4f0a019b22de96afdb0205e1
diff --git a/go/voltha/logical_device.proto b/go/voltha/logical_device.proto
new file mode 100644
index 0000000..6e3a233
--- /dev/null
+++ b/go/voltha/logical_device.proto
@@ -0,0 +1,61 @@
+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;
+}