public Object put(String s, Object o) {
        return backingMap.put(s, o);
    }
Places a value in this context map under the given key only if the given {@code value} argument is not null.

@param key   the attribute key under which the non-null value will be stored
@param value the non-null value to store.  If {@code null}, this method does nothing and returns immediately.
core/src/main/java/org/apache/shiro/util/MapContext.java