Interface RuleService

  • All Known Implementing Classes:
    RuleServiceImpl

    public interface RuleService
    전사규칙에 관한 Service Interface
    Version:
    1.0
    Author:
    Yeonhee Kim
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      int deleteCustomLibrary​(CustomLibrary customLibrary)
      해당되는 커스텀 라이브러리 파일을 삭제하고 DB에서도 삭제함
      int deleteRule​(java.lang.String level, Rule rule)
      대분류/중분류/소분류 아이디로 해당되는 항목을 삭제함
      java.util.List<CustomLibrary> getAllCustomLibraryByCreator​(java.lang.String creator)
      사용자 아이디로 사용자가 추가한 커스텀 라이브러리 목록을 가져옴
      java.util.List<RuleLog> getAllRuleLogDetailByUsingLogNo​(int using_log_no)
      사용 기록 번호로 디테일한 룰 로그 목록을 가져옴
      java.util.Map<java.lang.String,​java.lang.Object> getApiDesc​(int class_id)
      클래스 아이디로 클래스 정보, 필드 정보, 생성자 정보, 메소드 정보를 가져옴
      ResponseData getPrevRuleVersionList​(int bottom_level_id, java.lang.String function_name, int current_page_no, int count_per_page, int count_per_list, java.lang.String search_word)
      해당되는 룰의 버전 관리 목록을 페이징 처리하여 가져옴
      Rule getRuleBottomLevel​(int bottom_level_id)
      bottom level id 로 룰 가져오기
      java.util.List<Rule> getRuleCategory​(java.lang.String top_level_id, java.lang.String middle_level_id)
      전사규칙 대분류, 중분류, 소분류 카테고리 리스트를 반환함
      java.util.List<Rule> getRuleChange​(int bottom_level_id, int prev_bottom_level_id)
      룰의 버전별 변화(수정 전/수정 후)를 가져옴
      java.util.List<Rule> getRuleList​(java.lang.String top_level_id, java.lang.String middle_level_id, java.lang.String bottom_level_id)
      해당되는 전사규칙 리스트를 가지고 옴
      ResponseData getRuleListByPaging​(java.lang.String rule_type, java.lang.String top_level_id, java.lang.String middle_level_id, java.lang.String bottom_level_id, java.lang.String function_name, int current_page_no, int count_per_page, int count_per_list, java.lang.String search_word)
      선택된 카테고리에 해당되는 전사규칙 리스트를 조인해서 가져옴
      ResponseData getRuleLog​(int using_log_no, java.lang.String function_name, int current_page_no, int count_per_page, int count_per_list, java.lang.String search_word, java.lang.String log_type, java.util.Map<java.lang.String,​java.lang.Object> searchMap)
      룰 로그 테이블을 페이징 처리하여 가져옴
      java.lang.String registerCustomLibrary​(CustomLibrary customLibrary)
      사용자가 import하고자 하는 커스텀 라이브러리를 등록함
      int registerRule​(java.lang.String level, Rule rule)
      대분류/중분류/소분류를 DB에 등록함
      void runRuleCompiler​(java.util.List<Rule> list)
      Rule 클래스 파일을 실행시킴
      java.util.Map<java.lang.String,​java.lang.Object> updateRuleContents​(java.lang.String presentVersion, Rule rule)
      사용자가 입력한 Rule 코드를 DB에 업데이트함
      void uploadCustomLibrary​(java.util.List<org.springframework.web.multipart.MultipartFile> customFile, java.lang.String class_package)
      사용자가 import하고자 하는 커스텀 라이브러리 파일을 업로드함
    • Method Detail

      • getRuleCategory

        java.util.List<Rule> getRuleCategory​(java.lang.String top_level_id,
                                             java.lang.String middle_level_id)
        전사규칙 대분류, 중분류, 소분류 카테고리 리스트를 반환함
        Parameters:
        top_level_id - 전사규칙 대분류 아이디
        middle_level_id - 전사규칙 중분류 아이디
        Returns:
        전사규칙 대분류, 중분류, 소분류 카테고리 리스트
      • getRuleList

        java.util.List<Rule> getRuleList​(java.lang.String top_level_id,
                                         java.lang.String middle_level_id,
                                         java.lang.String bottom_level_id)
        해당되는 전사규칙 리스트를 가지고 옴
        Parameters:
        top_level_id - 전사규칙 대분류 아이디
        middle_level_id - 전사규칙 중분류 아이디
        bottom_level_id - 전사규칙 소분류 아이디
        Returns:
        해당되는 전사규칙 리스트
      • getRuleListByPaging

        ResponseData getRuleListByPaging​(java.lang.String rule_type,
                                         java.lang.String top_level_id,
                                         java.lang.String middle_level_id,
                                         java.lang.String bottom_level_id,
                                         java.lang.String function_name,
                                         int current_page_no,
                                         int count_per_page,
                                         int count_per_list,
                                         java.lang.String search_word)
        선택된 카테고리에 해당되는 전사규칙 리스트를 조인해서 가져옴
        Parameters:
        rule_type - 룰 타입(전체/SQL/메서드)
        top_level_id - 전사규칙 대분류 아이디
        middle_level_id - 전사규칙 중분류 아이디
        bottom_level_id - 전사규칙 소분류 아이디
        function_name - 페이지의 번호를 클릭했을 때 호출되는 자바스크립트 함수명 또는 게시글 조회를 요청하는 함수명을 저장할 변수
        current_page_no - 현재 화면에 출력되고 있는 페이지 번호 또는 페이지의 번호를 클릭했을 때에 번호를 저장할 변수
        count_per_page - 한 화면에 출력되는 페이지의 수를 저장할 변수
        count_per_list - 한 화면에 출력되는 게시글의 수를 저장할 변수
        search_word - 검색어
        Returns:
        선택된 카테고리에 해당되는 전사규칙 리스트
      • getRuleLog

        ResponseData getRuleLog​(int using_log_no,
                                java.lang.String function_name,
                                int current_page_no,
                                int count_per_page,
                                int count_per_list,
                                java.lang.String search_word,
                                java.lang.String log_type,
                                java.util.Map<java.lang.String,​java.lang.Object> searchMap)
        룰 로그 테이블을 페이징 처리하여 가져옴
        Parameters:
        using_log_no - RuleLog 테이블의 외래키인 using_log_no
        function_name - 페이지의 번호를 클릭했을 때 호출되는 자바스크립트 함수명 또는 게시글 조회를 요청하는 함수명을 저장할 변수
        current_page_no - 현재 화면에 출력되고 있는 페이지 번호 또는 페이지의 번호를 클릭했을 때에 번호를 저장할 변수
        count_per_page - 한 화면에 출력되는 페이지의 수를 저장할 변수
        count_per_list - 한 화면에 출력되는 게시글의 수를 저장할 변수
        search_word - 검색어
        log_type - 상세 검색 타입(사용자 아이디/사용 내역/IP 주소/접속 시간) 중 하나
        searchMap - 상세 검색어(사용자 아이디/사용 내역/IP 주소/접속 시간) 값을 담고 있는 Map
        Returns:
        룰 로그 테이블
      • getPrevRuleVersionList

        ResponseData getPrevRuleVersionList​(int bottom_level_id,
                                            java.lang.String function_name,
                                            int current_page_no,
                                            int count_per_page,
                                            int count_per_list,
                                            java.lang.String search_word)
        해당되는 룰의 버전 관리 목록을 페이징 처리하여 가져옴
        Parameters:
        bottom_level_id - 룰 소분류 아이디
        function_name - 페이지의 번호를 클릭했을 때 호출되는 자바스크립트 함수명 또는 게시글 조회를 요청하는 함수명을 저장할 변수
        current_page_no - 현재 화면에 출력되고 있는 페이지 번호 또는 페이지의 번호를 클릭했을 때에 번호를 저장할 변수
        count_per_page - 한 화면에 출력되는 페이지의 수를 저장할 변수
        count_per_list - 한 화면에 출력되는 게시글의 수를 저장할 변수
        search_word - 검색어
        Returns:
        해당되는 룰의 버전 관리 목록
      • getRuleChange

        java.util.List<Rule> getRuleChange​(int bottom_level_id,
                                           int prev_bottom_level_id)
        룰의 버전별 변화(수정 전/수정 후)를 가져옴
        Parameters:
        bottom_level_id - 룰 소분류 아이디
        prev_bottom_level_id - 룰 버전 관리 목록 아이디
        Returns:
        룰의 버전별 변화(수정 전/수정 후)
      • getAllRuleLogDetailByUsingLogNo

        java.util.List<RuleLog> getAllRuleLogDetailByUsingLogNo​(int using_log_no)
        사용 기록 번호로 디테일한 룰 로그 목록을 가져옴
        Parameters:
        using_log_no - 사용 기록 번호
        Returns:
        디테일한 룰 로그 목록
      • registerRule

        int registerRule​(java.lang.String level,
                         Rule rule)
        대분류/중분류/소분류를 DB에 등록함
        Parameters:
        level - 해당되는 분류(대분류/중분류/소분류)
        rule - DB 등록을 위한 Rule 객체
        Returns:
        DB에 등록한 row의 수
      • deleteRule

        int deleteRule​(java.lang.String level,
                       Rule rule)
        대분류/중분류/소분류 아이디로 해당되는 항목을 삭제함
        Parameters:
        level - 해당되는 분류(대분류/중분류/소분류)
        rule - 대분류/중분류/소분류 아이디
        Returns:
        DB에서 삭제한 row의 수
      • getRuleBottomLevel

        Rule getRuleBottomLevel​(int bottom_level_id)
        bottom level id 로 룰 가져오기
        Parameters:
        bottom_level_id - 가져올 데이터의 bottom_level_id
        Returns:
        Rule
      • updateRuleContents

        java.util.Map<java.lang.String,​java.lang.Object> updateRuleContents​(java.lang.String presentVersion,
                                                                                  Rule rule)
                                                                           throws java.lang.Exception
        사용자가 입력한 Rule 코드를 DB에 업데이트함
        Parameters:
        presentVersion - 현재 룰 버전(버전을 수정했는지 검사할 때 사용)
        rule - 코드 업데이트를 위한 Rule 객체
        Returns:
        컴파일 성공 여부, DB 업데이트 여부, 실행 결과값 또는 예외 메세지
        Throws:
        java.lang.Exception - 예외
      • runRuleCompiler

        void runRuleCompiler​(java.util.List<Rule> list)
                      throws java.lang.Exception
        Rule 클래스 파일을 실행시킴
        Parameters:
        list - Rule 목록
        Throws:
        java.lang.Exception - 예외
      • getApiDesc

        java.util.Map<java.lang.String,​java.lang.Object> getApiDesc​(int class_id)
        클래스 아이디로 클래스 정보, 필드 정보, 생성자 정보, 메소드 정보를 가져옴
        Parameters:
        class_id - DB 상의 클래스 아이디
        Returns:
        클래스에 관한 전반적인 정보를 담은 Map
      • uploadCustomLibrary

        void uploadCustomLibrary​(java.util.List<org.springframework.web.multipart.MultipartFile> customFile,
                                 java.lang.String class_package)
                          throws java.lang.Exception
        사용자가 import하고자 하는 커스텀 라이브러리 파일을 업로드함
        Parameters:
        customFile - 사용자가 업로드한 커스텀 라이브러리 파일
        class_package - 클래스 파일일 경우 패키지명
        Throws:
        java.lang.Exception - 예외
      • registerCustomLibrary

        java.lang.String registerCustomLibrary​(CustomLibrary customLibrary)
        사용자가 import하고자 하는 커스텀 라이브러리를 등록함
        Parameters:
        customLibrary - 등록하고자 하는 커스텀 라이브러리 객체
        Returns:
        RuleLog에 등록될 메세지
      • getAllCustomLibraryByCreator

        java.util.List<CustomLibrary> getAllCustomLibraryByCreator​(java.lang.String creator)
        사용자 아이디로 사용자가 추가한 커스텀 라이브러리 목록을 가져옴
        Parameters:
        creator - 사용자 아이디
        Returns:
        사용자가 추가한 커스텀 라이브러리 목록
      • deleteCustomLibrary

        int deleteCustomLibrary​(CustomLibrary customLibrary)
        해당되는 커스텀 라이브러리 파일을 삭제하고 DB에서도 삭제함
        Parameters:
        customLibrary - 삭제할 CustomLibrary 객체
        Returns:
        DB에서 삭제된 row의 수