package Ġio . github . oe fff . workspace Ċ Ċ import Ġmu . Kotlin Logging Ċ import Ġorg . springframework . stereotype . Component Ċ import Ġjava . io . File ĊĊ Ċ const Ġval ĠWORK SPACE _ ARGUMENT _ NAME Ġ= Ġ" OE FFF _ WORK SPACE _ LOCATION " Ċ const Ġval ĠLOCAL _ WORK SPACE _ LOCATION Ġ= Ġ Ġ"/ Users / m abe / projects / com / github / oe fff /" Ċ Ċ class ĠWorkspace Location Configuration ( private Ġval Ġuse Local Project Ġ: ĠBoolean Ġ= Ġfalse ) Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġlogger Ġ= ĠKotlin Logging . logger Ġ{ Ġ Ġ} ĊĊĠĠĠ Ġval Ġworkspace Location Ġ: ĠString Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ Ġdetermine Workspace Location () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġdetermine Workspace Location () Ġ: ĠString Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval Ġconfigured Workspace Location Ġ= ĠSystem . getProperty ( WORK SPACE _ ARGUMENT _ NAME ) ĊĠĠĠĠĠĠĠ Ġreturn Ġconfigured Workspace Location Ġ?: Ġfind Default Location () ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġfind Default Location (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( use Local Project ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠLOCAL _ WORK SPACE _ LOCATION ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġcreate TempDir Ġ= Ġcreate TempDir (" oe fff ", Ġ". workspace ") ĊĠĠĠĠĠĠĠ Ġreturn Ġcreate TempDir . absolute Path ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Workspace () Ġ: ĠFile Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠFile ( workspace Location ) ĊĠĠĠ Ġ} Ċ Ċ } Ċ