public static List<IdName> getParameterValues(Connection con, QueryParameter parameter)
            throws SQLException, DialectException {

        List<IdName> values = new ArrayList<IdName>();
        if (parameter == null) {
            return values;
        }        
        String source = parameter.getSource();
        if (parameter.isManualSource()) {
            if (!parameter.isDependent()) {
                values = getSelectValues(con, source, true, parameter.getOrderBy());
            }
        } else {
            int index = source.indexOf(".");
            int index2 = source.lastIndexOf(".");
            String tableName = source.substring(0, index);
            String columnName;
            String shownColumnName = null;
            if (index == index2) {
                columnName = source.substring(index + 1);
            } else {
                columnName = source.substring(index + 1, index2);
                shownColumnName = source.substring(index2 + 1);
            }
            values = getColumnValues(con, parameter.getSchema(), tableName, columnName, shownColumnName, parameter.getOrderBy());
        }
        return values;
    }
public static List < IdName > getParameterValues ( Connection con , QueryParameter parameter ) throws SQLException , DialectException { List < IdName > values = new ArrayList < IdName > ( ) ; if ( parameter == null ) { return values ; } String source = parameter . getSource ( ) ; if ( parameter . isManualSource ( ) ) { if ( ! parameter . isDependent ( ) ) { values = getSelectValues ( con , source , true , parameter . getOrderBy ( ) ) ; } } else { int index = source . indexOf ( "." ) ; int index2 = source . lastIndexOf ( "." ) ; String tableName = source . substring ( 0 , index ) ; String columnName ; String shownColumnName = null ; if ( index == index2 ) { columnName = source . substring ( index + 1 ) ; } else { columnName = source . substring ( index + 1 , index2 ) ; shownColumnName = source . substring ( index2 + 1 ) ; } values = getColumnValues ( con , parameter . getSchema ( ) , tableName , columnName , shownColumnName , parameter . getOrderBy ( ) ) ; } return values ; }
Get values for a parameter from a database
If a parameter is dependent of another parameter(s) his values will not be loaded

@param con       connection to database
@param parameter parameter
@return a list of parameter values
@throws SQLException     if an error to sql execution appears
@throws DialectException if dialect not found