本文整理汇总了Java中org.springframework.beans.factory.config.BeanDefinition.setDependsOn方法的典型用法代码示例。如果您正苦于以下问题:Java BeanDefinition.setDependsOn方法的具体用法?Java BeanDefinition.setDependsOn怎么用?Java BeanDefinition.setDependsOn使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.springframework.beans.factory.config.BeanDefinition
的用法示例。
在下文中一共展示了BeanDefinition.setDependsOn方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: addSyntheticDependsOn
import org.springframework.beans.factory.config.BeanDefinition; //导入方法依赖的package包/类
private void addSyntheticDependsOn(BeanDefinition definition, String beanName) {
if (StringUtils.hasText(beanName)) {
String[] dependsOn = definition.getDependsOn();
if (dependsOn != null && dependsOn.length > 0) {
for (String dependOn : dependsOn) {
if (beanName.equals(dependOn)) {
return;
}
}
}
// add depends on
dependsOn = (String[]) ObjectUtils.addObjectToArray(dependsOn, beanName);
definition.setDependsOn(dependsOn);
Collection<String> markers = (Collection<String>) definition.getAttribute(SYNTHETIC_DEPENDS_ON);
if (markers == null) {
markers = new ArrayList<String>(2);
definition.setAttribute(SYNTHETIC_DEPENDS_ON, markers);
}
markers.add(beanName);
}
}
示例2: postProcessBeanFactory
import org.springframework.beans.factory.config.BeanDefinition; //导入方法依赖的package包/类
@Override
public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException {
String[] autoInitBeanNames = beanFactory.getBeanNamesForType(AbstractCacheAutoInit.class, false, false);
if (autoInitBeanNames != null) {
BeanDefinition bd = beanFactory.getBeanDefinition(JetCacheAutoConfiguration.GLOBAL_CACHE_CONFIG_NAME);
String[] dependsOn = bd.getDependsOn();
if (dependsOn == null) {
dependsOn = new String[0];
}
int oldLen = dependsOn.length;
dependsOn = Arrays.copyOf(dependsOn, dependsOn.length + autoInitBeanNames.length);
System.arraycopy(autoInitBeanNames,0, dependsOn, oldLen, autoInitBeanNames.length);
bd.setDependsOn(dependsOn);
}
}