ESBCamelController.java 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  1. package com.yihu.hos.controllers;
  2. import com.yihu.hos.services.ESBCamelService;
  3. import com.yihu.hos.web.framework.model.Result;
  4. import io.swagger.annotations.ApiOperation;
  5. import io.swagger.annotations.ApiParam;
  6. import org.springframework.stereotype.Controller;
  7. import org.springframework.web.bind.annotation.RequestMapping;
  8. import org.springframework.web.bind.annotation.RequestMethod;
  9. import org.springframework.web.bind.annotation.RequestParam;
  10. import org.springframework.web.bind.annotation.ResponseBody;
  11. import javax.annotation.Resource;
  12. /**
  13. * Created by lingfeng on 2016/8/4.
  14. */
  15. @Controller
  16. @RequestMapping("/esb")
  17. public class ESBCamelController {
  18. @Resource(name= ESBCamelService.BEAN_ID)
  19. ESBCamelService esbCamelService;
  20. @RequestMapping(value = "/test", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
  21. @ResponseBody
  22. @ApiOperation(value = "新增Processor处理器", produces = "application/json", notes = "当外界组件通知一个新的processor处理器被定义时,该事件被触发")
  23. public Result test() {
  24. return Result.success("test");
  25. }
  26. @RequestMapping(value = "/processor", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
  27. @ResponseBody
  28. @ApiOperation(value = "新增Processor处理器", produces = "application/json", notes = "当外界组件通知一个新的processor处理器被定义时,该事件被触发")
  29. public Result onProcessorAdded(
  30. @ApiParam(name = "serviceFlow", value = "服务名称", required = true)
  31. @RequestParam(value = "serviceFlow") String serviceFlow,
  32. @ApiParam(name = "packageName", value = "包名", required = true)
  33. @RequestParam(value = "packageName") String packageName,
  34. @ApiParam(name = "className", value = "类名", required = true)
  35. @RequestParam(value = "className") String className,
  36. @ApiParam(name = "path", value = "class文件路径", required = true)
  37. @RequestParam(value = "path") String path) {
  38. return esbCamelService.onProcessorAdded(serviceFlow, packageName, className, path);
  39. }
  40. @RequestMapping(value = "/processor", produces = "application/json;charset=UTF-8", method = RequestMethod.PUT)
  41. @ResponseBody
  42. @ApiOperation(value = "修改Processor处理器", produces = "application/json", notes = "当外界组件通知一个已有的processor处理器data部分发生变化时,该事件被触发")
  43. public Result onProcessorDataChanged(
  44. @ApiParam(name = "serviceFlow", value = "服务名称", required = true)
  45. @RequestParam(value = "serviceFlow") String serviceFlow,
  46. @ApiParam(name = "packageName", value = "包名", required = true)
  47. @RequestParam(value = "packageName") String packageName,
  48. @ApiParam(name = "className", value = "类名", required = true)
  49. @RequestParam(value = "className") String className,
  50. @ApiParam(name = "path", value = "class文件路径", required = true)
  51. @RequestParam(value = "path") String path) {
  52. return esbCamelService.onProcessorDataChanged(serviceFlow, packageName, className, path);
  53. }
  54. @RequestMapping(value = "/route", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
  55. @ResponseBody
  56. @ApiOperation(value = "新增Route路由", produces = "application/json", notes = "当外界组件通知一个新的RouteDefine路由被定义时,该事件被触发")
  57. public Result onRouteDefineAdded(
  58. @ApiParam(name = "serviceFlow", value = "服务名称", required = true)
  59. @RequestParam(value = "serviceFlow") String serviceFlow,
  60. @ApiParam(name = "packageName", value = "包名", required = true)
  61. @RequestParam(value = "packageName") String packageName,
  62. @ApiParam(name = "className", value = "类名", required = true)
  63. @RequestParam(value = "className") String className,
  64. @ApiParam(name = "path", value = "class文件路径", required = true)
  65. @RequestParam(value = "path") String path) {
  66. return esbCamelService.onRouteDefineAdded(serviceFlow, packageName, className, path);
  67. }
  68. @RequestMapping(value = "/route", produces = "application/json;charset=UTF-8", method = RequestMethod.PUT)
  69. @ResponseBody
  70. @ApiOperation(value = "修改Route路由", produces = "application/json", notes = "当外界组件通知一个已有的RouteDefine路由定义被改变时,主要就是路由定义内容被改变时,该事件被触发")
  71. public Result onRouteDefineChanged(
  72. @ApiParam(name = "serviceFlow", value = "服务名称", required = true)
  73. @RequestParam(value = "serviceFlow") String serviceFlow,
  74. @ApiParam(name = "packageName", value = "包名", required = true)
  75. @RequestParam(value = "packageName") String packageName,
  76. @ApiParam(name = "className", value = "类名", required = true)
  77. @RequestParam(value = "className") String className,
  78. @ApiParam(name = "path", value = "class文件路径", required = true)
  79. @RequestParam(value = "path") String path) {
  80. return esbCamelService.onRouteDefineChanged(serviceFlow, packageName, className, path);
  81. }
  82. @RequestMapping(value = "/route", produces = "application/json;charset=UTF-8", method = RequestMethod.DELETE)
  83. @ResponseBody
  84. @ApiOperation(value = "删除Route路由", produces = "application/json", notes = "当外界组件通知一个已有的RouteDefine路由定义被删除时,该事件被触发")
  85. public Result onRouteDefineDelete(
  86. @ApiParam(name = "serviceFlow", value = "服务名称", required = true)
  87. @RequestParam(value = "serviceFlow") String serviceFlow,
  88. @ApiParam(name = "packageName", value = "包名", required = true)
  89. @RequestParam(value = "packageName") String packageName,
  90. @ApiParam(name = "className", value = "类名", required = true)
  91. @RequestParam(value = "className") String className) {
  92. return esbCamelService.onRouteDefineDelete(serviceFlow, packageName, className);
  93. }
  94. @RequestMapping(value = "/route/start", produces = "application/json;charset=UTF-8", method = RequestMethod.PUT)
  95. @ResponseBody
  96. @ApiOperation(value = "删除Route路由", produces = "application/json", notes = "启动路由时,该事件被触发")
  97. public Result onRouteDefineStart(
  98. @ApiParam(name = "serviceFlow", value = "服务名称", required = true)
  99. @RequestParam(value = "serviceFlow") String serviceFlow) {
  100. return esbCamelService.onRouteDefineStart(serviceFlow);
  101. }
  102. @RequestMapping(value = "/route/stop", produces = "application/json;charset=UTF-8", method = RequestMethod.PUT)
  103. @ResponseBody
  104. @ApiOperation(value = "删除Route路由", produces = "application/json", notes = "停止路由时,该事件被触发")
  105. public Result onRouteDefineStop(
  106. @ApiParam(name = "serviceFlow", value = "服务名称", required = true)
  107. @RequestParam(value = "serviceFlow") String serviceFlow) {
  108. return esbCamelService.onRouteDefineStop(serviceFlow);
  109. }
  110. }