docs: @SuppressWarnings("checkstyle:methodlength")
      public void registerConfigLocally(IdentifiedDataSerializable newConfig,
                                        ConfigCheckMode configCheckMode) {
          IdentifiedDataSerializable currentConfig = null;
          if (newConfig instanceof MultiMapConfig) {
              MultiMapConfig multiMapConfig = (MultiMapConfig) newConfig;
              currentConfig = multiMapConfigs.putIfAbsent(multiMapConfig.getName(), multiMapConfig);
          } else if (newConfig instanceof MapConfig) {
              MapConfig newMapConfig = (MapConfig) newConfig;
              currentConfig = mapConfigs.putIfAbsent(newMapConfig.getName(), newMapConfig);
              if (currentConfig == null) {
                  listener.onConfigRegistered(newMapConfig);
              }
          } else if (newConfig instanceof CardinalityEstimatorConfig) {
              CardinalityEstimatorConfig cardinalityEstimatorConfig = (CardinalityEstimatorConfig) newConfig;
              currentConfig = cardinalityEstimatorConfigs.putIfAbsent(cardinalityEstimatorConfig.getName(),
                      cardinalityEstimatorConfig);
          } else if (newConfig instanceof RingbufferConfig) {
              RingbufferConfig ringbufferConfig = (RingbufferConfig) newConfig;
              currentConfig = ringbufferConfigs.putIfAbsent(ringbufferConfig.getName(), ringbufferConfig);
          } else if (newConfig instanceof LockConfig) {
              LockConfig lockConfig = (LockConfig) newConfig;
              currentConfig = lockConfigs.putIfAbsent(lockConfig.getName(), lockConfig);
          } else if (newConfig instanceof AtomicLongConfig) {
              AtomicLongConfig atomicLongConfig = (AtomicLongConfig) newConfig;
              currentConfig = atomicLongConfigs.putIfAbsent(atomicLongConfig.getName(), atomicLongConfig);
          } else if (newConfig instanceof AtomicReferenceConfig) {
              AtomicReferenceConfig atomicReferenceConfig = (AtomicReferenceConfig) newConfig;
              currentConfig = atomicReferenceConfigs.putIfAbsent(atomicReferenceConfig.getName(), atomicReferenceConfig);
          } else if (newConfig instanceof CountDownLatchConfig) {
              CountDownLatchConfig countDownLatchConfig = (CountDownLatchConfig) newConfig;
              currentConfig = countDownLatchConfigs.putIfAbsent(countDownLatchConfig.getName(), countDownLatchConfig);
          } else if (newConfig instanceof ListConfig) {
              ListConfig listConfig = (ListConfig) newConfig;
              currentConfig = listConfigs.putIfAbsent(listConfig.getName(), listConfig);
          } else if (newConfig instanceof SetConfig) {
              SetConfig setConfig = (SetConfig) newConfig;
              currentConfig = setConfigs.putIfAbsent(setConfig.getName(), setConfig);
          } else if (newConfig instanceof ReplicatedMapConfig) {
              ReplicatedMapConfig replicatedMapConfig = (ReplicatedMapConfig) newConfig;
              currentConfig = replicatedMapConfigs.putIfAbsent(replicatedMapConfig.getName(), replicatedMapConfig);
          } else if (newConfig instanceof TopicConfig) {
              TopicConfig topicConfig = (TopicConfig) newConfig;
              currentConfig = topicConfigs.putIfAbsent(topicConfig.getName(), topicConfig);
          } else if (newConfig instanceof ExecutorConfig) {
              ExecutorConfig executorConfig = (ExecutorConfig) newConfig;
              currentConfig = executorConfigs.putIfAbsent(executorConfig.getName(), executorConfig);
          } else if (newConfig instanceof DurableExecutorConfig) {
              DurableExecutorConfig durableExecutorConfig = (DurableExecutorConfig) newConfig;
              currentConfig = durableExecutorConfigs.putIfAbsent(durableExecutorConfig.getName(), durableExecutorConfig);
          } else if (newConfig instanceof ScheduledExecutorConfig) {
              ScheduledExecutorConfig scheduledExecutorConfig = (ScheduledExecutorConfig) newConfig;
              currentConfig = scheduledExecutorConfigs.putIfAbsent(scheduledExecutorConfig.getName(), scheduledExecutorConfig);
          } else if (newConfig instanceof QueueConfig) {
              QueueConfig queueConfig = (QueueConfig) newConfig;
              currentConfig = queueConfigs.putIfAbsent(queueConfig.getName(), queueConfig);
          } else if (newConfig instanceof ReliableTopicConfig) {
              ReliableTopicConfig reliableTopicConfig = (ReliableTopicConfig) newConfig;
              currentConfig = reliableTopicConfigs.putIfAbsent(reliableTopicConfig.getName(), reliableTopicConfig);
          } else if (newConfig instanceof CacheSimpleConfig) {
              CacheSimpleConfig cacheSimpleConfig = (CacheSimpleConfig) newConfig;
              currentConfig = cacheSimpleConfigs.putIfAbsent(cacheSimpleConfig.getName(), cacheSimpleConfig);
              if (currentConfig == null) {
                  listener.onConfigRegistered(cacheSimpleConfig);
              }
          } else if (newConfig instanceof EventJournalConfig) {
              EventJournalConfig eventJournalConfig = (EventJournalConfig) newConfig;
              registerEventJournalConfig(eventJournalConfig, configCheckMode);
          } else if (newConfig instanceof MerkleTreeConfig) {
              MerkleTreeConfig config = (MerkleTreeConfig) newConfig;
              currentConfig = mapMerkleTreeConfigs.putIfAbsent(config.getMapName(), config);
          } else if (newConfig instanceof SemaphoreConfig) {
              SemaphoreConfig semaphoreConfig = (SemaphoreConfig) newConfig;
              currentConfig = semaphoreConfigs.putIfAbsent(semaphoreConfig.getName(), semaphoreConfig);
          } else if (newConfig instanceof FlakeIdGeneratorConfig) {
              FlakeIdGeneratorConfig config = (FlakeIdGeneratorConfig) newConfig;
              currentConfig = flakeIdGeneratorConfigs.putIfAbsent(config.getName(), config);
          } else if (newConfig instanceof PNCounterConfig) {
              PNCounterConfig config = (PNCounterConfig) newConfig;
              currentConfig = pnCounterConfigs.putIfAbsent(config.getName(), config);
          } else {
              throw new UnsupportedOperationException("Unsupported config type: " + newConfig);
          }
          checkCurrentConfigNullOrEqual(configCheckMode, currentConfig, newConfig);
      }