package Ġnet . mi lo sv asic . pus sy cat . android . application Ċ Ċ import Ġnet . mi lo sv asic . pus sy cat . android . Android P us sy cat Ċ import Ġnet . mi lo sv asic . pus sy cat . android . Terminal P us sy cat Ċ import Ġnet . mi lo sv asic . pus sy cat . application . APPLICATION _ TYPE Ċ import Ġnet . mi lo sv asic . pus sy cat . application . Application Abstract Ċ import Ġnet . mi lo sv asic . pus sy cat . core . COMMAND Ċ Ċ open Ġclass ĠApplication ( args : ĠArray < String >) Ġ: ĠApplication Abstract ( args ) Ġ{ ĊĊĠĠĠ Ġvar Ġtype : ĠAP PLICATION _ TYPE ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġp us sy : ĠAndroid P us sy cat ? Ġ= Ġnull ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġtype Ġ= ĠAP PLICATION _ TYPE . GUI ĊĠĠĠĠĠĠĠ Ġfor Ġ( arg Ġin Ġargs ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( arg . trim () Ġ== Ġ"-- terminal ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtype Ġ= ĠAP PLICATION _ TYPE . CLI ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġif Ġ( type Ġ== ĠAP PLICATION _ TYPE . CLI ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġp us sy Ġ= ĠTerminal P us sy cat () ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠTODO : ĠCreate Ġgui Ġinstance . ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġstart () Ġ{ ĊĠĠĠĠĠĠĠ Ġp us sy ?. start ( args ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġstop () Ġ{ ĊĠĠĠĠĠĠĠ Ġp us sy ?. execute ( COMMAND . STOP ) ĊĠĠĠ Ġ} Ċ Ċ }