RateLimiterConfigurationProperties extends CommonProperties { public Optional<InstanceProperties> findRateLimiterProperties(String name) { InstanceProperties instanceProperties = instances.get(name); if (instanceProperties == null) { instanceProperties = configs.get("default"); } return Optional.ofNullable(instanceProperties); }  Optional<InstanceProperties> findRateLimiterProperties(String name); RateLimiterConfig createRateLimiterConfig(
        @Nullable InstanceProperties instanceProperties,
        CompositeCustomizer<RateLimiterConfigCustomizer> compositeRateLimiterCustomizer,
        String instanceName); RateLimiterConfig createRateLimiterConfig(String limiter,
        CompositeCustomizer<RateLimiterConfigCustomizer> compositeRateLimiterCustomizer); @Nullable InstanceProperties getInstanceProperties(String instance); Map<String, InstanceProperties> getInstances(); Map<String, InstanceProperties> getLimiters(); Map<String, InstanceProperties> getConfigs();  }
@Test public void testFindRateLimiterProperties() { RateLimiterConfigurationProperties rateLimiterConfigurationProperties = new RateLimiterConfigurationProperties(); RateLimiterConfigurationProperties.InstanceProperties instanceProperties = new RateLimiterConfigurationProperties.InstanceProperties(); instanceProperties.setLimitForPeriod(3); instanceProperties.setLimitRefreshPeriod(Duration.ofNanos(5000000)); instanceProperties.setSubscribeForEvents(true); rateLimiterConfigurationProperties.getInstances().put("default", instanceProperties); assertThat( rateLimiterConfigurationProperties.findRateLimiterProperties("default").isPresent()) .isTrue(); assertThat( rateLimiterConfigurationProperties.findRateLimiterProperties("custom").isPresent()) .isFalse(); }