Point where basic infoset-based storage of fields is working

Moved some namespaces to reorganize some parts of code
Created a field storage api and default implementation
Added InfosetPart that's always welded as mechanism to reach versioned and non-versioned ad-hoc data

--HG--
branch : dev
This commit is contained in:
Louis DeJardin
2010-06-24 14:35:18 -07:00
parent f38620786e
commit 6540479d48
35 changed files with 240 additions and 177 deletions

View File

@@ -57,7 +57,7 @@ namespace Orchard.Core.Settings.Metadata {
private ContentTypeDefinitionRecord Acquire(ContentTypeDefinition contentTypeDefinition) {
var result = _typeDefinitionRepository.Fetch(x => x.Name == contentTypeDefinition.Name).SingleOrDefault();
if (result == null) {
result = new ContentTypeDefinitionRecord { Name = contentTypeDefinition.Name, DisplayName = contentTypeDefinition.DisplayName};
result = new ContentTypeDefinitionRecord { Name = contentTypeDefinition.Name, DisplayName = contentTypeDefinition.DisplayName };
_typeDefinitionRepository.Create(result);
}
return result;
@@ -111,7 +111,7 @@ namespace Orchard.Core.Settings.Metadata {
record.Settings = _settingsWriter.Map(model.Settings).ToString();
var toRemove = record.ContentPartFieldDefinitionRecords
.Where(fieldDefinitionRecord => !model.Fields.Any(field => fieldDefinitionRecord.ContentFieldDefinitionRecord.Name == field.FieldDefinition.Name))
.Where(partFieldDefinitionRecord => model.Fields.Any(partField => partFieldDefinitionRecord.Name == partField.Name))
.ToList();
foreach (var remove in toRemove) {
@@ -120,9 +120,9 @@ namespace Orchard.Core.Settings.Metadata {
foreach (var field in model.Fields) {
var fieldName = field.FieldDefinition.Name;
var partFieldRecord = record.ContentPartFieldDefinitionRecords.SingleOrDefault(r => r.ContentFieldDefinitionRecord.Name == fieldName);
var partFieldRecord = record.ContentPartFieldDefinitionRecords.SingleOrDefault(r => r.Name == fieldName);
if (partFieldRecord == null) {
partFieldRecord = new ContentPartFieldDefinitionRecord {
partFieldRecord = new ContentPartFieldDefinitionRecord {
ContentFieldDefinitionRecord = Acquire(field.FieldDefinition),
Name = field.Name
};