X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fjp%2Fsourceforge%2Fmikutoga%2Fpmd%2Fparser%2FPmdParserExt1.java;h=8d03132be046b48d1ea2e03c8b642c2bec630e75;hb=76042538efc2e40781b7cb25233749410dbe4695;hp=ce329ec143df6c15a6d44a1eadec458b6fe30e31;hpb=892da73921247c4e9a7f607228aaa8e54567f09a;p=mikutoga%2FTogaGem.git diff --git a/src/main/java/jp/sourceforge/mikutoga/pmd/parser/PmdParserExt1.java b/src/main/java/jp/sourceforge/mikutoga/pmd/parser/PmdParserExt1.java index ce329ec..8d03132 100644 --- a/src/main/java/jp/sourceforge/mikutoga/pmd/parser/PmdParserExt1.java +++ b/src/main/java/jp/sourceforge/mikutoga/pmd/parser/PmdParserExt1.java @@ -8,23 +8,23 @@ package jp.sourceforge.mikutoga.pmd.parser; import java.io.IOException; -import jp.sourceforge.mikutoga.parser.MmdFormatException; -import jp.sourceforge.mikutoga.parser.MmdInputStream; +import java.io.InputStream; +import jp.sfjp.mikutoga.bin.parser.MmdFormatException; /** * PMDモデルファイルのパーサ拡張その1。 - * ※英名対応 + *

※ 英名対応 */ public class PmdParserExt1 extends PmdParserBase { - private PmdEngHandler engHandler = null; + private PmdEngHandler engHandler = NullHandler.HANDLER; private boolean hasEnglishInfo = true; /** * コンストラクタ。 * @param source 入力ソース */ - public PmdParserExt1(MmdInputStream source){ + public PmdParserExt1(InputStream source){ super(source); return; } @@ -34,7 +34,11 @@ public class PmdParserExt1 extends PmdParserBase { * @param handler ハンドラ */ public void setEngHandler(PmdEngHandler handler){ - this.engHandler = handler; + if(handler == null){ + this.engHandler = NullHandler.HANDLER; + }else{ + this.engHandler = handler; + } return; } @@ -69,20 +73,16 @@ public class PmdParserExt1 extends PmdParserBase { throws IOException, MmdFormatException{ this.hasEnglishInfo = parseBoolean(); - if(this.engHandler != null){ - this.engHandler.pmdEngEnabled(this.hasEnglishInfo); - } + this.engHandler.pmdEngEnabled(this.hasEnglishInfo); if( ! this.hasEnglishInfo ) return; String modelName = - parseZeroTermWin31J(PmdLimits.MAXBYTES_MODELNAME); + parsePmdText(PmdLimits.MAXBYTES_MODELNAME); String description = - parseZeroTermWin31J(PmdLimits.MAXBYTES_MODELDESC); + parsePmdText(PmdLimits.MAXBYTES_MODELDESC); description = description.replace(CRLF, LF); - if(this.engHandler != null){ - this.engHandler.pmdEngModelInfo(modelName, description); - } + this.engHandler.pmdEngModelInfo(modelName, description); return; } @@ -96,16 +96,11 @@ public class PmdParserExt1 extends PmdParserBase { throws IOException, MmdFormatException{ int boneNum = getBoneCount(); - if(this.engHandler == null){ - skip(PmdLimits.MAXBYTES_BONENAME * boneNum); - return; - } - this.engHandler.loopStart(PmdEngHandler.ENGBONE_LIST, boneNum); for(int ct = 0; ct < boneNum; ct++){ String boneName = - parseZeroTermWin31J(PmdLimits.MAXBYTES_BONENAME); + parsePmdText(PmdLimits.MAXBYTES_BONENAME); this.engHandler.pmdEngBoneInfo(boneName); this.engHandler.loopNext(PmdEngHandler.ENGBONE_LIST); @@ -125,16 +120,11 @@ public class PmdParserExt1 extends PmdParserBase { throws IOException, MmdFormatException{ int morphNum = getMorphCount() - 1; // base は英名なし - if(this.engHandler == null){ - skip(PmdLimits.MAXBYTES_MORPHNAME * morphNum); - return; - } - this.engHandler.loopStart(PmdEngHandler.ENGMORPH_LIST, morphNum); for(int ct = 0; ct < morphNum; ct++){ String morphName = - parseZeroTermWin31J(PmdLimits.MAXBYTES_MORPHNAME); + parsePmdText(PmdLimits.MAXBYTES_MORPHNAME); this.engHandler.pmdEngMorphInfo(morphName); this.engHandler.loopNext(PmdEngHandler.ENGMORPH_LIST); @@ -154,16 +144,11 @@ public class PmdParserExt1 extends PmdParserBase { throws IOException, MmdFormatException{ int groupNum = getBoneGroupCount(); - if(this.engHandler == null){ - skip(PmdLimits.MAXBYTES_BONEGROUPNAME * groupNum); - return; - } - this.engHandler.loopStart(PmdEngHandler.ENGBONEGROUP_LIST, groupNum); for(int ct = 0; ct < groupNum; ct++){ String boneGroupName = - parseZeroTermWin31J(PmdLimits.MAXBYTES_BONEGROUPNAME); + parsePmdText(PmdLimits.MAXBYTES_BONEGROUPNAME); this.engHandler.pmdEngBoneGroupInfo(boneGroupName); this.engHandler.loopNext(PmdEngHandler.ENGBONEGROUP_LIST);