package Ġorg . si rix . cli . parser Ċ Ċ import Ġkotlinx . cli . Arg Type Ċ import Ġorg . si rix . access . User ĊĊ Ċ abstract Ġclass ĠAbstract User Command ( name : ĠString , Ġaction Description : ĠString ) Ġ: ĊĠĠĠ ĠAbstract Arg Sub Command ( name , Ġaction Description ) Ġ{ ĊĠĠĠ Ġval Ġusername Ġby Ġoption ( ĊĠĠĠĠĠĠĠ ĠArg Type . String , ĊĠĠĠĠĠĠĠ Ġ" username ", ĊĠĠĠĠĠĠĠ Ġ" un ", ĊĠĠĠĠĠĠĠ Ġ" The Ġuser Ġname Ġwho Ġinteract s Ġwith Ġthe ĠDatabase . ĠDefault Ġis Ġ' admin '. " ĊĠĠĠ Ġ) ĊĠĠĠ Ġval ĠuserId Ġby Ġoption ( Cli Arg Type . Uuid , Ġ" userid ", Ġ" uid ", Ġ" The Ġuser ĠUUID . ĠUsed Ġwhen Ġthe Ġuser Ġis Ġset .") ĊĊĠĠĠ Ġvar Ġuser : ĠUser ? Ġ= Ġnull ĊĊĠĠĠ Ġoverride Ġfun Ġexecute () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . execute () ĊĠĠĠĠĠĠĠ Ġif Ġ( username Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġuser Ġ= ĠUser ( username , ĠuserId ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }