starlight-rabbitmq/src/main/java/com/datastax/oss/starlight/rabbitmq/ConfigurationUtils.java
@SuppressWarnings({"rawtypes", "unchecked"})
  public static <T extends PulsarConfiguration> T create(
      Properties properties, Class<? extends PulsarConfiguration> clazz)
      throws IOException, IllegalArgumentException {
    checkNotNull(properties);
    T configuration = null;
    try {
      configuration = (T) clazz.newInstance();
      configuration.setProperties(properties);
      update((Map) properties, configuration);
    } catch (InstantiationException | IllegalAccessException e) {
      throw new IllegalArgumentException("Failed to instantiate " + clazz.getName(), e);
    }
    return configuration;
  }
/**
   * Creates PulsarConfiguration and loads it with populated attribute values from provided
   * Properties object.
   *
   * @param properties The properties to populate the attributed from
   * @throws IOException
   * @throws IllegalArgumentException
   */
Creates PulsarConfiguration and loads it with populated attribute values from provided
Properties object.

@param properties The properties to populate the attributed from
@throws IOException
@throws IllegalArgumentException
Creates PulsarConfiguration and loads it with populated attribute values from provided Properties object . @param properties The properties to populate the attributed from @throws IOException @throws IllegalArgumentException
@SuppressWarnings({"rawtypes", "unchecked"})
  public static <T extends PulsarConfiguration> T create(
      Properties properties, Class<? extends PulsarConfiguration> clazz)
      throws IOException, IllegalArgumentException {
    checkNotNull(properties);
    T configuration = null;
    try {
      configuration = (T) clazz.newInstance();
      configuration.setProperties(properties);
      update((Map) properties, configuration);
    } catch (InstantiationException | IllegalAccessException e) {
      throw new IllegalArgumentException("Failed to instantiate " + clazz.getName(), e);
    }
    return configuration;
  }
@ SuppressWarnings ( { "rawtypes" , "unchecked" } ) public static < T extends PulsarConfiguration > T create ( Properties properties , Class < ? extends PulsarConfiguration > clazz ) throws IOException , IllegalArgumentException { checkNotNull ( properties ) ; T configuration = null ; try { configuration = ( T ) clazz . newInstance ( ) ; configuration . setProperties ( properties ) ; update ( ( Map ) properties , configuration ) ; } catch ( InstantiationException | IllegalAccessException e ) { throw new IllegalArgumentException ( "Failed to instantiate " + clazz . getName ( ) , e ) ; } return configuration ; }
Creates PulsarConfiguration and loads it with populated attribute values from provided
 Properties object.
Creates PulsarConfiguration and loads it with populated attribute values from provided Properties object .