package Ġcc . z eng t ian . mt t . util Ċ Ċ import Ġjava . io . File Ċ import Ġjava . io . FileReader Ċ import Ġjava . io . FileWriter Ċ import Ġjava . util .* Ċ Ċ /** Ċ Ġ* ĠCreated Ġby ĠZ eng T ian Ġon Ġ 2 0 1 9 / 9 / 1 4 . Ċ Ġ*/ Ċ actual Ġobject ĠLocal Storage Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġproperties File : ĠFile Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġhome Ġ= ĠSystem . getProperty (" user . home ") ĊĠĠĠĠĠĠĠ Ġvar Ġfile Ġ= ĠFile ( home , ĠLOCAL _ STORAGE _ FILE _ NAME ) ĊĠĠĠĠĠĠĠ Ġif Ġ(! file . exists ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfile . createNew File () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLogger . error (" create Ġproperties Ġfile Ġerror ", Ġe ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfile Ġ= ĠFile . create TempFile (" mt t ", Ġ" temp ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfile . delete On Exit () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġfile ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġproperties : ĠProperties Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġproperties Ġ= ĠProperties () ĊĠĠĠĠĠĠĠ Ġproperties . load ( FileReader ( properties File )) ĊĠĠĠĠĠĠĠ Ġproperties ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġactual Ġfun Ġget ( key : ĠString ): ĠString ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġproperties . getProperty ( key ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġactual Ġfun Ġsave ( key : ĠString , Ġvalue : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġproperties . setProperty ( key , Ġvalue ) ĊĠĠĠĠĠĠĠ Ġpersist () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġactual Ġfun Ġremove ( key : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġproperties . remove ( key ) ĊĠĠĠĠĠĠĠ Ġpersist () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġpersist () Ġ{ ĊĠĠĠĠĠĠĠ Ġproperties . store ( FileWriter ( properties File ), Ġnull ); ĊĠĠĠ Ġ} Ċ }