Config.groovy などで環境別の定義を書く場合は、以下のようになるが
1 2 3 4 5 6 7 8 9 10 11 |
environments { test { // テスト時の設定 } development { // 開発時の設定 } production { // 製品時の設定 } } |
resources.groovy で Beanの定義をする時は上記と同じ方法では上手くいかない。
以下の方法でやる。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
// 環境ごとの設定 Environment.executeForCurrentEnvironment { test { // テスト時のBean定義 } developement { // 開発時のBean定義 } production { // 製品時のBean定義 } } |
後日
Grailsの資料みてたらこんなのがあった。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
beans = { switch(Environment.current) { case Environment.PRODUCTION: myBean(MyBeanImpl) { someProperty = 42 otherProperty = "blue" } break case Environment.DEVELOPMENT: myBean(MockImpl) { someProperty = 42 otherProperty = "blue" } break } } |
どっちがいいだろうか。