[SEBA-742] Adding methods to validate subscriber tech_profile association

Change-Id: I4287f7021fa2c3cac6f025ac829ab280bf09e8ba
diff --git a/xos/synchronizer/models/volt.xproto b/xos/synchronizer/models/volt.xproto
index 5abdf6f..cabf0c2 100644
--- a/xos/synchronizer/models/volt.xproto
+++ b/xos/synchronizer/models/volt.xproto
@@ -101,6 +101,14 @@
     optional string nas_id = 20 [
         help_text = "Authentication ID (propagated to the free-radius server via sadis)",
         max_length = 256];
+
+    required string technology = 22 [
+        help_text = "The technology being utilized by the adapter",
+        db_index = True,
+        tosca_key = True,
+        max_length = 16,
+        choices = "(('gpon', 'gpon'), ('xgspon', 'xgspon'))",
+        default = "xgspon"];
 }
 
 message PortBase (XOSBase){
@@ -116,12 +124,10 @@
 
     optional string admin_state = 4 [
         help_text = "admin state, whether port should be enabled",
-        // TODO: Should specify "choices"
         feedback_state = True,
         max_length = 32];
     optional string oper_status = 5 [
         help_text = "operational status, whether port is active",
-        // TODO: Should specify "choices"
         feedback_state = True,
         max_length = 32];
 }
@@ -237,7 +243,9 @@
         db_index = True,
         tosca_key = True,
         min_value = 64,
-        max_value = 255];
+        max_value = 255,
+        unique_with = "technology"];
+
     required string profile_value = 3 [
         help_text = "The technology profile value in JSON format",
         max_length = 4096];