}
private void parseCurrentPropertyAndValues(String incompletePropertyAndValues) {
incompletePropertyAndValues =
incompletePropertyAndValues.substring(incompletePropertyAndValues.indexOf('{') + 1);
SplitResult subParts = REGEXP_COLON.split(incompletePropertyAndValues);
// subParts must have at least one element
property = subParts.get(0).trim();
if (subParts.length() > 1) {
SplitResult valueParts = REGEXP_SPACES.split(subParts.get(1));
if (subParts.get(1).endsWith(" ")) {
for (int i = 0; i < valueParts.length(); i++) {
String trimmed = valueParts.get(i).trim();
if (!trimmed.isEmpty()) {
valuesBefore.push(trimmed);
}
}
} else {
if (valueParts.length() == 1) {
value = subParts.get(1).trim();
} else {
value = valueParts.get(valueParts.length() - 1).trim();
for (int i = 0; i < valueParts.length() - 1; i++) {
String trimmed = valueParts.get(i).trim();
if (!trimmed.isEmpty()) {
valuesBefore.push(trimmed);
}
}
}