private void buildViews(InjectorAmp inject) { for (Binding<ViewRender> binding : inject.bindings(ViewRender.class)) { try { ViewRender<?> view = (ViewRender<?>) binding.provider().get(); Key<ViewRender<?>> key = (Key) binding.key(); TypeRef typeRef = TypeRef.of(key.type()); TypeRef renderRef = typeRef.to(ViewRender.class).param(0); Class<?> type = renderRef != null ? renderRef.rawClass() : Object.class; _views.add(new ViewRefRender(view, type, binding.priority())); } catch (Exception e) { log.log(Level.FINE, e.toString(), e); } } for (Binding<ViewResolver> binding : inject.bindings(ViewResolver.class)) { try { ViewResolver<?> view = (ViewResolver<?>) binding.provider().get(); Key<ViewResolver<?>> key = (Key) binding.key(); TypeRef typeRef = TypeRef.of(key.type()); TypeRef resolverRef = typeRef.to(ViewResolver.class).param(0); Class<?> type = resolverRef != null ? resolverRef.rawClass() : Object.class; _views.add(new ViewRefResolver(view, type, binding.priority())); } catch (Exception e) { log.log(Level.FINE, e.toString(), e); } } }
private void init() { for (ConvertFrom<?> convertManager : ConvertManagerImpl.convertManagers()) { add(convertManager); } for (Binding<ConvertFrom<?>> binding : _injector.bindings(new Key<ConvertFrom<?>>() {})) { add(binding.provider().get()); } for (Binding<Convert<?,?>> binding : _injector.bindings(new Key<Convert<?,?>>() {})) { TypeRef convertRef = TypeRef.of(binding.key().type()) .to(Convert.class); Class<?> sourceType = convertRef.param(0).rawClass(); Class<?> targetType = convertRef.param(1).rawClass(); add(sourceType, targetType, (Convert) binding.provider().get()); } }