blob: f17dc46fbbbc7315efa62325d6d1d30ae1f9207d [file] [log] [blame]
option app_label = "simpleexampleservice";
option name = "simpleexampleservice";
message SimpleExampleService (Service){
option verbose_name = "Simple Example Service";
option description = "Service that demonstrates integration with Kubernetes compute resources";
required string service_message = 1 [
help_text = "Service Message to display in web page",
max_length = 256];
optional string service_secret = 2 [
help_text = "Service Secret to place in a file",
text = True];
}
// Note: Named ColorNew to prevent name collision with ExampleService's Color.
message ColorNew (XOSBase){
option verbose_name = "Color";
option description = "An html color code that may be used to color a web page";
required string name = 1 [
help_text = "Name for this color",
max_length = 256];
required string html_code = 2 [
help_text = "HTML Code for this color",
max_length = 256];
}
// Note: Named ServiceInstanceWithCompute2 to prevent name collision with ExampleService.ServiceInstanceWithCompute.
// Expect this model to eventually move to the core.
message ServiceInstanceWithCompute2 (ServiceInstance) {
option description = "ServiceInstance with relation to a ComputeServiceInstance";
optional manytoone compute_instance->ComputeServiceInstance:service_instance_with_computes = 1:1001 [
help_text = "ComputeServiceInstance that holds compute resources for this ServiceInstance",
db_index=True];
}
message SimpleExampleServiceInstance (ServiceInstanceWithCompute2){
option verbose_name = "Example Service Instance";
option description = "Tenancy in SimpleExampleService, represents a web server that serves one page";
required string tenant_message = 1 [
help_text = "Tenant Message to Display",
max_length = 256];
optional manytoone foreground_color->ColorNew:serviceinstance_foreground_colors = 2:1001 [
help_text = "Foreground color to use in web page",
db_index = True];
optional manytoone background_color->ColorNew:serviceinstance_background_colors = 3:1002 [
help_text = "Background color to use in web page",
db_index = True];
optional string tenant_secret = 4 [
help_text = "Tenant Secret to place in a file",
text = True];
}
// Note: Named EmbeddedImageNew to prevent name collision with ExampleService's EmbeddedImage.
message EmbeddedImageNew (XOSBase){
option verbose_name = "Embedded Image";
option description = "An embedded image that may be placed in a web page";
required string name = 1 [
help_text = "Name for this image",
max_length = 256];
required string url = 2 [
help_text = "URL for this image",
max_length = 256];
optional manytoone serviceinstance->SimpleExampleServiceInstance:embedded_images = 3:1001 [
help_text = "ServiceInstance that represents the web page where this embedded image should be placed",
db_index = True];
}