1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 package org.dishevelled.codegen;
25
26 import java.util.Arrays;
27 import java.util.List;
28
29
30
31
32
33
34 public final class CodegenUtils
35 {
36
37 private static final List<String> PRIMITIVE_NAMES = Arrays.asList(new String[] { "byte", "short", "int", "long", "char", "float", "double", "boolean" });
38
39
40
41
42
43
44
45 public static boolean isPrimitive(final String name)
46 {
47 return PRIMITIVE_NAMES.contains(name);
48 }
49
50
51
52
53
54
55
56 public static String makeLowercase(final String name)
57 {
58 return makeDescription(name);
59 }
60
61
62
63
64
65
66
67 public static String makeUppercase(final String name)
68 {
69
70 return name;
71 }
72
73
74
75
76
77
78
79 public static String makeMixedCase(final String name)
80 {
81 StringBuffer sb = new StringBuffer();
82 char ch = name.charAt(0);
83 sb.append(Character.toLowerCase(ch));
84 sb.append(name.substring(1));
85 return sb.toString();
86 }
87
88
89
90
91
92
93
94
95 public static String makeDescription(final String name)
96 {
97 StringBuffer sb = new StringBuffer();
98 for (int i = 0, size = name.length(); i < size; i++)
99 {
100 char ch = name.charAt(i);
101 if (Character.isTitleCase(ch) || Character.isUpperCase(ch))
102 {
103 if (i != 0)
104 {
105 sb.append(" ");
106 }
107 sb.append(Character.toLowerCase(ch));
108 }
109 else
110 {
111 sb.append(ch);
112 }
113 }
114 return sb.toString();
115 }
116
117
118
119
120
121
122
123
124 public static String makeSentenceCaseDescription(final String name)
125 {
126 StringBuffer sb = new StringBuffer();
127 for (int i = 0, size = name.length(); i < size; i++)
128 {
129 char ch = name.charAt(i);
130 if (Character.isTitleCase(ch) || Character.isUpperCase(ch))
131 {
132 if (i == 0)
133 {
134 sb.append(ch);
135 }
136 else
137 {
138 sb.append(" ");
139 sb.append(Character.toLowerCase(ch));
140 }
141 }
142 else
143 {
144 sb.append(ch);
145 }
146 }
147 return sb.toString();
148 }
149
150
151
152
153
154
155
156 public static String makeLowercaseWithDashes(final String name)
157 {
158 StringBuffer sb = new StringBuffer();
159 for (int i = 0, size = name.length(); i < size; i++)
160 {
161 char ch = name.charAt(i);
162 if (Character.isTitleCase(ch) || Character.isUpperCase(ch))
163 {
164 if (i != 0)
165 {
166 sb.append("-");
167 }
168 sb.append(Character.toLowerCase(ch));
169 }
170 else
171 {
172 sb.append(ch);
173 }
174 }
175 return sb.toString();
176 }
177
178
179
180
181
182
183
184 public static String makeUppercaseWithUnderscores(final String name)
185 {
186 StringBuffer sb = new StringBuffer();
187 for (int i = 0, size = name.length(); i < size; i++)
188 {
189 char ch = name.charAt(i);
190 if (Character.isTitleCase(ch) || Character.isUpperCase(ch))
191 {
192 if (i != 0)
193 {
194 sb.append("_");
195 }
196 sb.append(ch);
197 }
198 else
199 {
200 sb.append(Character.toUpperCase(ch));
201 }
202 }
203 return sb.toString();
204 }
205 }