/** * Get the controller context. * * @param name the context name * @return context or null if not found */ protected ControllerContext getInstalledContext(String name) { return controller.getInstalledContext(name); }
public ControllerContext getInstalledContext(Object name) { return controller.getInstalledContext(name); }
public ControllerContext getInstalledContext(Object name) { return controller.getInstalledContext(name); }
/** * Get bean validator bridge. * * @param context the owner context * @return bean validator bridge instance if exists, null otherwise */ static BeanValidatorBridge getBeanValidatorBridge(KernelControllerContext context) { Controller controller = context.getController(); if (controller == null) return null; ControllerContext bridge = controller.getInstalledContext(BeanValidatorBridge.class); return bridge != null ? BeanValidatorBridge.class.cast(bridge.getTarget()) : null; } }
@SuppressWarnings({"unchecked", "deprecation"}) public Object getValue(TypeInfo info, ClassLoader cl) throws Throwable { if (context == null) throw new IllegalStateException("Context has not been set: " + this); Controller controller = context.getController(); ControllerContext lookup = controller.getInstalledContext(name); if (lookup == null || lookup.getTarget() == null) { // possible call for classloader if (info == null && classLoader != null && classLoader.getClassLoader() == this) { return cl; } throw new IllegalArgumentException("Bean not yet installed: " + name); } Object target = lookup.getTarget(); // TODO - add progression here as well? if (info != null && info.getType().isAssignableFrom(target.getClass()) == false) { throw new ClassCastException(target + " is not a " + info); } return target; }
/** * Get controller context. * * @param controller the controller * @return controller context */ protected ControllerContext getControllerContext(Controller controller) { ControllerState state = getDependentState(); if (state == null) { return controller.getInstalledContext(getIDependOn()); } else { return controller.getContext(getIDependOn(), state); } } }
public boolean resolve(Controller controller) { Object name = getDemandObject(); ControllerContext context; if (targetState == null) context = controller.getInstalledContext(name); else context = controller.getContext(name, targetState); if (context != null) { setIDependOn(context.getName()); addDependsOnMe(controller, context); setResolved(true); } else { setResolved(false); } return isResolved(); }