package com.acuitra; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.acuitra.location.resources.FindNearbyResource; import com.acuitra.location.resources.ResourceDetailsResource; import com.acuitra.question.resources.QuestionResource; import com.acuitra.servlet.filter.CorsHeadersFilter; import com.sun.jersey.api.client.Client; import com.yammer.dropwizard.Service; import com.yammer.dropwizard.client.JerseyClientBuilder; import com.yammer.dropwizard.config.Bootstrap; import com.yammer.dropwizard.config.Environment; public class QuestionService extends Service<ServiceConfiguration> { public static void main(String[] args) throws Exception { new QuestionService().run(args); } @Override public void initialize(Bootstrap<ServiceConfiguration> bootstrap) { bootstrap.setName("question"); } @Override public void run(ServiceConfiguration config, Environment env) throws Exception { Logger logger = LoggerFactory.getLogger(this.getClass()); logger.info("quepyURL: " + config.getQuepyURL()); logger.info("sparqlEndpointURL: " + config.getSparqlEndpointURL()); logger.info("namedEntityRecognitionURL: " + config.getNamedEntityRecognitionURL()); final Client client = new JerseyClientBuilder().using(config.getJerseyClientConfiguration()) .using(env) .build(); client.setReadTimeout(100000); client.setConnectTimeout(100000); env.addResource(new QuestionResource(client, config.getNamedEntityRecognitionURL(), config.getSparqlEndpointURL(), config.getQuepyURL())); env.addResource(new FindNearbyResource(client, config.getSparqlEndpointURL())); env.addResource(new ResourceDetailsResource(client, config.getSparqlEndpointURL())); env.addFilter(new CorsHeadersFilter(), "/*"); } }