in src/main/java/org/apache/commons/scxml2/model/PayloadBuilder.java [61:88]
public static void addToPayload(final String attrName, final Object attrValue, final Map<String, Object> payload) {
DataValueList valueList = null;
Object value = payload.get(attrName);
if (value != null) {
if (value instanceof DataValueList) {
valueList = (DataValueList)value;
}
else {
valueList = new DataValueList();
valueList.add(value);
payload.put(attrName, valueList);
}
}
value = attrValue;
if (value instanceof List) {
if (valueList == null) {
valueList = new DataValueList();
payload.put(attrName, valueList);
}
valueList.addAll((List)value);
}
else if (valueList != null) {
valueList.add(value);
}
else {
payload.put(attrName, value);
}
}