private void Handle(IEvent @event, CommerceInstance commerceInstance)
{
// TODO: Need to be passed in?
var instance = CommerceInstance.Current;
var rules = RuleManager.GetManager(instance.Name).GetRules(@event.GetType().Name);
var activities = new List<ConfiguredActivity>();
foreach (var rule in rules)
{
activities.AddRange(rule.Execute(@event));
}
ScheduleActivities(activities.Where(it => it.Async), @event, instance);
ExecuteActivities(activities.Where(it => !it.Async), @event);
}