internal CommandExecutionResult Execute(CommandInstance cmd) { var evt = Model.Method.Invoke(Instance.Object, new[] { cmd.Instance }); var list = new List <DomainEventInstance>(); list.Add(new DomainEventInstance(evt)); return(new CommandExecutionResult(list)); }
public CommandExecutionResult Execute(CommandInstance cmd) { CommandHandlerInstance handler = null; if (Factory.Handles(cmd)) { handler = Factory; } else { handler = CommandHandlers.Single(c => c.Handles(cmd)); } return(handler.Execute(cmd)); }
public bool Handles(CommandInstance instance) { return(Model.Handles(instance.Model)); }