public void OnItemAdded([CanBeNull] object sender, [NotNull] EventArgs args) { Assert.ArgumentNotNull(args, "args"); var contentItem = Event.ExtractParameter(args, 0) as Item; Assert.IsNotNull(contentItem, "targetItem"); var branchItem = contentItem.Branch; if (branchItem == null) { return; } var item = branchItem.InnerItem; Assert.IsTrue(item.Children.Count == 1, "branch item structure is corrupted: {0}".FormatWith(AuditFormatter.FormatItem(item))); var branch = item.Children[0]; if (this.isAsync) { ReferenceReplacementJob.StartAsync(branch, contentItem); } else { ReferenceReplacementJob.Start(branch, contentItem); } }
public void Process([NotNull] CopyItemsArgs args) { Assert.ArgumentNotNull(args, "args"); var parameters = args.Parameters; Assert.IsNotNull(parameters, "parameters"); if (!string.Equals(parameters["mode"], "smart", StringComparison.OrdinalIgnoreCase)) { return; } var copies = args.Copies; Assert.IsNotNull(copies, "copies"); foreach (var copy in copies) { if (this.isAsync) { ReferenceReplacementJob.StartAsync(copy.Source, copy); } else { ReferenceReplacementJob.Start(copy.Source, copy); } } // if mode is smart then this should be the last processor args.AbortPipeline(); }
public void Process([NotNull] ClientPipelineArgs args) { Assert.ArgumentNotNull(args, "args"); var parameters = args.Parameters; Assert.IsNotNull(parameters, "parameters"); if (!string.Equals(parameters["mode"], "smart", StringComparison.OrdinalIgnoreCase)) { return; } var databaseName = parameters["database"]; var database = Factory.GetDatabase(databaseName); Assert.IsNotNull(database, "database"); var copyId = parameters["copyId"]; Assert.IsNotNull(copyId, "copyId"); var sourceId = parameters["id"]; Assert.IsNotNull(sourceId, "sourceId"); if (this.isAsync) { ReferenceReplacementJob.StartAsync(database, sourceId, copyId); } else { ReferenceReplacementJob.Start(database, sourceId, copyId); } // if mode is smart then this should be the last processor args.AbortPipeline(); }