in integrations/rest-management/rest-management/src/main/java/org/apache/aries/jax/rs/rest/management/internal/coerce/Coerce.java [140:227]
public static Object from(
String type, boolean array, List<String> valueParts) {
Objects.requireNonNull(type);
if (array) {
if (type.equals("Long")) {
return valueParts.stream().map(Long::parseLong).mapToLong(
Long::longValue).toArray();
}
else if (type.equals("Double")) {
return valueParts.stream().map(Double::parseDouble).mapToDouble(
Double::doubleValue).toArray();
}
else if (type.equals("Float")) {
float[] floats = new float[valueParts.size()];
for (int i = 0; i < valueParts.size(); i++) {
floats[i] = Float.parseFloat(valueParts.get(i));
}
return floats;
}
else if (type.equals("Integer")) {
return valueParts.stream().map(Integer::parseInt).mapToInt(
Integer::intValue).toArray();
}
else if (type.equals("Byte")) {
byte[] bytes = new byte[valueParts.size()];
for (int i = 0; i < valueParts.size(); i++) {
bytes[i] = Byte.parseByte(valueParts.get(i));
}
return bytes;
}
else if (type.equals("Character")) {
return valueParts.stream().map(Integer::parseInt).mapToInt(
Integer::intValue).toArray();
}
else if (type.equals("Boolean")) {
boolean[] booleans = new boolean[valueParts.size()];
for (int i = 0; i < valueParts.size(); i++) {
booleans[i] = Boolean.parseBoolean(valueParts.get(i));
}
return booleans;
}
else if (type.equals("Short")) {
short[] shorts = new short[valueParts.size()];
for (int i = 0; i < valueParts.size(); i++) {
shorts[i] = Short.parseShort(valueParts.get(i));
}
return shorts;
}
else {
return valueParts.stream().toArray(String[]::new);
}
}
else {
if (valueParts.isEmpty()) {
return null;
}
if (type.equals("Long")) {
return Long.parseLong(valueParts.get(0));
}
else if (type.equals("Double")) {
return Double.parseDouble(valueParts.get(0));
}
else if (type.equals("Float")) {
return Float.parseFloat(valueParts.get(0));
}
else if (type.equals("Integer")) {
return Integer.parseInt(valueParts.get(0));
}
else if (type.equals("Byte")) {
return Byte.parseByte(valueParts.get(0));
}
else if (type.equals("Character")) {
return Integer.parseInt(valueParts.get(0));
}
else if (type.equals("Boolean")) {
return Boolean.parseBoolean(valueParts.get(0));
}
else if (type.equals("Short")) {
return Short.parseShort(valueParts.get(0));
}
else {
return valueParts.get(0);
}
}
}