CORD-1023: Generate protos and xprotos for services
Change-Id: Ied46d63437e0290f947e652c3392e51647bbadf5
diff --git a/xos/genx/protos/services/accessagent.proto b/xos/genx/protos/services/accessagent.proto
new file mode 100644
index 0000000..8ffc493
--- /dev/null
+++ b/xos/genx/protos/services/accessagent.proto
@@ -0,0 +1,6 @@
+
+message AccessAgent {
+ required string name = 1 [ null = False, max_length = 254, blank = False, help_text = "name of agent", modifier = required, db_index = False ];
+ required int32 volt_service = 2 [ null = False, blank = False, model = VOLTService, modifier = required, type = link, port = access_agents, db_index = True ];
+ optional string mac = 3 [ null = True, max_length = 32, blank = True, help_text = "MAC Address or Access Agent", modifier = optional, db_index = False ];
+}
\ No newline at end of file
diff --git a/xos/genx/protos/services/accessdevice.proto b/xos/genx/protos/services/accessdevice.proto
new file mode 100644
index 0000000..b2b7caa
--- /dev/null
+++ b/xos/genx/protos/services/accessdevice.proto
@@ -0,0 +1,6 @@
+
+message AccessDevice {
+ required int32 volt_device = 1 [ null = False, blank = False, model = VOLTDevice, modifier = required, type = link, port = access_devices, db_index = True ];
+ optional int32 uplink = 2 [ db_index = False, modifier = optional, null = True, blank = True ];
+ optional int32 vlan = 3 [ db_index = False, modifier = optional, null = True, blank = True ];
+}
\ No newline at end of file
diff --git a/xos/genx/protos/services/agentportmapping.proto b/xos/genx/protos/services/agentportmapping.proto
new file mode 100644
index 0000000..fbbba9d
--- /dev/null
+++ b/xos/genx/protos/services/agentportmapping.proto
@@ -0,0 +1,6 @@
+
+message AgentPortMapping {
+ required int32 access_agent = 1 [ null = False, blank = False, model = AccessAgent, modifier = required, type = link, port = port_mappings, db_index = True ];
+ optional string mac = 2 [ null = True, max_length = 32, blank = True, help_text = "MAC Address", modifier = optional, db_index = False ];
+ optional string port = 3 [ null = True, max_length = 32, blank = True, help_text = "Openflow port ID", modifier = optional, db_index = False ];
+}
\ No newline at end of file
diff --git a/xos/genx/protos/services/cordsubscriberroot.proto b/xos/genx/protos/services/cordsubscriberroot.proto
new file mode 100644
index 0000000..8fa0603
--- /dev/null
+++ b/xos/genx/protos/services/cordsubscriberroot.proto
@@ -0,0 +1,18 @@
+
+message CordSubscriberRoot {
+ required string kind = 1 [ null = False, default = "generic", max_length = 30, content_type = "stripped", blank = False, modifier = required, db_index = False ];
+ optional string name = 2 [ null = True, max_length = 255, content_type = "stripped", blank = True, help_text = "name", modifier = optional, db_index = False ];
+ optional string service_specific_attribute = 3 [ db_index = False, modifier = optional, null = True, blank = True ];
+ optional string service_specific_id = 4 [ null = True, max_length = 30, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ required bool firewall_enable = 5 [ db_index = False, default = False, modifier = required, null = False, blank = True ];
+ optional string firewall_rules = 6 [ db_index = False, default = "accept all anywhere anywhere", modifier = optional, null = True, blank = True ];
+ required bool url_filter_enable = 7 [ db_index = False, default = False, modifier = required, null = False, blank = True ];
+ optional string url_filter_rules = 8 [ db_index = False, default = "allow all", modifier = optional, null = True, blank = True ];
+ required string url_filter_level = 9 [ null = False, default = "PG", max_length = 30, content_type = "stripped", blank = False, modifier = required, db_index = False ];
+ required bool cdn_enable = 10 [ db_index = False, default = False, modifier = required, null = False, blank = True ];
+ required bool is_demo_user = 11 [ db_index = False, default = False, modifier = required, null = False, blank = True ];
+ required int32 uplink_speed = 12 [ db_index = False, default = 1000000000, modifier = required, null = False, blank = False ];
+ required int32 downlink_speed = 13 [ db_index = False, default = 1000000000, modifier = required, null = False, blank = False ];
+ required bool enable_uverse = 14 [ db_index = False, default = True, modifier = required, null = False, blank = True ];
+ required string status = 15 [ null = False, default = "enabled", choices = "(('enabled', 'Enabled'), ('suspended', 'Suspended'), ('delinquent', 'Delinquent'), ('copyrightviolation', 'Copyright Violation'))", max_length = 30, content_type = "stripped", blank = False, modifier = required, db_index = False ];
+}
\ No newline at end of file
diff --git a/xos/genx/protos/services/exampleservice.proto b/xos/genx/protos/services/exampleservice.proto
new file mode 100644
index 0000000..20368c9
--- /dev/null
+++ b/xos/genx/protos/services/exampleservice.proto
@@ -0,0 +1,17 @@
+
+message ExampleService {
+ optional string description = 1 [ null = True, max_length = 254, blank = True, help_text = "Description of Service", modifier = optional, db_index = False ];
+ required bool enabled = 2 [ db_index = False, default = True, modifier = required, null = False, blank = True ];
+ required string kind = 3 [ null = False, default = "generic", max_length = 30, content_type = "stripped", blank = False, help_text = "Kind of service", modifier = required, db_index = False ];
+ required string name = 4 [ null = False, max_length = 30, content_type = "stripped", blank = False, help_text = "Service Name", modifier = required, db_index = False ];
+ optional string versionNumber = 5 [ null = True, max_length = 30, content_type = "stripped", blank = True, help_text = "Version of Service Definition", modifier = optional, db_index = False ];
+ required bool published = 6 [ db_index = False, default = True, modifier = required, null = False, blank = True ];
+ optional string view_url = 7 [ null = True, max_length = 1024, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string icon_url = 8 [ null = True, max_length = 1024, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string public_key = 9 [ null = True, max_length = 1024, blank = True, help_text = "Public key string", modifier = optional, db_index = False ];
+ optional string private_key_fn = 10 [ null = True, max_length = 1024, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string service_specific_id = 11 [ null = True, max_length = 30, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string service_specific_attribute = 12 [ db_index = False, modifier = optional, null = True, blank = True ];
+ optional int32 controller = 13 [ null = True, blank = True, help_text = "The Service Controller this Service uses", model = ServiceController, modifier = optional, type = link, port = services, db_index = True ];
+ required string service_message = 14 [ null = False, max_length = 254, blank = False, help_text = "Service Message to Display", modifier = required, db_index = False ];
+}
\ No newline at end of file
diff --git a/xos/genx/protos/services/fabricservice.proto b/xos/genx/protos/services/fabricservice.proto
new file mode 100644
index 0000000..d1187a4
--- /dev/null
+++ b/xos/genx/protos/services/fabricservice.proto
@@ -0,0 +1,17 @@
+
+message FabricService {
+ optional string description = 1 [ null = True, max_length = 254, blank = True, help_text = "Description of Service", modifier = optional, db_index = False ];
+ required bool enabled = 2 [ db_index = False, default = True, modifier = required, null = False, blank = True ];
+ required string kind = 3 [ null = False, default = "generic", max_length = 30, content_type = "stripped", blank = False, help_text = "Kind of service", modifier = required, db_index = False ];
+ required string name = 4 [ null = False, max_length = 30, content_type = "stripped", blank = False, help_text = "Service Name", modifier = required, db_index = False ];
+ optional string versionNumber = 5 [ null = True, max_length = 30, content_type = "stripped", blank = True, help_text = "Version of Service Definition", modifier = optional, db_index = False ];
+ required bool published = 6 [ db_index = False, default = True, modifier = required, null = False, blank = True ];
+ optional string view_url = 7 [ null = True, max_length = 1024, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string icon_url = 8 [ null = True, max_length = 1024, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string public_key = 9 [ null = True, max_length = 1024, blank = True, help_text = "Public key string", modifier = optional, db_index = False ];
+ optional string private_key_fn = 10 [ null = True, max_length = 1024, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string service_specific_id = 11 [ null = True, max_length = 30, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string service_specific_attribute = 12 [ db_index = False, modifier = optional, null = True, blank = True ];
+ optional int32 controller = 13 [ null = True, blank = True, help_text = "The Service Controller this Service uses", model = ServiceController, modifier = optional, type = link, port = services, db_index = True ];
+ required bool autoconfig = 14 [ null = False, default = True, blank = True, help_text = "Autoconfigure the fabric", modifier = required, db_index = False ];
+}
\ No newline at end of file
diff --git a/xos/genx/protos/services/onosapp.proto b/xos/genx/protos/services/onosapp.proto
new file mode 100644
index 0000000..66bd612
--- /dev/null
+++ b/xos/genx/protos/services/onosapp.proto
@@ -0,0 +1,17 @@
+
+message ONOSApp {
+ optional string name = 1 [ null = True, max_length = 200, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ required string kind = 2 [ null = False, default = "generic", max_length = 30, content_type = "stripped", blank = False, modifier = required, db_index = False ];
+ required int32 provider_service = 3 [ null = False, blank = False, model = Service, modifier = required, type = link, port = provided_tenants, db_index = True ];
+ optional int32 subscriber_service = 4 [ null = True, blank = True, model = Service, modifier = optional, type = link, port = subscribed_tenants, db_index = True ];
+ optional int32 subscriber_tenant = 5 [ null = True, blank = True, model = Tenant, modifier = optional, type = link, port = subscribed_tenants, db_index = True ];
+ optional int32 subscriber_user = 6 [ null = True, blank = True, model = User, modifier = optional, type = link, port = subscribed_tenants, db_index = True ];
+ optional int32 subscriber_root = 7 [ null = True, blank = True, model = TenantRoot, modifier = optional, type = link, port = subscribed_tenants, db_index = True ];
+ optional int32 subscriber_network = 8 [ null = True, blank = True, model = Network, modifier = optional, type = link, port = subscribed_tenants, db_index = True ];
+ optional string service_specific_id = 9 [ null = True, max_length = 30, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string service_specific_attribute = 10 [ db_index = False, modifier = optional, null = True, blank = True ];
+ required string connect_method = 11 [ null = False, default = "na", choices = "(('public', 'Public'), ('private', 'Private'), ('private-unidirectional', 'Private Unidirectional'), ('na', 'Not Applicable'))", max_length = 30, blank = False, modifier = required, db_index = False ];
+ optional string install_dependencies = 12 [ db_index = False, modifier = optional, null = True, blank = True ];
+ optional string dependencies = 13 [ db_index = False, modifier = optional, null = True, blank = True ];
+ optional int32 creator = 14 [ null = True, blank = True, model = User, modifier = optional, type = link, port = onos_apps, db_index = True ];
+}
\ No newline at end of file
diff --git a/xos/genx/protos/services/onosservice.proto b/xos/genx/protos/services/onosservice.proto
new file mode 100644
index 0000000..04b476b
--- /dev/null
+++ b/xos/genx/protos/services/onosservice.proto
@@ -0,0 +1,20 @@
+
+message ONOSService {
+ optional string description = 1 [ null = True, max_length = 254, blank = True, help_text = "Description of Service", modifier = optional, db_index = False ];
+ required bool enabled = 2 [ db_index = False, default = True, modifier = required, null = False, blank = True ];
+ required string kind = 3 [ null = False, default = "generic", max_length = 30, content_type = "stripped", blank = False, help_text = "Kind of service", modifier = required, db_index = False ];
+ required string name = 4 [ null = False, max_length = 30, content_type = "stripped", blank = False, help_text = "Service Name", modifier = required, db_index = False ];
+ optional string versionNumber = 5 [ null = True, max_length = 30, content_type = "stripped", blank = True, help_text = "Version of Service Definition", modifier = optional, db_index = False ];
+ required bool published = 6 [ db_index = False, default = True, modifier = required, null = False, blank = True ];
+ optional string view_url = 7 [ null = True, max_length = 1024, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string icon_url = 8 [ null = True, max_length = 1024, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string public_key = 9 [ null = True, max_length = 1024, blank = True, help_text = "Public key string", modifier = optional, db_index = False ];
+ optional string private_key_fn = 10 [ null = True, max_length = 1024, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string service_specific_id = 11 [ null = True, max_length = 30, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string service_specific_attribute = 12 [ db_index = False, modifier = optional, null = True, blank = True ];
+ optional int32 controller = 13 [ null = True, blank = True, help_text = "The Service Controller this Service uses", model = ServiceController, modifier = optional, type = link, port = services, db_index = True ];
+ optional string rest_hostname = 14 [ null = True, max_length = 255, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ required int32 rest_port = 15 [ db_index = False, default = 8181, modifier = required, null = False, blank = False ];
+ required bool no_container = 16 [ db_index = False, default = False, modifier = required, null = False, blank = True ];
+ optional string node_key = 17 [ null = True, max_length = 1024, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+}
\ No newline at end of file
diff --git a/xos/genx/protos/services/voltdevice.proto b/xos/genx/protos/services/voltdevice.proto
new file mode 100644
index 0000000..45b85d9
--- /dev/null
+++ b/xos/genx/protos/services/voltdevice.proto
@@ -0,0 +1,8 @@
+
+message VOLTDevice {
+ required string name = 1 [ null = False, max_length = 254, blank = False, help_text = "name of device", modifier = required, db_index = False ];
+ required int32 volt_service = 2 [ null = False, blank = False, model = VOLTService, modifier = required, type = link, port = volt_devices, db_index = True ];
+ optional string openflow_id = 3 [ null = True, max_length = 254, blank = True, help_text = "OpenFlow ID", modifier = optional, db_index = False ];
+ optional string driver = 4 [ null = True, max_length = 254, blank = True, help_text = "driver", modifier = optional, db_index = False ];
+ optional int32 access_agent = 5 [ null = True, blank = True, model = AccessAgent, modifier = optional, type = link, port = volt_devices, db_index = True ];
+}
\ No newline at end of file
diff --git a/xos/genx/protos/services/voltservice.proto b/xos/genx/protos/services/voltservice.proto
new file mode 100644
index 0000000..2d353b3
--- /dev/null
+++ b/xos/genx/protos/services/voltservice.proto
@@ -0,0 +1,16 @@
+
+message VOLTService {
+ optional string description = 1 [ null = True, max_length = 254, blank = True, help_text = "Description of Service", modifier = optional, db_index = False ];
+ required bool enabled = 2 [ db_index = False, default = True, modifier = required, null = False, blank = True ];
+ required string kind = 3 [ null = False, default = "generic", max_length = 30, content_type = "stripped", blank = False, help_text = "Kind of service", modifier = required, db_index = False ];
+ required string name = 4 [ null = False, max_length = 30, content_type = "stripped", blank = False, help_text = "Service Name", modifier = required, db_index = False ];
+ optional string versionNumber = 5 [ null = True, max_length = 30, content_type = "stripped", blank = True, help_text = "Version of Service Definition", modifier = optional, db_index = False ];
+ required bool published = 6 [ db_index = False, default = True, modifier = required, null = False, blank = True ];
+ optional string view_url = 7 [ null = True, max_length = 1024, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string icon_url = 8 [ null = True, max_length = 1024, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string public_key = 9 [ null = True, max_length = 1024, blank = True, help_text = "Public key string", modifier = optional, db_index = False ];
+ optional string private_key_fn = 10 [ null = True, max_length = 1024, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string service_specific_id = 11 [ null = True, max_length = 30, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string service_specific_attribute = 12 [ db_index = False, modifier = optional, null = True, blank = True ];
+ optional int32 controller = 13 [ null = True, blank = True, help_text = "The Service Controller this Service uses", model = ServiceController, modifier = optional, type = link, port = services, db_index = True ];
+}
\ No newline at end of file
diff --git a/xos/genx/protos/services/volttenant.proto b/xos/genx/protos/services/volttenant.proto
new file mode 100644
index 0000000..afbe64a
--- /dev/null
+++ b/xos/genx/protos/services/volttenant.proto
@@ -0,0 +1,17 @@
+
+message VOLTTenant {
+ optional string name = 1 [ null = True, max_length = 200, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ required string kind = 2 [ null = False, default = "generic", max_length = 30, content_type = "stripped", blank = False, modifier = required, db_index = False ];
+ required int32 provider_service = 3 [ null = False, blank = False, model = Service, modifier = required, type = link, port = provided_tenants, db_index = True ];
+ optional int32 subscriber_service = 4 [ null = True, blank = True, model = Service, modifier = optional, type = link, port = subscribed_tenants, db_index = True ];
+ optional int32 subscriber_tenant = 5 [ null = True, blank = True, model = Tenant, modifier = optional, type = link, port = subscribed_tenants, db_index = True ];
+ optional int32 subscriber_user = 6 [ null = True, blank = True, model = User, modifier = optional, type = link, port = subscribed_tenants, db_index = True ];
+ optional int32 subscriber_root = 7 [ null = True, blank = True, model = TenantRoot, modifier = optional, type = link, port = subscribed_tenants, db_index = True ];
+ optional int32 subscriber_network = 8 [ null = True, blank = True, model = Network, modifier = optional, type = link, port = subscribed_tenants, db_index = True ];
+ optional string service_specific_id = 9 [ null = True, max_length = 30, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string service_specific_attribute = 10 [ db_index = False, modifier = optional, null = True, blank = True ];
+ required string connect_method = 11 [ null = False, default = "na", choices = "(('public', 'Public'), ('private', 'Private'), ('private-unidirectional', 'Private Unidirectional'), ('na', 'Not Applicable'))", max_length = 30, blank = False, modifier = required, db_index = False ];
+ optional int32 s_tag = 12 [ db_index = False, help_text = "s-tag", modifier = optional, null = True, blank = True ];
+ optional int32 c_tag = 13 [ db_index = False, help_text = "c-tag", modifier = optional, null = True, blank = True ];
+ optional int32 creator = 14 [ null = True, blank = True, model = User, modifier = optional, type = link, port = created_volts, db_index = True ];
+}
\ No newline at end of file
diff --git a/xos/genx/protos/services/vrouterapp.proto b/xos/genx/protos/services/vrouterapp.proto
new file mode 100644
index 0000000..ed4c22a
--- /dev/null
+++ b/xos/genx/protos/services/vrouterapp.proto
@@ -0,0 +1,7 @@
+
+message VRouterApp {
+ required int32 vrouter_service = 1 [ null = False, blank = False, model = VRouterService, modifier = required, type = link, port = apps, db_index = True ];
+ required string name = 2 [ null = False, max_length = 50, blank = False, help_text = "application name", modifier = required, db_index = False ];
+ required string control_plane_connect_point = 3 [ null = False, max_length = 21, blank = False, help_text = "port identifier in ONOS", modifier = required, db_index = False ];
+ required bool ospf_enabled = 4 [ null = False, default = True, blank = True, help_text = "ospf enabled", modifier = required, db_index = False ];
+}
\ No newline at end of file
diff --git a/xos/genx/protos/services/vrouterdevice.proto b/xos/genx/protos/services/vrouterdevice.proto
new file mode 100644
index 0000000..1771282
--- /dev/null
+++ b/xos/genx/protos/services/vrouterdevice.proto
@@ -0,0 +1,8 @@
+
+message VRouterDevice {
+ optional string name = 1 [ null = True, max_length = 20, blank = True, help_text = "device friendly name", modifier = optional, db_index = False ];
+ required string openflow_id = 2 [ null = False, max_length = 20, blank = False, help_text = "device identifier in ONOS", modifier = required, db_index = False ];
+ required string config_key = 3 [ null = False, default = "basic", max_length = 32, blank = False, help_text = "configuration key", modifier = required, db_index = False ];
+ required string driver = 4 [ null = False, max_length = 32, blank = False, help_text = "driver type", modifier = required, db_index = False ];
+ required int32 vrouter_service = 5 [ null = False, blank = False, model = VRouterService, modifier = required, type = link, port = devices, db_index = True ];
+}
\ No newline at end of file
diff --git a/xos/genx/protos/services/vrouterinterface.proto b/xos/genx/protos/services/vrouterinterface.proto
new file mode 100644
index 0000000..31a20f7
--- /dev/null
+++ b/xos/genx/protos/services/vrouterinterface.proto
@@ -0,0 +1,7 @@
+
+message VRouterInterface {
+ required int32 vrouter_port = 1 [ null = False, blank = False, model = VRouterPort, modifier = required, type = link, port = interfaces, db_index = True ];
+ required string name = 2 [ null = False, max_length = 10, blank = False, help_text = "interface name", modifier = required, db_index = False ];
+ required string mac = 3 [ null = False, max_length = 17, blank = False, help_text = "interface mac", modifier = required, db_index = False ];
+ optional string vlan = 4 [ null = True, max_length = 10, blank = True, help_text = "interface vlan id", modifier = optional, db_index = False ];
+}
\ No newline at end of file
diff --git a/xos/genx/protos/services/vrouterip.proto b/xos/genx/protos/services/vrouterip.proto
new file mode 100644
index 0000000..749731e
--- /dev/null
+++ b/xos/genx/protos/services/vrouterip.proto
@@ -0,0 +1,6 @@
+
+message VRouterIp {
+ optional string name = 1 [ null = True, max_length = 20, blank = True, help_text = "ip friendly name", modifier = optional, db_index = False ];
+ required int32 vrouter_interface = 2 [ null = False, blank = False, model = VRouterInterface, modifier = required, type = link, port = ips, db_index = True ];
+ required string ip = 3 [ null = False, max_length = 19, blank = False, help_text = "interface ips", modifier = required, db_index = False ];
+}
\ No newline at end of file
diff --git a/xos/genx/protos/services/vrouterport.proto b/xos/genx/protos/services/vrouterport.proto
new file mode 100644
index 0000000..9d1e723
--- /dev/null
+++ b/xos/genx/protos/services/vrouterport.proto
@@ -0,0 +1,7 @@
+
+message VRouterPort {
+ optional string name = 1 [ null = True, max_length = 20, blank = True, help_text = "port friendly name", modifier = optional, db_index = False ];
+ required string openflow_id = 2 [ null = False, max_length = 21, blank = False, help_text = "port identifier in ONOS", modifier = required, db_index = False ];
+ required int32 vrouter_device = 3 [ null = False, blank = False, model = VRouterDevice, modifier = required, type = link, port = ports, db_index = True ];
+ required int32 vrouter_service = 4 [ null = False, blank = False, model = VRouterService, modifier = required, type = link, port = device_ports, db_index = True ];
+}
\ No newline at end of file
diff --git a/xos/genx/protos/services/vrouterservice.proto b/xos/genx/protos/services/vrouterservice.proto
new file mode 100644
index 0000000..af5e3b4
--- /dev/null
+++ b/xos/genx/protos/services/vrouterservice.proto
@@ -0,0 +1,20 @@
+
+message VRouterService {
+ optional string description = 1 [ null = True, max_length = 254, blank = True, help_text = "Description of Service", modifier = optional, db_index = False ];
+ required bool enabled = 2 [ db_index = False, default = True, modifier = required, null = False, blank = True ];
+ required string kind = 3 [ null = False, default = "generic", max_length = 30, content_type = "stripped", blank = False, help_text = "Kind of service", modifier = required, db_index = False ];
+ required string name = 4 [ null = False, max_length = 30, content_type = "stripped", blank = False, help_text = "Service Name", modifier = required, db_index = False ];
+ optional string versionNumber = 5 [ null = True, max_length = 30, content_type = "stripped", blank = True, help_text = "Version of Service Definition", modifier = optional, db_index = False ];
+ required bool published = 6 [ db_index = False, default = True, modifier = required, null = False, blank = True ];
+ optional string view_url = 7 [ null = True, max_length = 1024, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string icon_url = 8 [ null = True, max_length = 1024, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string public_key = 9 [ null = True, max_length = 1024, blank = True, help_text = "Public key string", modifier = optional, db_index = False ];
+ optional string private_key_fn = 10 [ null = True, max_length = 1024, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string service_specific_id = 11 [ null = True, max_length = 30, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string service_specific_attribute = 12 [ db_index = False, modifier = optional, null = True, blank = True ];
+ optional int32 controller = 13 [ null = True, blank = True, help_text = "The Service Controller this Service uses", model = ServiceController, modifier = optional, type = link, port = services, db_index = True ];
+ optional string rest_hostname = 14 [ null = True, max_length = 255, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ required int32 rest_port = 15 [ db_index = False, default = 8181, modifier = required, null = False, blank = False ];
+ required string rest_user = 16 [ null = False, default = "onos", max_length = 255, content_type = "stripped", blank = False, modifier = required, db_index = False ];
+ required string rest_pass = 17 [ null = False, default = "rocks", max_length = 255, content_type = "stripped", blank = False, modifier = required, db_index = False ];
+}
\ No newline at end of file
diff --git a/xos/genx/protos/services/vroutertenant.proto b/xos/genx/protos/services/vroutertenant.proto
new file mode 100644
index 0000000..580af29
--- /dev/null
+++ b/xos/genx/protos/services/vroutertenant.proto
@@ -0,0 +1,17 @@
+
+message VRouterTenant {
+ optional string name = 1 [ null = True, max_length = 200, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ required string kind = 2 [ null = False, default = "generic", max_length = 30, content_type = "stripped", blank = False, modifier = required, db_index = False ];
+ required int32 provider_service = 3 [ null = False, blank = False, model = Service, modifier = required, type = link, port = provided_tenants, db_index = True ];
+ optional int32 subscriber_service = 4 [ null = True, blank = True, model = Service, modifier = optional, type = link, port = subscribed_tenants, db_index = True ];
+ optional int32 subscriber_tenant = 5 [ null = True, blank = True, model = Tenant, modifier = optional, type = link, port = subscribed_tenants, db_index = True ];
+ optional int32 subscriber_user = 6 [ null = True, blank = True, model = User, modifier = optional, type = link, port = subscribed_tenants, db_index = True ];
+ optional int32 subscriber_root = 7 [ null = True, blank = True, model = TenantRoot, modifier = optional, type = link, port = subscribed_tenants, db_index = True ];
+ optional int32 subscriber_network = 8 [ null = True, blank = True, model = Network, modifier = optional, type = link, port = subscribed_tenants, db_index = True ];
+ optional string service_specific_id = 9 [ null = True, max_length = 30, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string service_specific_attribute = 10 [ db_index = False, modifier = optional, null = True, blank = True ];
+ required string connect_method = 11 [ null = False, default = "na", choices = "(('public', 'Public'), ('private', 'Private'), ('private-unidirectional', 'Private Unidirectional'), ('na', 'Not Applicable'))", max_length = 30, blank = False, modifier = required, db_index = False ];
+ optional string public_ip = 12 [ null = True, max_length = 30, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string public_mac = 13 [ null = True, max_length = 30, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional int32 address_pool = 14 [ null = True, blank = True, model = AddressPool, modifier = optional, type = link, port = vrouter_tenants, db_index = True ];
+}
\ No newline at end of file
diff --git a/xos/genx/protos/services/vsgservice.proto b/xos/genx/protos/services/vsgservice.proto
new file mode 100644
index 0000000..1bf25f0
--- /dev/null
+++ b/xos/genx/protos/services/vsgservice.proto
@@ -0,0 +1,21 @@
+
+message VSGService {
+ optional string description = 1 [ null = True, max_length = 254, blank = True, help_text = "Description of Service", modifier = optional, db_index = False ];
+ required bool enabled = 2 [ db_index = False, default = True, modifier = required, null = False, blank = True ];
+ required string kind = 3 [ null = False, default = "generic", max_length = 30, content_type = "stripped", blank = False, help_text = "Kind of service", modifier = required, db_index = False ];
+ required string name = 4 [ null = False, max_length = 30, content_type = "stripped", blank = False, help_text = "Service Name", modifier = required, db_index = False ];
+ optional string versionNumber = 5 [ null = True, max_length = 30, content_type = "stripped", blank = True, help_text = "Version of Service Definition", modifier = optional, db_index = False ];
+ required bool published = 6 [ db_index = False, default = True, modifier = required, null = False, blank = True ];
+ optional string view_url = 7 [ null = True, max_length = 1024, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string icon_url = 8 [ null = True, max_length = 1024, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string public_key = 9 [ null = True, max_length = 1024, blank = True, help_text = "Public key string", modifier = optional, db_index = False ];
+ optional string private_key_fn = 10 [ null = True, max_length = 1024, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string service_specific_id = 11 [ null = True, max_length = 30, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string service_specific_attribute = 12 [ db_index = False, modifier = optional, null = True, blank = True ];
+ optional int32 controller = 13 [ null = True, blank = True, help_text = "The Service Controller this Service uses", model = ServiceController, modifier = optional, type = link, port = services, db_index = True ];
+ optional string url_filter_kind = 14 [ null = True, choices = "((None, 'None'), ('safebrowsing', 'Safe Browsing'), ('answerx', 'AnswerX'))", max_length = 30, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ required string dns_servers = 15 [ null = False, default = "8.8.8.8", max_length = 255, content_type = "stripped", blank = False, modifier = required, db_index = False ];
+ optional string node_label = 16 [ null = True, max_length = 30, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ required string docker_image_name = 17 [ null = False, default = "docker.io/xosproject/vsg", max_length = 255, content_type = "stripped", blank = False, modifier = required, db_index = False ];
+ required bool docker_insecure_registry = 18 [ db_index = False, default = False, modifier = required, null = False, blank = True ];
+}
\ No newline at end of file
diff --git a/xos/genx/protos/services/vtnservice.proto b/xos/genx/protos/services/vtnservice.proto
new file mode 100644
index 0000000..5a2e41a
--- /dev/null
+++ b/xos/genx/protos/services/vtnservice.proto
@@ -0,0 +1,28 @@
+
+message VTNService {
+ optional string description = 1 [ null = True, max_length = 254, blank = True, help_text = "Description of Service", modifier = optional, db_index = False ];
+ required bool enabled = 2 [ db_index = False, default = True, modifier = required, null = False, blank = True ];
+ required string kind = 3 [ null = False, default = "generic", max_length = 30, content_type = "stripped", blank = False, help_text = "Kind of service", modifier = required, db_index = False ];
+ required string name = 4 [ null = False, max_length = 30, content_type = "stripped", blank = False, help_text = "Service Name", modifier = required, db_index = False ];
+ optional string versionNumber = 5 [ null = True, max_length = 30, content_type = "stripped", blank = True, help_text = "Version of Service Definition", modifier = optional, db_index = False ];
+ required bool published = 6 [ db_index = False, default = True, modifier = required, null = False, blank = True ];
+ optional string view_url = 7 [ null = True, max_length = 1024, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string icon_url = 8 [ null = True, max_length = 1024, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string public_key = 9 [ null = True, max_length = 1024, blank = True, help_text = "Public key string", modifier = optional, db_index = False ];
+ optional string private_key_fn = 10 [ null = True, max_length = 1024, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string service_specific_id = 11 [ null = True, max_length = 30, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string service_specific_attribute = 12 [ db_index = False, modifier = optional, null = True, blank = True ];
+ optional int32 controller = 13 [ null = True, blank = True, help_text = "The Service Controller this Service uses", model = ServiceController, modifier = optional, type = link, port = services, db_index = True ];
+ required string privateGatewayMac = 14 [ null = False, default = "00:00:00:00:00:01", max_length = 30, content_type = "stripped", blank = False, modifier = required, db_index = False ];
+ required string localManagementIp = 15 [ null = False, default = "172.27.0.1/24", max_length = 30, content_type = "stripped", blank = False, modifier = required, db_index = False ];
+ required int32 ovsdbPort = 16 [ db_index = False, default = 6641, modifier = required, null = False, blank = False ];
+ required int32 sshPort = 17 [ db_index = False, default = 22, modifier = required, null = False, blank = False ];
+ required string sshUser = 18 [ null = False, default = "root", max_length = 30, content_type = "stripped", blank = False, modifier = required, db_index = False ];
+ required string sshKeyFile = 19 [ null = False, default = "/root/node_key", max_length = 1024, content_type = "stripped", blank = False, modifier = required, db_index = False ];
+ required int32 mgmtSubnetBits = 20 [ db_index = False, default = 24, modifier = required, null = False, blank = False ];
+ required string xosEndpoint = 21 [ null = False, default = "http://xos/", max_length = 1024, content_type = "stripped", blank = False, modifier = required, db_index = False ];
+ required string xosUser = 22 [ null = False, default = "padmin@vicci.org", max_length = 255, content_type = "stripped", blank = False, modifier = required, db_index = False ];
+ required string xosPassword = 23 [ null = False, default = "letmein", max_length = 255, content_type = "stripped", blank = False, modifier = required, db_index = False ];
+ required int32 vtnAPIVersion = 24 [ db_index = False, default = 1, modifier = required, null = False, blank = False ];
+ required string controllerPort = 25 [ null = False, default = "onos-cord:6653", max_length = 255, content_type = "stripped", blank = False, modifier = required, db_index = False ];
+}
\ No newline at end of file
diff --git a/xos/genx/protos/services/vtrservice.proto b/xos/genx/protos/services/vtrservice.proto
new file mode 100644
index 0000000..0ad6a1d
--- /dev/null
+++ b/xos/genx/protos/services/vtrservice.proto
@@ -0,0 +1,16 @@
+
+message VTRService {
+ optional string description = 1 [ null = True, max_length = 254, blank = True, help_text = "Description of Service", modifier = optional, db_index = False ];
+ required bool enabled = 2 [ db_index = False, default = True, modifier = required, null = False, blank = True ];
+ required string kind = 3 [ null = False, default = "generic", max_length = 30, content_type = "stripped", blank = False, help_text = "Kind of service", modifier = required, db_index = False ];
+ required string name = 4 [ null = False, max_length = 30, content_type = "stripped", blank = False, help_text = "Service Name", modifier = required, db_index = False ];
+ optional string versionNumber = 5 [ null = True, max_length = 30, content_type = "stripped", blank = True, help_text = "Version of Service Definition", modifier = optional, db_index = False ];
+ required bool published = 6 [ db_index = False, default = True, modifier = required, null = False, blank = True ];
+ optional string view_url = 7 [ null = True, max_length = 1024, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string icon_url = 8 [ null = True, max_length = 1024, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string public_key = 9 [ null = True, max_length = 1024, blank = True, help_text = "Public key string", modifier = optional, db_index = False ];
+ optional string private_key_fn = 10 [ null = True, max_length = 1024, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string service_specific_id = 11 [ null = True, max_length = 30, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string service_specific_attribute = 12 [ db_index = False, modifier = optional, null = True, blank = True ];
+ optional int32 controller = 13 [ null = True, blank = True, help_text = "The Service Controller this Service uses", model = ServiceController, modifier = optional, type = link, port = services, db_index = True ];
+}
\ No newline at end of file
diff --git a/xos/genx/protos/services/vtrtenant.proto b/xos/genx/protos/services/vtrtenant.proto
new file mode 100644
index 0000000..54d6e60
--- /dev/null
+++ b/xos/genx/protos/services/vtrtenant.proto
@@ -0,0 +1,21 @@
+
+message VTRTenant {
+ optional string name = 1 [ null = True, max_length = 200, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ required string kind = 2 [ null = False, default = "generic", max_length = 30, content_type = "stripped", blank = False, modifier = required, db_index = False ];
+ required int32 provider_service = 3 [ null = False, blank = False, model = Service, modifier = required, type = link, port = provided_tenants, db_index = True ];
+ optional int32 subscriber_service = 4 [ null = True, blank = True, model = Service, modifier = optional, type = link, port = subscribed_tenants, db_index = True ];
+ optional int32 subscriber_tenant = 5 [ null = True, blank = True, model = Tenant, modifier = optional, type = link, port = subscribed_tenants, db_index = True ];
+ optional int32 subscriber_user = 6 [ null = True, blank = True, model = User, modifier = optional, type = link, port = subscribed_tenants, db_index = True ];
+ optional int32 subscriber_root = 7 [ null = True, blank = True, model = TenantRoot, modifier = optional, type = link, port = subscribed_tenants, db_index = True ];
+ optional int32 subscriber_network = 8 [ null = True, blank = True, model = Network, modifier = optional, type = link, port = subscribed_tenants, db_index = True ];
+ optional string service_specific_id = 9 [ null = True, max_length = 30, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string service_specific_attribute = 10 [ db_index = False, modifier = optional, null = True, blank = True ];
+ required string connect_method = 11 [ null = False, default = "na", choices = "(('public', 'Public'), ('private', 'Private'), ('private-unidirectional', 'Private Unidirectional'), ('na', 'Not Applicable'))", max_length = 30, blank = False, modifier = required, db_index = False ];
+ required string test = 12 [ null = False, choices = "(('ping', 'Ping'), ('traceroute', 'Trace Route'), ('tcpdump', 'Tcp Dump'))", max_length = 30, content_type = "stripped", blank = False, help_text = "type of test", modifier = required, db_index = False ];
+ required string scope = 13 [ null = False, choices = "(('container', 'Container'), ('vm', 'VM'))", max_length = 30, content_type = "stripped", blank = False, help_text = "scope of test", modifier = required, db_index = False ];
+ optional string argument = 14 [ null = True, max_length = 40, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ optional string result = 15 [ db_index = False, modifier = optional, null = True, blank = True ];
+ optional string result_code = 16 [ null = True, max_length = 32, content_type = "stripped", blank = True, modifier = optional, db_index = False ];
+ required int32 target_type = 17 [ null = False, blank = False, model = ContentType, modifier = required, type = link, port = vtrtenant, db_index = True ];
+ required uint32 target_id = 18 [ db_index = False, modifier = required, null = False, blank = False ];
+}
\ No newline at end of file
diff --git a/xos/genx/xprotos/services.exampleservice/exampleservice.xproto b/xos/genx/xprotos/services.exampleservice/exampleservice.xproto
new file mode 100644
index 0000000..373022c
--- /dev/null
+++ b/xos/genx/xprotos/services.exampleservice/exampleservice.xproto
@@ -0,0 +1,18 @@
+
+
+message ExampleService {
+ optional string description = 1 [help_text = "Description of Service", max_length = 254, null = True, db_index = False, blank = True];
+ required bool enabled = 2 [default = True, null = False, db_index = False, blank = True];
+ required string kind = 3 [default = "generic", max_length = 30, content_type = "stripped", blank = False, help_text = "Kind of service", null = False, db_index = False];
+ required string name = 4 [max_length = 30, content_type = "stripped", blank = False, help_text = "Service Name", null = False, db_index = False];
+ optional string versionNumber = 5 [max_length = 30, content_type = "stripped", blank = True, help_text = "Version of Service Definition", null = True, db_index = False];
+ required bool published = 6 [default = True, null = False, db_index = False, blank = True];
+ optional string view_url = 7 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string icon_url = 8 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string public_key = 9 [help_text = "Public key string", max_length = 1024, null = True, db_index = False, blank = True];
+ optional string private_key_fn = 10 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_id = 11 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_attribute = 12 [db_index = False, null = True, blank = True];
+ optional manytoone controller->ServiceController:services = 13 [help_text = "The Service Controller this Service uses", null = True, db_index = True, blank = True];
+ required string service_message = 14 [help_text = "Service Message to Display", max_length = 254, null = False, db_index = False, blank = False];
+}
diff --git a/xos/genx/xprotos/services.exampleservice/exampletenant.xproto b/xos/genx/xprotos/services.exampleservice/exampletenant.xproto
new file mode 100644
index 0000000..85404ee
--- /dev/null
+++ b/xos/genx/xprotos/services.exampleservice/exampletenant.xproto
@@ -0,0 +1,20 @@
+
+
+message ExampleTenant {
+ optional string name = 1 [db_index = False, max_length = 200, null = True, content_type = "stripped", blank = True];
+ required string kind = 2 [default = "generic", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
+ required manytoone provider_service->Service:provided_tenants = 3 [db_index = True, null = False, blank = False];
+ optional manytoone subscriber_service->Service:subscribed_tenants = 4 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_tenant->Tenant:subscribed_tenants = 5 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_user->User:subscribed_tenants = 6 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_root->TenantRoot:subscribed_tenants = 7 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_network->Network:subscribed_tenants = 8 [db_index = True, null = True, blank = True];
+ optional string service_specific_id = 9 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_attribute = 10 [db_index = False, null = True, blank = True];
+ required string connect_method = 11 [default = "na", choices = "(('public', 'Public'), ('private', 'Private'), ('private-unidirectional', 'Private Unidirectional'), ('na', 'Not Applicable'))", max_length = 30, blank = False, null = False, db_index = False];
+ optional manytoone instance->Instance:+ = 12 [help_text = "Instance used by this Tenant", null = True, db_index = True, blank = True];
+ optional manytoone creator->User:+ = 13 [help_text = "Creator of this Tenant", null = True, db_index = True, blank = True];
+ optional string external_hostname = 14 [max_length = 30, content_type = "stripped", blank = True, help_text = "External host name", null = True, db_index = False];
+ optional string external_container = 15 [max_length = 30, content_type = "stripped", blank = True, help_text = "External host name", null = True, db_index = False];
+ required string tenant_message = 16 [help_text = "Tenant Message to Display", max_length = 254, null = False, db_index = False, blank = False];
+}
diff --git a/xos/genx/xprotos/services.fabric/fabricservice.xproto b/xos/genx/xprotos/services.fabric/fabricservice.xproto
new file mode 100644
index 0000000..662d7ea
--- /dev/null
+++ b/xos/genx/xprotos/services.fabric/fabricservice.xproto
@@ -0,0 +1,18 @@
+
+
+message FabricService {
+ optional string description = 1 [help_text = "Description of Service", max_length = 254, null = True, db_index = False, blank = True];
+ required bool enabled = 2 [default = True, null = False, db_index = False, blank = True];
+ required string kind = 3 [default = "generic", max_length = 30, content_type = "stripped", blank = False, help_text = "Kind of service", null = False, db_index = False];
+ required string name = 4 [max_length = 30, content_type = "stripped", blank = False, help_text = "Service Name", null = False, db_index = False];
+ optional string versionNumber = 5 [max_length = 30, content_type = "stripped", blank = True, help_text = "Version of Service Definition", null = True, db_index = False];
+ required bool published = 6 [default = True, null = False, db_index = False, blank = True];
+ optional string view_url = 7 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string icon_url = 8 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string public_key = 9 [help_text = "Public key string", max_length = 1024, null = True, db_index = False, blank = True];
+ optional string private_key_fn = 10 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_id = 11 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_attribute = 12 [db_index = False, null = True, blank = True];
+ optional manytoone controller->ServiceController:services = 13 [help_text = "The Service Controller this Service uses", null = True, db_index = True, blank = True];
+ required bool autoconfig = 14 [help_text = "Autoconfigure the fabric", default = True, null = False, db_index = False, blank = True];
+}
diff --git a/xos/genx/xprotos/services.onos/onosapp.xproto b/xos/genx/xprotos/services.onos/onosapp.xproto
new file mode 100644
index 0000000..91af3c8
--- /dev/null
+++ b/xos/genx/xprotos/services.onos/onosapp.xproto
@@ -0,0 +1,18 @@
+
+
+message ONOSApp {
+ optional string name = 1 [db_index = False, max_length = 200, null = True, content_type = "stripped", blank = True];
+ required string kind = 2 [default = "generic", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
+ required manytoone provider_service->Service:provided_tenants = 3 [db_index = True, null = False, blank = False];
+ optional manytoone subscriber_service->Service:subscribed_tenants = 4 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_tenant->Tenant:subscribed_tenants = 5 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_user->User:subscribed_tenants = 6 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_root->TenantRoot:subscribed_tenants = 7 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_network->Network:subscribed_tenants = 8 [db_index = True, null = True, blank = True];
+ optional string service_specific_id = 9 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_attribute = 10 [db_index = False, null = True, blank = True];
+ required string connect_method = 11 [default = "na", choices = "(('public', 'Public'), ('private', 'Private'), ('private-unidirectional', 'Private Unidirectional'), ('na', 'Not Applicable'))", max_length = 30, blank = False, null = False, db_index = False];
+ optional string install_dependencies = 12 [db_index = False, null = True, blank = True];
+ optional string dependencies = 13 [db_index = False, null = True, blank = True];
+ optional manytoone creator->User:onos_apps = 14 [db_index = True, null = True, blank = True];
+}
diff --git a/xos/genx/xprotos/services.onos/onosservice.xproto b/xos/genx/xprotos/services.onos/onosservice.xproto
new file mode 100644
index 0000000..0de950e
--- /dev/null
+++ b/xos/genx/xprotos/services.onos/onosservice.xproto
@@ -0,0 +1,21 @@
+
+
+message ONOSService {
+ optional string description = 1 [help_text = "Description of Service", max_length = 254, null = True, db_index = False, blank = True];
+ required bool enabled = 2 [default = True, null = False, db_index = False, blank = True];
+ required string kind = 3 [default = "generic", max_length = 30, content_type = "stripped", blank = False, help_text = "Kind of service", null = False, db_index = False];
+ required string name = 4 [max_length = 30, content_type = "stripped", blank = False, help_text = "Service Name", null = False, db_index = False];
+ optional string versionNumber = 5 [max_length = 30, content_type = "stripped", blank = True, help_text = "Version of Service Definition", null = True, db_index = False];
+ required bool published = 6 [default = True, null = False, db_index = False, blank = True];
+ optional string view_url = 7 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string icon_url = 8 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string public_key = 9 [help_text = "Public key string", max_length = 1024, null = True, db_index = False, blank = True];
+ optional string private_key_fn = 10 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_id = 11 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_attribute = 12 [db_index = False, null = True, blank = True];
+ optional manytoone controller->ServiceController:services = 13 [help_text = "The Service Controller this Service uses", null = True, db_index = True, blank = True];
+ optional string rest_hostname = 14 [db_index = False, max_length = 255, null = True, content_type = "stripped", blank = True];
+ required int32 rest_port = 15 [default = 8181, null = False, db_index = False, blank = False];
+ required bool no_container = 16 [default = False, null = False, db_index = False, blank = True];
+ optional string node_key = 17 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+}
diff --git a/xos/genx/xprotos/services.volt/accessagent.xproto b/xos/genx/xprotos/services.volt/accessagent.xproto
new file mode 100644
index 0000000..d97622a
--- /dev/null
+++ b/xos/genx/xprotos/services.volt/accessagent.xproto
@@ -0,0 +1,7 @@
+
+
+message AccessAgent {
+ required string name = 1 [help_text = "name of agent", max_length = 254, null = False, db_index = False, blank = False];
+ required manytoone volt_service->VOLTService:access_agents = 2 [db_index = True, null = False, blank = False];
+ optional string mac = 3 [help_text = "MAC Address or Access Agent", max_length = 32, null = True, db_index = False, blank = True];
+}
diff --git a/xos/genx/xprotos/services.volt/accessdevice.xproto b/xos/genx/xprotos/services.volt/accessdevice.xproto
new file mode 100644
index 0000000..73242dd
--- /dev/null
+++ b/xos/genx/xprotos/services.volt/accessdevice.xproto
@@ -0,0 +1,7 @@
+
+
+message AccessDevice {
+ required manytoone volt_device->VOLTDevice:access_devices = 1 [db_index = True, null = False, blank = False];
+ optional int32 uplink = 2 [db_index = False, null = True, blank = True];
+ optional int32 vlan = 3 [db_index = False, null = True, blank = True];
+}
diff --git a/xos/genx/xprotos/services.volt/agentportmapping.xproto b/xos/genx/xprotos/services.volt/agentportmapping.xproto
new file mode 100644
index 0000000..f62ed9a
--- /dev/null
+++ b/xos/genx/xprotos/services.volt/agentportmapping.xproto
@@ -0,0 +1,7 @@
+
+
+message AgentPortMapping {
+ required manytoone access_agent->AccessAgent:port_mappings = 1 [db_index = True, null = False, blank = False];
+ optional string mac = 2 [help_text = "MAC Address", max_length = 32, null = True, db_index = False, blank = True];
+ optional string port = 3 [help_text = "Openflow port ID", max_length = 32, null = True, db_index = False, blank = True];
+}
diff --git a/xos/genx/xprotos/services.volt/cordsubscriberroot.xproto b/xos/genx/xprotos/services.volt/cordsubscriberroot.xproto
new file mode 100644
index 0000000..b344f62
--- /dev/null
+++ b/xos/genx/xprotos/services.volt/cordsubscriberroot.xproto
@@ -0,0 +1,19 @@
+
+
+message CordSubscriberRoot {
+ required string kind = 1 [default = "generic", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
+ optional string name = 2 [max_length = 255, content_type = "stripped", blank = True, help_text = "name", null = True, db_index = False];
+ optional string service_specific_attribute = 3 [db_index = False, null = True, blank = True];
+ optional string service_specific_id = 4 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ required bool firewall_enable = 5 [default = False, null = False, db_index = False, blank = True];
+ optional string firewall_rules = 6 [default = "accept all anywhere anywhere", null = True, db_index = False, blank = True];
+ required bool url_filter_enable = 7 [default = False, null = False, db_index = False, blank = True];
+ optional string url_filter_rules = 8 [default = "allow all", null = True, db_index = False, blank = True];
+ required string url_filter_level = 9 [default = "PG", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
+ required bool cdn_enable = 10 [default = False, null = False, db_index = False, blank = True];
+ required bool is_demo_user = 11 [default = False, null = False, db_index = False, blank = True];
+ required int32 uplink_speed = 12 [default = 1000000000, null = False, db_index = False, blank = False];
+ required int32 downlink_speed = 13 [default = 1000000000, null = False, db_index = False, blank = False];
+ required bool enable_uverse = 14 [default = True, null = False, db_index = False, blank = True];
+ required string status = 15 [default = "enabled", choices = "(('enabled', 'Enabled'), ('suspended', 'Suspended'), ('delinquent', 'Delinquent'), ('copyrightviolation', 'Copyright Violation'))", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
+}
diff --git a/xos/genx/xprotos/services.volt/voltdevice.xproto b/xos/genx/xprotos/services.volt/voltdevice.xproto
new file mode 100644
index 0000000..ea15204
--- /dev/null
+++ b/xos/genx/xprotos/services.volt/voltdevice.xproto
@@ -0,0 +1,9 @@
+
+
+message VOLTDevice {
+ required string name = 1 [help_text = "name of device", max_length = 254, null = False, db_index = False, blank = False];
+ required manytoone volt_service->VOLTService:volt_devices = 2 [db_index = True, null = False, blank = False];
+ optional string openflow_id = 3 [help_text = "OpenFlow ID", max_length = 254, null = True, db_index = False, blank = True];
+ optional string driver = 4 [help_text = "driver", max_length = 254, null = True, db_index = False, blank = True];
+ optional manytoone access_agent->AccessAgent:volt_devices = 5 [db_index = True, null = True, blank = True];
+}
diff --git a/xos/genx/xprotos/services.volt/voltservice.xproto b/xos/genx/xprotos/services.volt/voltservice.xproto
new file mode 100644
index 0000000..51a362f
--- /dev/null
+++ b/xos/genx/xprotos/services.volt/voltservice.xproto
@@ -0,0 +1,17 @@
+
+
+message VOLTService {
+ optional string description = 1 [help_text = "Description of Service", max_length = 254, null = True, db_index = False, blank = True];
+ required bool enabled = 2 [default = True, null = False, db_index = False, blank = True];
+ required string kind = 3 [default = "generic", max_length = 30, content_type = "stripped", blank = False, help_text = "Kind of service", null = False, db_index = False];
+ required string name = 4 [max_length = 30, content_type = "stripped", blank = False, help_text = "Service Name", null = False, db_index = False];
+ optional string versionNumber = 5 [max_length = 30, content_type = "stripped", blank = True, help_text = "Version of Service Definition", null = True, db_index = False];
+ required bool published = 6 [default = True, null = False, db_index = False, blank = True];
+ optional string view_url = 7 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string icon_url = 8 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string public_key = 9 [help_text = "Public key string", max_length = 1024, null = True, db_index = False, blank = True];
+ optional string private_key_fn = 10 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_id = 11 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_attribute = 12 [db_index = False, null = True, blank = True];
+ optional manytoone controller->ServiceController:services = 13 [help_text = "The Service Controller this Service uses", null = True, db_index = True, blank = True];
+}
diff --git a/xos/genx/xprotos/services.volt/volttenant.xproto b/xos/genx/xprotos/services.volt/volttenant.xproto
new file mode 100644
index 0000000..543f132
--- /dev/null
+++ b/xos/genx/xprotos/services.volt/volttenant.xproto
@@ -0,0 +1,18 @@
+
+
+message VOLTTenant {
+ optional string name = 1 [db_index = False, max_length = 200, null = True, content_type = "stripped", blank = True];
+ required string kind = 2 [default = "generic", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
+ required manytoone provider_service->Service:provided_tenants = 3 [db_index = True, null = False, blank = False];
+ optional manytoone subscriber_service->Service:subscribed_tenants = 4 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_tenant->Tenant:subscribed_tenants = 5 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_user->User:subscribed_tenants = 6 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_root->TenantRoot:subscribed_tenants = 7 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_network->Network:subscribed_tenants = 8 [db_index = True, null = True, blank = True];
+ optional string service_specific_id = 9 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_attribute = 10 [db_index = False, null = True, blank = True];
+ required string connect_method = 11 [default = "na", choices = "(('public', 'Public'), ('private', 'Private'), ('private-unidirectional', 'Private Unidirectional'), ('na', 'Not Applicable'))", max_length = 30, blank = False, null = False, db_index = False];
+ optional int32 s_tag = 12 [help_text = "s-tag", null = True, db_index = False, blank = True];
+ optional int32 c_tag = 13 [help_text = "c-tag", null = True, db_index = False, blank = True];
+ optional manytoone creator->User:created_volts = 14 [db_index = True, null = True, blank = True];
+}
diff --git a/xos/genx/xprotos/services.volt/vrouterservice.xproto b/xos/genx/xprotos/services.volt/vrouterservice.xproto
new file mode 100644
index 0000000..ce77671
--- /dev/null
+++ b/xos/genx/xprotos/services.volt/vrouterservice.xproto
@@ -0,0 +1,21 @@
+
+
+message VRouterService {
+ optional string description = 1 [help_text = "Description of Service", max_length = 254, null = True, db_index = False, blank = True];
+ required bool enabled = 2 [default = True, null = False, db_index = False, blank = True];
+ required string kind = 3 [default = "generic", max_length = 30, content_type = "stripped", blank = False, help_text = "Kind of service", null = False, db_index = False];
+ required string name = 4 [max_length = 30, content_type = "stripped", blank = False, help_text = "Service Name", null = False, db_index = False];
+ optional string versionNumber = 5 [max_length = 30, content_type = "stripped", blank = True, help_text = "Version of Service Definition", null = True, db_index = False];
+ required bool published = 6 [default = True, null = False, db_index = False, blank = True];
+ optional string view_url = 7 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string icon_url = 8 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string public_key = 9 [help_text = "Public key string", max_length = 1024, null = True, db_index = False, blank = True];
+ optional string private_key_fn = 10 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_id = 11 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_attribute = 12 [db_index = False, null = True, blank = True];
+ optional manytoone controller->ServiceController:services = 13 [help_text = "The Service Controller this Service uses", null = True, db_index = True, blank = True];
+ optional string rest_hostname = 14 [db_index = False, max_length = 255, null = True, content_type = "stripped", blank = True];
+ required int32 rest_port = 15 [default = 8181, null = False, db_index = False, blank = False];
+ required string rest_user = 16 [default = "onos", max_length = 255, content_type = "stripped", blank = False, null = False, db_index = False];
+ required string rest_pass = 17 [default = "rocks", max_length = 255, content_type = "stripped", blank = False, null = False, db_index = False];
+}
diff --git a/xos/genx/xprotos/services.volt/vroutertenant.xproto b/xos/genx/xprotos/services.volt/vroutertenant.xproto
new file mode 100644
index 0000000..2189d51
--- /dev/null
+++ b/xos/genx/xprotos/services.volt/vroutertenant.xproto
@@ -0,0 +1,18 @@
+
+
+message VRouterTenant {
+ optional string name = 1 [db_index = False, max_length = 200, null = True, content_type = "stripped", blank = True];
+ required string kind = 2 [default = "generic", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
+ required manytoone provider_service->Service:provided_tenants = 3 [db_index = True, null = False, blank = False];
+ optional manytoone subscriber_service->Service:subscribed_tenants = 4 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_tenant->Tenant:subscribed_tenants = 5 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_user->User:subscribed_tenants = 6 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_root->TenantRoot:subscribed_tenants = 7 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_network->Network:subscribed_tenants = 8 [db_index = True, null = True, blank = True];
+ optional string service_specific_id = 9 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_attribute = 10 [db_index = False, null = True, blank = True];
+ required string connect_method = 11 [default = "na", choices = "(('public', 'Public'), ('private', 'Private'), ('private-unidirectional', 'Private Unidirectional'), ('na', 'Not Applicable'))", max_length = 30, blank = False, null = False, db_index = False];
+ optional string public_ip = 12 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ optional string public_mac = 13 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ optional manytoone address_pool->AddressPool:vrouter_tenants = 14 [db_index = True, null = True, blank = True];
+}
diff --git a/xos/genx/xprotos/services.vrouter/vrouterapp.xproto b/xos/genx/xprotos/services.vrouter/vrouterapp.xproto
new file mode 100644
index 0000000..d1d9ca8
--- /dev/null
+++ b/xos/genx/xprotos/services.vrouter/vrouterapp.xproto
@@ -0,0 +1,8 @@
+
+
+message VRouterApp {
+ required manytoone vrouter_service->VRouterService:apps = 1 [db_index = True, null = False, blank = False];
+ required string name = 2 [help_text = "application name", max_length = 50, null = False, db_index = False, blank = False];
+ required string control_plane_connect_point = 3 [help_text = "port identifier in ONOS", max_length = 21, null = False, db_index = False, blank = False];
+ required bool ospf_enabled = 4 [help_text = "ospf enabled", default = True, null = False, db_index = False, blank = True];
+}
diff --git a/xos/genx/xprotos/services.vrouter/vrouterdevice.xproto b/xos/genx/xprotos/services.vrouter/vrouterdevice.xproto
new file mode 100644
index 0000000..d4b1fcd
--- /dev/null
+++ b/xos/genx/xprotos/services.vrouter/vrouterdevice.xproto
@@ -0,0 +1,9 @@
+
+
+message VRouterDevice {
+ optional string name = 1 [help_text = "device friendly name", max_length = 20, null = True, db_index = False, blank = True];
+ required string openflow_id = 2 [help_text = "device identifier in ONOS", max_length = 20, null = False, db_index = False, blank = False];
+ required string config_key = 3 [default = "basic", max_length = 32, blank = False, help_text = "configuration key", null = False, db_index = False];
+ required string driver = 4 [help_text = "driver type", max_length = 32, null = False, db_index = False, blank = False];
+ required manytoone vrouter_service->VRouterService:devices = 5 [db_index = True, null = False, blank = False];
+}
diff --git a/xos/genx/xprotos/services.vrouter/vrouterinterface.xproto b/xos/genx/xprotos/services.vrouter/vrouterinterface.xproto
new file mode 100644
index 0000000..54e9786
--- /dev/null
+++ b/xos/genx/xprotos/services.vrouter/vrouterinterface.xproto
@@ -0,0 +1,8 @@
+
+
+message VRouterInterface {
+ required manytoone vrouter_port->VRouterPort:interfaces = 1 [db_index = True, null = False, blank = False];
+ required string name = 2 [help_text = "interface name", max_length = 10, null = False, db_index = False, blank = False];
+ required string mac = 3 [help_text = "interface mac", max_length = 17, null = False, db_index = False, blank = False];
+ optional string vlan = 4 [help_text = "interface vlan id", max_length = 10, null = True, db_index = False, blank = True];
+}
diff --git a/xos/genx/xprotos/services.vrouter/vrouterip.xproto b/xos/genx/xprotos/services.vrouter/vrouterip.xproto
new file mode 100644
index 0000000..2e8536e
--- /dev/null
+++ b/xos/genx/xprotos/services.vrouter/vrouterip.xproto
@@ -0,0 +1,7 @@
+
+
+message VRouterIp {
+ optional string name = 1 [help_text = "ip friendly name", max_length = 20, null = True, db_index = False, blank = True];
+ required manytoone vrouter_interface->VRouterInterface:ips = 2 [db_index = True, null = False, blank = False];
+ required string ip = 3 [help_text = "interface ips", max_length = 19, null = False, db_index = False, blank = False];
+}
diff --git a/xos/genx/xprotos/services.vrouter/vrouterport.xproto b/xos/genx/xprotos/services.vrouter/vrouterport.xproto
new file mode 100644
index 0000000..038e3ce
--- /dev/null
+++ b/xos/genx/xprotos/services.vrouter/vrouterport.xproto
@@ -0,0 +1,8 @@
+
+
+message VRouterPort {
+ optional string name = 1 [help_text = "port friendly name", max_length = 20, null = True, db_index = False, blank = True];
+ required string openflow_id = 2 [help_text = "port identifier in ONOS", max_length = 21, null = False, db_index = False, blank = False];
+ required manytoone vrouter_device->VRouterDevice:ports = 3 [db_index = True, null = False, blank = False];
+ required manytoone vrouter_service->VRouterService:device_ports = 4 [db_index = True, null = False, blank = False];
+}
diff --git a/xos/genx/xprotos/services.vrouter/vrouterservice.xproto b/xos/genx/xprotos/services.vrouter/vrouterservice.xproto
new file mode 100644
index 0000000..ce77671
--- /dev/null
+++ b/xos/genx/xprotos/services.vrouter/vrouterservice.xproto
@@ -0,0 +1,21 @@
+
+
+message VRouterService {
+ optional string description = 1 [help_text = "Description of Service", max_length = 254, null = True, db_index = False, blank = True];
+ required bool enabled = 2 [default = True, null = False, db_index = False, blank = True];
+ required string kind = 3 [default = "generic", max_length = 30, content_type = "stripped", blank = False, help_text = "Kind of service", null = False, db_index = False];
+ required string name = 4 [max_length = 30, content_type = "stripped", blank = False, help_text = "Service Name", null = False, db_index = False];
+ optional string versionNumber = 5 [max_length = 30, content_type = "stripped", blank = True, help_text = "Version of Service Definition", null = True, db_index = False];
+ required bool published = 6 [default = True, null = False, db_index = False, blank = True];
+ optional string view_url = 7 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string icon_url = 8 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string public_key = 9 [help_text = "Public key string", max_length = 1024, null = True, db_index = False, blank = True];
+ optional string private_key_fn = 10 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_id = 11 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_attribute = 12 [db_index = False, null = True, blank = True];
+ optional manytoone controller->ServiceController:services = 13 [help_text = "The Service Controller this Service uses", null = True, db_index = True, blank = True];
+ optional string rest_hostname = 14 [db_index = False, max_length = 255, null = True, content_type = "stripped", blank = True];
+ required int32 rest_port = 15 [default = 8181, null = False, db_index = False, blank = False];
+ required string rest_user = 16 [default = "onos", max_length = 255, content_type = "stripped", blank = False, null = False, db_index = False];
+ required string rest_pass = 17 [default = "rocks", max_length = 255, content_type = "stripped", blank = False, null = False, db_index = False];
+}
diff --git a/xos/genx/xprotos/services.vrouter/vroutertenant.xproto b/xos/genx/xprotos/services.vrouter/vroutertenant.xproto
new file mode 100644
index 0000000..2189d51
--- /dev/null
+++ b/xos/genx/xprotos/services.vrouter/vroutertenant.xproto
@@ -0,0 +1,18 @@
+
+
+message VRouterTenant {
+ optional string name = 1 [db_index = False, max_length = 200, null = True, content_type = "stripped", blank = True];
+ required string kind = 2 [default = "generic", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
+ required manytoone provider_service->Service:provided_tenants = 3 [db_index = True, null = False, blank = False];
+ optional manytoone subscriber_service->Service:subscribed_tenants = 4 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_tenant->Tenant:subscribed_tenants = 5 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_user->User:subscribed_tenants = 6 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_root->TenantRoot:subscribed_tenants = 7 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_network->Network:subscribed_tenants = 8 [db_index = True, null = True, blank = True];
+ optional string service_specific_id = 9 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_attribute = 10 [db_index = False, null = True, blank = True];
+ required string connect_method = 11 [default = "na", choices = "(('public', 'Public'), ('private', 'Private'), ('private-unidirectional', 'Private Unidirectional'), ('na', 'Not Applicable'))", max_length = 30, blank = False, null = False, db_index = False];
+ optional string public_ip = 12 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ optional string public_mac = 13 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ optional manytoone address_pool->AddressPool:vrouter_tenants = 14 [db_index = True, null = True, blank = True];
+}
diff --git a/xos/genx/xprotos/services.vsg/vrouterservice.xproto b/xos/genx/xprotos/services.vsg/vrouterservice.xproto
new file mode 100644
index 0000000..ce77671
--- /dev/null
+++ b/xos/genx/xprotos/services.vsg/vrouterservice.xproto
@@ -0,0 +1,21 @@
+
+
+message VRouterService {
+ optional string description = 1 [help_text = "Description of Service", max_length = 254, null = True, db_index = False, blank = True];
+ required bool enabled = 2 [default = True, null = False, db_index = False, blank = True];
+ required string kind = 3 [default = "generic", max_length = 30, content_type = "stripped", blank = False, help_text = "Kind of service", null = False, db_index = False];
+ required string name = 4 [max_length = 30, content_type = "stripped", blank = False, help_text = "Service Name", null = False, db_index = False];
+ optional string versionNumber = 5 [max_length = 30, content_type = "stripped", blank = True, help_text = "Version of Service Definition", null = True, db_index = False];
+ required bool published = 6 [default = True, null = False, db_index = False, blank = True];
+ optional string view_url = 7 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string icon_url = 8 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string public_key = 9 [help_text = "Public key string", max_length = 1024, null = True, db_index = False, blank = True];
+ optional string private_key_fn = 10 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_id = 11 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_attribute = 12 [db_index = False, null = True, blank = True];
+ optional manytoone controller->ServiceController:services = 13 [help_text = "The Service Controller this Service uses", null = True, db_index = True, blank = True];
+ optional string rest_hostname = 14 [db_index = False, max_length = 255, null = True, content_type = "stripped", blank = True];
+ required int32 rest_port = 15 [default = 8181, null = False, db_index = False, blank = False];
+ required string rest_user = 16 [default = "onos", max_length = 255, content_type = "stripped", blank = False, null = False, db_index = False];
+ required string rest_pass = 17 [default = "rocks", max_length = 255, content_type = "stripped", blank = False, null = False, db_index = False];
+}
diff --git a/xos/genx/xprotos/services.vsg/vroutertenant.xproto b/xos/genx/xprotos/services.vsg/vroutertenant.xproto
new file mode 100644
index 0000000..2189d51
--- /dev/null
+++ b/xos/genx/xprotos/services.vsg/vroutertenant.xproto
@@ -0,0 +1,18 @@
+
+
+message VRouterTenant {
+ optional string name = 1 [db_index = False, max_length = 200, null = True, content_type = "stripped", blank = True];
+ required string kind = 2 [default = "generic", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
+ required manytoone provider_service->Service:provided_tenants = 3 [db_index = True, null = False, blank = False];
+ optional manytoone subscriber_service->Service:subscribed_tenants = 4 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_tenant->Tenant:subscribed_tenants = 5 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_user->User:subscribed_tenants = 6 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_root->TenantRoot:subscribed_tenants = 7 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_network->Network:subscribed_tenants = 8 [db_index = True, null = True, blank = True];
+ optional string service_specific_id = 9 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_attribute = 10 [db_index = False, null = True, blank = True];
+ required string connect_method = 11 [default = "na", choices = "(('public', 'Public'), ('private', 'Private'), ('private-unidirectional', 'Private Unidirectional'), ('na', 'Not Applicable'))", max_length = 30, blank = False, null = False, db_index = False];
+ optional string public_ip = 12 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ optional string public_mac = 13 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ optional manytoone address_pool->AddressPool:vrouter_tenants = 14 [db_index = True, null = True, blank = True];
+}
diff --git a/xos/genx/xprotos/services.vsg/vsgservice.xproto b/xos/genx/xprotos/services.vsg/vsgservice.xproto
new file mode 100644
index 0000000..77d5fc9
--- /dev/null
+++ b/xos/genx/xprotos/services.vsg/vsgservice.xproto
@@ -0,0 +1,22 @@
+
+
+message VSGService {
+ optional string description = 1 [help_text = "Description of Service", max_length = 254, null = True, db_index = False, blank = True];
+ required bool enabled = 2 [default = True, null = False, db_index = False, blank = True];
+ required string kind = 3 [default = "generic", max_length = 30, content_type = "stripped", blank = False, help_text = "Kind of service", null = False, db_index = False];
+ required string name = 4 [max_length = 30, content_type = "stripped", blank = False, help_text = "Service Name", null = False, db_index = False];
+ optional string versionNumber = 5 [max_length = 30, content_type = "stripped", blank = True, help_text = "Version of Service Definition", null = True, db_index = False];
+ required bool published = 6 [default = True, null = False, db_index = False, blank = True];
+ optional string view_url = 7 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string icon_url = 8 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string public_key = 9 [help_text = "Public key string", max_length = 1024, null = True, db_index = False, blank = True];
+ optional string private_key_fn = 10 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_id = 11 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_attribute = 12 [db_index = False, null = True, blank = True];
+ optional manytoone controller->ServiceController:services = 13 [help_text = "The Service Controller this Service uses", null = True, db_index = True, blank = True];
+ optional string url_filter_kind = 14 [choices = "((None, 'None'), ('safebrowsing', 'Safe Browsing'), ('answerx', 'AnswerX'))", max_length = 30, content_type = "stripped", blank = True, null = True, db_index = False];
+ required string dns_servers = 15 [default = "8.8.8.8", max_length = 255, content_type = "stripped", blank = False, null = False, db_index = False];
+ optional string node_label = 16 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ required string docker_image_name = 17 [default = "docker.io/xosproject/vsg", max_length = 255, content_type = "stripped", blank = False, null = False, db_index = False];
+ required bool docker_insecure_registry = 18 [default = False, null = False, db_index = False, blank = True];
+}
diff --git a/xos/genx/xprotos/services.vsg/vsgtenant.xproto b/xos/genx/xprotos/services.vsg/vsgtenant.xproto
new file mode 100644
index 0000000..b89ef82
--- /dev/null
+++ b/xos/genx/xprotos/services.vsg/vsgtenant.xproto
@@ -0,0 +1,20 @@
+
+
+message VSGTenant {
+ optional string name = 1 [db_index = False, max_length = 200, null = True, content_type = "stripped", blank = True];
+ required string kind = 2 [default = "generic", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
+ required manytoone provider_service->Service:provided_tenants = 3 [db_index = True, null = False, blank = False];
+ optional manytoone subscriber_service->Service:subscribed_tenants = 4 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_tenant->Tenant:subscribed_tenants = 5 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_user->User:subscribed_tenants = 6 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_root->TenantRoot:subscribed_tenants = 7 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_network->Network:subscribed_tenants = 8 [db_index = True, null = True, blank = True];
+ optional string service_specific_id = 9 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_attribute = 10 [db_index = False, null = True, blank = True];
+ required string connect_method = 11 [default = "na", choices = "(('public', 'Public'), ('private', 'Private'), ('private-unidirectional', 'Private Unidirectional'), ('na', 'Not Applicable'))", max_length = 30, blank = False, null = False, db_index = False];
+ optional manytoone instance->Instance:+ = 12 [help_text = "Instance used by this Tenant", null = True, db_index = True, blank = True];
+ optional manytoone creator->User:+ = 13 [help_text = "Creator of this Tenant", null = True, db_index = True, blank = True];
+ optional string external_hostname = 14 [max_length = 30, content_type = "stripped", blank = True, help_text = "External host name", null = True, db_index = False];
+ optional string external_container = 15 [max_length = 30, content_type = "stripped", blank = True, help_text = "External host name", null = True, db_index = False];
+ optional string last_ansible_hash = 16 [db_index = False, max_length = 128, null = True, content_type = "stripped", blank = True];
+}
diff --git a/xos/genx/xprotos/services.vtn/vtnservice.xproto b/xos/genx/xprotos/services.vtn/vtnservice.xproto
new file mode 100644
index 0000000..8510583
--- /dev/null
+++ b/xos/genx/xprotos/services.vtn/vtnservice.xproto
@@ -0,0 +1,29 @@
+
+
+message VTNService {
+ optional string description = 1 [help_text = "Description of Service", max_length = 254, null = True, db_index = False, blank = True];
+ required bool enabled = 2 [default = True, null = False, db_index = False, blank = True];
+ required string kind = 3 [default = "generic", max_length = 30, content_type = "stripped", blank = False, help_text = "Kind of service", null = False, db_index = False];
+ required string name = 4 [max_length = 30, content_type = "stripped", blank = False, help_text = "Service Name", null = False, db_index = False];
+ optional string versionNumber = 5 [max_length = 30, content_type = "stripped", blank = True, help_text = "Version of Service Definition", null = True, db_index = False];
+ required bool published = 6 [default = True, null = False, db_index = False, blank = True];
+ optional string view_url = 7 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string icon_url = 8 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string public_key = 9 [help_text = "Public key string", max_length = 1024, null = True, db_index = False, blank = True];
+ optional string private_key_fn = 10 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_id = 11 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_attribute = 12 [db_index = False, null = True, blank = True];
+ optional manytoone controller->ServiceController:services = 13 [help_text = "The Service Controller this Service uses", null = True, db_index = True, blank = True];
+ required string privateGatewayMac = 14 [default = "00:00:00:00:00:01", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
+ required string localManagementIp = 15 [default = "172.27.0.1/24", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
+ required int32 ovsdbPort = 16 [default = 6641, null = False, db_index = False, blank = False];
+ required int32 sshPort = 17 [default = 22, null = False, db_index = False, blank = False];
+ required string sshUser = 18 [default = "root", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
+ required string sshKeyFile = 19 [default = "/root/node_key", max_length = 1024, content_type = "stripped", blank = False, null = False, db_index = False];
+ required int32 mgmtSubnetBits = 20 [default = 24, null = False, db_index = False, blank = False];
+ required string xosEndpoint = 21 [default = "http://xos/", max_length = 1024, content_type = "stripped", blank = False, null = False, db_index = False];
+ required string xosUser = 22 [default = "padmin@vicci.org", max_length = 255, content_type = "stripped", blank = False, null = False, db_index = False];
+ required string xosPassword = 23 [default = "letmein", max_length = 255, content_type = "stripped", blank = False, null = False, db_index = False];
+ required int32 vtnAPIVersion = 24 [default = 1, null = False, db_index = False, blank = False];
+ required string controllerPort = 25 [default = "onos-cord:6653", max_length = 255, content_type = "stripped", blank = False, null = False, db_index = False];
+}
diff --git a/xos/genx/xprotos/services.vtr/cordsubscriberroot.xproto b/xos/genx/xprotos/services.vtr/cordsubscriberroot.xproto
new file mode 100644
index 0000000..b344f62
--- /dev/null
+++ b/xos/genx/xprotos/services.vtr/cordsubscriberroot.xproto
@@ -0,0 +1,19 @@
+
+
+message CordSubscriberRoot {
+ required string kind = 1 [default = "generic", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
+ optional string name = 2 [max_length = 255, content_type = "stripped", blank = True, help_text = "name", null = True, db_index = False];
+ optional string service_specific_attribute = 3 [db_index = False, null = True, blank = True];
+ optional string service_specific_id = 4 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ required bool firewall_enable = 5 [default = False, null = False, db_index = False, blank = True];
+ optional string firewall_rules = 6 [default = "accept all anywhere anywhere", null = True, db_index = False, blank = True];
+ required bool url_filter_enable = 7 [default = False, null = False, db_index = False, blank = True];
+ optional string url_filter_rules = 8 [default = "allow all", null = True, db_index = False, blank = True];
+ required string url_filter_level = 9 [default = "PG", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
+ required bool cdn_enable = 10 [default = False, null = False, db_index = False, blank = True];
+ required bool is_demo_user = 11 [default = False, null = False, db_index = False, blank = True];
+ required int32 uplink_speed = 12 [default = 1000000000, null = False, db_index = False, blank = False];
+ required int32 downlink_speed = 13 [default = 1000000000, null = False, db_index = False, blank = False];
+ required bool enable_uverse = 14 [default = True, null = False, db_index = False, blank = True];
+ required string status = 15 [default = "enabled", choices = "(('enabled', 'Enabled'), ('suspended', 'Suspended'), ('delinquent', 'Delinquent'), ('copyrightviolation', 'Copyright Violation'))", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
+}
diff --git a/xos/genx/xprotos/services.vtr/vtrservice.xproto b/xos/genx/xprotos/services.vtr/vtrservice.xproto
new file mode 100644
index 0000000..9b218e9
--- /dev/null
+++ b/xos/genx/xprotos/services.vtr/vtrservice.xproto
@@ -0,0 +1,17 @@
+
+
+message VTRService {
+ optional string description = 1 [help_text = "Description of Service", max_length = 254, null = True, db_index = False, blank = True];
+ required bool enabled = 2 [default = True, null = False, db_index = False, blank = True];
+ required string kind = 3 [default = "generic", max_length = 30, content_type = "stripped", blank = False, help_text = "Kind of service", null = False, db_index = False];
+ required string name = 4 [max_length = 30, content_type = "stripped", blank = False, help_text = "Service Name", null = False, db_index = False];
+ optional string versionNumber = 5 [max_length = 30, content_type = "stripped", blank = True, help_text = "Version of Service Definition", null = True, db_index = False];
+ required bool published = 6 [default = True, null = False, db_index = False, blank = True];
+ optional string view_url = 7 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string icon_url = 8 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string public_key = 9 [help_text = "Public key string", max_length = 1024, null = True, db_index = False, blank = True];
+ optional string private_key_fn = 10 [db_index = False, max_length = 1024, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_id = 11 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_attribute = 12 [db_index = False, null = True, blank = True];
+ optional manytoone controller->ServiceController:services = 13 [help_text = "The Service Controller this Service uses", null = True, db_index = True, blank = True];
+}
diff --git a/xos/genx/xprotos/services.vtr/vtrtenant.xproto b/xos/genx/xprotos/services.vtr/vtrtenant.xproto
new file mode 100644
index 0000000..ed418b7
--- /dev/null
+++ b/xos/genx/xprotos/services.vtr/vtrtenant.xproto
@@ -0,0 +1,22 @@
+
+
+message VTRTenant {
+ optional string name = 1 [db_index = False, max_length = 200, null = True, content_type = "stripped", blank = True];
+ required string kind = 2 [default = "generic", max_length = 30, content_type = "stripped", blank = False, null = False, db_index = False];
+ required manytoone provider_service->Service:provided_tenants = 3 [db_index = True, null = False, blank = False];
+ optional manytoone subscriber_service->Service:subscribed_tenants = 4 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_tenant->Tenant:subscribed_tenants = 5 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_user->User:subscribed_tenants = 6 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_root->TenantRoot:subscribed_tenants = 7 [db_index = True, null = True, blank = True];
+ optional manytoone subscriber_network->Network:subscribed_tenants = 8 [db_index = True, null = True, blank = True];
+ optional string service_specific_id = 9 [db_index = False, max_length = 30, null = True, content_type = "stripped", blank = True];
+ optional string service_specific_attribute = 10 [db_index = False, null = True, blank = True];
+ required string connect_method = 11 [default = "na", choices = "(('public', 'Public'), ('private', 'Private'), ('private-unidirectional', 'Private Unidirectional'), ('na', 'Not Applicable'))", max_length = 30, blank = False, null = False, db_index = False];
+ required string test = 12 [choices = "(('ping', 'Ping'), ('traceroute', 'Trace Route'), ('tcpdump', 'Tcp Dump'))", max_length = 30, content_type = "stripped", blank = False, help_text = "type of test", null = False, db_index = False];
+ required string scope = 13 [choices = "(('container', 'Container'), ('vm', 'VM'))", max_length = 30, content_type = "stripped", blank = False, help_text = "scope of test", null = False, db_index = False];
+ optional string argument = 14 [db_index = False, max_length = 40, null = True, content_type = "stripped", blank = True];
+ optional string result = 15 [db_index = False, null = True, blank = True];
+ optional string result_code = 16 [db_index = False, max_length = 32, null = True, content_type = "stripped", blank = True];
+ required manytoone target_type->ContentType:vtrtenant = 17 [db_index = True, null = False, blank = False];
+ required uint32 target_id = 18 [db_index = False, null = False, blank = False];
+}