package Ġcom . d restaurant . customer . domain . api Ċ Ċ import Ġcom . d restaurant . common . domain . event . Audit able Abstract Event Ċ import Ġcom . d restaurant . common . domain . model . Audit Entry Ċ import Ġcom . d restaurant . common . domain . model . Money Ċ import Ġcom . d restaurant . common . domain . model . Person Name Ċ Ċ /** Ċ Ġ* ĠAn Ġevent , Ġnot ing Ġthat Ġcustomer Ġhas Ġbeen Ġcreated Ċ Ġ*/ Ċ class ĠCustomer Created Event ( val Ġname : ĠPerson Name , Ġval Ġorder Limit : ĠMoney , Ġaggregate Identifier : ĠString , Ġaudit Entry : ĠAudit Entry ) Ġ: ĠAudit able Abstract Event ( aggregate Identifier , Ġaudit Entry ) Ċ Ċ /** Ċ Ġ* ĠAn Ġevent , Ġnot ing Ġthat Ġcustomer Ġorder Ġhas Ġbeen Ġcreated Ċ Ġ*/ Ċ class ĠCustomer Order Created Event ( orderId : ĠString , Ġaudit Entry : ĠAudit Entry ) Ġ: ĠAudit able Abstract Event ( orderId , Ġaudit Entry ) Ċ Ċ /** Ċ Ġ* ĠAn Ġevent , Ġnot ing Ġthat Ġcustomer Ġorder Ġhas Ġbeen Ġdelivered Ċ Ġ*/ Ċ class ĠCustomer Order Deliver ed Event ( orderId : ĠString , Ġaudit Entry : ĠAudit Entry ) Ġ: ĠAudit able Abstract Event ( orderId , Ġaudit Entry ) Ċ Ċ /** Ċ Ġ* ĠAn Ġevent , Ġnot ing Ġthat Ġcustomer Ġorder Ġhas Ġbeen Ġrejected Ċ Ġ*/ Ċ class ĠCustomer Order Rejected Event ( orderId : ĠString , Ġaudit Entry : ĠAudit Entry ) Ġ: ĠAudit able Abstract Event ( orderId , Ġaudit Entry ) Ċ