public final void setAdditionalProperties(final Map<String, String> additionalProperties) {

        // no need for validation, the method will create a new (empty) object if the provided parameter is null.

        // create a defensive copy of the map and all its properties
        if (additionalProperties == null) {
            // create a new (empty) properties map if the provided parameter was null
            this.additionalProperties = new ConcurrentHashMap<>();
        } else {
            // create a defensive copy of the map and all its properties
            // the code looks a little more complicated than a simple "putAll()", but it catches situations
            // where a Map is provided that supports null values (e.g. a HashMap) vs Map implementations
            // that do not (e.g. ConcurrentHashMap).
            this.additionalProperties = new ConcurrentHashMap<>();
            for (final Map.Entry<String, String> entry : additionalProperties.entrySet()) {
                final String key = entry.getKey();
                final String value = entry.getValue();

                if (value != null) {
                    this.additionalProperties.put(key, value);
                }
            }
        }
    }
public final void setAdditionalProperties ( final Map < String , String > additionalProperties ) { if ( additionalProperties == null ) { this . additionalProperties = new ConcurrentHashMap < > ( ) ; } else { this . additionalProperties = new ConcurrentHashMap < > ( ) ; for ( final Map . Entry < String , String > entry : additionalProperties . entrySet ( ) ) { final String key = entry . getKey ( ) ; final String value = entry . getValue ( ) ; if ( value != null ) { this . additionalProperties . put ( key , value ) ; } } } }
Any additional properties which have not been parsed, and for which no getter/setter exists, but are to be
stored in this object nevertheless.
<p>
This property is commonly used to preserve original properties from upstream components that are to be passed
on to downstream components unchanged. This properties set may or may not include properties that have been
extracted from the map, and been made available through this POJO.
<p>
Note that these additional properties may be <code>null</code> or empty, even in a fully populated POJO where
other properties commonly have values assigned to.

@param additionalProperties The additional properties to store