package Ġb z . st ew art . br ack en . db . file Ċ Ċ import Ġb z . st ew art . br ack en . shared . Date Utils Ċ import Ġb z . st ew art . br ack en . shared . Date Utils . Utils . getLast Modified DateFormat Ċ import Ġmu . Kotlin Logging Ċ import Ġjava . io . File Ċ import Ġjava . io . IOException Ċ import Ġjava . util .* Ċ Ċ /** Ċ Ġ* ĠCreated Ġby Ġst ew Ġon Ġ 3 / 1 1 / 1 7 . Ċ Ġ*/ Ċ class ĠFileUtils Ġ{ ĊĊĊĠĠ Ġcompanion Ġobject ĠUtil Methods Ġ{ ĊĠĠĠĠĠ Ġprotected Ġval Ġlogger Ġ= ĠKotlin Logging . logger Ġ{} ĊĊĠĠĠĠĠ Ġfun Ġparse Last Mod Date ( last Mod File : ĠFile ): ĠDate ? Ġ{ ĊĠĠĠĠĠĠĠĠ Ġval Ġlen Ġ= Ġlast Mod File . length () ĊĠĠĠĠĠĠĠĠ Ġif Ġ( len Ġ> Ġ 1 0 0 0 Ġ|| Ġlen Ġ<= Ġ 5 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġnull ĊĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠ Ġval Ġline Ġ= Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlast Mod File . read Lines (). first () ĊĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠNoSuch ElementException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġnull ĊĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠIOException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġnull ĊĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠ Ġval Ġoutput Ġ= ĠDate Utils . parse Last ModifiedDate String ( line ) ĊĠĠĠĠĠĠĠĠ Ġif Ġ( output Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlogger . error Ġ{ Ġ" Format Ġfor Ġlast Ġmod Ġfile Ġis Ġj ack ed Ġup : Ġ'$ line ' Ġ@ Ġfile Ġ'$ last Mod File ' Ġusing Ġparser Ġ${ getLast Modified DateFormat (). to Pattern () }" Ġ} ĊĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠ Ġreturn Ġoutput ĊĠĠĠĠĠ Ġ} ĊĠĠ Ġ} Ċ }