
win.doyto.query.core.GlobalConfiguration Maven / Gradle / Ivy
package win.doyto.query.core;
import lombok.Getter;
import lombok.Setter;
import java.util.regex.Pattern;
/**
* GlobalConfiguration
*
* @author f0rb
*/
@Getter
@Setter
public class GlobalConfiguration {
private static final Pattern PTN_CAPITAL_CHAR = Pattern.compile("([A-Z])");
private boolean mapCamelCaseToUnderscore;
private GlobalConfiguration() {
}
static String convertColumn(String columnName) {
if (instance().isMapCamelCaseToUnderscore()) {
columnName = camelCaseToUnderscore(columnName);
}
return columnName;
}
private static String camelCaseToUnderscore(String camel) {
return PTN_CAPITAL_CHAR.matcher(camel).replaceAll("_$1").toLowerCase();
}
public static GlobalConfiguration instance() {
return GlobalConfiguration.Singleton.instance;
}
private static class Singleton {
private static GlobalConfiguration instance = new GlobalConfiguration();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy