Search in sources :

Example 1 with StaticValueDispatcher

use of org.linkki.core.binding.dispatcher.StaticValueDispatcher in project linkki by linkki-framework.

the class PropertyDispatcherFactory method createDispatcherChain.

public PropertyDispatcher createDispatcherChain(Object pmo, BindingDescriptor bindingDescriptor, PropertyBehaviorProvider behaviorProvider) {
    requireNonNull(pmo, "pmo must not be null");
    requireNonNull(bindingDescriptor, "bindingDescriptor must not be null");
    requireNonNull(behaviorProvider, "behaviorProvider must not be null");
    // @formatter:off
    String modelPropertyName = bindingDescriptor.getModelPropertyName();
    String modelObjectName = bindingDescriptor.getModelObjectName();
    String pmoPropertyName = bindingDescriptor.getPmoPropertyName();
    ExceptionPropertyDispatcher exceptionDispatcher = newExceptionDispatcher(pmo, modelObjectName, pmoPropertyName);
    ReflectionPropertyDispatcher reflectionDispatcher = newReflectionDispatcher(pmo, pmoPropertyName, modelObjectName, modelPropertyName, exceptionDispatcher);
    StaticValueDispatcher bindingAnnotationDispatcher = new StaticValueDispatcher(reflectionDispatcher);
    PropertyDispatcher customDispatchers = createCustomDispatchers(pmo, bindingDescriptor, bindingAnnotationDispatcher);
    return new BehaviorDependentDispatcher(customDispatchers, behaviorProvider);
// @formatter:on
}
Also used : BehaviorDependentDispatcher(org.linkki.core.binding.dispatcher.BehaviorDependentDispatcher) ReflectionPropertyDispatcher(org.linkki.core.binding.dispatcher.ReflectionPropertyDispatcher) ExceptionPropertyDispatcher(org.linkki.core.binding.dispatcher.ExceptionPropertyDispatcher) ReflectionPropertyDispatcher(org.linkki.core.binding.dispatcher.ReflectionPropertyDispatcher) PropertyDispatcher(org.linkki.core.binding.dispatcher.PropertyDispatcher) ExceptionPropertyDispatcher(org.linkki.core.binding.dispatcher.ExceptionPropertyDispatcher) StaticValueDispatcher(org.linkki.core.binding.dispatcher.StaticValueDispatcher)

Aggregations

BehaviorDependentDispatcher (org.linkki.core.binding.dispatcher.BehaviorDependentDispatcher)1 ExceptionPropertyDispatcher (org.linkki.core.binding.dispatcher.ExceptionPropertyDispatcher)1 PropertyDispatcher (org.linkki.core.binding.dispatcher.PropertyDispatcher)1 ReflectionPropertyDispatcher (org.linkki.core.binding.dispatcher.ReflectionPropertyDispatcher)1 StaticValueDispatcher (org.linkki.core.binding.dispatcher.StaticValueDispatcher)1