JerseyProxyResolver { public boolean isPrixiable(Injectee injectee) { return !ignoredClass(injectee.getRequiredType()) && isPrixiable(injectee.getParentClassScope()); }  boolean isPrixiable(Injectee injectee); boolean isPrixiable(Class<? extends Annotation> scopeAnnotation); Object proxy(Injectee injectee, InjectionResolver resolver); Object noCachedProxy(Injectee injectee, Supplier<Object> supplier);  }
@Test public void testSignletonIsProxiable() { InjecteeImpl injectee = new InjecteeImpl(); injectee.setInjecteeClass(TestSingleton.class); injectee.setParentClassScope(Singleton.class); JerseyProxyResolver resolver = new JerseyProxyResolver(); assertTrue(resolver.isPrixiable(injectee)); }
@Test public void testApplicationScopeIsProxiable() { InjecteeImpl injectee = new InjecteeImpl(); injectee.setInjecteeClass(TestApplicationScope.class); injectee.setParentClassScope(ApplicationScoped.class); JerseyProxyResolver resolver = new JerseyProxyResolver(); assertTrue(resolver.isPrixiable(injectee)); }
@Test public void testRequestScopeFromNonAnnotatedIsNotProxiable() { InjecteeImpl injectee = new InjecteeImpl(); injectee.setInjecteeClass(TestNonAnnotatedRequestScope.class); injectee.setParentClassScope(RequestScoped.class); JerseyProxyResolver resolver = new JerseyProxyResolver(); assertFalse(resolver.isPrixiable(injectee)); }
@Test public void testRequestScopeIsNotProxiable() { InjecteeImpl injectee = new InjecteeImpl(); injectee.setInjecteeClass(TestRequestScope.class); injectee.setParentClassScope(RequestScoped.class); JerseyProxyResolver resolver = new JerseyProxyResolver(); assertFalse(resolver.isPrixiable(injectee)); }
@Test public void testApplicationIsNotProxiable() { InjecteeImpl injectee = new InjecteeImpl(); injectee.setRequiredType(Application.class); JerseyProxyResolver resolver = new JerseyProxyResolver(); assertFalse(resolver.isPrixiable(injectee)); }