package Ġtk . zw ander . common . data Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . net . Uri Ċ import Ġandroidx . document file . provider . Document File Ċ import Ġcom . so y wiz . kor io . stream . Async InputStream Ċ import Ġcom . so y wiz . kor io . stream . Async OutputStream Ċ import Ġtk . zw ander . common . util . input Async Ċ import Ġtk . zw ander . common . util . flush ing Async Ċ import Ġjava . io . FileInputStream Ċ import Ġjava . io . File OutputStream Ċ Ċ actual Ġopen Ġclass ĠPlatform File Ġ: ĠFile Ġ{ ĊĠĠĠ Ġprivate Ġval Ġwrapped File : ĠI Platform File ĊĊĠĠĠ Ġactual Ġconstructor ( path Name : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . wrapped File Ġ= ĠPlatform File File ( path Name ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġactual Ġconstructor ( parent : ĠString , Ġchild : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . wrapped File Ġ= ĠPlatform File File ( parent , Ġchild ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġactual Ġconstructor ( parent : ĠFile , Ġchild : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . wrapped File Ġ= ĠPlatform File File ( parent , Ġchild ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġconstructor ( context : ĠContext , Ġuri : ĠUri , Ġis Tree : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . wrapped File Ġ= ĠPlatform Uri File ( context , Ġuri , Ġis Tree ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprotected Ġconstructor ( wrapped File : ĠI Platform File ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . wrapped File Ġ= Ġwrapped File ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠhashCode (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . wrapped File . hashCode () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġval Ġname : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthis . wrapped File . name ĊĠĠĠ Ġoverride Ġval Ġparent : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthis . wrapped File . parent ĊĠĠĠ Ġoverride Ġval Ġparent File : ĠFile ĊĠĠĠĠĠĠĠ Ġget () Ġ= ĠFile ( this . wrapped File . parent File . absolute Path ) ĊĠĠĠ Ġoverride Ġval Ġpath : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthis . wrapped File . path ĊĠĠĠ Ġoverride Ġval Ġis Absolute : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthis . wrapped File . is Absolute ĊĠĠĠ Ġoverride Ġval Ġabsolute Path : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthis . wrapped File . absolute Path ĊĠĠĠ Ġoverride Ġval Ġabsolute File : ĠFile ĊĠĠĠĠĠĠĠ Ġget () Ġ= ĠFile ( this . wrapped File . absolute File . absolute Path ) ĊĠĠĠ Ġoverride Ġval Ġcanonical Path : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthis . wrapped File . canonical Path ĊĠĠĠ Ġoverride Ġval Ġcanonical File : ĠFile ĊĠĠĠĠĠĠĠ Ġget () Ġ= ĠFile ( this . wrapped File . canonical File . absolute Path ) ĊĠĠĠ Ġoverride Ġval Ġcan Read : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthis . wrapped File . can Read ĊĠĠĠ Ġoverride Ġval Ġcan Write : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthis . wrapped File . can Write ĊĠĠĠ Ġoverride Ġval Ġexists : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthis . wrapped File . exists ĊĠĠĠ Ġoverride Ġval Ġis Directory : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthis . wrapped File . isDirectory ĊĠĠĠ Ġoverride Ġval Ġis File : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthis . wrapped File . isFile ĊĠĠĠ Ġoverride Ġval Ġis Hidden : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthis . wrapped File . is Hidden ĊĠĠĠ Ġoverride Ġval Ġlast Modified : ĠLong ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthis . wrapped File . lastModified ĊĠĠĠ Ġoverride Ġval Ġlength : ĠLong ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthis . wrapped File . length ĊĠĠĠ Ġoverride Ġval Ġtotal Space : ĠLong ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthis . wrapped File . total Space ĊĠĠĠ Ġoverride Ġval Ġfree Space : ĠLong ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthis . wrapped File . free Space ĊĠĠĠ Ġoverride Ġval Ġusable Space : ĠLong ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthis . wrapped File . usable Space ĊĊĠĠĠ Ġoverride Ġfun Ġcreate New File (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . wrapped File . createNew File () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdelete (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . wrapped File . delete () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdelete On Exit () Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . wrapped File . delete On Exit () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġlist (): ĠArray < String >? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . wrapped File . list () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġlist ( filter : Ġ( dir : ĠI Platform File , Ġname : ĠString ) Ġ-> ĠBoolean ): ĠArray < String >? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . wrapped File . list Ġ{ Ġdir , Ġname Ġ-> Ġfilter ( File ( dir . absolute Path ), Ġname ) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġlist Files (): ĠArray < I Platform File >? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . wrapped File . list Files ()?. map Ġ{ ĠFile ( it . absolute Path ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ? . to Typed Array () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġlist Files ( filter : Ġ( dir : ĠI Platform File , Ġname : ĠString ) Ġ-> ĠBoolean ): ĠArray < I Platform File >? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . wrapped File . list Files Ġ{ Ġdir , Ġname Ġ-> Ġfilter ( File ( dir . absolute Path ), Ġname ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ? . map Ġ{ ĠFile ( it . absolute Path ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ? . to Typed Array () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġlist Files ( filter : Ġ( path Name : ĠI Platform File ) Ġ-> ĠBoolean ): ĠArray < I Platform File >? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . wrapped File . list Files Ġ{ Ġpathname Ġ-> Ġfilter ( File ( pathname . absolute Path )) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ? . map Ġ{ ĠFile ( it . absolute Path ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ? . to Typed Array () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġmkdir (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . wrapped File . mkdir () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġmkdir s (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . wrapped File . mkdir s () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġrename To ( dest : ĠFile ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . wrapped File . rename To ( dest ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset LastModified ( time : ĠLong ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . wrapped File . set LastModified ( time ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset ReadOnly (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . wrapped File . set ReadOnly () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Writable ( writable : ĠBoolean , Ġowner Only : ĠBoolean ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . wrapped File . set Writable ( writable , Ġowner Only ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Writable ( writable : ĠBoolean ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . wrapped File . set Writable ( writable ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Readable ( readable : ĠBoolean , Ġowner Only : ĠBoolean ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . wrapped File . set Readable ( readable , Ġowner Only ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Readable ( readable : ĠBoolean ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . wrapped File . set Readable ( readable ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Executable ( executable : ĠBoolean , Ġowner Only : ĠBoolean ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . wrapped File . set Executable ( executable , Ġowner Only ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Executable ( executable : ĠBoolean ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . wrapped File . set Executable ( executable ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġcan Execute (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . wrapped File . can Execute () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġopen OutputStream ( append : ĠBoolean ): ĠAsync OutputStream Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . open OutputStream ( append ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġopen InputStream (): ĠAsync InputStream Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . open InputStream () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġcompare To ( other : ĠI Platform File ): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . wrapped File . compareTo ( other ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġequals ( other : ĠAny ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File Ġ== Ġother ĊĠĠĠ Ġ} Ċ } Ċ Ċ class ĠPlatform File File Ġ: ĠPlatform File Ġ{ ĊĠĠĠ Ġprivate Ġval Ġwrapped File : Ġjava . io . File ĊĊĠĠĠ Ġconstructor ( path Name : ĠString ) Ġ: Ġsuper ( path Name ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwrapped File Ġ= Ġjava . io . File ( path Name ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġconstructor ( parent : ĠString , Ġchild : ĠString ) Ġ: Ġsuper ( parent , Ġchild ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwrapped File Ġ= Ġjava . io . File ( parent , Ġchild ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġconstructor ( parent : ĠFile , Ġchild : ĠString ) Ġ: Ġsuper ( parent , Ġchild ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwrapped File Ġ= Ġjava . io . File ( java . io . File ( parent . absolute Path ), Ġchild ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġval Ġname : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . name ĊĠĠĠ Ġoverride Ġval Ġparent : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . parent ĊĠĠĠ Ġoverride Ġval Ġparent File : ĠFile ĊĠĠĠĠĠĠĠ Ġget () Ġ= ĠFile ( wrapped File . parent File . absolute Path ) ĊĠĠĠ Ġoverride Ġval Ġpath : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . path ĊĠĠĠ Ġoverride Ġval Ġis Absolute : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . is Absolute ĊĠĠĠ Ġoverride Ġval Ġabsolute Path : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . absolute Path ĊĠĠĠ Ġoverride Ġval Ġabsolute File : ĠFile ĊĠĠĠĠĠĠĠ Ġget () Ġ= ĠFile ( wrapped File . absolute File . absolute Path ) ĊĠĠĠ Ġoverride Ġval Ġcanonical Path : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . canonical Path ĊĠĠĠ Ġoverride Ġval Ġcanonical File : ĠFile ĊĠĠĠĠĠĠĠ Ġget () Ġ= ĠFile ( wrapped File . canonical File . absolute Path ) ĊĠĠĠ Ġoverride Ġval Ġcan Read : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . can Read () ĊĠĠĠ Ġoverride Ġval Ġcan Write : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . can Write () ĊĠĠĠ Ġoverride Ġval Ġexists : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . exists () ĊĠĠĠ Ġoverride Ġval Ġis Directory : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . isDirectory ĊĠĠĠ Ġoverride Ġval Ġis File : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . isFile ĊĠĠĠ Ġoverride Ġval Ġis Hidden : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . is Hidden ĊĠĠĠ Ġoverride Ġval Ġlast Modified : ĠLong ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . lastModified () ĊĠĠĠ Ġoverride Ġval Ġlength : ĠLong ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . length () ĊĠĠĠ Ġoverride Ġval Ġtotal Space : ĠLong ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . total Space ĊĠĠĠ Ġoverride Ġval Ġfree Space : ĠLong ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . free Space ĊĠĠĠ Ġoverride Ġval Ġusable Space : ĠLong ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . usable Space ĊĊĠĠĠ Ġoverride Ġfun Ġcreate New File (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . createNew File () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdelete (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . delete () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdelete On Exit () Ġ{ ĊĠĠĠĠĠĠĠ Ġwrapped File . delete On Exit () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġlist (): ĠArray < String >? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . list () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġlist ( filter : Ġ( dir : ĠI Platform File , Ġname : ĠString ) Ġ-> ĠBoolean ): ĠArray < String >? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . list Ġ{ Ġdir , Ġname Ġ-> Ġfilter ( File ( dir . absolute Path ), Ġname ) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġlist Files (): ĠArray < I Platform File >? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . list Files ()?. map Ġ{ ĠFile ( it . absolute Path ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ? . to Typed Array () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġlist Files ( filter : Ġ( dir : ĠI Platform File , Ġname : ĠString ) Ġ-> ĠBoolean ): ĠArray < I Platform File >? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . list Files Ġ{ Ġdir , Ġname Ġ-> Ġfilter ( File ( dir . absolute Path ), Ġname ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ? . map Ġ{ ĠFile ( it . absolute Path ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ? . to Typed Array () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġlist Files ( filter : Ġ( path Name : ĠI Platform File ) Ġ-> ĠBoolean ): ĠArray < I Platform File >? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . list Files Ġ{ Ġpathname Ġ-> Ġfilter ( File ( pathname . absolute Path )) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ? . map Ġ{ ĠFile ( it . absolute Path ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ? . to Typed Array () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġmkdir (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . mkdir () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġmkdir s (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . mkdir s () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġrename To ( dest : ĠFile ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . rename To ( java . io . File ( dest . absolute Path )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset LastModified ( time : ĠLong ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . set LastModified ( time ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset ReadOnly (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . set ReadOnly () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Writable ( writable : ĠBoolean , Ġowner Only : ĠBoolean ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . set Writable ( writable , Ġowner Only ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Writable ( writable : ĠBoolean ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . set Writable ( writable ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Readable ( readable : ĠBoolean , Ġowner Only : ĠBoolean ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . set Readable ( readable , Ġowner Only ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Readable ( readable : ĠBoolean ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . set Readable ( readable ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Executable ( executable : ĠBoolean , Ġowner Only : ĠBoolean ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . set Executable ( executable , Ġowner Only ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Executable ( executable : ĠBoolean ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . set Executable ( executable ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġcan Execute (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . can Execute () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġopen OutputStream ( append : ĠBoolean ): ĠAsync OutputStream Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠFileOutputStream ( wrapped File , Ġappend ). flush ing Async () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġopen InputStream (): ĠAsync InputStream Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠFileInputStream ( wrapped File ). input Async () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġcompare To ( other : ĠI Platform File ): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . compareTo ( java . io . File ( other . absolute Path )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠhashCode (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . hashCode () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġequals ( other : ĠAny ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġother Ġis ĠPlatform File File ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ&& Ġother . absolute Path Ġ== Ġabsolute Path ĊĠĠĠ Ġ} Ċ } Ċ Ċ class ĠPlatform Uri File Ġ: ĠI Platform File Ġ{ ĊĠĠĠ Ġprivate Ġval Ġcontext : ĠContext ĊĠĠĠ Ġprivate Ġval Ġwrapped File : ĠDocument File ĊĊĠĠĠ Ġconstructor ( context : ĠContext , Ġfile : ĠDocument File ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . context Ġ= Ġcontext ĊĠĠĠĠĠĠĠ Ġwrapped File Ġ= Ġfile ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġconstructor ( context : ĠContext , Ġfile : ĠI Platform File ) Ġ{ ĊĠĠĠĠĠĠĠ Ġassert ( file Ġis ĠPlatform Uri File ) ĊĊĠĠĠĠĠĠĠ Ġthis . context Ġ= Ġcontext ĊĠĠĠĠĠĠĠ Ġwrapped File Ġ= Ġ( file Ġas ĠPlatform Uri File ). wrapped File ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġconstructor ( context : ĠContext , Ġuri : ĠUri , Ġis Tree : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . context Ġ= Ġcontext ĊĠĠĠĠĠĠĠ Ġwrapped File Ġ= Ġif Ġ( is Tree ) ĠDocument File . from Tree Uri ( context , Ġuri ) !! Ġelse ĠDocument File . from Single Uri ( context , Ġuri ) !! ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġval Ġname : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . name !! ĊĠĠĠ Ġoverride Ġval Ġparent : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . parent File !!. uri . toString () ĊĠĠĠ Ġoverride Ġval Ġparent File : ĠI Platform File ĊĠĠĠĠĠĠĠ Ġget () Ġ= ĠPlatform Uri File ( context , Ġwrapped File . parent File !! ) ĊĠĠĠ Ġoverride Ġval Ġpath : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . uri . toString () ĊĠĠĠ Ġoverride Ġval Ġis Absolute : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġfalse ĊĠĠĠ Ġoverride Ġval Ġabsolute Path : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġpath ĊĠĠĠ Ġoverride Ġval Ġabsolute File : ĠI Platform File ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthis ĊĠĠĠ Ġoverride Ġval Ġcanonical Path : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthrow ĠIllegal AccessException (" Not ĠSupported ") ĊĠĠĠ Ġoverride Ġval Ġcanonical File : ĠFile ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthrow ĠIllegal AccessException (" Not ĠSupported ") ĊĠĠĠ Ġoverride Ġval Ġcan Read : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . can Read () ĊĠĠĠ Ġoverride Ġval Ġcan Write : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . can Write () ĊĠĠĠ Ġoverride Ġval Ġexists : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . exists () ĊĠĠĠ Ġoverride Ġval Ġis Directory : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . isDirectory ĊĠĠĠ Ġoverride Ġval Ġis File : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . isFile ĊĠĠĠ Ġoverride Ġval Ġis Hidden : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġfalse ĊĠĠĠ Ġoverride Ġval Ġlast Modified : ĠLong ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . lastModified () ĊĠĠĠ Ġoverride Ġval Ġlength : ĠLong ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwrapped File . length () ĊĠĠĠ Ġoverride Ġval Ġtotal Space : ĠLong ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthrow ĠIllegal AccessException (" Not ĠSupported ") ĊĠĠĠ Ġoverride Ġval Ġfree Space : ĠLong ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthrow ĠIllegal AccessException (" Not ĠSupported ") ĊĠĠĠ Ġoverride Ġval Ġusable Space : ĠLong ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthrow ĠIllegal AccessException (" Not ĠSupported ") ĊĊĠĠĠ Ġoverride Ġfun Ġcreate New File (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Document File Ġcreates Ġitself . ĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdelete (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . delete () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdelete On Exit () Ġ{ ĊĠĠĠĠĠĠĠ Ġthrow ĠIllegal AccessException (" Not ĠSupported ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġlist (): ĠArray < String > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . list Files (). map Ġ{ Ġit . name !! Ġ}. to Typed Array () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġlist ( filter : Ġ( dir : ĠI Platform File , Ġname : ĠString ) Ġ-> ĠBoolean ): ĠArray < String > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . list Files (). filter Ġ{ Ġfilter ( Platform Uri File ( context , Ġit . parent File !! ), Ġit . name !! ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Ġ{ Ġit . name !! Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. to Typed Array () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġlist Files (): ĠArray < I Platform File > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . list Files (). map Ġ{ ĠPlatform Uri File ( context , Ġit ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. to Typed Array () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġlist Files ( filter : Ġ( dir : ĠI Platform File , Ġname : ĠString ) Ġ-> ĠBoolean ): ĠArray < I Platform File > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . list Files (). filter Ġ{ Ġfilter ( Platform Uri File ( context , Ġit . parent File !! ), Ġit . name !! ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Ġ{ ĠPlatform Uri File ( context , Ġit ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. to Typed Array () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġlist Files ( filter : Ġ( path Name : ĠI Platform File ) Ġ-> ĠBoolean ): ĠArray < I Platform File > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . list Files (). filter Ġ{ Ġfilter ( Platform Uri File ( context , Ġit )) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Ġ{ ĠPlatform Uri File ( context , Ġit ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. to Typed Array () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġmkdir (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġmkdir s (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġrename To ( dest : ĠFile ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . rename To ( dest . name ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset LastModified ( time : ĠLong ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġthrow ĠIllegal AccessException (" Not ĠSupported ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset ReadOnly (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġthrow ĠIllegal AccessException (" Not ĠSupported ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Writable ( writable : ĠBoolean , Ġowner Only : ĠBoolean ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġthrow ĠIllegal AccessException (" Not ĠSupported ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Writable ( writable : ĠBoolean ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġthrow ĠIllegal AccessException (" Not ĠSupported ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Readable ( readable : ĠBoolean , Ġowner Only : ĠBoolean ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġthrow ĠIllegal AccessException (" Not ĠSupported ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Readable ( readable : ĠBoolean ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġthrow ĠIllegal AccessException (" Not ĠSupported ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Executable ( executable : ĠBoolean , Ġowner Only : ĠBoolean ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġthrow ĠIllegal AccessException (" Not ĠSupported ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Executable ( executable : ĠBoolean ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġthrow ĠIllegal AccessException (" Not ĠSupported ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġcan Execute (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġthrow ĠIllegal AccessException (" Not ĠSupported ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġopen OutputStream ( append : ĠBoolean ): ĠAsync OutputStream Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġcontext . content Resolver . open OutputStream ( wrapped File . uri , Ġ" w ${ if Ġ( append ) Ġ" a " Ġelse Ġ"" }") !!. flush ing Async () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġopen InputStream (): ĠAsync InputStream Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġcontext . content Resolver . open InputStream ( wrapped File . uri ) !!. input Async () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġcompare To ( other : ĠI Platform File ): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( other Ġ! is ĠPlatform Uri File ) Ġreturn Ġ- 1 ĊĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . uri . compareTo ( other . wrapped File . uri ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġequals ( other : ĠAny ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġother Ġis ĠPlatform Uri File ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ&& Ġwrapped File . uri Ġ== Ġother . wrapped File . uri ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠhashCode (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwrapped File . uri . hashCode () ĊĠĠĠ Ġ} Ċ }