@Override public void copyConfigurationFrom(ConfigurableBeanFactory otherFactory) { Assert.notNull(otherFactory, "BeanFactory must not be null"); setBeanClassLoader(otherFactory.getBeanClassLoader()); setCacheBeanMetadata(otherFactory.isCacheBeanMetadata()); setBeanExpressionResolver(otherFactory.getBeanExpressionResolver()); setConversionService(otherFactory.getConversionService()); if (otherFactory instanceof AbstractBeanFactory) { AbstractBeanFactory otherAbstractFactory = (AbstractBeanFactory) otherFactory; this.propertyEditorRegistrars.addAll(otherAbstractFactory.propertyEditorRegistrars); this.customEditors.putAll(otherAbstractFactory.customEditors); this.typeConverter = otherAbstractFactory.typeConverter; this.beanPostProcessors.addAll(otherAbstractFactory.beanPostProcessors); this.hasInstantiationAwareBeanPostProcessors = this.hasInstantiationAwareBeanPostProcessors || otherAbstractFactory.hasInstantiationAwareBeanPostProcessors; this.hasDestructionAwareBeanPostProcessors = this.hasDestructionAwareBeanPostProcessors || otherAbstractFactory.hasDestructionAwareBeanPostProcessors; this.scopes.putAll(otherAbstractFactory.scopes); this.securityContextProvider = otherAbstractFactory.securityContextProvider; } else { setTypeConverter(otherFactory.getTypeConverter()); String[] otherScopeNames = otherFactory.getRegisteredScopeNames(); for (String scopeName : otherScopeNames) { this.scopes.put(scopeName, otherFactory.getRegisteredScope(scopeName)); } } }
public void setBeanFactory(BeanFactory beanFactory) throws BeansException { // TODO: This code can never happen... if (converter == null && beanFactory instanceof ConfigurableBeanFactory) { ConfigurableBeanFactory cFB = (ConfigurableBeanFactory) beanFactory; ConversionService conversionService = cFB.getConversionService(); converter = (conversionService != null ? new Converter(conversionService) : new Converter(cFB.getTypeConverter())); } }
sec.setBeanResolver(new BeanFactoryResolver(evalContext.getBeanFactory())); sec.setTypeLocator(new StandardTypeLocator(evalContext.getBeanFactory().getBeanClassLoader())); ConversionService conversionService = evalContext.getBeanFactory().getConversionService(); if (conversionService != null) { sec.setTypeConverter(new StandardTypeConverter(conversionService));
@Override public void copyConfigurationFrom(ConfigurableBeanFactory otherFactory) { Assert.notNull(otherFactory, "BeanFactory must not be null"); setBeanClassLoader(otherFactory.getBeanClassLoader()); setCacheBeanMetadata(otherFactory.isCacheBeanMetadata()); setBeanExpressionResolver(otherFactory.getBeanExpressionResolver()); setConversionService(otherFactory.getConversionService()); if (otherFactory instanceof AbstractBeanFactory) { AbstractBeanFactory otherAbstractFactory = (AbstractBeanFactory) otherFactory; this.propertyEditorRegistrars.addAll(otherAbstractFactory.propertyEditorRegistrars); this.customEditors.putAll(otherAbstractFactory.customEditors); this.typeConverter = otherAbstractFactory.typeConverter; this.beanPostProcessors.addAll(otherAbstractFactory.beanPostProcessors); this.hasInstantiationAwareBeanPostProcessors = this.hasInstantiationAwareBeanPostProcessors || otherAbstractFactory.hasInstantiationAwareBeanPostProcessors; this.hasDestructionAwareBeanPostProcessors = this.hasDestructionAwareBeanPostProcessors || otherAbstractFactory.hasDestructionAwareBeanPostProcessors; this.scopes.putAll(otherAbstractFactory.scopes); this.securityContextProvider = otherAbstractFactory.securityContextProvider; } else { setTypeConverter(otherFactory.getTypeConverter()); String[] otherScopeNames = otherFactory.getRegisteredScopeNames(); for (String scopeName : otherScopeNames) { this.scopes.put(scopeName, otherFactory.getRegisteredScope(scopeName)); } } }
sec.setBeanResolver(new BeanFactoryResolver(evalContext.getBeanFactory())); sec.setTypeLocator(new StandardTypeLocator(evalContext.getBeanFactory().getBeanClassLoader())); ConversionService conversionService = evalContext.getBeanFactory().getConversionService(); if (conversionService != null) { sec.setTypeConverter(new StandardTypeConverter(conversionService));
@Override public void setBeanFactory(final BeanFactory beanFactory) { this.beanFactory = beanFactory; if (beanFactory instanceof ConfigurableBeanFactory) { this.conversionService = ((ConfigurableBeanFactory) beanFactory).getConversionService(); } }
/** * Resolves the configured {@link ConversionService} from the {@link BeanFactory}. * * @return an {@link Optional optionally} configured {@link ConversionService}. * @see org.springframework.core.convert.ConversionService * @see java.util.Optional * @see #getBeanFactory() */ protected Optional<ConversionService> resolveConversionService() { return Optional.of(getBeanFactory()) .filter(it -> it instanceof ConfigurableBeanFactory) .map(it -> ((ConfigurableBeanFactory) it).getConversionService()); }
/** * Resolves the configured {@link ConversionService} from the {@link BeanFactory}. * * @return an {@link Optional optionally} configured {@link ConversionService}. * @see org.springframework.core.convert.ConversionService * @see java.util.Optional * @see #getBeanFactory() */ protected Optional<ConversionService> resolveConversionService() { return Optional.of(getBeanFactory()) .filter(it -> it instanceof ConfigurableBeanFactory) .map(it -> ((ConfigurableBeanFactory) it).getConversionService()); }
private void configureTypeConverter(EvaluationContext evaluationContext, BeanFactory beanFactory) { Optional.ofNullable(evaluationContext) .filter(evalContext -> evalContext instanceof StandardEvaluationContext) .ifPresent(evalContext -> Optional.ofNullable(beanFactory) .filter(it -> it instanceof ConfigurableBeanFactory) .map(it -> ((ConfigurableBeanFactory) it).getConversionService()) .ifPresent(conversionService -> ((StandardEvaluationContext) evalContext).setTypeConverter( new StandardTypeConverter(conversionService))) ); }
private void configureTypeConverter(EvaluationContext evaluationContext, BeanFactory beanFactory) { Optional.ofNullable(evaluationContext) .filter(evalContext -> evalContext instanceof StandardEvaluationContext) .ifPresent(evalContext -> Optional.ofNullable(beanFactory) .filter(it -> it instanceof ConfigurableBeanFactory) .map(it -> ((ConfigurableBeanFactory) it).getConversionService()) .ifPresent(conversionService -> ((StandardEvaluationContext) evalContext).setTypeConverter( new StandardTypeConverter(conversionService))) ); }
public void setBeanFactory(BeanFactory beanFactory) throws BeansException { // TODO: This code can never happen... if (converter == null && beanFactory instanceof ConfigurableBeanFactory) { ConfigurableBeanFactory cFB = (ConfigurableBeanFactory) beanFactory; ConversionService conversionService = cFB.getConversionService(); converter = (conversionService != null ? new Converter(conversionService) : new Converter(cFB.getTypeConverter())); } }
private TypeConverter getConverter() { if (typeConverter == null) { SimpleTypeConverter simpleConverter = new SimpleTypeConverter(); beanFactory.copyRegisteredEditorsTo(simpleConverter); simpleConverter.setConversionService(beanFactory.getConversionService()); typeConverter = simpleConverter; } return typeConverter; } }
public void setBeanFactory(BeanFactory beanFactory) throws BeansException { // TODO: This code can never happen... if (converter == null && beanFactory instanceof ConfigurableBeanFactory) { ConfigurableBeanFactory cFB = (ConfigurableBeanFactory) beanFactory; ConversionService conversionService = cFB.getConversionService(); converter = (conversionService != null ? new Converter(conversionService) : new Converter(cFB.getTypeConverter())); } }
/** * {@inheritDoc} */ @Override public void setBeanFactory(BeanFactory beanFactory) throws BeansException { super.setBeanFactory(beanFactory); this.evaluationContext.setBeanResolver(new BeanFactoryResolver(beanFactory)); if (beanFactory instanceof ConfigurableBeanFactory) { ConfigurableBeanFactory configurableBeanFactory = (ConfigurableBeanFactory) beanFactory; this.evaluationContext.setTypeLocator(new StandardTypeLocator(configurableBeanFactory.getBeanClassLoader())); Optional.ofNullable(configurableBeanFactory.getConversionService()) .ifPresent(conversionService -> this.evaluationContext.setTypeConverter(new StandardTypeConverter(conversionService))); } }
/** * {@inheritDoc} */ @Override public void setBeanFactory(BeanFactory beanFactory) throws BeansException { super.setBeanFactory(beanFactory); this.evaluationContext.setBeanResolver(new BeanFactoryResolver(beanFactory)); if (beanFactory instanceof ConfigurableBeanFactory) { ConfigurableBeanFactory configurableBeanFactory = (ConfigurableBeanFactory) beanFactory; this.evaluationContext.setTypeLocator(new StandardTypeLocator(configurableBeanFactory.getBeanClassLoader())); Optional.ofNullable(configurableBeanFactory.getConversionService()) .ifPresent(conversionService -> this.evaluationContext.setTypeConverter(new StandardTypeConverter(conversionService))); } }
sec.setBeanResolver(new BeanFactoryResolver(evalContext.getBeanFactory())); sec.setTypeLocator(new StandardTypeLocator(evalContext.getBeanFactory().getBeanClassLoader())); ConversionService conversionService = evalContext.getBeanFactory().getConversionService(); if (conversionService != null) { sec.setTypeConverter(new StandardTypeConverter(conversionService));
/** * Initializes the Spring Expression Language (SpEL) {@link EvaluationContext} used to parse property placeholder * and SpEL expressions in the Expiration annotation attribute values. */ protected void initEvaluationContext() { BeanFactory beanFactory = getBeanFactory(); if (EVALUATION_CONTEXT_REFERENCE.compareAndSet(null, newEvaluationContext())) { StandardEvaluationContext evaluationContext = EVALUATION_CONTEXT_REFERENCE.get(); evaluationContext.addPropertyAccessor(new BeanFactoryAccessor()); evaluationContext.addPropertyAccessor(new EnvironmentAccessor()); evaluationContext.addPropertyAccessor(new MapAccessor()); if (beanFactory instanceof ConfigurableBeanFactory) { ConfigurableBeanFactory configurableBeanFactory = (ConfigurableBeanFactory) beanFactory; ConversionService conversionService = configurableBeanFactory.getConversionService(); if (conversionService != null) { evaluationContext.setTypeConverter(new StandardTypeConverter(conversionService)); } evaluationContext.setTypeLocator(new StandardTypeLocator(configurableBeanFactory.getBeanClassLoader())); } } EVALUATION_CONTEXT_REFERENCE.get().setBeanResolver(new BeanFactoryResolver(beanFactory)); }
/** * Initializes the Spring Expression Language (SpEL) {@link EvaluationContext} used to parse property placeholder * and SpEL expressions in the Expiration annotation attribute values. */ protected void initEvaluationContext() { BeanFactory beanFactory = getBeanFactory(); if (EVALUATION_CONTEXT_REFERENCE.compareAndSet(null, newEvaluationContext())) { StandardEvaluationContext evaluationContext = EVALUATION_CONTEXT_REFERENCE.get(); evaluationContext.addPropertyAccessor(new BeanFactoryAccessor()); evaluationContext.addPropertyAccessor(new EnvironmentAccessor()); evaluationContext.addPropertyAccessor(new MapAccessor()); if (beanFactory instanceof ConfigurableBeanFactory) { ConfigurableBeanFactory configurableBeanFactory = (ConfigurableBeanFactory) beanFactory; ConversionService conversionService = configurableBeanFactory.getConversionService(); if (conversionService != null) { evaluationContext.setTypeConverter(new StandardTypeConverter(conversionService)); } evaluationContext.setTypeLocator(new StandardTypeLocator(configurableBeanFactory.getBeanClassLoader())); } } EVALUATION_CONTEXT_REFERENCE.get().setBeanResolver(new BeanFactoryResolver(beanFactory)); }
@PostConstruct public void init() { if (evalContext == null) { evalContext = new StandardEvaluationContext(); } if (evalContext instanceof StandardEvaluationContext) { StandardEvaluationContext standardEvalContext = (StandardEvaluationContext)evalContext; // PropertyAccessor used when the model is a BeanFactory. standardEvalContext.addPropertyAccessor(new BeanFactoryAccessor()); if (beanFactory != null) { if (standardEvalContext.getBeanResolver() == null) { standardEvalContext.setBeanResolver(new BeanFactoryResolver(beanFactory)); } if (standardEvalContext.getTypeLocator() == null) { standardEvalContext.setTypeLocator(new StandardTypeLocator(beanFactory.getBeanClassLoader())); } if (standardEvalContext.getTypeConverter() == null) { ConversionService conversionService = beanFactory.getConversionService(); if (conversionService != null) { standardEvalContext.setTypeConverter(new StandardTypeConverter(conversionService)); } } } } }
sec.setBeanResolver(new BeanFactoryResolver(beanEvaluationContext.getBeanFactory())); sec.setTypeLocator(new StandardTypeLocator(beanEvaluationContext.getBeanFactory().getBeanClassLoader())); ConversionService conversionService = beanEvaluationContext.getBeanFactory().getConversionService(); if (conversionService != null) { sec.setTypeConverter(new StandardTypeConverter(conversionService));