생성된 파일: 규칙 및 카테고리 확장

새 플러그인 프로젝트 마법사는 각 새 사용자 작성 코드 규칙에 대해 rule 확장자가 포함된 plugin.xml 파일을 생성합니다. 이 마법사는 규칙이 속해 있는 카테고리가 존재하지 않는 경우 category 확장자도 작성합니다.

확장은 사용자가 만든 새 규칙과 해당 카테고리를 Eclipse에 등록하는 데 사용됩니다. 그림 1에서는 rule 확장의 양식을 표시합니다.
그림 1. 사용자가 만든 규칙의 확장
<extension
    point="com.ibm.rsaz.analysis.core.analysisRule">
  <analysisRule
      category="category_id"
      class="rule_class"
      id="rule_class"
      label="rule_label"
      severity="1">
  </analysisRule>
</extension>
참고: 이 속성 값은 다음 표 1에 설명되어 있습니다.
카테고리가 없으면 마법사가 카테고리의 확장자도 plugin.xml 파일에 추가합니다. 그림 2에서는 category 확장의 양식을 보여줍니다.
그림 2. 사용자가 만든 규칙의 카테고리의 확장
<extension
    point="com.ibm.rsaz.analysis.core.analysisCategory">
  <analysisCategory
      class="com.ibm.rsaz.analysis.core.category.DefaultAnalysisCategory"
      id="category_ID"
      label="category_name"
      provider="codereview.egl.analysisProvider">
  </analysisCategory>
</extension>
참고: 이 속성 값은 다음 표 1에 설명되어 있습니다.
표 1플러그인 프로젝트 마법사에 입력한 값에서 <analysisRule><analysisCategory> 요소의 속성이 어떻게 파생되는지 보여줍니다.
  • <analysisRule> 요소에서 category, ruleclass, ruleidrulelabel 속성은 사용자가 마법사의 EGL 규칙 템플리트 페이지에 입력한 값으로 설정됩니다. 이 마법사는 규칙 ID를 설정할 때 ruleclass 값도 사용합니다.
  • <analysisCategory> 요소에서 idlabel 속성은 사용자가 마법사의 EGL 규칙 템플리트 페이지에 입력한 값으로 설정됩니다.
  • 패키지 이름은 새 플러그인 프로젝트 마법사의 컨텐츠 페이지에 있는 패키지 정의의 ID 필드에서 지정된 문자열로 설정됩니다. 이는 테이블의 예제 값 열에 com.example로 표시됩니다.
표 1. analysisRule 및 analysisCategory의 속성 값
속성: EGL 규칙 템플리트 마법사 페이지의 필드 예제 값:
analysisRule.category 카테고리 ID com.example.custom
analysisRule.ruleclass 규칙 클래스 com.example.EglRule
analysisRule.ruleid 규칙 클래스 com.example.EglRule
analysisRule.rulelabel 규칙 레이블 My custom EGL rule
analysisCategory.id 카테고리 ID com.example.custom
analysisCategory.label 카테고리 이름 Custom

피드백