Browse Source

Merge branch '5.2.x'

pull/25044/head
Sam Brannen 6 years ago
parent
commit
3f30dcae80
  1. 7
      spring-context/src/main/java/org/springframework/context/support/SimpleThreadScope.java
  2. 7
      spring-tx/src/main/java/org/springframework/transaction/support/SimpleTransactionScope.java

7
spring-context/src/main/java/org/springframework/context/support/SimpleThreadScope.java

@ -67,12 +67,7 @@ public class SimpleThreadScope implements Scope {
@Override @Override
public Object get(String name, ObjectFactory<?> objectFactory) { public Object get(String name, ObjectFactory<?> objectFactory) {
Map<String, Object> scope = this.threadScope.get(); Map<String, Object> scope = this.threadScope.get();
Object scopedObject = scope.get(name); return scope.computeIfAbsent(name, k -> objectFactory.getObject());
if (scopedObject == null) {
scopedObject = objectFactory.getObject();
scope.put(name, scopedObject);
}
return scopedObject;
} }
@Override @Override

7
spring-tx/src/main/java/org/springframework/transaction/support/SimpleTransactionScope.java

@ -50,12 +50,7 @@ public class SimpleTransactionScope implements Scope {
TransactionSynchronizationManager.registerSynchronization(new CleanupSynchronization(scopedObjects)); TransactionSynchronizationManager.registerSynchronization(new CleanupSynchronization(scopedObjects));
TransactionSynchronizationManager.bindResource(this, scopedObjects); TransactionSynchronizationManager.bindResource(this, scopedObjects);
} }
Object scopedObject = scopedObjects.scopedInstances.get(name); return scopedObjects.scopedInstances.computeIfAbsent(name, k -> objectFactory.getObject());
if (scopedObject == null) {
scopedObject = objectFactory.getObject();
scopedObjects.scopedInstances.put(name, scopedObject);
}
return scopedObject;
} }
@Override @Override

Loading…
Cancel
Save