package Ġn tn u . id att 2 1 0 5 . reservation . dto Ċ Ċ import Ġcom . fasterxml . jackson . annotation . Json Sub Types Ċ import Ġcom . fasterxml . jackson . annotation . Json Sub Types . Type Ċ import Ġcom . fasterxml . jackson . annotation . Json TypeInfo Ċ import Ġn tn u . id att 2 1 0 5 . reservation . model . Reservation Ċ import Ġn tn u . id att 2 1 0 5 . reservation . validation . Reservation Allowed From DateTime Ċ import Ġn tn u . id att 2 1 0 5 . reservation . validation . Reservation From DateTime Before To DateTime Ċ import Ġn tn u . id att 2 1 0 5 . reservation . validation . Reservation Maximum Duration Ċ import Ġjava . time . Z onedDateTime Ċ import Ġjava . util .* Ċ import Ġjavax . validation . constraints . Positive Ċ Ċ @ Reservation Maximum Duration Ċ @ Reservation Allowed From DateTime Ċ @ Reservation From DateTime Before To DateTime Ċ @ Json TypeInfo ( use Ġ= ĠJson TypeInfo . Id . NAME , Ġinclude Ġ= ĠJson TypeInfo . As . PROPERTY , Ġproperty Ġ= Ġ" type ") Ċ @ Json Sub Types ( ĊĠĠĠĠĠĠĠ ĠType ( value Ġ= ĠCreate User Reservation Request :: class , Ġname Ġ= Ġ" user "), ĊĠĠĠĠĠĠĠ ĠType ( value Ġ= ĠCreate Group Reservation Request :: class , Ġname Ġ= Ġ" group ")) Ċ abstract Ġclass ĠReser vation Create Dto ( ĊĠĠĠ Ġopen Ġval Ġsection Id : ĠUUID ? Ġ= Ġnull , ĊĠĠĠ Ġopen Ġval Ġfrom Time : ĠZ onedDateTime ? Ġ= Ġnull , ĊĠĠĠ Ġopen Ġval Ġto Time : ĠZ onedDateTime ? Ġ= Ġnull , ĊĠĠĠ Ġopen Ġval Ġtext : ĠString Ġ= Ġ"", ĊĠĠĠ Ġ@ get : Positive ( message Ġ= Ġ" The Ġnumber Ġof Ġpeople Ġmust Ġbe Ġpositive ") ĊĠĠĠ Ġopen Ġval Ġnr Of People : ĠInt Ġ= Ġ 1 , ĊĠĠĠ Ġopen Ġval Ġentity Id : ĠUUID ? Ġ= Ġnull , ĊĠĠĠ Ġopen Ġval Ġtype : ĠString ? Ġ= Ġnull Ċ ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġabstract Ġfun Ġto Reservation (): ĠReser vation Ċ } Ċ