public void registerRules(IGetRuleExecutions getRuleExecutions, Collection<BatchTransformationRule<?, ?>> rules) { Thread currentThread = Thread.currentThread(); HashMap<BatchTransformationRule<?, ?>, IdProvider> ruleMap = new HashMap<>(); for (BatchTransformationRule<?, ?> rule : rules) { IdProvider idProvider = new IdProvider(getRuleExecutions, rule); ruleMap.put(rule, idProvider); } idProviders.put(currentThread, ruleMap); }