示例#1
0
            internal bool UpdateReferences(SNC.Content content)
            {
                if (_transferringContext == null)
                {
                    _transferringContext = new ImportContext(_xmlDoc.SelectNodes("/ContentMetaData/Fields/*"), null, false, true, true);
                }
                else
                {
                    _transferringContext.UpdateReferences = true;
                }

                var node = content.ContentHandler;

                node.ModificationDate        = node.ModificationDate;
                node.VersionModificationDate = node.VersionModificationDate;
                node.ModifiedBy        = node.ModifiedBy;
                node.VersionModifiedBy = node.VersionModifiedBy;

                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);
            }
示例#2
0
        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);
        }
示例#3
0
            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);
            }