main
1using presentation.windows.common;
2using presentation.windows.common.messages;
3using presentation.windows.server.domain;
4using presentation.windows.server.orm;
5
6namespace presentation.windows.server.handlers
7{
8 public class AddNewFamilyMemberHandler : AbstractHandler<FamilyMemberToAdd>
9 {
10 PersonRepository people;
11 ServiceBus bus;
12
13 public AddNewFamilyMemberHandler(PersonRepository people, ServiceBus bus)
14 {
15 this.people = people;
16 this.bus = bus;
17 }
18
19 public override void handle(FamilyMemberToAdd item)
20 {
21 var person = Person.New(item.first_name, item.last_name, item.date_of_birth);
22 people.save(person);
23 bus.publish<AddedNewFamilyMember>(x =>
24 {
25 x.id = person.id;
26 x.first_name = person.first_name;
27 x.last_name = person.last_name;
28 });
29 }
30 }
31}