/**
* @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);
}
}