From e1f1086b1c33b10c58e8e3fb087a0c64c8cc851c Mon Sep 17 00:00:00 2001 From: nsingh Date: Mon, 20 Feb 2017 11:21:36 -0800 Subject: [PATCH] route is now a required property of routes --- .../ide/vscode/manifest/yaml/ManifestYmlSchema.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/manifest/yaml/ManifestYmlSchema.java b/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/manifest/yaml/ManifestYmlSchema.java index 155f2f727..1974ca8c5 100644 --- a/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/manifest/yaml/ManifestYmlSchema.java +++ b/vscode-extensions/vscode-manifest-yaml/src/main/java/org/springframework/ide/vscode/manifest/yaml/ManifestYmlSchema.java @@ -22,6 +22,7 @@ import org.springframework.ide.vscode.commons.yaml.schema.YType; import org.springframework.ide.vscode.commons.yaml.schema.YTypeFactory; import org.springframework.ide.vscode.commons.yaml.schema.YTypeFactory.AbstractType; import org.springframework.ide.vscode.commons.yaml.schema.YTypeFactory.YAtomicType; +import org.springframework.ide.vscode.commons.yaml.schema.YTypeFactory.YBeanType; import org.springframework.ide.vscode.commons.yaml.schema.YTypeFactory.YTypedPropertyImpl; import org.springframework.ide.vscode.commons.yaml.schema.YTypeUtil; import org.springframework.ide.vscode.commons.yaml.schema.YValueHint; @@ -93,8 +94,12 @@ public class ManifestYmlSchema implements YamlSchema { YType t_string = f.yatomic("String"); YType t_strings = f.yseq(t_string); - YType t_route = f.ymap(t_string, t_string); - YType t_routes = f.yseq(t_route); + // "routes" has nested required property "route": + // routes: + // - route: someroute.io + + YBeanType route = f.ybean("Route"); + route.addProperty(f.yprop("route", t_string).isRequired(true)); YAtomicType t_memory = f.yatomic("Memory"); t_memory.addHints("256M", "512M", "1024M"); @@ -142,7 +147,7 @@ public class ManifestYmlSchema implements YamlSchema { f.yprop("no-route", t_boolean), f.yprop("path", t_path), f.yprop("random-route", t_boolean), - f.yprop("routes", t_routes), + f.yprop("routes", f.yseq(route)), f.yprop("services", t_services), f.yprop("stack", t_string), f.yprop("timeout", t_pos_integer),