001 /*
002 * To change this template, choose Tools | Templates
003 * and open the template in the editor.
004 */
005
006 package org.util.xml.element;
007
008 /**
009 *
010 * @author masaru
011 */
012 public class TextElement extends Element {
013
014 private String value_;
015 private boolean is_comment_;
016 private boolean is_cdata_;
017 private boolean is_tag_;
018
019 @Override public boolean isTagElement() { return false; }
020 @Override public boolean isTextElement() { return true; }
021
022 public TextElement(String value) {
023 setValue(value);
024 }
025
026 public boolean isCommentTag() {
027 return is_comment_;
028 }
029 public void setCommenTag(boolean is_comment) {
030 is_comment_ = is_comment;
031 is_cdata_ = false;
032 if(is_comment) is_tag_ = true;
033 }
034
035 public boolean isCDATATag() {
036 return is_cdata_;
037 }
038 public void setCDATATag(boolean is_cdata) {
039 is_cdata_ = is_cdata;
040 is_comment_ = !is_cdata;
041 if(is_cdata) is_tag_ = true;
042 }
043
044 public boolean isTag() {
045 return is_tag_;
046 }
047 public void setTag(boolean is_tag) {
048 is_tag_ = is_tag;
049 if(!is_tag) {
050 is_cdata_ = false;
051 is_comment_ = false;
052 }
053 }
054
055 public void setValue(String value) {
056 value_ = value;
057 }
058 public String getValue() {
059 return value_;
060 }
061
062 public String toString() {
063 if(is_cdata_)
064 return "<![CDATA["+getValue()+"]]>\n";
065 else if(is_comment_)
066 return "<!--"+getValue()+"-->\n";
067 else if(is_tag_)
068 return "<!"+getValue()+">\n";
069 else
070 return getValue();
071 }
072 }