private void Apply(ContentTypeDefinition model, ContentTypeDefinitionRecord record) { record.DisplayName = model.DisplayName; record.Settings = model.Settings; var toRemove = record.ContentTypePartDefinitionRecords .Where(typePartDefinitionRecord => !model.Parts.Any(part => typePartDefinitionRecord.Name == part.Name)) .ToList(); foreach (var remove in toRemove) { record.ContentTypePartDefinitionRecords.Remove(remove); } foreach (var part in model.Parts) { var typePartRecord = record.ContentTypePartDefinitionRecords.FirstOrDefault(r => r.Name == part.Name); if (typePartRecord == null) { typePartRecord = new ContentTypePartDefinitionRecord { PartName = part.PartDefinition.Name, Name = part.Name, Settings = part.Settings }; record.ContentTypePartDefinitionRecords.Add(typePartRecord); } Apply(part, typePartRecord); } // Persist changes UpdateContentDefinitionRecord(); }
private void Apply(ContentTypeDefinition model, ContentTypeDefinitionRecord record) { record.DisplayName = model.DisplayName; record.Settings = Compose(_settingsFormatter.Map(model.Settings)); var toRemove = record.ContentTypePartDefinitionRecords .Where(partDefinitionRecord => model.Parts.All(part => partDefinitionRecord.ContentPartDefinitionRecord.Name != part.PartDefinition.Name)) .ToList(); foreach (var remove in toRemove) { record.ContentTypePartDefinitionRecords.Remove(remove); } foreach (var part in model.Parts) { var partName = part.PartDefinition.Name; var typePartRecord = record.ContentTypePartDefinitionRecords.SingleOrDefault(r => r.ContentPartDefinitionRecord.Name == partName); if (typePartRecord == null) { typePartRecord = new ContentTypePartDefinitionRecord { ContentPartDefinitionRecord = Acquire(part.PartDefinition) }; record.ContentTypePartDefinitionRecords.Add(typePartRecord); } Apply(part, typePartRecord); } }
private void Apply(ContentTypeDefinition model) { var toRemove = _typePartDefinitionRecord.Table.Where(p => p.TypeName == model.Name).ToList().Where(p => model.Parts.All(part => p.PartName != part.PartName)) .ToList(); foreach (var remove in toRemove) { _typePartDefinitionRecord.Delete(remove); } foreach (var part in model.Parts.Where(x => !string.IsNullOrEmpty(x.PartName))) { var partName = part.PartName; var typePartRecord = _typePartDefinitionRecord.Table.SingleOrDefault(r => r.TypeName == model.Name && r.PartName == partName); if (typePartRecord == null) { typePartRecord = new ContentTypePartDefinitionRecord { PartName = partName, TypeName = model.Name, Ord = part.Index }; _typePartDefinitionRecord.Create(typePartRecord); } else { typePartRecord.Ord = part.Index; } } }
ContentTypePartDefinition Build(ContentTypePartDefinitionRecord source) { var cpd = new ContentTypePartDefinition(source.PartName); cpd.Index = source.Ord; return(cpd); }
ContentTypePartDefinition Build(ContentTypePartDefinitionRecord source, ContentPartDefinitionRecord partDefinitionRecord) { return(source == null ? null : new ContentTypePartDefinition( source.Name, Build(partDefinitionRecord) ?? new ContentPartDefinition(source.PartName, Enumerable.Empty <ContentPartFieldDefinition>(), new JObject()), source.Settings)); }
private void Apply(ContentTypeDefinition model, ContentTypeDefinitionRecord record) { record.DisplayName = model.DisplayName; record.Settings = JsonConvert.SerializeObject(model.Settings); var toRemove = record.ContentTypePartDefinitionRecords .Where(partDefinitionRecord => !model.Parts.Any(part => partDefinitionRecord.ContentPartDefinitionRecord.Name == part.PartDefinition.Name)) .ToList(); foreach (var remove in toRemove) { record.ContentTypePartDefinitionRecords.Remove(remove); } foreach (var part in model.Parts) { var partName = part.PartDefinition.Name; var typePartRecord = record.ContentTypePartDefinitionRecords.SingleOrDefault(r => r.ContentPartDefinitionRecord.Name == partName); if (typePartRecord == null) { typePartRecord = new ContentTypePartDefinitionRecord { ContentPartDefinitionRecord = Acquire(part.PartDefinition) }; record.ContentTypePartDefinitionRecords.Add(typePartRecord); } Apply(part, typePartRecord); } }
ContentTypePartDefinition Build(ContentTypePartDefinitionRecord source) { var partDefinitionRecord = GetContentDefinitionRecord().ContentPartDefinitionRecords.FirstOrDefault(x => x.Name == source.Name); return(source == null ? null : new ContentTypePartDefinition( Build(partDefinitionRecord) ?? new ContentPartDefinition(source.Name, Enumerable.Empty <ContentPartFieldDefinition>(), new Newtonsoft.Json.Linq.JObject()), source.Settings)); }
private void Apply(ContentTypePartDefinition model, ContentTypePartDefinitionRecord record) { record.Settings = model.Settings; }
ContentTypePartDefinition Build(ContentTypePartDefinitionRecord source) { return(new ContentTypePartDefinition( Build(source.ContentPartDefinitionRecord), _settingsFormatter.Map(Parse(source.Settings)))); }
private void Apply(ContentTypePartDefinition model, ContentTypePartDefinitionRecord record) { record.Settings = Compose(_settingsFormatter.Map(model.Settings)); }
ContentTypePartDefinition Build(ContentTypePartDefinitionRecord source) { return(source == null ? null : new ContentTypePartDefinition( Build(source.ContentPartDefinitionRecord), JsonConvert.DeserializeObject <SettingsDictionary>(source.Settings ?? "{ }"))); }
private void Apply(ContentTypePartDefinition model, ContentTypePartDefinitionRecord record) { record.Settings = JsonConvert.SerializeObject(model.Settings); }
ContentTypePartDefinition Build(ContentTypePartDefinitionRecord source) { return(source == null ? null : new ContentTypePartDefinition( Build(source.ContentPartDefinitionRecord), source.Settings)); }