code: public static void addDefaultResource(String name) {
          // The lock hierarchy is that we must always lock
          // instances before locking the class. Since reloadConfiguration
          // is synchronized on the instance, we must not call conf.reloadConfiguration
          // while holding a lock on Configuration.class. Otherwise we could deadlock
          // if that conf is attempting to lock the Class
          ArrayList<Configuration> toReload;
          synchronized (Configuration.class) {
              if (defaultResources.contains(name)) {
                  return;
              }
              defaultResources.add(name);
              // Make a copy so we don't iterate while not holding the lock
              toReload = new ArrayList<>(REGISTRY.size());
              toReload.addAll(REGISTRY.keySet());
          }
          for (Configuration conf : toReload) {
              if (conf.loadDefaults) {
                  conf.reloadConfiguration();
              }
          }
      }
docs: Add a default resource. Resources are loaded in the order of the resources
  added.
  @param name file name. File should be present in the classpath.