diff --git a/app/src/main/java/com/cappielloantonio/tempo/util/Util.java b/app/src/main/java/com/cappielloantonio/tempo/util/Util.java index 32a1bd05..93a32a3d 100644 --- a/app/src/main/java/com/cappielloantonio/tempo/util/Util.java +++ b/app/src/main/java/com/cappielloantonio/tempo/util/Util.java @@ -14,4 +14,40 @@ public class Util { return null; } } + + public static String toPascalCase(String name) { + if (name == null || name.isEmpty()) { + return name; + } + + StringBuilder pascalCase = new StringBuilder(); + + char newChar; + boolean toUpper = false; + char[] charArray = name.toCharArray(); + + for (int ctr = 0; ctr <= charArray.length - 1; ctr++) { + if (ctr == 0) { + newChar = Character.toUpperCase(charArray[ctr]); + pascalCase = new StringBuilder(Character.toString(newChar)); + continue; + } + + if (charArray[ctr] == '_') { + toUpper = true; + continue; + } + + if (toUpper) { + newChar = Character.toUpperCase(charArray[ctr]); + pascalCase.append(newChar); + toUpper = false; + continue; + } + + pascalCase.append(charArray[ctr]); + } + + return pascalCase.toString(); + } }