Skip to content

Commit ef1f0ef

Browse files
committed
Memoize at point of creation, not point of use
1 parent 536fd4f commit ef1f0ef

File tree

1 file changed

+3
-7
lines changed
  • libs/entitlement/src/main/java/org/elasticsearch/entitlement/runtime/policy

1 file changed

+3
-7
lines changed

libs/entitlement/src/main/java/org/elasticsearch/entitlement/runtime/policy/PolicyManager.java

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ record ModuleEntitlements(
8080
String componentName,
8181
Map<Class<? extends Entitlement>, List<Entitlement>> entitlementsByType,
8282
FileAccessTree fileAccess,
83-
String loggerName
83+
Logger logger
8484
) {
8585

8686
ModuleEntitlements {
@@ -98,10 +98,6 @@ public <E extends Entitlement> Stream<E> getEntitlements(Class<E> entitlementCla
9898
}
9999
return entitlements.stream().map(entitlementClass::cast);
100100
}
101-
102-
public Logger logger() {
103-
return MODULE_LOGGERS.computeIfAbsent(loggerName, LogManager::getLogger);
104-
}
105101
}
106102

107103
private static final ConcurrentHashMap<String, Logger> MODULE_LOGGERS = new ConcurrentHashMap<>();
@@ -579,9 +575,9 @@ private void notEntitled(String message, Class<?> callerClass, ModuleEntitlement
579575
throw exception;
580576
}
581577

582-
private static String getLogger(String componentName, String moduleName) {
578+
private static Logger getLogger(String componentName, String moduleName) {
583579
var loggerSuffix = "." + componentName + "." + ((moduleName == null) ? ALL_UNNAMED : moduleName);
584-
return PolicyManager.class.getName() + loggerSuffix;
580+
return MODULE_LOGGERS.computeIfAbsent(PolicyManager.class.getName() + loggerSuffix, LogManager::getLogger);
585581
}
586582

587583
public void checkManageThreadsEntitlement(Class<?> callerClass) {

0 commit comments

Comments
 (0)