package Ġnet . b jo ern pe ters en . shutdown . exec Ċ Ċ import Ġjava . time . Instant Ċ Ċ class ĠTest K iller Ġ: ĠK iller Ġ{ ĊĠĠĠ Ġoverride Ġvar Ġstate : ĠK iller State Ġ= ĠUn scheduled () ĊĠĠĠĠĠĠĠ Ġprivate Ġset ĊĊĠĠĠ Ġval Ġis K illed : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġstate . let Ġ{ Ġit Ġis ĠScheduled Ġ&& Ġ! it . is Reboot Ġ} ĊĠĠĠ Ġval Ġis Reboot ed : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġstate . let Ġ{ Ġit Ġis ĠScheduled Ġ&& Ġit . is Reboot Ġ} ĊĠĠĠ Ġval Ġis Abort ed : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġstate . let Ġ{ Ġit Ġis ĠUn scheduled Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġshut Down ( time : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġstate Ġ= ĠScheduled ( Instant . now (). plus Seconds ( time . to Long ()), Ġfalse ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġreboot ( time : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġstate Ġ= ĠScheduled ( Instant . now (). plus Seconds ( time . to Long ()), Ġtrue ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġabort () Ġ{ ĊĠĠĠĠĠĠĠ Ġstate Ġ= ĠUn scheduled () ĊĠĠĠ Ġ} Ċ } Ċ