Traitを使ってみたかった
こちらの記事を参考に、コントローラ名からコントローラのインスタンスを取得する部分をTraitにしてみただけです。
コード
trait GetController {
def getController() {
String controllerName = params?.controller
if (!controllerName){
return null
}
def artifact = grailsApplication
.getArtefactByLogicalPropertyName("Controller", controllerName)
applicationContext.getBean(artifact.clazz.name)
}
}
class XXXInterceptor implements GetController {
boolean before() {
def controllerInstance = getController()
}
}