public virtual void ReadYaml(YamlReader reader, string serializedItemId) { Id = reader.ReadExpectedGuidMap("ID"); ParentId = reader.ReadExpectedGuidMap("Parent"); TemplateId = reader.ReadExpectedGuidMap("Template"); Path = reader.ReadExpectedMap("Path"); SerializedItemId = serializedItemId; }
public bool ReadYaml(YamlReader reader) { var id = reader.PeekMap(); if (!id.HasValue) { return(false); } var key = id.Value.Key; if (!key.Equals("ID", StringComparison.Ordinal)) { if (key.Equals("Languages", StringComparison.Ordinal) || key.Equals("Language", StringComparison.Ordinal) || key.Equals("Version", StringComparison.Ordinal) || key.Equals("Versions", StringComparison.Ordinal)) { return(false); } throw new FormatException(reader.CreateErrorMessage("Cannot read field value. Expected 'ID' map, found '" + id.Value.Key + "' instead.")); } Id = reader.ReadExpectedGuidMap("ID"); var hint = reader.PeekMap(); if (hint.HasValue && hint.Value.Key.Equals("Hint")) { NameHint = reader.ReadExpectedMap("Hint"); } var blob = reader.PeekMap(); if (blob.HasValue && blob.Value.Key.Equals("BlobID")) { BlobId = reader.ReadExpectedGuidMap("BlobID"); } var type = reader.PeekMap(); if (type.HasValue && type.Value.Key.Equals("Type")) { reader.ReadMap(); Type = type.Value.Value; } Value = reader.ReadExpectedMap("Value"); return(true); }
public virtual void ReadYaml(YamlReader reader) { Id = reader.ReadExpectedGuidMap("ID"); ParentId = reader.ReadExpectedGuidMap("Parent"); TemplateId = reader.ReadExpectedGuidMap("Template"); Path = reader.ReadExpectedMap("Path"); var dbName = reader.PeekMap(); if (dbName.HasValue && dbName.Value.Key.Equals("DB")) //could be missing if serialized with 1.0.x { reader.ReadMap(); DatabaseName = dbName.Value.Value; } var branch = reader.PeekMap(); if (branch.HasValue && branch.Value.Key.Equals("BranchID")) { reader.ReadMap(); BranchId = Guid.Parse(branch.Value.Value); } var sharedFields = reader.PeekMap(); if (sharedFields.HasValue && sharedFields.Value.Key.Equals("SharedFields")) { reader.ReadMap(); while (true) { var field = new YamlFieldValue(); if (field.ReadYaml(reader)) SharedFields.Add(field); else break; } } var languages = reader.PeekMap(); if (languages.HasValue && languages.Value.Key.Equals("Languages")) { reader.ReadMap(); while (true) { var language = new YamlLanguage(); if (language.ReadYaml(reader)) Languages.Add(language); else break; } } }
public virtual void ReadYaml(YamlReader reader) { Id = reader.ReadExpectedGuidMap("ID"); ParentId = reader.ReadExpectedGuidMap("Parent"); TemplateId = reader.ReadExpectedGuidMap("Template"); Path = reader.ReadExpectedMap("Path"); var dbName = reader.PeekMap(); if (dbName.HasValue && dbName.Value.Key.Equals("DB")) //could be missing if serialized with 1.0.x { reader.ReadMap(); DatabaseName = dbName.Value.Value; } var branch = reader.PeekMap(); if (branch.HasValue && branch.Value.Key.Equals("BranchID")) { reader.ReadMap(); BranchId = Guid.Parse(branch.Value.Value); } var sharedFields = reader.PeekMap(); if (sharedFields.HasValue && sharedFields.Value.Key.Equals("SharedFields")) { reader.ReadMap(); while (true) { var field = new YamlFieldValue(); if (field.ReadYaml(reader)) { SharedFields.Add(field); } else { break; } } } var languages = reader.PeekMap(); if (languages.HasValue && languages.Value.Key.Equals("Languages")) { reader.ReadMap(); while (true) { var language = new YamlLanguage(); if (language.ReadYaml(reader)) { Languages.Add(language); } else { break; } } } }