@SuppressWarnings("unchecked")
    public <T> Http2StreamChannelBootstrap attr(AttributeKey<T> key, T value) {
        if (key == null) {
            throw new NullPointerException("key");
        }
        if (value == null) {
            synchronized (attrs) {
                attrs.remove(key);
            }
        } else {
            synchronized (attrs) {
                attrs.put(key, value);
            }
        }
        return this;
    }
@ SuppressWarnings ( "unchecked" ) public < T > Http2StreamChannelBootstrap attr ( AttributeKey < T > key , T value ) { if ( key == null ) { throw new NullPointerException ( "key" ) ; } if ( value == null ) { synchronized ( attrs ) { attrs . remove ( key ) ; } } else { synchronized ( attrs ) { attrs . put ( key , value ) ; } } return this ; }
Allow to specify an initial attribute of the newly created {@link Http2StreamChannel}.  If the {@code value} is
{@code null}, the attribute of the specified {@code key} is removed.