private void parseAddendum()

in src/main/java/com/amazonaws/services/cloudtrail/processinglibrary/serializer/AbstractEventSerializer.java [710:745]


    private void parseAddendum(CloudTrailEventData eventData) throws IOException {
        JsonToken nextToken = jsonParser.nextToken();
        if (nextToken == JsonToken.VALUE_NULL) {
            eventData.add(CloudTrailEventField.addendum.name(), null);
            return;
        }

        if (nextToken != JsonToken.START_OBJECT) {
            throw new JsonParseException("Not an Addendum object", jsonParser.getCurrentLocation());
        }

        Addendum addendum = new Addendum();

        while (jsonParser.nextToken() != JsonToken.END_OBJECT) {
            String key = jsonParser.getCurrentName();

            switch (key) {
                case "reason":
                    addendum.add(CloudTrailEventField.reason.name(), jsonParser.nextTextValue());
                    break;
                case "updatedFields":
                    addendum.add(CloudTrailEventField.updatedFields.name(), jsonParser.nextTextValue());
                    break;
                case "originalRequestID":
                    addendum.add(CloudTrailEventField.originalRequestID.name(), jsonParser.nextTextValue());
                    break;
                case "originalEventID":
                    addendum.add(CloudTrailEventField.originalEventID.name(), jsonParser.nextTextValue());
                    break;
                default:
                    addendum.add(key, parseDefaultValue(key));
                    break;
            }
        }
        eventData.add(CloudTrailEventField.addendum.name(), addendum);
    }