本文整理了Java中javax.ws.rs.container.ContainerRequestContext.getAcceptableMediaTypes()
方法的一些代码示例,展示了ContainerRequestContext.getAcceptableMediaTypes()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ContainerRequestContext.getAcceptableMediaTypes()
方法的具体详情如下:
包路径:javax.ws.rs.container.ContainerRequestContext
类名称:ContainerRequestContext
方法名:getAcceptableMediaTypes
[英]Get a list of media types that are acceptable for the response.
[中]获取响应可接受的媒体类型列表。
代码示例来源:origin: jersey/jersey
@Override
public Response apply(ContainerRequestContext containerRequestContext) {
final Set<String> allowedMethods = ModelProcessorUtil.getAllowedMethods(
(extendedUriInfo.get().getMatchedRuntimeResources().get(0)));
return Response.ok()
.allow(allowedMethods)
.header(HttpHeaders.CONTENT_LENGTH, "0")
.type(containerRequestContext.getAcceptableMediaTypes().get(0))
.build();
}
}
代码示例来源:origin: jersey/jersey
@Override
public Response apply(ContainerRequestContext containerRequestContext) {
final Set<String> allowedMethods = ModelProcessorUtil.getAllowedMethods(
(extendedUriInfo.get().getMatchedRuntimeResources().get(0)));
return Response.ok()
.allow(allowedMethods)
.header(HttpHeaders.CONTENT_LENGTH, "0")
.type(containerRequestContext.getAcceptableMediaTypes().get(0))
.build();
}
}
代码示例来源:origin: Graylog2/graylog2-server
@Override
public void filter(ContainerRequestContext requestContext, ContainerResponseContext responseContext) throws IOException {
final Response.StatusType responseStatus = responseContext.getStatusInfo();
final String requestPath = requestContext.getUriInfo().getAbsolutePath().getPath();
final List<MediaType> acceptableMediaTypes = requestContext.getAcceptableMediaTypes();
final boolean acceptsHtml = acceptableMediaTypes.stream()
.anyMatch(mediaType -> mediaType.isCompatible(MediaType.TEXT_HTML_TYPE) || mediaType.isCompatible(MediaType.APPLICATION_XHTML_XML_TYPE));
final boolean isGetRequest = "get".equalsIgnoreCase(requestContext.getMethod());
if (isGetRequest
&& responseStatus == Response.Status.NOT_FOUND
&& acceptsHtml
&& !requestPath.startsWith("/" + HttpConfiguration.PATH_API)) {
final String entity = indexHtmlGenerator.get(requestContext.getHeaders());
responseContext.setStatusInfo(Response.Status.OK);
responseContext.setEntity(entity, new Annotation[0], MediaType.TEXT_HTML_TYPE);
responseContext.getHeaders().putSingle("X-UA-Compatible", "IE=edge");
}
}
}
代码示例来源:origin: org.glassfish.jersey.core/jersey-server
@Override
public Response apply(ContainerRequestContext containerRequestContext) {
final Set<String> allowedMethods = ModelProcessorUtil.getAllowedMethods(
(extendedUriInfo.get().getMatchedRuntimeResources().get(0)));
return Response.ok()
.allow(allowedMethods)
.header(HttpHeaders.CONTENT_LENGTH, "0")
.type(containerRequestContext.getAcceptableMediaTypes().get(0))
.build();
}
}
代码示例来源:origin: resteasy/Resteasy
private void handleGET(ContainerRequestContext request, String key)
List<MediaType> acceptableMediaTypes = request.getAcceptableMediaTypes();
if (acceptableMediaTypes != null && acceptableMediaTypes.size() > 0)
代码示例来源:origin: stackoverflow.com
@Named
public class TestFilter implements ContainerRequestFilter {
private boolean globalError = true;
public void filter(final ContainerRequestContext requestContext) throws IOException {
if (globalError) {
MediaType mediaType = requestContext.getAcceptableMediaTypes().size() > 0 ? requestContext.getAcceptableMediaTypes().get(0) : null;
throw new WebApplicationException(Response.status(422).type(mediaType).entity(new TestEntity()).build());
}
}
}
代码示例来源:origin: org.mycore/mycore-restapi
private static boolean doNotWWWAuthenticate(ContainerRequestContext requestContext) {
return "XMLHttpRequest".equals(requestContext.getHeaderString("X-Requested-With")) ||
requestContext.getAcceptableMediaTypes()
.stream()
.findFirst()
.filter(m -> "image".equals(m.getType()))
.isPresent();
}
代码示例来源:origin: com.yahoo.fili/fili-core
@Override public List<MediaType> getAcceptableMediaTypes() { return request.getAcceptableMediaTypes(); }
@Override public List<Locale> getAcceptableLanguages() { return request.getAcceptableLanguages(); }
代码示例来源:origin: yahoo/fili
@Override public List<MediaType> getAcceptableMediaTypes() { return request.getAcceptableMediaTypes(); }
@Override public List<Locale> getAcceptableLanguages() { return request.getAcceptableLanguages(); }
代码示例来源:origin: org.glassfish.jersey.bundles/jaxrs-ri
@Override
public Response apply(ContainerRequestContext containerRequestContext) {
final Set<String> allowedMethods = ModelProcessorUtil.getAllowedMethods(
(extendedUriInfo.get().getMatchedRuntimeResources().get(0)));
return Response.ok()
.allow(allowedMethods)
.header(HttpHeaders.CONTENT_LENGTH, "0")
.type(containerRequestContext.getAcceptableMediaTypes().get(0))
.build();
}
}
代码示例来源:origin: com.eclipsesource.jaxrs/jersey-all
@Override
public Response apply(ContainerRequestContext containerRequestContext) {
final Set<String> allowedMethods = ModelProcessorUtil.getAllowedMethods(
(extendedUriInfo.getMatchedRuntimeResources().get(0)));
return Response.ok()
.allow(allowedMethods)
.header(HttpHeaders.CONTENT_LENGTH, "0")
.type(containerRequestContext.getAcceptableMediaTypes().get(0))
.build();
}
}
代码示例来源:origin: hstaudacher/osgi-jax-rs-connector
@Override
public Response apply(ContainerRequestContext containerRequestContext) {
final Set<String> allowedMethods = ModelProcessorUtil.getAllowedMethods(
(extendedUriInfo.getMatchedRuntimeResources().get(0)));
return Response.ok()
.allow(allowedMethods)
.header(HttpHeaders.CONTENT_LENGTH, "0")
.type(containerRequestContext.getAcceptableMediaTypes().get(0))
.build();
}
}
代码示例来源:origin: hstaudacher/osgi-jax-rs-connector
@Override
public Response apply(ContainerRequestContext containerRequestContext) {
final Set<String> allowedMethods = ModelProcessorUtil.getAllowedMethods(
(extendedUriInfo.getMatchedRuntimeResources().get(0)));
return Response.ok()
.allow(allowedMethods)
.header(HttpHeaders.CONTENT_LENGTH, "0")
.type(containerRequestContext.getAcceptableMediaTypes().get(0))
.build();
}
}
代码示例来源:origin: icode/ameba
@Override
public Response apply(ContainerRequestContext containerRequestContext) {
final MediaType foundMediaType = getSupportProduceMediaType(containerRequestContext);
if (foundMediaType != null) {
return generateRespBuilder(containerRequestContext, extendedUriInfo, foundMediaType, generators).build();
}
return generateRespBuilder(extendedUriInfo, containerRequestContext.getAcceptableMediaTypes().get(0))
.header(HttpHeaders.CONTENT_LENGTH, 0)
.build();
}
}
代码示例来源:origin: org.apache.geronimo/geronimo-openapi-impl
@Override
public void filter(final ContainerRequestContext rc) {
if (!HttpMethod.GET.equals(rc.getRequest().getMethod())) {
return;
}
final String path = rc.getUriInfo().getPath();
if ("openapi".equals(path)) {
final List<MediaType> mediaTypes = rc.getAcceptableMediaTypes();
rc.abortWith(Response.ok(openApi).type(selectType(mediaTypes)).build());
}
if ("openapi.json".equals(path)) {
rc.abortWith(Response.ok(openApi).type(APPLICATION_JSON_TYPE).build());
}
if ("openapi.yml".equals(path) || "openapi.yaml".equals(path)) {
rc.abortWith(Response.ok(openApi).type("text/vnd.yaml").build());
}
}
代码示例来源:origin: stackoverflow.com
import java.io.IOException;
import java.lang.annotation.Annotation;
import java.util.List;
import javax.ws.rs.container.ContainerRequestContext;
import javax.ws.rs.container.ContainerResponseContext;
import javax.ws.rs.container.ContainerResponseFilter;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.ext.Provider;
@Provider
public class EntityResponseFilter implements ContainerResponseFilter {
@Override
public void filter( ContainerRequestContext reqc , ContainerResponseContext resc ) throws IOException {
MediaType mediaType = this.getMediaTypeFromExtentionOrHeader(); // TODO
List<MediaType> mediaTypes = reqc.getAcceptableMediaTypes();
if( mediaTypes.contains(mediaType) ) {
resc.setEntity( resc.getEntity(), new Annotation[0], mediaType );
}
// ...
}
}
代码示例来源:origin: icode/ameba
/**
* {@inheritDoc}
*/
@Override
public boolean isWriteable(final Class<?> type, final Type genericType, final Annotation[] annotations,
final MediaType mediaType) {
String[] p;
return !dataViewDisabled
&& -1 != ListUtils.indexOf(requestProvider.get().getAcceptableMediaTypes(),
this::isSupportMediaType)
&& ((p = TemplateHelper.getProduces(annotations)) == null
|| -1 != ArrayUtils.indexOf(p,
(Predicate<String>) stringType -> {
if (stringType.equals(MediaType.WILDCARD)) return true;
MediaType mediaType1 = MediaType.valueOf(stringType);
return isSupportMediaType(mediaType1);
}));
}
代码示例来源:origin: io.swagger/swagger-inflector
public RequestContext(ContainerRequestContext context, HttpServletRequest request, HttpServletResponse response) {
this.context = context;
if(context != null) {
headers(context.getHeaders());
mediaType(context.getMediaType());
acceptableMediaTypes(context.getAcceptableMediaTypes());
}
this.request = request;
if (request != null) {
this.remoteAddr = request.getRemoteAddr();
}
this.response = response;
}
代码示例来源:origin: swagger-api/swagger-inflector
public RequestContext(ContainerRequestContext context, HttpServletRequest request, HttpServletResponse response) {
this.context = context;
if(context != null) {
headers(context.getHeaders());
mediaType(context.getMediaType());
acceptableMediaTypes(context.getAcceptableMediaTypes());
}
this.request = request;
if (request != null) {
this.remoteAddr = request.getRemoteAddr();
}
this.response = response;
}
代码示例来源:origin: org.graylog2/graylog2-server
@Override
public void filter(ContainerRequestContext requestContext, ContainerResponseContext responseContext) throws IOException {
final Response.StatusType responseStatus = responseContext.getStatusInfo();
final String requestPath = requestContext.getUriInfo().getAbsolutePath().getPath();
final List<MediaType> acceptableMediaTypes = requestContext.getAcceptableMediaTypes();
final boolean acceptsHtml = acceptableMediaTypes.stream()
.anyMatch(mediaType -> mediaType.isCompatible(MediaType.TEXT_HTML_TYPE) || mediaType.isCompatible(MediaType.APPLICATION_XHTML_XML_TYPE));
final boolean isGetRequest = "get".equalsIgnoreCase(requestContext.getMethod());
if (isGetRequest
&& responseStatus == Response.Status.NOT_FOUND
&& acceptsHtml
&& requestPath.startsWith(webAppPrefix)) {
final String entity = indexHtmlGenerator.get();
responseContext.setStatusInfo(Response.Status.OK);
responseContext.setEntity(entity, new Annotation[0], MediaType.TEXT_HTML_TYPE);
responseContext.getHeaders().putSingle("X-UA-Compatible", "IE=edge");
}
}
}
内容来源于网络,如有侵权,请联系作者删除!