4 * License : The MIT License
\r
5 * Copyright(c) 2008 olyutorskii
\r
8 package jp.sourceforge.jindolf.archiver;
\r
10 import java.io.IOException;
\r
11 import java.io.Writer;
\r
12 import jp.sourceforge.jindolf.corelib.TalkType;
\r
17 public class TalkData extends TopicData{
\r
19 private TalkType talkType = null;
\r
20 private AvatarData avatarData = null;
\r
21 private String xName;
\r
22 private String faceIconUri = null;
\r
38 public TalkType getTalkType(){
\r
39 return this.talkType;
\r
44 * @param talkType 発言種別
\r
46 public void setTalkType(TalkType talkType){
\r
47 this.talkType = talkType;
\r
55 public AvatarData getAvatarData(){
\r
56 return this.avatarData;
\r
61 * @param avatarData 発言Avatar
\r
63 public void setAvatarData(AvatarData avatarData){
\r
64 this.avatarData = avatarData;
\r
72 public String getXName(){
\r
78 * @param xName name属性値
\r
80 public void setXName(String xName){
\r
86 * 顔アイコン画像URI文字列を取得する。
\r
87 * @return 顔アイコン画像URI文字列
\r
89 public String getFaceIconUri(){
\r
90 return this.faceIconUri;
\r
94 * 顔アイコン画像URI文字列を設定する。
\r
95 * @param faceIconUri 顔アイコン画像URI文字列
\r
97 public void setFaceIconUri(String faceIconUri){
\r
98 this.faceIconUri = faceIconUri;
\r
106 public int getHour(){
\r
114 public void setHour(int hour){
\r
123 public int getMinute(){
\r
124 return this.minute;
\r
129 * @param minute 発言分
\r
131 public void setMinute(int minute){
\r
132 this.minute = minute;
\r
138 * @param writer 出力先
\r
139 * @throws IOException 出力エラー
\r
142 public void dumpXml(Writer writer) throws IOException{
\r
143 writer.append("<talk\n");
\r
146 switch(this.talkType){
\r
148 typeStr = "public";
\r
154 typeStr = "private";
\r
160 throw new IllegalArgumentException();
\r
163 XmlUtils.indent(writer, 1);
\r
164 XmlUtils.attrOut(writer, "type", typeStr);
\r
166 writer.append(' ');
\r
167 XmlUtils.attrOut(writer, "avatarId", this.avatarData.getAvatarId());
\r
168 writer.append('\n');
\r
170 XmlUtils.indent(writer, 1);
\r
171 XmlUtils.attrOut(writer, "xname", this.xName);
\r
173 writer.append(' ');
\r
174 XmlUtils.timeAttrOut(writer, "time", this.hour, this.minute);
\r
175 writer.append('\n');
\r
177 if( this.talkType != TalkType.GRAVE
\r
178 && ! this.faceIconUri.equals(this.avatarData.getFaceIconUri()) ){
\r
179 XmlUtils.indent(writer, 1);
\r
180 XmlUtils.attrOut(writer, "faceIconURI", this.faceIconUri);
\r
181 writer.append('\n');
\r
184 writer.append(">\n");
\r
188 writer.append("</talk>\n");
\r