summaryrefslogtreecommitdiff
path: root/container-compiler-plugin/src/main/java/io/trygvis/container/compiler/Utils.java
diff options
context:
space:
mode:
Diffstat (limited to 'container-compiler-plugin/src/main/java/io/trygvis/container/compiler/Utils.java')
-rw-r--r--container-compiler-plugin/src/main/java/io/trygvis/container/compiler/Utils.java16
1 files changed, 16 insertions, 0 deletions
diff --git a/container-compiler-plugin/src/main/java/io/trygvis/container/compiler/Utils.java b/container-compiler-plugin/src/main/java/io/trygvis/container/compiler/Utils.java
index 3478581..0cac828 100644
--- a/container-compiler-plugin/src/main/java/io/trygvis/container/compiler/Utils.java
+++ b/container-compiler-plugin/src/main/java/io/trygvis/container/compiler/Utils.java
@@ -17,6 +17,7 @@ import java.util.ArrayList;
import java.util.List;
import static io.trygvis.container.compiler.model.ClassG.addAll;
+import static java.lang.Character.isUpperCase;
import static java.lang.Character.toLowerCase;
import static java.lang.Character.toUpperCase;
import static org.apache.commons.lang.StringUtils.stripEnd;
@@ -116,4 +117,19 @@ public class Utils {
newBody.add("}");
return newBody;
}
+
+ public static String sqlName(String javaName) {
+ StringBuilder builder = new StringBuilder();
+ for (char c : javaName.toCharArray()) {
+ if (isUpperCase(c) && builder.length() > 0) {
+ builder.append("_");
+ }
+ if (Character.isLetterOrDigit(c)) {
+ builder.append(toLowerCase(c));
+ } else {
+ builder.append('_');
+ }
+ }
+ return builder.toString();
+ }
}