GH-706 Fix application context caching for JDK11 class loaders
Resolves #706
This commit is contained in:
@@ -25,6 +25,7 @@ import java.util.List;
|
|||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Map.Entry;
|
import java.util.Map.Entry;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
|
import java.util.function.Function;
|
||||||
|
|
||||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||||
import com.microsoft.azure.functions.ExecutionContext;
|
import com.microsoft.azure.functions.ExecutionContext;
|
||||||
@@ -77,8 +78,6 @@ public class FunctionInvoker<I, O> {
|
|||||||
|
|
||||||
private static ConfigurableApplicationContext APPLICATION_CONTEXT;
|
private static ConfigurableApplicationContext APPLICATION_CONTEXT;
|
||||||
|
|
||||||
private final static Object LOCK = new Object();
|
|
||||||
|
|
||||||
private static JsonMapper OBJECT_MAPPER;
|
private static JsonMapper OBJECT_MAPPER;
|
||||||
|
|
||||||
public FunctionInvoker(Class<?> configurationClass) {
|
public FunctionInvoker(Class<?> configurationClass) {
|
||||||
@@ -251,7 +250,7 @@ public class FunctionInvoker<I, O> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private static void initialize(Class<?> configurationClass) {
|
private static void initialize(Class<?> configurationClass) {
|
||||||
synchronized (LOCK) {
|
synchronized (FunctionInvoker.class.getName()) {
|
||||||
if (FUNCTION_CATALOG == null) {
|
if (FUNCTION_CATALOG == null) {
|
||||||
logger.info("Initializing: " + configurationClass);
|
logger.info("Initializing: " + configurationClass);
|
||||||
SpringApplication builder = springApplication(configurationClass);
|
SpringApplication builder = springApplication(configurationClass);
|
||||||
|
|||||||
Reference in New Issue
Block a user