summaryrefslogtreecommitdiff
path: root/container-compiler-plugin/src/main/java/io/trygvis/container/compiler/Utils.java
diff options
context:
space:
mode:
authorTrygve Laugstøl <trygvis@inamo.no>2013-08-03 15:06:46 +0200
committerTrygve Laugstøl <trygvis@inamo.no>2013-08-03 15:06:46 +0200
commitb5d6f23d8ac3d4bedb139fdaecc2e9dc621f385a (patch)
treeede2d0de570efcbb546fabcb2d5d050511792ae1 /container-compiler-plugin/src/main/java/io/trygvis/container/compiler/Utils.java
parent34137b599dbea13c94224dff2955376b1394dbc9 (diff)
downloadcontainer-playground-b5d6f23d8ac3d4bedb139fdaecc2e9dc621f385a.tar.gz
container-playground-b5d6f23d8ac3d4bedb139fdaecc2e9dc621f385a.tar.bz2
container-playground-b5d6f23d8ac3d4bedb139fdaecc2e9dc621f385a.tar.xz
container-playground-b5d6f23d8ac3d4bedb139fdaecc2e9dc621f385a.zip
wip
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.java31
1 files changed, 31 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
new file mode 100644
index 0000000..8bd0de3
--- /dev/null
+++ b/container-compiler-plugin/src/main/java/io/trygvis/container/compiler/Utils.java
@@ -0,0 +1,31 @@
+package io.trygvis.container.compiler;
+
+import static java.lang.Character.toLowerCase;
+import static java.lang.Character.toUpperCase;
+
+public class Utils {
+ public static String toFieldName(String s) {
+ if (s.length() < 1) {
+ return s.toLowerCase();
+ }
+ char[] chars = s.toCharArray();
+
+ boolean toUpper = false;
+
+ int j = 0;
+ for (int i = 0; i < chars.length; i++) {
+ char c = chars[i];
+ if (c == '_') {
+ toUpper = true;
+ } else {
+ if (j == 0) {
+ chars[j++] = toLowerCase(c);
+ } else {
+ chars[j++] = toUpper ? toUpperCase(c) : c;
+ }
+ toUpper = false;
+ }
+ }
+ return new String(chars, 0, j);
+ }
+}