2017-07-20 11:21:28 +02:00
|
|
|
|
using System;
|
2017-05-12 14:49:44 +02:00
|
|
|
|
|
2021-02-18 11:06:02 +01:00
|
|
|
|
namespace Umbraco.Cms.Core.Events
|
2017-05-12 14:49:44 +02:00
|
|
|
|
{
|
2019-05-27 13:53:53 +02:00
|
|
|
|
public class EventDefinition : EventDefinitionBase
|
2017-05-12 14:49:44 +02:00
|
|
|
|
{
|
|
|
|
|
|
private readonly EventHandler _trackedEvent;
|
|
|
|
|
|
private readonly object _sender;
|
|
|
|
|
|
private readonly EventArgs _args;
|
|
|
|
|
|
|
2021-12-16 13:44:20 +01:00
|
|
|
|
public EventDefinition(EventHandler trackedEvent, object sender, EventArgs args, string? eventName = null)
|
2017-05-12 14:49:44 +02:00
|
|
|
|
: base(sender, args, eventName)
|
|
|
|
|
|
{
|
|
|
|
|
|
_trackedEvent = trackedEvent;
|
|
|
|
|
|
_sender = sender;
|
|
|
|
|
|
_args = args;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public override void RaiseEvent()
|
|
|
|
|
|
{
|
|
|
|
|
|
if (_trackedEvent != null)
|
|
|
|
|
|
{
|
|
|
|
|
|
_trackedEvent(_sender, _args);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2019-05-27 13:53:53 +02:00
|
|
|
|
public class EventDefinition<TEventArgs> : EventDefinitionBase
|
2017-05-12 14:49:44 +02:00
|
|
|
|
{
|
2022-01-13 09:27:37 +01:00
|
|
|
|
private readonly EventHandler<TEventArgs?> _trackedEvent;
|
2017-05-12 14:49:44 +02:00
|
|
|
|
private readonly object _sender;
|
2022-01-13 09:27:37 +01:00
|
|
|
|
private readonly TEventArgs? _args;
|
2017-05-12 14:49:44 +02:00
|
|
|
|
|
2022-01-13 09:27:37 +01:00
|
|
|
|
public EventDefinition(EventHandler<TEventArgs?> trackedEvent, object sender, TEventArgs? args, string? eventName = null)
|
2017-05-12 14:49:44 +02:00
|
|
|
|
: base(sender, args, eventName)
|
|
|
|
|
|
{
|
|
|
|
|
|
_trackedEvent = trackedEvent;
|
|
|
|
|
|
_sender = sender;
|
|
|
|
|
|
_args = args;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public override void RaiseEvent()
|
|
|
|
|
|
{
|
|
|
|
|
|
if (_trackedEvent != null)
|
|
|
|
|
|
{
|
|
|
|
|
|
_trackedEvent(_sender, _args);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2019-05-27 13:53:53 +02:00
|
|
|
|
public class EventDefinition<TSender, TEventArgs> : EventDefinitionBase
|
2017-05-12 14:49:44 +02:00
|
|
|
|
{
|
2022-01-13 09:27:37 +01:00
|
|
|
|
private readonly TypedEventHandler<TSender?, TEventArgs> _trackedEvent;
|
|
|
|
|
|
private readonly TSender? _sender;
|
2017-05-12 14:49:44 +02:00
|
|
|
|
private readonly TEventArgs _args;
|
|
|
|
|
|
|
2022-01-13 09:27:37 +01:00
|
|
|
|
public EventDefinition(TypedEventHandler<TSender?, TEventArgs> trackedEvent, TSender? sender, TEventArgs args, string? eventName = null)
|
2017-05-12 14:49:44 +02:00
|
|
|
|
: base(sender, args, eventName)
|
|
|
|
|
|
{
|
|
|
|
|
|
_trackedEvent = trackedEvent;
|
|
|
|
|
|
_sender = sender;
|
|
|
|
|
|
_args = args;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public override void RaiseEvent()
|
|
|
|
|
|
{
|
|
|
|
|
|
if (_trackedEvent != null)
|
|
|
|
|
|
{
|
|
|
|
|
|
_trackedEvent(_sender, _args);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
2017-07-20 11:21:28 +02:00
|
|
|
|
}
|