Package javax.ws.rs.ext

Examples of javax.ws.rs.ext.Providers


     */
    public <T> T getContextFromResolver(Class<T> contextClass, RuntimeContext runtimeContext) {
        if (runtimeContext == null) {
            return null;
        }
        Providers providers = runtimeContext.getProviders();
        if (providers != null) {
            HttpHeaders httpHeaders = runtimeContext.getHttpHeaders();
            MediaType mediaType = null;
            if (httpHeaders != null) {
                // this is hotfix for WINK-166
                mediaType = httpHeaders.getMediaType();
            }
            if (mediaType == null) {
                mediaType = MediaType.WILDCARD_TYPE;
            }
            ContextResolver<T> contextResolver =
                providers.getContextResolver(contextClass, mediaType);
            if (contextResolver != null) {
                T context = contextResolver.getContext(contextClass);
                if (context != null) {
                    return context;
                }
View Full Code Here


        } else {
            type = MediaType.valueOf(contentType);
        }

        RuntimeContext runtimeContext = RuntimeContextTLS.getRuntimeContext();
        Providers providers = runtimeContext.getProviders();
        Class<? extends Object> cls = xmlWrapper.getValue().getClass();

        // this code ignores possible generic types
        // if in the future we would like to support the generic types
        // should check here if cls is GenericEntity and handle it

        MessageBodyWriter<Object> writer =
            (MessageBodyWriter<Object>)providers.getMessageBodyWriter(cls, cls, null, type);

        if (writer == null) {
            if (logger.isErrorEnabled()) {
                logger.error(Messages.getMessage("noWriterFound", cls.getName(), type.toString())); //$NON-NLS-1$
            }
View Full Code Here

        injectableFactory.add(
                new ContextInjectableProvider<MessageBodyWorkers>(
                        MessageBodyWorkers.class, bodyFactory));

        // Injection of Providers
        this.providers = new Providers() {
            @Override
            public <T> MessageBodyReader<T> getMessageBodyReader(Class<T> c, Type t,
                                                                 Annotation[] as, MediaType m) {
                return bodyFactory.getMessageBodyReader(c, t, as, m);
            }
View Full Code Here

        scope.runInScope(new Callable<Object>() {

            @Override
            public Object call() throws Exception {
                Providers instance = locator.getService(Providers.class);

                assertNotNull(instance);
                assertSame(JaxrsProviders.class, instance.getClass());

                assertNotNull(instance.getExceptionMapper(Throwable.class));
                assertNotNull(instance.getMessageBodyReader(String.class, String.class, new Annotation[0],
                        MediaType.TEXT_PLAIN_TYPE));
                assertNotNull(instance.getMessageBodyWriter(String.class, String.class, new Annotation[0],
                        MediaType.TEXT_PLAIN_TYPE));
                assertNotNull(instance.getContextResolver(String.class, MediaType.TEXT_PLAIN_TYPE));

                return null;
            }

        });
View Full Code Here

            public SAXParserFactory get() {
                return spf.provide();
            }
        };

        JaxbStringReaderProvider.RootElementProvider provider = new JaxbStringReaderProvider.RootElementProvider(saxParserFactoryProvider, new Providers() {
            @Override
            public <T> MessageBodyReader<T> getMessageBodyReader(Class<T> type, Type genericType, Annotation[] annotations, MediaType mediaType) {
                return null;
            }
View Full Code Here

                rb.header(header, value);
            }
        }
       
        if (entityCls != null) {
            Providers providers = getContext().getProviders();
            MessageBodyReader<?> reader =
                providers.getMessageBodyReader(entityCls, getEntityGenericType(), anns, mt);
            if (reader == null) {
                throw new ClientWebApplicationException("No reader for Response entity "
                                                        + entityCls.getName());
            }
           
View Full Code Here

            }

            Class<?> paramType = getType();

            // check if there is a provider that can handle this parameter
            Providers providers = runtimeContext.getProviders();
            if (providers != null) {
                MediaType mediaType = runtimeContext.getHttpHeaders().getMediaType();
                if (mediaType == null) {
                    mediaType = MediaType.APPLICATION_OCTET_STREAM_TYPE;
                }
                MessageBodyReader mbr =
                    providers.getMessageBodyReader(paramType,
                                                   getGenericType(),
                                                   getAnnotations(),
                                                   mediaType);

                if (mbr != null) {
View Full Code Here

        // we have an entity, get the response media type
        // the actual writing will take places in the flush
        MediaType responseMediaType = context.getResponseMediaType();

        // get the provider to write the entity
        Providers providers = context.getProviders();
        MessageBodyWriter<Object> messageBodyWriter =
            (MessageBodyWriter<Object>)providers.getMessageBodyWriter(rawType,
                                                                      genericType,
                                                                      declaredAnnotations,
                                                                      responseMediaType);

        // use the provider to write the entity
View Full Code Here

        try {
            RestClient client = new RestClient();
            Resource resource =
                client.resource(MessageFormat.format(SERVICE_URL, String.valueOf(server
                    .getServerPort())));
            Providers providers = RuntimeContextTLS.getRuntimeContext().getProviders();
            MessageBodyReader<AtomFeed> afp =
                providers.getMessageBodyReader(AtomFeed.class,
                                               AtomFeed.class,
                                               null,
                                               MediaType.APPLICATION_ATOM_XML_TYPE);
            AtomFeed entryToPost =
                afp.readFrom(AtomFeed.class,
                             null,
                             null,
                             MediaType.APPLICATION_ATOM_XML_TYPE,
                             null,
                             new ByteArrayInputStream(FEED.getBytes()));
            AtomFeed responseEntity =
                resource.accept(MediaType.APPLICATION_ATOM_XML_TYPE)
                    .contentType(MediaType.APPLICATION_ATOM_XML_TYPE).post(AtomFeed.class,
                                                                           entryToPost);

            ByteArrayOutputStream os = new ByteArrayOutputStream();
            MessageBodyWriter<AtomFeed> writer =
                providers.getMessageBodyWriter(AtomFeed.class,
                                               AtomFeed.class,
                                               null,
                                               MediaType.APPLICATION_ATOM_XML_TYPE);
            writer.writeTo(responseEntity,
                        AtomFeed.class,
View Full Code Here

        }
        return out.toString();
    }

    private Providers getProviders() {
        return new Providers() {

            public <T> ContextResolver<T> getContextResolver(Class<T> contextType,
                                                             MediaType mediaType) {
                return null;
            }
View Full Code Here

TOP

Related Classes of javax.ws.rs.ext.Providers

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.