| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120 |
- package com.uas.search.controller;
- import com.uas.search.annotation.NotEmpty;
- import com.uas.search.constant.model.SPage;
- import com.uas.search.jms.JmsListener;
- import com.uas.search.jms.LuceneMessage;
- import com.uas.search.jms.LuceneMessageDao;
- import com.uas.search.jms.LuceneMessageService;
- import com.uas.search.service.IndexService;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Controller;
- import org.springframework.util.StringUtils;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.ResponseBody;
- import javax.servlet.http.HttpServletRequest;
- import java.util.ArrayList;
- import java.util.List;
- /**
- * 索引创建相关请求
- *
- * @author sunyj
- * @since 2016年8月5日 上午11:42:54
- */
- @Controller
- @RequestMapping("/index")
- public class IndexController {
- @Autowired
- private LuceneMessageDao luceneMessageDao;
- @Autowired
- private IndexService indexService;
- @Autowired
- private LuceneMessageService luceneMessageService;
- @Autowired
- private JmsListener jmsListener;
- @RequestMapping("/create")
- @ResponseBody
- public String initIndexes(String tableNames, HttpServletRequest request) {
- List<String> tableNameList = new ArrayList<>();
- if (!StringUtils.isEmpty(tableNames)) {
- String[] strs = tableNames.split(",");
- for (String str : strs) {
- tableNameList.add(str.toLowerCase());
- }
- }
- return String.format("Indexes created success in %.2fs",
- indexService.createIndexes(tableNameList, true) / 1000.0);
- }
- @RequestMapping("/downloadComponentData")
- @ResponseBody
- public String downloadComponentDataFromDatabase(Integer startFileIndex, HttpServletRequest request) {
- return "Data downloaded success in " + indexService.downloadComponentDataFromDatabase(startFileIndex)
- + " ms.";
- }
- @RequestMapping("/downloadGoods")
- @ResponseBody
- public String downloadGoods(Integer startFileIndex, HttpServletRequest request) {
- return "Data downloaded success in " + indexService.downloadGoods(startFileIndex)
- + " ms.";
- }
- @RequestMapping("/multiDownloadGoods")
- @ResponseBody
- public String multiDownloadGoods(Integer number, Integer startFileIndex, Integer endFileIndex, HttpServletRequest request) {
- indexService.multiDownloadGoods(number, startFileIndex, endFileIndex);
- return "start download";
- }
- @RequestMapping("/listen/start")
- @ResponseBody
- public String startListen(Long interval, HttpServletRequest request) {
- jmsListener.start(interval);
- return "开启成功";
- }
- @RequestMapping("/listen/stop")
- @ResponseBody
- public String stopListen(HttpServletRequest request) {
- jmsListener.stop();
- return "关闭成功";
- }
- @RequestMapping("/listen/restart")
- @ResponseBody
- public String restartListen(Long interval, HttpServletRequest request) {
- if (jmsListener.isRunning()) {
- jmsListener.stop();
- }
- jmsListener.start(interval);
- return "重启成功";
- }
- @RequestMapping("/listen/details")
- @ResponseBody
- public SPage<LuceneMessage> listenDetails(Integer page, Integer size, HttpServletRequest request) {
- return luceneMessageService.findAll(page, size);
- }
- @RequestMapping("/maintain")
- @ResponseBody
- public String maintainIndexes(@NotEmpty("tableName") String tableName, @NotEmpty("dataId") Long dataId, @NotEmpty("methodType") String methodType, String data,
- HttpServletRequest request) {
- return "已维护:" + indexService.maintainIndexes(tableName.toLowerCase(), dataId, methodType, data);
- }
- @RequestMapping("/dequeue")
- @ResponseBody
- public boolean dequeueLuceneQueueMessage(Long id, HttpServletRequest request) {
- luceneMessageDao.dequeueLuceneMessage(id);
- return true;
- }
- }
|