Search in sources :

Example 6 with ProxyAspect

use of jodd.proxetta.ProxyAspect in project jodd by oblac.

the class ProxettaAwareContainerTest method testProxyProxetta.

@Test
public void testProxyProxetta() {
    ProxyProxetta proxetta = ProxyProxetta.withAspects(new ProxyAspect(AddStringAdvice.class, new AllRealMethodsPointcut()));
    PetiteContainer papc = new ProxettaAwarePetiteContainer(proxetta);
    papc.registerPetiteBean(SecretService.class, null, null, null, false);
    BeanDefinition beanDefinition = papc.registerPetiteBean(PublicService.class, null, null, null, false);
    papc.registerPetiteBean(PublicService2.class, null, null, null, false);
    papc.registerPetiteBean(PublicService3.class, null, null, null, false);
    assertNotEquals(PublicService.class, beanDefinition.getType());
    PublicService publicService = (PublicService) papc.getBean(beanDefinition.getName());
    assertNotNull(publicService.secretService);
    assertEquals("Hello World! And Universe, too!", publicService.hello());
    PublicService2 publicService2 = papc.getBean(PublicService2.class);
    assertNotNull(publicService2.secretService);
    assertEquals("Hello World! And Universe, too!", publicService2.hello());
    PublicService3 publicService3 = papc.getBean(PublicService3.class);
    assertNotNull(publicService3.secretService);
    assertEquals("Hello World! And Universe, too!", publicService3.hello());
}
Also used : ProxyProxetta(jodd.proxetta.impl.ProxyProxetta) ProxettaAwarePetiteContainer(jodd.petite.proxetta.ProxettaAwarePetiteContainer) AllRealMethodsPointcut(jodd.proxetta.pointcuts.AllRealMethodsPointcut) ProxyAspect(jodd.proxetta.ProxyAspect) ProxettaAwarePetiteContainer(jodd.petite.proxetta.ProxettaAwarePetiteContainer) Test(org.junit.Test)

Aggregations

ProxyAspect (jodd.proxetta.ProxyAspect)6 ProxyProxetta (jodd.proxetta.impl.ProxyProxetta)4 Test (org.junit.Test)4 ProxyPointcut (jodd.proxetta.ProxyPointcut)2 MethodAnnotationPointcut (jodd.proxetta.pointcuts.MethodAnnotationPointcut)2 ProxettaAwarePetiteContainer (jodd.petite.proxetta.ProxettaAwarePetiteContainer)1 ProxyProxettaBuilder (jodd.proxetta.impl.ProxyProxettaBuilder)1 WrapperProxetta (jodd.proxetta.impl.WrapperProxetta)1 WrapperProxettaBuilder (jodd.proxetta.impl.WrapperProxettaBuilder)1 AllRealMethodsPointcut (jodd.proxetta.pointcuts.AllRealMethodsPointcut)1 AllTopMethodsPointcut (jodd.proxetta.pointcuts.AllTopMethodsPointcut)1