2012-04-21 13 views
5

Quiero copiar exactamente la interfaz de un script groovy pero reenviar todos los métodos a un método como invokeMethod o methodMissing.Puede Groovy copiar una firma de clase pero modificar implementaciones

Esto está relacionado con My other question here (Pero abandoné la parte "fácil") lo que explica por qué no puedo usar invokeMethod o ProxyMetaClass, en resumen, porque mi método se llama desde Java y ninguno de Groovy's grooviness funciona para esa invocación.

Así que estoy atascado tratando de duplicar la firma de clase y reenviar llamadas a la clase original.

Esto probablemente implica transformaciones AST, pero todavía estoy tratando de adaptar mi cerebro a ellas, cualquier ejemplo de usar AST para hacer algo como esto (o cualquier otra idea) sería apreciado.

Respuesta

0

Se puede obtener toda la grooviness a trabajar por tener su caso de uso bien definido ejecutar en el contexto de un GroovyShell

+0

El problema es que una aplicación de java en lata está escaneando mi clase maravilloso para las anotaciones y luego volver a llamar en eso directamente. No estoy seguro de cómo puedo llamar a través de GroovyShell, o lo que sugiere ... ¿Alguna posibilidad de dar un ejemplo de código? –

Cuestiones relacionadas