/** * Remove the value for the given header name. */ public void removeHeader(String headerName) { if (StringUtils.hasLength(headerName) && !isReadOnly(headerName)) { setHeader(headerName, null); } }
/** * Copy the name-value pairs from the provided Map. * <p>This operation will <em>not</em> overwrite any existing values. */ public void copyHeadersIfAbsent(@Nullable Map<String, ?> headersToCopy) { if (headersToCopy != null) { headersToCopy.forEach((key, value) -> { if (!isReadOnly(key)) { setHeaderIfAbsent(key, value); } }); } }
/** * Copy the name-value pairs from the provided Map. * <p>This operation will overwrite any existing values. Use * {@link #copyHeadersIfAbsent(Map)} to avoid overwriting values. */ public void copyHeaders(@Nullable Map<String, ?> headersToCopy) { if (headersToCopy != null) { headersToCopy.forEach((key, value) -> { if (!isReadOnly(key)) { setHeader(key, value); } }); } }
/** * Set the value for the given header name. * <p>If the provided value is {@code null}, the header will be removed. */ public void setHeader(String name, @Nullable Object value) { if (isReadOnly(name)) { throw new IllegalArgumentException("'" + name + "' header is read-only"); } verifyType(name, value); if (value != null) { // Modify header if necessary if (!ObjectUtils.nullSafeEquals(value, getHeader(name))) { this.modified = true; this.headers.getRawHeaders().put(name, value); } } else { // Remove header if available if (this.headers.containsKey(name)) { this.modified = true; this.headers.getRawHeaders().remove(name); } } }
@Override public boolean isReadOnly(String headerName) { return super.isReadOnly(headerName) || this.readOnlyHeaders.contains(headerName); }
/** * Remove the value for the given header name. */ public void removeHeader(String headerName) { if (StringUtils.hasLength(headerName) && !isReadOnly(headerName)) { setHeader(headerName, null); } }
/** * Copy the name-value pairs from the provided Map. * <p>This operation will <em>not</em> overwrite any existing values. */ public void copyHeadersIfAbsent(@Nullable Map<String, ?> headersToCopy) { if (headersToCopy != null) { headersToCopy.forEach((key, value) -> { if (!isReadOnly(key)) { setHeaderIfAbsent(key, value); } }); } }
/** * Copy the name-value pairs from the provided Map. * <p>This operation will overwrite any existing values. Use * {@link #copyHeadersIfAbsent(Map)} to avoid overwriting values. */ public void copyHeaders(@Nullable Map<String, ?> headersToCopy) { if (headersToCopy != null) { headersToCopy.forEach((key, value) -> { if (!isReadOnly(key)) { setHeader(key, value); } }); } }
/** * Set the value for the given header name. * <p>If the provided value is {@code null}, the header will be removed. */ public void setHeader(String name, @Nullable Object value) { if (isReadOnly(name)) { throw new IllegalArgumentException("'" + name + "' header is read-only"); } verifyType(name, value); if (value != null) { // Modify header if necessary if (!ObjectUtils.nullSafeEquals(value, getHeader(name))) { this.modified = true; this.headers.getRawHeaders().put(name, value); } } else { // Remove header if available if (this.headers.containsKey(name)) { this.modified = true; this.headers.getRawHeaders().remove(name); } } }
@Override public boolean isReadOnly(String headerName) { return super.isReadOnly(headerName) || this.readOnlyHeaders.contains(headerName); }
/** * Remove the value for the given header name. */ public void removeHeader(String headerName) { if (StringUtils.hasLength(headerName) && !isReadOnly(headerName)) { setHeader(headerName, null); } }
/** * Copy the name-value pairs from the provided Map. * <p>This operation will <em>not</em> overwrite any existing values. */ public void copyHeadersIfAbsent(@Nullable Map<String, ?> headersToCopy) { if (headersToCopy != null) { headersToCopy.forEach((key, value) -> { if (!isReadOnly(key)) { setHeaderIfAbsent(key, value); } }); } }
/** * Remove the value for the given header name. */ public void removeHeader(String headerName) { if (StringUtils.hasLength(headerName) && !isReadOnly(headerName)) { setHeader(headerName, null); } }
/** * Copy the name-value pairs from the provided Map. * <p>This operation will <em>not</em> overwrite any existing values. */ public void copyHeadersIfAbsent(@Nullable Map<String, ?> headersToCopy) { if (headersToCopy != null) { headersToCopy.forEach((key, value) -> { if (!isReadOnly(key)) { setHeaderIfAbsent(key, value); } }); } }
/** * Copy the name-value pairs from the provided Map. * <p>This operation will overwrite any existing values. Use * {@link #copyHeadersIfAbsent(Map)} to avoid overwriting values. */ public void copyHeaders(@Nullable Map<String, ?> headersToCopy) { if (headersToCopy != null) { headersToCopy.forEach((key, value) -> { if (!isReadOnly(key)) { setHeader(key, value); } }); } }
/** * Copy the name-value pairs from the provided Map. * <p>This operation will overwrite any existing values. Use * {@link #copyHeadersIfAbsent(Map)} to avoid overwriting values. */ public void copyHeaders(@Nullable Map<String, ?> headersToCopy) { if (headersToCopy != null) { headersToCopy.forEach((key, value) -> { if (!isReadOnly(key)) { setHeader(key, value); } }); } }
/** * Set the value for the given header name. * <p>If the provided value is {@code null}, the header will be removed. */ public void setHeader(String name, @Nullable Object value) { if (isReadOnly(name)) { throw new IllegalArgumentException("'" + name + "' header is read-only"); } verifyType(name, value); if (value != null) { // Modify header if necessary if (!ObjectUtils.nullSafeEquals(value, getHeader(name))) { this.modified = true; this.headers.getRawHeaders().put(name, value); } } else { // Remove header if available if (this.headers.containsKey(name)) { this.modified = true; this.headers.getRawHeaders().remove(name); } } }
/** * Set the value for the given header name. * <p>If the provided value is {@code null}, the header will be removed. */ public void setHeader(String name, @Nullable Object value) { if (isReadOnly(name)) { throw new IllegalArgumentException("'" + name + "' header is read-only"); } verifyType(name, value); if (value != null) { // Modify header if necessary if (!ObjectUtils.nullSafeEquals(value, getHeader(name))) { this.modified = true; this.headers.getRawHeaders().put(name, value); } } else { // Remove header if available if (this.headers.containsKey(name)) { this.modified = true; this.headers.getRawHeaders().remove(name); } } }