@Override public void _dispatch(Object resource, HttpContext context) throws IllegalAccessException, InvocationTargetException { final Object[] params = getParams(context); final Object o = invoker.invoke(method, resource, params); if (o instanceof Response) { context.getResponse().setResponse((Response)o); } else if (o instanceof JResponse) { context.getResponse().setResponse(((JResponse)o).toResponse()); } else if (o != null) { final Response r = new ResponseBuilderImpl().status(200).entity(o).build(); context.getResponse().setResponse(r); } } }
@Override public void _dispatch(Object resource, HttpContext context) throws IllegalAccessException, InvocationTargetException { final Object[] params = getParams(context); final Object o = invoker.invoke(method, resource, params); if (o != null) { Response r = new ResponseBuilderImpl(). entityWithType(o, t).status(200).build(); context.getResponse().setResponse(r); } } }
public void invoke() throws IllegalAccessException, InvocationTargetException { Object o = method.invoke(resource, params); if (o != null) { Response r = new ResponseBuilderImpl().entity(o).status(200).build(); context.getResponse().setResponse(r); } } });
@Override public ResponseBuilder clone() { return new ResponseBuilderImpl(this); }
public Response.ResponseBuilder cacheControl(CacheControl cacheControl) { headerSingle(HttpHeaders.CACHE_CONTROL, cacheControl); return this; }
public 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; }
public Response build() { final Response r = new ResponseImpl( statusType, getHeaders(), entity, entityType); reset(); return r; }
public Response.ResponseBuilder status(int status) { return status(ResponseImpl.toStatusType(status)); }
public Response.ResponseBuilder header(String name, Object value, boolean single) { if (value != null) { if (single) { getHeaders().putSingle(name, value); } else { getHeaders().add(name, value); } } else { getHeaders().remove(name); } return this; } }
@Override public ResponseBuilder createResponseBuilder() { return new ResponseBuilderImpl(); }
public Response.ResponseBuilder language(String language) { headerSingle(HttpHeaders.CONTENT_LANGUAGE, language); return this; }
public 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; }
public Response build() { final Response r = new ResponseImpl( statusType, getHeaders(), entity, entityType); reset(); return r; }
public Response.ResponseBuilder status(int status) { return status(ResponseImpl.toStatusType(status)); }
public Response.ResponseBuilder header(String name, Object value, boolean single) { if (value != null) { if (single) { getHeaders().putSingle(name, value); } else { getHeaders().add(name, value); } } else { getHeaders().remove(name); } return this; } }
public void invoke() throws IllegalAccessException, InvocationTargetException { Object o = method.invoke(resource, params); if (o instanceof Response) { Response r = (Response) o; context.getResponse().setResponse(r); } else if (o != null) { Response r = new ResponseBuilderImpl().status(200).entity(o).build(); context.getResponse().setResponse(r); } } });