package jp.aonir.fuzzyxml.internal; import jp.aonir.fuzzyxml.FuzzyXMLElement; import jp.aonir.fuzzyxml.FuzzyXMLNode; public abstract class AbstractFuzzyXMLNode implements FuzzyXMLNode { private int _offset = -1; private int _length = -1; private FuzzyXMLNode _parent; private FuzzyXMLDocumentImpl _doc; // private String namespaceURI; // private String prefix; public AbstractFuzzyXMLNode() { super(); } public AbstractFuzzyXMLNode(FuzzyXMLNode parent, int offset, int length) { super(); setParentNode(parent); setOffset(offset); setLength(length); } // public void setNamespaceURI(String namespaceURI){ // this.namespaceURI = namespaceURI; // } // // public String getNamespaceURI(){ // return this.namespaceURI; // } // // public void setPrefix(String prefix){ // this.prefix = prefix; // } // // public String getPrefix(){ // return this.prefix; // } public void setLength(int length) { this._length = length; } public int getLength() { return _length; } public int getOffset() { return _offset; } public FuzzyXMLNode getParentNode() { return _parent; } public void setOffset(int offset) { this._offset = offset; } public void setParentNode(FuzzyXMLNode parent) { this._parent = parent; } /** * �c���[�̍X�V�C�x���g�𔭉΂��܂��B * * @param newText * @param offset * @param length */ protected void fireModifyEvent(String newText, int offset, int length) { // �܂��m�[�h���c���[�ɒlj�����Ă��Ȃ��ꍇ�͂Ȃɂ����Ȃ� FuzzyXMLDocumentImpl doc = getDocument(); if (doc == null) { return; } doc.fireModifyEvent(newText, offset, length); } /** * �m�[�h�̈ʒu�����X�V���܂��B�c���[�̕ύX�O�ɌĂяo���܂��B * * @param parent * @param offset * @param append */ protected void appendOffset(FuzzyXMLElement parent, int offset, int append) { // �܂��m�[�h���c���[�ɒlj�����Ă��Ȃ��ꍇ�͂Ȃɂ����Ȃ� FuzzyXMLDocumentImpl doc = getDocument(); if (doc == null) { return; } doc.appendOffset(parent, offset, append); } public void setDocument(FuzzyXMLDocumentImpl doc) { this._doc = doc; } public FuzzyXMLDocumentImpl getDocument() { return _doc; } public String toXMLString(RenderContext renderContext) { StringBuffer xmlBuffer = new StringBuffer(); RenderDelegate delegate = renderContext.getDelegate(); if (delegate != null) { delegate.beforeRender(renderContext, xmlBuffer); } if (delegate == null || delegate.renderNode(this, renderContext, xmlBuffer)) { toXMLString(renderContext, xmlBuffer); } if (delegate != null) { delegate.afterRender(renderContext, xmlBuffer); } return xmlBuffer.toString(); } public boolean isNonBreaking() { return true; } public boolean isHidden() { return false; } public boolean hasLineBreaks() { return true; } public boolean isSynthetic() { return false; } }