public static IVault ValueMetadataChanging(this IVault vault, Action<ValueChangingEventArgs> listener) { return vault.Changing( e => e.Subject is IValue && e.Reason == EventReason.Metadata, e => listener(new ValueChangingEventArgs(e.CorrelationId, e.Reason, (IValue)e.Subject, e.OldRevision, e.OldValue, e.NewValue))); }
public static IVault ValueChanging(this IVault vault, Func<ValueChangingEventArgs, bool> filter, Action<ValueChangingEventArgs> listener) { return vault.Changing( e => e.Subject is IValue && filter(new ValueChangingEventArgs(e.CorrelationId, e.Reason, (IValue)e.Subject, e.OldRevision, e.OldValue, e.NewValue)), e => listener(new ValueChangingEventArgs(e.CorrelationId, e.Reason, (IValue)e.Subject, e.OldRevision, e.OldValue, e.NewValue))); }
public static IVault Changing(this IVault vault, Action<ElementChangingEventArgs> listener) { return vault.Changing(e => true, listener); }
public static IVault BranchElementRemoving(this IVault vault, Action<BranchChangingEventArgs> listener) { return vault.Changing( e => e.Subject is IBranch && e.Reason == EventReason.ElementRemove, e => listener(new BranchChangingEventArgs(e.CorrelationId, e.Reason, (IBranch)e.Subject, e.OldRevision, e.OldValue, e.NewValue))); }