public override ImList <RenderCommand> Handle(EventParameters eventParameters) { if (!EventImplementations.ContainsKey(targetEventType)) { Logger.Log("unmatched event type: " + targetEventType.ToString()); return(new ImList <RenderCommand>()); } var eventImplementation = EventImplementations[targetEventType]; var evnt = eventImplementation.Create(eventParameters); var state = Store.LoadState(evnt); evnt.SetSpawner(Store.GetMe(state)); state = eventImplementation.Handle(state); var renderData = Store.GetRenderData(state); state = Store.ClearRenderData(state); state = Store.SaveState(state); return(renderData); }
public override ImList <RenderCommand> Handle(EventParameters eventParameters) { if (!EventImplementations.ContainsKey(targetEventType)) { return(new ImList <RenderCommand>()); } var eventImplementation = EventImplementations[targetEventType]; var evnt = eventImplementation.Create(eventParameters); var state = Store.LoadState(evnt); evnt.SetSpawner(Store.GetMe(state)); state = Store.PushProcessingEventToEventStore(state); state = Store.PushProcessingEventToOutbox(state); var renderData = Store.GetRenderData(state); state = Store.ClearRenderData(state); state = Store.SaveState(state); return(renderData); }