package Ġorg . r sm od . plugins . api . config . file Ċ Ċ import Ġcom . google . inject . Provider Ċ import Ġcom . google . inject . Scope Ċ import Ġdev . mis fit labs . kot ling u ice 4 . Kotlin Module Ċ import Ġorg . r sm od . game . config . Game Config Ċ import Ġjava . nio . file . Files Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠNamed ConfigFile Module ( private Ġval Ġscope : ĠScope ) Ġ: ĠKotlin Module () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġconfigure () Ġ{ ĊĠĠĠĠĠĠĠ Ġbind < Named ConfigFile Map >() ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. to Provider < Named ConfigFile Map Provider >() ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. ` in `( scope ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ private Ġclass ĠNamed ConfigFile Map Provider Ġ@ Inject Ġconstructor ( ĊĠĠĠ Ġprivate Ġval Ġconfig : ĠGame Config Ċ ) Ġ: ĠProvider < Named ConfigFile Map > Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġget () Ġ= ĠNamed ConfigFile Map (). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġ/* Ġadd Ġconfig Ġfile Ġextensions Ġ*/ ĊĠĠĠĠĠĠĠ ĠDefault Extensions . ALL . forEach Ġ{ Ġthis Ġ+= Ġit Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/* Ġload Ġconfig Ġresource Ġfolder Ġfiles Ġ*/ ĊĠĠĠĠĠĠĠ Ġval Ġfiles Ġ= ĠFiles . list ( config . plugin ConfigPath ) ĊĠĠĠĠĠĠĠ Ġfiles . forEach Ġ{ Ġload Directory ( it ) Ġ} ĊĠĠĠ Ġ} Ċ } Ċ