private static String[] getUserMediaTypes(Object provider, boolean consumes) { String[] values = null; if (AbstractConfigurableProvider.class.isAssignableFrom(provider.getClass())) { List<String> types = null; if (consumes) { types = ((AbstractConfigurableProvider)provider).getConsumeMediaTypes(); } else { types = ((AbstractConfigurableProvider)provider).getProduceMediaTypes(); } if (types != null) { values = !types.isEmpty() ? types.toArray(new String[0]) : new String[]{"*/*"}; } } return values; }
protected boolean isPayloadEmpty(HttpHeaders headers) { if (headers != null) { return isPayloadEmpty(headers.getRequestHeaders()); } return false; }
private boolean checkBufferingMode(Message m, List<WriterInterceptor> writers, boolean firstTry) { if (!firstTry) { return false; } WriterInterceptor last = writers.get(writers.size() - 1); MessageBodyWriter<Object> w = ((WriterInterceptorMBW)last).getMBW(); Object outBuf = m.getContextualProperty(OUT_BUFFERING); boolean enabled = MessageUtils.isTrue(outBuf); boolean configurableProvider = w instanceof AbstractConfigurableProvider; if (!enabled && outBuf == null && configurableProvider) { enabled = ((AbstractConfigurableProvider)w).getEnableBuffering(); } if (enabled) { boolean streamingOn = configurableProvider ? ((AbstractConfigurableProvider)w).getEnableStreaming() : false; if (streamingOn) { m.setContent(XMLStreamWriter.class, new CachingXmlEventWriter()); } else { m.setContent(OutputStream.class, new CachedOutputStream()); } } return enabled; }
public void initProviders(List<ClassResourceInfo> cris) { Set<Object> set = getReadersWriters(); for (Object o : set) { Object provider = ((ProviderInfo<?>)o).getProvider(); if (provider instanceof AbstractConfigurableProvider) { ((AbstractConfigurableProvider)provider).init(cris); } } }
private boolean checkBufferingMode(Message m, List<WriterInterceptor> writers, boolean firstTry) { if (!firstTry) { return false; } WriterInterceptor last = writers.get(writers.size() - 1); MessageBodyWriter<Object> w = ((WriterInterceptorMBW)last).getMBW(); Object outBuf = m.getContextualProperty(OUT_BUFFERING); boolean enabled = PropertyUtils.isTrue(outBuf); boolean configurableProvider = w instanceof AbstractConfigurableProvider; if (!enabled && outBuf == null && configurableProvider) { enabled = ((AbstractConfigurableProvider)w).getEnableBuffering(); } if (enabled) { boolean streamingOn = configurableProvider ? ((AbstractConfigurableProvider)w).getEnableStreaming() : false; if (streamingOn) { m.setContent(XMLStreamWriter.class, new CachingXmlEventWriter()); } else { m.setContent(OutputStream.class, new CachedOutputStream()); } } return enabled; }
public void initProviders(List<ClassResourceInfo> cris) { Set<Object> set = getReadersWriters(); for (Object o : set) { Object provider = ((ProviderInfo<?>)o).getProvider(); if (provider instanceof AbstractConfigurableProvider) { ((AbstractConfigurableProvider)provider).init(cris); } } if (this != SHARED_FACTORY) { SHARED_FACTORY.initProviders(cris); } }
private static String[] getUserMediaTypes(Object provider, boolean consumes) { String[] values = null; if (AbstractConfigurableProvider.class.isAssignableFrom(provider.getClass())) { List<String> types = null; if (consumes) { types = ((AbstractConfigurableProvider)provider).getConsumeMediaTypes(); } else { types = ((AbstractConfigurableProvider)provider).getProduceMediaTypes(); } if (types != null) { values = types.size() > 0 ? types.toArray(new String[types.size()]) : new String[]{"*/*"}; } } return values; }
protected boolean isPayloadEmpty(HttpHeaders headers) { if (headers != null) { return isPayloadEmpty(headers.getRequestHeaders()); } else { return false; } }