All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.odata4j.jersey.producer.resources.ODataProducerProvider Maven / Gradle / Ivy

package org.odata4j.jersey.producer.resources;

import java.util.Properties;

import javax.ws.rs.core.Context;
import javax.ws.rs.ext.Provider;

import org.odata4j.producer.ODataProducer;
import org.odata4j.producer.resources.DefaultODataProducerProvider;

import com.sun.jersey.api.core.ResourceConfig;

/**
 * Jersey-specific OData producer provider.
 *
 * 

This provider allows specifying a factory as part of the container's deployment * descriptor (web.xml). The factory is used to create an OData producer instance. *

 * {@code
 * 
 *   odata4j.producerfactory
 *   ... full qualified class name ...
 * 
 * }
 * 
*/ @Provider public class ODataProducerProvider extends DefaultODataProducerProvider { @Context private ResourceConfig resourceConfig; @Override protected ODataProducer createInstanceFromFactoryInContainerSpecificSetting() { if (resourceConfig != null && resourceConfig.getProperty(FACTORY_PROPNAME) != null) { String factoryTypeName = (String) resourceConfig.getProperty(FACTORY_PROPNAME); log("Creating producer from factory in resource config: " + factoryTypeName); Properties props = new Properties(); props.putAll(resourceConfig.getProperties()); return newProducerFromFactory(factoryTypeName, props); } return null; } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy