package Ġcom . n att aw ood . mv vm template . util Ċ Ċ data Ġclass ĠResult Response < out ĠT >( val Ġis Success : ĠBoolean , Ġval Ġexception : ĠException ?, Ġval Ġdata : ĠT ?) Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġ< T > Ġsuccess ( data : ĠT ): ĠResult Response < T > Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠResult Response ( is Success Ġ= Ġtrue , Ġexception Ġ= Ġnull , Ġdata Ġ= Ġdata ) ĊĊĠĠĠĠĠĠĠ Ġfun Ġ< T > Ġerror ( exception : ĠException ?): ĠResult Response < T > Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠResult Response ( is Success Ġ= Ġfalse , Ġexception Ġ= Ġexception , Ġdata Ġ= Ġnull ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ enum Ġclass ĠStatus Result Ġ{ ĊĠĠĠ ĠSUCCESS , ĊĠĠĠ ĠERROR , ĊĠĠĠ ĠLO ADING Ċ }