package Ġdev . c by r ne . indi . command . impl . admin Ċ Ċ import Ġdev . c by r ne . indi . command . Command Category Ċ import Ġdev . c by r ne . indi . command . In di Command Ċ import Ġdev . c by r ne . indi . command . exception . Command ExecutionException Ċ import Ġdev . c by r ne . indi . command . exception . Command Incorrect Arguments Exception Ċ import Ġdev . c by r ne . indi . database . Database Ċ import Ġdev . c by r ne . indi . embed . embed Ċ import Ġdev . c by r ne . indi . embed . success Embed Ċ import Ġdev . c by r ne . indi . extension . reply Ċ import Ġnet . dv 8 tion . j da . api . entities . Guild Ċ import Ġnet . dv 8 tion . j da . api . entities . Member Ċ import Ġnet . dv 8 tion . j da . api . entities . Message Ċ Ċ class ĠSuper user Command Ġ: ĠIn di Command ( ĊĠĠĠ Ġ" superuser ", ĊĠĠĠ Ġ" Add Ġ/ Ġremove Ġa Ġsuper user ", ĊĠĠĠ Ġcategory Ġ= ĠCommand Category . ADMIN ISTR ATOR , ĊĠĠĠ Ġrequires Administrator Ġ= Ġtrue Ċ ) Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġexecute ( sender : ĠMember , Ġguild : ĠGuild , Ġmessage : ĠMessage , Ġarguments : ĠList < String >) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġaction Ġ= Ġarguments . get OrNull ( 0 ) ĊĠĠĠĠĠĠĠ Ġif Ġ( action . isNull OrEmpty () Ġ|| Ġaction Ġ== Ġ" list ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġusers Ġ= ĠDatabase . getAll Users () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsuper users Ġ= Ġusers . filter Ġ{ Ġit . is Super user Ġ}. join ToString (", Ġ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġguild . j da . getUser ById ( it ._ id )?. as Mention Ġ?: Ġit ._ id . toString () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġadministr ators Ġ= Ġusers . filter Ġ{ Ġit . is Administrator Ġ}. join ToString (", Ġ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġguild . j da . getUser ById ( it ._ id )?. as Mention Ġ?: Ġit ._ id . toString () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġmessage . reply ( embed Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtitle Ġ= Ġ" Super users " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdescription Ġ= Ġ" These Ġpeople Ġhave Ġaccess Ġto Ġspecial Ġcommands , Ġwhich Ġcan Ġbe Ġseen Ġin Ġthe Ġhelp Ġmenu " ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfield (" Administr ators ", Ġadministr ators . if Empty Ġ{ Ġ" None " Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfield (" Super users ", Ġsuper users . if Empty Ġ{ Ġ" None " Ġ}) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtimestamp () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrequest er ( message . author ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}, Ġfalse ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif Ġ( arguments . size Ġ< Ġ 2 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠCommand Incorrect Arguments Exception ( arguments . size , Ġ 2 ) ĊĊĠĠĠĠĠĠĠ Ġval Ġtarget Ġ= Ġget Target ( message , Ġarguments ) ĊĠĠĠĠĠĠĠ Ġif Ġ( target . is Bot Ġ|| Ġtarget . is System ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠCommand ExecutionException (" This Ġuser Ġis Ġexemp t Ġfrom Ġsuper user Ġmodifications Ġas Ġthey Ġare Ġa Ġbot ") ĊĊĠĠĠĠĠĠĠ Ġval Ġtarget Document Ġ= ĠDatabase . get Or Insert User ( target . id Long ) ĊĠĠĠĠĠĠĠ Ġif Ġ( target Document . is Administrator ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠCommand ExecutionException (" This Ġuser Ġis Ġexemp t Ġfrom Ġsuper user Ġmodifications Ġas Ġthey Ġare Ġan Ġadministrator ") ĊĊĠĠĠĠĠĠĠ Ġwhen Ġ( action ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" add " Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtarget Document . is Super user Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDatabase . update User ( target Document ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage . reply ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsuccess Embed ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Super user ĠMod ification ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Added Ġ${ target . as Mention } Ġto Ġthe Ġlist Ġof Ġsuper users ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsender . user ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" remove " Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtarget Document . is Super user Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDatabase . update User ( target Document ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage . reply ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsuccess Embed ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Super user ĠMod ification ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Removed Ġ${ target . as Mention } Ġfrom Ġthe Ġlist Ġof Ġsuper users ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsender . user ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠCommand ExecutionException (" Invalid Ġaction .\ n Expected : Ġ\" add \" Ġor Ġ\" remove \", Ġreceived : Ġ\" ${ action }\" ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }