Mirror 1.6 e outros projetos

@Raphael Lacerda

Não entendi direito a parte de acessar os métodos. Refletir ou invocar?

Para refletir:

Method method = new Mirror().on(seuObjeto.getClass()).reflect().method("methodName").withoutArgs();

Para invocar:

new Mirror().on(seuObjeto).invoke().method("methodName").withoutArgs();

Você encontra mais informações em http://projetos.vidageek.net/mirror-pt/method/

@garcia-jj

O tamanho me incomoda também. Mas ainda acho melhor do que o possível clash de versões com hibernate por aí…

Sobre proxys, isso é algo que pensei durante muito tempo. Realmente, suporte a proxys fica em lugar meio cinza entre reflection e o resto do mundo (mesmo estando no pacote j.l.r). O meu principal ponto para adicionar o suporte a proxy é que (como comentou uma vez um amigo meu, o Rafael Ferreira), o objetivo do Mirror é se tornar uma caixinha de Magia Negra fácil de usar para o meta-modelo de objetos do Java. Criar proxys deveria ser algo bem simples em qualquer linguagem, mas em Java não é bem assim. Pensando em tudo isso resolvi começar a atacar essa “zona cinza” também.

Mas realmente é algo que fica um pouco fora dos objetivos iniciais (substituir o ReflectionUtils) mesmo que me ajude no dia-a-dia.

Jonas, muito bom =).

Posso sugerir para quando sair uma nova versão de derrepente ter um mirror.jar e um mirror-proxy.jar? Digamos que deixar apenas o core do mirror de um lado, e plugins/extras de outro. Enfim, uma sugestão apenas.

Abraços

@garcia-jj

Essa é uma idéia que tenho (inclusive queria ter aplicado nessa versão, mas preferi ter feedback mais rápido do que segurar ainda mais a versão).

Até!

Legal. :smiley: Não conhecia este projeto. Vou dar uma olhada logo que puder. Parece interessante.

[]'s

show de bola.

@zoren

Você pode testar a versão que acabei de lançar (1.6.1)? Os testes que eu fiz para reproduzir o seu problema passam agora. A diferença é que agora é necessário adiconar o cglib ao seu classpath para utilizar a parte de proxys. As instruções estão em [url]http://projetos.vidageek.net/mirror-pt/proxy/[url]

@garcia-jj

Acabei movendo a dependencia para fora do Mirror mesmo. O Jar ainda está um pouco maior (137Kb) que o da versão 1.5.1 (72Kb) porque mantive o objenesis.

[quote=jonasabreu]@garcia-jj

Acabei movendo a dependencia para fora do Mirror mesmo. O Jar ainda está um pouco maior (137Kb) que o da versão 1.5.1 (72Kb) porque mantive o objenesis.[/quote]

:thumbup: