public bool SetMetadata(SNC.Content content, string currentDirectory, bool isNewContent, bool needToValidate, bool updateReferences) { if (_xmlDoc == null) return true; _transferringContext = new ImportContext( _xmlDoc.SelectNodes("/ContentMetaData/Fields/*"), currentDirectory, isNewContent, needToValidate, updateReferences); bool result = content.ImportFieldData(_transferringContext); _contentId = content.ContentHandler.Id; return result; }
internal bool UpdateReferences(SNC.Content content, bool needToValidate) { if (_transferringContext == null) _transferringContext = new ImportContext(_xmlDoc.SelectNodes("/ContentMetaData/Fields/*"), null, false, needToValidate, true); else _transferringContext.UpdateReferences = true; var node = content.ContentHandler; node.NodeModificationDate = node.NodeModificationDate; node.ModificationDate = node.ModificationDate; node.NodeModifiedBy = node.NodeModifiedBy; node.ModifiedBy = node.ModifiedBy; if (!content.ImportFieldData(_transferringContext)) return false; if (!HasPermissions && !HasBreakPermissions) return true; var permissionsNode = _xmlDoc.SelectSingleNode("/ContentMetaData/Permissions"); content.ContentHandler.Security.ImportPermissions(permissionsNode, this._metaDataPath); return true; }
private static bool SetMetadata(SnC.Content snContent, Content content, bool isNewContent, bool updateReferences) { XmlDocument xml = new XmlDocument(); xml.LoadXml(content.Data); var context = new ImportContext(xml.SelectNodes("/ContentMetaData/Fields/*"), null, isNewContent, true, updateReferences); bool result = snContent.ImportFieldData(context); var contentId = snContent.ContentHandler.Id; content.HasReference = context.HasReference; return result; }