OSDN Git Service

checkstyle対応
[mikutoga/Pmd2XML.git] / src / main / java / jp / sfjp / mikutoga / pmd / model / MorphPart.java
1 /*
2  * morph information
3  *
4  * License : The MIT License
5  * Copyright(c) 2010 MikuToga Partners
6  */
7
8 package jp.sfjp.mikutoga.pmd.model;
9
10 import java.util.ArrayList;
11 import java.util.Iterator;
12 import java.util.List;
13 import jp.sfjp.mikutoga.corelib.I18nText;
14 import jp.sfjp.mikutoga.pmd.MorphType;
15
16 /**
17  * 個別モーフ情報。
18  */
19 public class MorphPart implements SerialNumbered, Iterable<MorphVertex> {
20
21     private final I18nText morphName = new I18nText();
22
23     private MorphType type;
24
25     private final List<MorphVertex> morphVertexList =
26             new ArrayList<MorphVertex>();
27
28     private int morphSerialNo = -1;
29
30
31     /**
32      * コンストラクタ。
33      */
34     public MorphPart(){
35         super();
36         return;
37     }
38
39
40     /**
41      * モーフ名を返す。
42      * @return モーフ名
43      */
44     public I18nText getMorphName(){
45         return this.morphName;
46     }
47
48     /**
49      * モーフ種別を設定する。
50      * @param typeArg モーフ種別
51      * @throws NullPointerException 引数がnull
52      */
53     public void setMorphType(MorphType typeArg) throws NullPointerException{
54         if(typeArg == null) throw new NullPointerException();
55         this.type = typeArg;
56         return;
57     }
58
59     /**
60      * モーフ種別を返す。
61      * @return モーフ種別。
62      */
63     public MorphType getMorphType(){
64         return this.type;
65     }
66
67     /**
68      * モーフ頂点情報リストを返す。
69      * @return モーフ頂点情報リスト
70      */
71     public List<MorphVertex> getMorphVertexList(){
72         return this.morphVertexList;
73     }
74
75     /**
76      * {@inheritDoc}
77      * @return {@inheritDoc}
78      */
79     @Override
80     public Iterator<MorphVertex> iterator(){
81         return this.morphVertexList.iterator();
82     }
83
84     /**
85      * {@inheritDoc}
86      * @param num {@inheritDoc}
87      */
88     @Override
89     public void setSerialNumber(int num){
90         this.morphSerialNo = num;
91         return;
92     }
93
94     /**
95      * {@inheritDoc}
96      * @return {@inheritDoc}
97      */
98     @Override
99     public int getSerialNumber(){
100         return this.morphSerialNo;
101     }
102
103     @Override
104     public String toString(){
105         StringBuilder result = new StringBuilder();
106
107         result.append("Morph(").append(this.morphName).append(") ");
108         result.append("type=").append(this.type);
109         result.append(" vertexNum=").append(this.morphVertexList.size());
110
111         return result.toString();
112     }
113
114 }