2016-10-24 5 views
0

設定ファイルから自分の設定をロードしたい。私はScaldiを使用して設定値を注入できるようにしたいのconfigをロードした後。ここでは、typesafe設定をロードするコードを示します。私はこのモジュールを使用してのように注入できるように、どのように私はこのコードを調整することができます。val localValue = [文字列](「property.name」)Scaldiでは、自分でタイプセーフな設定を読み込みました。Scaldiを使用可能にするにはどうしたらいいですか?

package somepackage 

import java.io.File 
import com.typesafe.config.ConfigFactory 
import scaldi._ 

class GlobalModule extends Module { 

    privateLoadConfig() 

    private def privateLoadConfig() = { 
    val c = System.getProperty("jumpmicro.config.path") 
    val configPath = if (c == null) "jumpmicro.conf" else c 
    if (configPath != null) { 
     val f = new File(configPath) 
     if (f.exists()) { 
     val config = ConfigFactory.parseFile(f) 
     // @todo What to do here? 
     } 
    } 
    } 

} 

答えて

1

次はあなたのために働く必要がありますを注入:

implicit val inj = TypesafeConfigInjector(ConfigPath) // or config, both work 

val localValue = inject [String] ("property.name") 

そうでなければ、::演算子(http://scaldi.org/learn/#injector-composition

を使用して、 TypesafeConfigInjector(ConfigPath)をモジュール定義に追加することができます。
関連する問題