示例#1
0
        protected override void OnNodeDeletedPhysically(object sender, NodeEventArgs e)
        {
            base.OnNodeDeletedPhysically(sender, e);

            // notify workflows about parent change
            InstanceManager.NotifyMultipleContentChanged(CollectParentIds(e.SourceNode), NotificationType.ChildDeleted, e.SourceNode.Path);
        }
示例#2
0
        protected override void OnNodeCreated(object sender, NodeEventArgs e)
        {
            base.OnNodeCreated(sender, e);

            // notify workflows about parent change
            InstanceManager.NotifyMultipleContentChanged(CollectParentIds(e.SourceNode), NotificationType.ChildCreated, e.SourceNode.Path);

            StartWorkflowAutomatically(e.SourceNode, TriggerEvent.Created, null);
        }
示例#3
0
        protected override void OnNodeModified(object sender, NodeEventArgs e)
        {
            base.OnNodeModified(sender, e);

            // notify workflows about content change
            InstanceManager.NotifyContentChanged(new WorkflowNotificationEventArgs(e.SourceNode.Id, NotificationType.ContentChanged, null));

            // notify workflows about parent change
            InstanceManager.NotifyMultipleContentChanged(CollectParentIds(e.SourceNode), NotificationType.ChildEdited, e.SourceNode.Path);

            AbortRelatedWorkflows(e.SourceNode, WorkflowApplicationAbortReason.RelatedContentChanged);
            StartWorkflowAutomatically(e.SourceNode, TriggerEvent.Changed, e.ChangedData);
        }