parent
2434470457
commit
72307bbb20
|
@ -83,7 +83,7 @@ public abstract class AsyncExecutionAspectSupport implements BeanFactoryAware {
|
||||||
private BeanFactory beanFactory;
|
private BeanFactory beanFactory;
|
||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
private StringValueResolver stringValueResolver;
|
private StringValueResolver embeddedValueResolver;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create a new instance with a default {@link AsyncUncaughtExceptionHandler}.
|
* Create a new instance with a default {@link AsyncUncaughtExceptionHandler}.
|
||||||
|
@ -155,7 +155,7 @@ public abstract class AsyncExecutionAspectSupport implements BeanFactoryAware {
|
||||||
public void setBeanFactory(BeanFactory beanFactory) {
|
public void setBeanFactory(BeanFactory beanFactory) {
|
||||||
this.beanFactory = beanFactory;
|
this.beanFactory = beanFactory;
|
||||||
if (beanFactory instanceof ConfigurableBeanFactory configurableBeanFactory) {
|
if (beanFactory instanceof ConfigurableBeanFactory configurableBeanFactory) {
|
||||||
this.stringValueResolver = new EmbeddedValueResolver(configurableBeanFactory);
|
this.embeddedValueResolver = new EmbeddedValueResolver(configurableBeanFactory);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -170,8 +170,8 @@ public abstract class AsyncExecutionAspectSupport implements BeanFactoryAware {
|
||||||
if (executor == null) {
|
if (executor == null) {
|
||||||
Executor targetExecutor;
|
Executor targetExecutor;
|
||||||
String qualifier = getExecutorQualifier(method);
|
String qualifier = getExecutorQualifier(method);
|
||||||
if (this.stringValueResolver != null && StringUtils.hasLength(qualifier)) {
|
if (this.embeddedValueResolver != null && StringUtils.hasLength(qualifier)) {
|
||||||
qualifier = this.stringValueResolver.resolveStringValue(qualifier);
|
qualifier = this.embeddedValueResolver.resolveStringValue(qualifier);
|
||||||
}
|
}
|
||||||
if (StringUtils.hasLength(qualifier)) {
|
if (StringUtils.hasLength(qualifier)) {
|
||||||
targetExecutor = findQualifiedExecutor(this.beanFactory, qualifier);
|
targetExecutor = findQualifiedExecutor(this.beanFactory, qualifier);
|
||||||
|
|
|
@ -147,7 +147,7 @@ public class EnableAsyncTests {
|
||||||
Future<Thread> workerThread2 = asyncBean.myWork2();
|
Future<Thread> workerThread2 = asyncBean.myWork2();
|
||||||
assertThat(workerThread2.get().getName()).startsWith("myExecutor2-");
|
assertThat(workerThread2.get().getName()).startsWith("myExecutor2-");
|
||||||
|
|
||||||
Future<Thread> workerThread3 = asyncBean.defaultExecutor();
|
Future<Thread> workerThread3 = asyncBean.fallBackToDefaultExecutor();
|
||||||
assertThat(workerThread3.get().getName()).startsWith("SimpleAsyncTaskExecutor");
|
assertThat(workerThread3.get().getName()).startsWith("SimpleAsyncTaskExecutor");
|
||||||
}
|
}
|
||||||
finally {
|
finally {
|
||||||
|
@ -386,8 +386,8 @@ public class EnableAsyncTests {
|
||||||
return new AsyncResult<>(Thread.currentThread());
|
return new AsyncResult<>(Thread.currentThread());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Async("${my.app.targetExecutor:}")
|
@Async("${my.app.myExecutor.UNDEFINED:}")
|
||||||
public Future<Thread> defaultExecutor() {
|
public Future<Thread> fallBackToDefaultExecutor() {
|
||||||
return new AsyncResult<>(Thread.currentThread());
|
return new AsyncResult<>(Thread.currentThread());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue