Class RuleController


  • @Controller
    @RequestMapping("rule")
    public class RuleController
    extends java.lang.Object
    전사규칙에 관한 Controller
    Version:
    1.0
    Author:
    Yeonhee Kim
    • Constructor Summary

      Constructors 
      Constructor Description
      RuleController()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.String addRuleLevel​(org.springframework.ui.Model model, java.lang.String new_top_level_name, java.lang.String new_middle_level_name, Rule rule)
      대분류/중분류/소분류를 DB에 등록함
      java.lang.String customRulepage()
      ruleCustom 페이지로 이동
      boolean deleteCheckedRuleBottomLevel​(int[] deleteRuleList)
      선택한 룰을 삭제함
      int deleteCustomLibrary​(CustomLibrary customLibrary)
      해당되는 커스텀 라이브러리 파일을 삭제하고 DB에서도 삭제함
      java.lang.String deleteRuleLevel​(org.springframework.ui.Model model, java.lang.String level, Rule rule)
      대분류/중분류/소분류 룰을 삭제함
      java.lang.String editRulepage​(org.springframework.ui.Model model, int bottom_level_id)
      룰을 작성하는 페이지로 이동함
      java.util.List<CustomLibrary> getAllCustomByCreator()
      사용자가 추가한 라이브러리 목록을 가져옴
      void getApiDesc​(javax.servlet.http.HttpServletResponse response, int class_id)
      Rule을 작성할 때 참고할 관련 API 문서를 ajax 응답 객체에 담아서 화면에 뿌림
      void getRuleCategory​(javax.servlet.http.HttpServletResponse response, java.lang.String top_level_id, java.lang.String middle_level_id)
      해당되는 전사규칙 드롭다운 목록을 Ajax로 응답함
      java.lang.String getRuleChange​(org.springframework.ui.Model model, int bottom_level_id, int prev_bottom_level_id)
      룰의 버전별 변화(수정 전/수정 후)를 가져옴
      java.lang.String registerRulepage()
      registerRule 페이지로 이동
      void runRuleCompiler​(javax.servlet.http.HttpServletResponse response, java.lang.String top_level_id, java.lang.String middle_level_id, java.lang.String bottom_level_id)
      rule을 실행
      java.lang.String runRulepage()
      runRule 페이지로 이동
      void saveRuleContents​(javax.servlet.http.HttpServletResponse response, java.lang.String presentVersion, Rule rule)
      Ajax 요청이 들어오면 작성한 Rule 코드를 컴파일하고 DB에 등록 후 사용자에게 결과를 보여줌
      java.lang.String uploadCustom​(java.util.List<org.springframework.web.multipart.MultipartFile> multipartFile, java.lang.String pack)
      커스텀 라이브러리를 서버 스토리지에 업로드하고 DB에 등록함
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • RuleController

        public RuleController()
    • Method Detail

      • registerRulepage

        @GetMapping("/registerRule")
        public java.lang.String registerRulepage()
        registerRule 페이지로 이동
        Returns:
        registerRule 페이지
      • runRulepage

        @GetMapping("/runRule")
        public java.lang.String runRulepage()
        runRule 페이지로 이동
        Returns:
        runRule 페이지
      • customRulepage

        @GetMapping("/customRule")
        public java.lang.String customRulepage()
        ruleCustom 페이지로 이동
        Returns:
        ruleCustom 페이지
      • addRuleLevel

        @PostMapping("/addRuleLevel")
        public java.lang.String addRuleLevel​(org.springframework.ui.Model model,
                                             java.lang.String new_top_level_name,
                                             java.lang.String new_middle_level_name,
                                             Rule rule)
        대분류/중분류/소분류를 DB에 등록함
        Parameters:
        model - Model
        new_top_level_name - 대분류 등록을 위한 대분류 이름
        new_middle_level_name - 중분류 등록을 위한 중분류 이름
        rule - 소분류 등록을 위한 Rule 객체
        Returns:
        대분류/중분류/소분류 등록 후 이동할 페이지
      • getRuleCategory

        @GetMapping("/getRuleCategory")
        @ResponseBody
        public void getRuleCategory​(javax.servlet.http.HttpServletResponse response,
                                    java.lang.String top_level_id,
                                    java.lang.String middle_level_id)
        해당되는 전사규칙 드롭다운 목록을 Ajax로 응답함
        Parameters:
        response - HttpServletResponse 객체
        top_level_id - 전사규칙 대분류 아이디
        middle_level_id - 전사규칙 중분류 아이디
      • deleteRuleLevel

        @GetMapping("/deleteRuleLevel")
        public java.lang.String deleteRuleLevel​(org.springframework.ui.Model model,
                                                java.lang.String level,
                                                Rule rule)
        대분류/중분류/소분류 룰을 삭제함
        Parameters:
        model - jsp에 넘겨줄 Model
        level - 대분류/중분류/소분류
        rule - 룰 아이디를 담고 있는 룰 객체
        Returns:
        삭제 후 이동할 url
      • deleteCheckedRuleBottomLevel

        @ResponseBody
        @GetMapping("/deleteCheckedRuleBottomLevel")
        public boolean deleteCheckedRuleBottomLevel​(int[] deleteRuleList)
        선택한 룰을 삭제함
        Parameters:
        deleteRuleList - 삭제할 룰 소분류 아이디 배열
        Returns:
        룰 삭제 성공/실패 여부
      • editRulepage

        @GetMapping("/editRule")
        public java.lang.String editRulepage​(org.springframework.ui.Model model,
                                             int bottom_level_id)
        룰을 작성하는 페이지로 이동함
        Parameters:
        model - jsp에 넘겨줄 Model
        bottom_level_id - 소분류 아이디
        Returns:
        룰 작성 페이지(메서드/SQL) url
      • runRuleCompiler

        @PostMapping("/runRuleCompiler")
        @ResponseBody
        public void runRuleCompiler​(javax.servlet.http.HttpServletResponse response,
                                    java.lang.String top_level_id,
                                    java.lang.String middle_level_id,
                                    java.lang.String bottom_level_id)
                             throws java.lang.Exception
        rule을 실행
        Parameters:
        response - HttpServletResponse 객체
        top_level_id - 대분류 아이디
        middle_level_id - 중분류 아이디
        bottom_level_id - 소분류 아이디
        Throws:
        java.lang.Exception - 예외처리
      • saveRuleContents

        @PostMapping("/saveRuleContents")
        @ResponseBody
        public void saveRuleContents​(javax.servlet.http.HttpServletResponse response,
                                     java.lang.String presentVersion,
                                     Rule rule)
                              throws java.lang.Exception
        Ajax 요청이 들어오면 작성한 Rule 코드를 컴파일하고 DB에 등록 후 사용자에게 결과를 보여줌
        Parameters:
        response - HttpServletResponse 객체
        presentVersion - 현재 룰 버전(버전을 수정했는지 검사할 때 사용)
        rule - Rule 코드 작성을 위한 Rule 객체
        Throws:
        java.lang.Exception - 예외처리
      • getApiDesc

        @GetMapping("/getApiDesc")
        @ResponseBody
        public void getApiDesc​(javax.servlet.http.HttpServletResponse response,
                               int class_id)
        Rule을 작성할 때 참고할 관련 API 문서를 ajax 응답 객체에 담아서 화면에 뿌림
        Parameters:
        response - HttpServletResponse
        class_id - DB 상의 클래스 아이디
      • uploadCustom

        @RequestMapping(value="/uploadCustom",
                        method=POST)
        @ResponseBody
        public java.lang.String uploadCustom​(@RequestParam("customFile")
                                             java.util.List<org.springframework.web.multipart.MultipartFile> multipartFile,
                                             @RequestParam("pack")
                                             java.lang.String pack)
                                      throws java.lang.Exception
        커스텀 라이브러리를 서버 스토리지에 업로드하고 DB에 등록함
        Parameters:
        multipartFile - 라이브러리 파일(jar, class 파일)
        pack - 패키지명(class 파일인 경우에만 해당)
        Returns:
        결과값
        Throws:
        java.lang.Exception - 예외
      • getAllCustomByCreator

        @GetMapping("getAllCustomByCreator")
        @ResponseBody
        public java.util.List<CustomLibrary> getAllCustomByCreator()
        사용자가 추가한 라이브러리 목록을 가져옴
        Returns:
        사용자가 추가한 라이브러리 목록
      • deleteCustomLibrary

        @PostMapping("deleteCustomLibrary")
        @ResponseBody
        public int deleteCustomLibrary​(CustomLibrary customLibrary)
        해당되는 커스텀 라이브러리 파일을 삭제하고 DB에서도 삭제함
        Parameters:
        customLibrary - 삭제할 CustomLibrary 객체
        Returns:
        성공 여부
      • getRuleChange

        @GetMapping("getRuleChange")
        public java.lang.String getRuleChange​(org.springframework.ui.Model model,
                                              int bottom_level_id,
                                              int prev_bottom_level_id)
        룰의 버전별 변화(수정 전/수정 후)를 가져옴
        Parameters:
        model - model jsp에 넘겨줄 Model
        bottom_level_id - 룰 소분류 아이디
        prev_bottom_level_id - 룰 버전 관리 목록 아이디
        Returns:
        룰의 버전별 변화(수정 전/수정 후)