package Ġcom . om area . common . shared Ċ Ċ import Ġcom . om area . common . shell . Root File Ċ Ċ class ĠRoot FileInfo Ġ{ ĊĠĠĠ Ġconstructor () ĊĠĠĠ Ġconstructor ( path : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġfile Ġ= ĠRoot File . fileInfo ( path ) ĊĠĠĠĠĠĠĠ Ġif Ġ( file Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . permissions Ġ= Ġfile . permissions ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . parent Dir Ġ= Ġfile . parent Dir ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . filePath Ġ= Ġfile . filePath ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . isDirectory Ġ= Ġfile . isDirectory ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . inode Count Ġ= Ġfile . inode Count ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . file Size Ġ= Ġfile . file Size ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . owner Ġ= Ġfile . owner ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . owner Group Ġ= Ġfile . owner Group ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . last Modify DateTime Ġ= Ġfile . last Modify DateTime ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġvar Ġpermissions : ĠString Ġ= Ġ"" ĊĠĠĠ Ġvar Ġparent Dir : ĠString Ġ= Ġ"" ĊĠĠĠ Ġvar ĠfilePath : ĠString Ġ= Ġ"" ĊĠĠĠ Ġvar Ġis Directory : ĠBoolean Ġ= Ġfalse ĊĠĠĠ Ġvar Ġinode Count Ġ= Ġ 0 ĊĠĠĠ Ġvar ĠfileSize : ĠLong Ġ= Ġ 0 ĊĠĠĠ Ġvar Ġowner : ĠString Ġ= Ġ"" ĊĠĠĠ Ġvar Ġowner Group : ĠString Ġ= Ġ"" ĊĠĠĠ Ġvar Ġlast Modify DateTime : ĠString Ġ= Ġ"" ĊĠĠĠ Ġvar Ġexecutable : ĠBoolean Ġ= Ġfalse ĊĠĠĠ Ġvar Ġsoft Link Ġ= Ġ"" ĊĊĠĠĠ Ġval ĠfileName : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( filePath . endsWith ("/ ")) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠfilePath . substring ( 0 , ĠfilePath . length Ġ- Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠfilePath ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġval Ġabsolute Path : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġparent Dir Ġ+ Ġ"/" Ġ+ ĠfileName ĊĊĊĠĠĠ Ġpublic Ġfun Ġexists (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠRoot File . item Exists ( this . absolute Path ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġpublic Ġfun Ġis File (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ! isDirectory ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġpublic Ġfun ĠgetParent (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . parent Dir ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġpublic Ġfun ĠgetName (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . fileName ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġpublic Ġfun Ġlist Files (): ĠArrayList < Root FileInfo > Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( this . isDirectory ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( this . soft Link Ġ!= Ġ"") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠRoot File . list ( this . soft Link ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠRoot File . list ( this . absolute Path ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn ĠArrayList () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġlength (): ĠLong Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . file Size ĊĠĠĠ Ġ} Ċ } Ċ