OSDN Git Service

017d47da2d746b7b78022eef4560f09808ce8d79
[mikutoga/TogaGem.git] / src / main / java / jp / sourceforge / mikutoga / parser / pmd / PmdEngHandler.java
1 /*
2  * PMD english information handler
3  *
4  * License : The MIT License
5  * Copyright(c) 2010 MikuToga Partners
6  */
7
8 package jp.sourceforge.mikutoga.parser.pmd;
9
10 import jp.sourceforge.mikutoga.parser.LoopHandler;
11 import jp.sourceforge.mikutoga.parser.MmdFormatException;
12 import jp.sourceforge.mikutoga.parser.ParseStage;
13
14 /**
15  * PMDモデルの英語情報の通知用ハンドラ。
16  */
17 public interface PmdEngHandler extends LoopHandler {
18
19     /**
20      * 英語情報パースステージ。
21      */
22     class PmdEngStage extends ParseStage{
23         /** コンストラクタ。 */
24         PmdEngStage(){ super(); return; }
25     }
26
27     /** ボーン英語名抽出ループ。 */
28     ParseStage ENGBONE_LIST = new PmdEngStage();
29
30     /** モーフ英語名抽出ループ。 */
31     ParseStage ENGMORPH_LIST = new PmdEngStage();
32
33     /** ボーングループ英語名抽出グループ。 */
34     ParseStage ENGBONEGROUP_LIST = new PmdEngStage();
35
36     /**
37      * PMD英語情報の有無の通知を受け取る。
38      * @param hasEnglishInfo 英語情報が含まれればtrue
39      * @throws MmdFormatException 不正フォーマットによる
40      * パース処理の中断をパーサに指示
41      */
42     void pmdEngEnabled(boolean hasEnglishInfo) throws MmdFormatException;
43
44     /**
45      * PMD英語基本情報の通知を受け取る。
46      * @param modelName モデル名
47      * @param description モデルの説明文。改行CRLFは"\n"に変換される。
48      * @throws MmdFormatException 不正フォーマットによる
49      * パース処理の中断をパーサに指示
50      */
51     void pmdEngModelInfo(String modelName, String description)
52             throws MmdFormatException;
53
54     /**
55      * 英語ボーン名の通知を受け取る。
56      * {@link #ENGBONE_LIST}ループの構成要素
57      * @param boneName 英語ボーン名
58      * @throws MmdFormatException 不正フォーマットによる
59      * パース処理の中断をパーサに指示
60      */
61     void pmdEngBoneInfo(String boneName) throws MmdFormatException;
62
63     /**
64      * 英語モーフ名の通知を受け取る。
65      * モーフ名「base」に対応する英語名は通知されない。
66      * {@link #ENGMORPH_LIST}ループの構成要素
67      * @param morphName 英語モーフ名
68      * @throws MmdFormatException 不正フォーマットによる
69      * パース処理の中断をパーサに指示
70      */
71     void pmdEngMorphInfo(String morphName) throws MmdFormatException;
72
73     /**
74      * 英語ボーングループ名の通知を受け取る。
75      * {@link #ENGBONEGROUP_LIST}ループの構成要素
76      * @param groupName 英語ボーングループ名
77      * @throws MmdFormatException 不正フォーマットによる
78      * パース処理の中断をパーサに指示
79      */
80     void pmdEngBoneGroupInfo(String groupName) throws MmdFormatException;
81
82 }