deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/config/TypedResolverImpl.java
/**
     * recursively resolve any ${varName} in the value
     */
recursively resolve any ${varName} in the value
recursively resolve any $ { varName } in the value
private String resolveVariables(String value)
    {
        int startVar = 0;
        while ((startVar = value.indexOf("${", startVar)) >= 0)
        {
            int endVar = value.indexOf("}", startVar);
            if (endVar <= 0)
            {
                break;
            }
            String varName = value.substring(startVar + 2, endVar);
            if (varName.isEmpty())
            {
                break;
            }
            try
            {
                String variableValue = new TypedResolverImpl<String>(this.config, varName)
                    .withCurrentProjectStage(this.projectStageAware)
                    .evaluateVariables(true)
                    .getValue();
                if (variableValue != null)
                {
                    value = value.replace("${" + varName + "}", variableValue);
                }
            }
            catch (StackOverflowError soe)
            {
                LOG.severe("Recursive variable resolution detected for " + varName);
                throw soe;
            }
            startVar++;
        }
        return value;
    }
private String resolveVariables ( String value ) { int startVar = 0 ; while ( ( startVar = value . indexOf ( "${" , startVar ) ) >= 0 ) { int endVar = value . indexOf ( "}" , startVar ) ; if ( endVar <= 0 ) { break ; } String varName = value . substring ( startVar + 2 , endVar ) ; if ( varName . isEmpty ( ) ) { break ; } try { String variableValue = new TypedResolverImpl < String > ( this . config , varName ) . withCurrentProjectStage ( this . projectStageAware ) . evaluateVariables ( true ) . getValue ( ) ; if ( variableValue != null ) { value = value . replace ( "${" + varName + "}" , variableValue ) ; } } catch ( StackOverflowError soe ) { LOG . severe ( "Recursive variable resolution detected for " + varName ) ; throw soe ; } startVar ++ ; } return value ; }
recursively resolve any ${varName} in the value
recursively resolve any $ { varName } in the value
// just log out