@Override public javax.ws.rs.core.Response.ResponseBuilder variants(List<Variant> variants) { if (variants == null) { header(HttpHeaders.VARY, null); return this; } if (variants.isEmpty()) { return this; } MediaType accept = variants.get(0).getMediaType(); boolean vAccept = false; Locale acceptLanguage = variants.get(0).getLanguage(); boolean vAcceptLanguage = false; String acceptEncoding = variants.get(0).getEncoding(); boolean vAcceptEncoding = false; for (Variant v : variants) { vAccept |= !vAccept && vary(v.getMediaType(), accept); vAcceptLanguage |= !vAcceptLanguage && vary(v.getLanguage(), acceptLanguage); vAcceptEncoding |= !vAcceptEncoding && vary(v.getEncoding(), acceptEncoding); } StringBuilder vary = new StringBuilder(); append(vary, vAccept, HttpHeaders.ACCEPT); append(vary, vAcceptLanguage, HttpHeaders.ACCEPT_LANGUAGE); append(vary, vAcceptEncoding, HttpHeaders.ACCEPT_ENCODING); if (vary.length() > 0) { header(HttpHeaders.VARY, vary.toString()); } return this; }
@Override public ResponseBuilder link(String uri, String rel) { header(HttpHeaders.LINK, Link.fromUri(uri).rel(rel).build()); return this; }
@Override public ResponseBuilder link(String uri, String rel) { header(HttpHeaders.LINK, Link.fromUri(uri).rel(rel).build()); return this; }
@Override public javax.ws.rs.core.Response.ResponseBuilder variants(List<Variant> variants) { if (variants == null) { header(HttpHeaders.VARY, null); return this; } if (variants.isEmpty()) { return this; } MediaType accept = variants.get(0).getMediaType(); boolean vAccept = false; Locale acceptLanguage = variants.get(0).getLanguage(); boolean vAcceptLanguage = false; String acceptEncoding = variants.get(0).getEncoding(); boolean vAcceptEncoding = false; for (Variant v : variants) { vAccept |= !vAccept && vary(v.getMediaType(), accept); vAcceptLanguage |= !vAcceptLanguage && vary(v.getLanguage(), acceptLanguage); vAcceptEncoding |= !vAcceptEncoding && vary(v.getEncoding(), acceptEncoding); } StringBuilder vary = new StringBuilder(); append(vary, vAccept, HttpHeaders.ACCEPT); append(vary, vAcceptLanguage, HttpHeaders.ACCEPT_LANGUAGE); append(vary, vAcceptEncoding, HttpHeaders.ACCEPT_ENCODING); if (vary.length() > 0) { header(HttpHeaders.VARY, vary.toString()); } return this; }
private javax.ws.rs.core.Response.ResponseBuilder headerSingle(String name, Object value) { return header(name, value, true); }
@Override public javax.ws.rs.core.Response.ResponseBuilder header(String name, Object value) { return header(name, value, false); }
private javax.ws.rs.core.Response.ResponseBuilder headerSingle(String name, Object value) { return header(name, value, true); }
@Override public ResponseBuilder link(String uri, String rel) { header(HttpHeaders.LINK, Link.fromUri(uri).rel(rel).build()); return this; }
@Override public ResponseBuilder link(URI uri, String rel) { header(HttpHeaders.LINK, Link.fromUri(uri).rel(rel).build()); return this; }
@Override public javax.ws.rs.core.Response.ResponseBuilder header(String name, Object value) { return header(name, value, false); }
@Override public ResponseBuilder link(URI uri, String rel) { header(HttpHeaders.LINK, Link.fromUri(uri).rel(rel).build()); return this; }
@Override public ResponseBuilder link(String uri, String rel) { header(HttpHeaders.LINK, Link.fromUri(uri).rel(rel).build()); return this; }