この質問は、Groovyクラスがどのように機能するかについての私の側の知識の欠如をおそらく説明するでしょうが、私は運がなくてこれを自分で理解しようとしました。Groovyishの方法でメンバー変数を参照できるように、クラスにgetProperty()メソッドを作成したいと思います。これは、それらを公開することと同じではありません。なぜなら、それらが参照されるときにいくつかのロジックを実行したいからです。基本的に、ConfigSlurperを使用する構成Groovyクラスを作成しようとしています。
class Configuration implements GroovyObject {
private static ConfigObject config = new ConfigSlurper().parse(new File("testing.conf").toURI().toURL())
//This method is illegal, but it illustrates what I want to do
public static String getProperty(String prop){
config.getProperty(prop)
}
}
上記のクラスが合法である場合、次のように構成アイテムを参照できます。
Configuration.dbUser
これの代わりに、ConfigObjectを使用可能にする必要があります。
Configuration.config.dbUser
configオブジェクトを公開する方が世界的に簡単だと思いますが、これを行う方法を知っている(またはそれが不可能な理由を知っている)と、Groovyを少しよく理解するのに役立ちます。