/** * @author ishaikh * */ package com.transformuk.bdt.controller; import java.util.List; import org.apache.log4j.Logger; import org.elasticsearch.index.query.QueryBuilder; import org.elasticsearch.index.query.QueryBuilders; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.RestController; import com.transformuk.bdt.domain.Page; import com.transformuk.bdt.domain.Questions; import com.transformuk.bdt.service.QuestionServiceImpl; @RestController @RequestMapping("/question") public class QuestionController { @Autowired QuestionServiceImpl questionService; private static final Logger logger = Logger.getLogger(QuestionController.class); @RequestMapping(value = "/{id}", produces = "application/json; charset=utf-8") @ResponseBody public Questions getQuestionById(@PathVariable int id) { if(logger.isDebugEnabled()){ logger.debug("getting question by id: "+id); } Questions q = new Questions(); q.setDesc("this is a short question"); return q; } @RequestMapping(value = "/all", produces = "application/json; charset=utf-8") @ResponseBody public List<Page> fetchAllQuestion() throws Exception { QueryBuilder qb = QueryBuilders.matchAllQuery(); if(logger.isDebugEnabled()){ logger.debug("fetching Question by query: "+qb.toString()); } return questionService.searchQuestionsByQueryBuilder(qb); } }