Exemple #1
0
        private async Task <IAllowSync> SyncAllowed()
        {
            IAllowSync syncAllowed = new AllowSync();

            foreach (IContentItemGraphSyncer itemSyncer in _itemSyncers)
            {
                //todo: allow syncers to chain or not? probably not
                if (itemSyncer.CanSync(_graphMergeContext !.ContentItem))
                {
                    await itemSyncer.AllowSync(_graphMergeContext, syncAllowed);
                }
            }

            return(syncAllowed);
        }
        public override async Task AllowSync(
            JArray?contentItems,
            IGraphMergeContext context,
            IAllowSync allowSync)
        {
            IAllowSync baseAllowSync = new AllowSync();
            await base.AllowSync(contentItems, context, baseAllowSync);

            var baseBlockersWithoutIncomingTaxonomyBlocker =
                baseAllowSync.SyncBlockers.Where(sb => sb.ContentType != "Taxonomy");

            if (baseBlockersWithoutIncomingTaxonomyBlocker.Any())
            {
                allowSync.AddSyncBlockers(baseBlockersWithoutIncomingTaxonomyBlocker);
            }
        }