package Ġcom . gm val ent ino . use cases Ċ Ċ import Ġcom . gm val ent ino . repositories . Task Repository Ċ import Ġkotlinx . datetime . LocalDate Ċ Ċ class ĠUpdate Task ( ĊĠĠĠ Ġprivate Ġval Ġrepository : ĠTask Repository Ċ ) Ġ: ĠUpdate Task UseCase Ġ{ ĊĠĠĠ Ġoverride Ġsuspend Ġfun Ġexecute ( arguments : ĠUpdate Task UseCase . Args ) Ġ{ ĊĠĠĠĠĠĠĠ Ġrepository . update Task ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġarguments . id , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġarguments . title , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġarguments . due Date , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġarguments . is Complete ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ interface ĠUpdate Task UseCase Ġ: ĠUse Case < Unit , ĠUpdate Task UseCase . Args > Ġ{ ĊĠĠĠ Ġdata Ġclass ĠArgs ( ĊĠĠĠĠĠĠĠ Ġval Ġid : ĠString , ĊĠĠĠĠĠĠĠ Ġval Ġtitle : ĠString ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠ Ġval Ġdue Date : ĠLocalDate ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠ Ġval Ġis Complete : ĠBoolean ? Ġ= Ġnull ĊĠĠĠ Ġ) Ġ: ĠUse Case . Arguments () Ċ } Ċ