001package com.typesafe.config;
002
003/**
004 * This method allows you to alter default config loading strategy for all the code which
005 * calls {@link ConfigFactory#load}.
006 *
007 * Usually you don't have to implement this interface but it may be required
008 * when you fixing a improperly implemented library with unavailable source code.
009 *
010 * You have to define VM property {@code config.strategy} to replace default strategy with your own.
011 */
012public interface ConfigLoadingStrategy {
013    /**
014     * This method must load and parse application config.
015     *
016     * @param parseOptions {@link ConfigParseOptions} to use
017     * @return loaded config
018     */
019    Config parseApplicationConfig(ConfigParseOptions parseOptions);
020}