Workflow-driver for VOLTHA2.x and EPON adapter
Change-Id: I6ecb60014f005f7691d2c7ccd1c1ef56de79a5d4
diff --git a/xos/synchronizer/models/ntt-workflow-driver.xproto b/xos/synchronizer/models/ntt-workflow-driver.xproto
new file mode 100644
index 0000000..cf00c14
--- /dev/null
+++ b/xos/synchronizer/models/ntt-workflow-driver.xproto
@@ -0,0 +1,93 @@
+option name = "ntt-workflow-driver";
+option app_label = "ntt-workflow-driver";
+
+message NttWorkflowDriverService (Service){
+ option verbose_name = "NttWorkflowDriver Service";
+ option kind = "control";
+ option description = "Service that manages the EPON subscriber workflow";
+}
+
+message NttWorkflowDriverServiceInstance (ServiceInstance){
+ option owner_class_name = "NttWorkflowDriverService";
+ option verbose_name = "NttWorkflowDriver Service Instance";
+ option description = "Workflow settings for a particular ONU Device";
+ option policy_implemented = "True";
+
+ required string serial_number = 2 [
+ help_text = "Serial number of ONU",
+ max_length = 256,
+ tosca_key=True,
+ unique = True];
+ required string authentication_state = 3 [
+ help_text = "Subscriber authentication state",
+ choices = "(('AWAITING', 'Awaiting'), ('STARTED', 'Started'), ('REQUESTED', 'Requested'), ('APPROVED', 'Approved'), ('DENIED', 'Denied'), )",
+ default = "AWAITING",
+ feedback_state = True,
+ max_length = 50];
+ required string of_dpid = 4 [
+ help_text = "OLT MAC address",
+ max_length = 256];
+ required int32 uni_port_id = 5 [
+ help_text = "ONU UNI port ID"];
+ required string admin_onu_state = 6 [
+ help_text = "ONU administrative state",
+ choices = "(('AWAITING', 'Awaiting'), ('ENABLED', 'Enabled'), ('DISABLED', 'Disabled'))",
+ default = "AWAITING",
+ feedback_state = True,
+ max_length = 256];
+ optional string status_message = 7 [
+ help_text = "Status text of current state machine state",
+ default = "",
+ max_length = 256];
+
+ optional string mac_address = 10 [
+ help_text = "Subscriber MAC address",
+ feedback_state = True,
+ max_length = 20];
+ required string oper_onu_status = 11 [
+ help_text = "ONU operational state",
+ choices = "(('AWAITING', 'Awaiting'), ('ENABLED', 'Enabled'), ('DISABLED', 'Disabled'))",
+ default = "AWAITING",
+ feedback_state = True,
+ max_length = 256];
+}
+
+message NttWorkflowDriverWhiteListEntry (XOSBase) {
+ option verbose_name = "ONU Whitelist";
+ option plural = "nttworkflowdriverwhitelistentries";
+ option description = "White list entry";
+ option policy_implemented = "True";
+
+ required manytoone owner->NttWorkflowDriverService:whitelist_entries = 1:1001 [
+ help_text = "NttWorkflowDriverService that owns this white list entry",
+ db_index = True,
+ tosca_key = True];
+ optional string mac_address = 2 [
+ help_text = "ONU MAC Address for package A authentication",
+ max_length = 256,
+ tosca_key = True];
+ required int32 pon_port_from = 3 [
+ help_text = "Start ID of approved PON Port"];
+ required int32 pon_port_to = 4 [
+ help_text = "End ID of approved PON Port"];
+}
+
+message NttWorkflowDriverOltInformation (ServiceInstance){
+ option owner_class_name = "NttWorkflowDriverService";
+ option verbose_name = "NttWorkflowDriver Olt Information";
+ option description = "OLT information";
+ option policy_implemented = "True";
+
+ required string of_dpid = 2 [
+ help_text = "OLT MAC address",
+ max_length = 256];
+ optional string olt_location = 3 [
+ help_text = "OLT location",
+ max_length = 256];
+ optional string olt_package = 4 [
+ help_text = "Package",
+ max_length = 256];
+ optional uint32 port_no = 5 [
+ help_text = "Port number",
+ max_length = 256];
+}