Exemplo n.º 1
0
 public WriteModule(IWidgetCommandHandler handler)
 {
     _handler          = handler;
     Post["/widgets/"] = parameters =>
     {
         var postData            = this.Bind <WidgetPostModel>();
         var createWidgetCommand = new CreateWidget(Guid.NewGuid(), postData.Name);
         var respone             = DispatchCommand(createWidgetCommand, HttpStatusCode.Created);
         respone.Headers.Add("location", $"/widgets/{createWidgetCommand.WidgetId}");
         return(respone);
     };
 }
Exemplo n.º 2
0
 protected virtual void OnCreateWidget()
 {
     CreateWidget.SafeInvoke(this, EventArgs.Empty);
 }
        public void Handle(CreateWidget message)
        {
            var widgetAggregate = new WidgetAggregate(message.WidgetId, message.Name);

            _aggregateRepository.Save(widgetAggregate);
        }