code: @VisibleForTesting
      AbstractConfiguration createConfiguration(Properties properties) {
  
          CompositeConfiguration composite = new CompositeConfiguration();
  
          ConfigurationType[] types = ConfigurationType.values();
  
          Arrays.stream(types).forEach(s -> s.get().ifPresent(composite::addConfiguration));
  
          Optional.ofNullable(properties).ifPresent(p -> composite.addConfiguration(new MapConfiguration(p)));
  
          return composite;
  
      }
docs: Create a {@link Configuration} instance,
  composed of multiple configurations which are enumerated in {@link ConfigurationType}.
  
  @return Composite configuration instance.