Get the next token without consuming it. @return XmlToken
()
| 117 | * @return {@link XmlToken} |
| 118 | */ |
| 119 | public XmlToken peek() throws IOException { |
| 120 | int p = peeked; |
| 121 | if (p == PEEKED_NONE) { |
| 122 | p = doPeek(); |
| 123 | } |
| 124 | |
| 125 | switch (p) { |
| 126 | case PEEKED_ELEMENT_BEGIN: |
| 127 | return XmlToken.ELEMENT_BEGIN; |
| 128 | |
| 129 | case PEEKED_ELEMENT_NAME: |
| 130 | return XmlToken.ELEMENT_NAME; |
| 131 | |
| 132 | case PEEKED_ELEMENT_END: |
| 133 | return XmlToken.ELEMENT_END; |
| 134 | |
| 135 | case PEEKED_ATTRIBUTE_NAME: |
| 136 | return XmlToken.ATTRIBUTE_NAME; |
| 137 | |
| 138 | case PEEKED_DOUBLE_QUOTED: |
| 139 | case PEEKED_SINGLE_QUOTED: |
| 140 | return XmlToken.ATTRIBUTE_VALUE; |
| 141 | |
| 142 | case PEEKED_ELEMENT_TEXT_CONTENT: |
| 143 | case PEEKED_CDATA: |
| 144 | return XmlToken.ELEMENT_TEXT_CONTENT; |
| 145 | |
| 146 | case PEEKED_EOF: |
| 147 | return XmlToken.END_OF_DOCUMENT; |
| 148 | default: |
| 149 | throw new AssertionError("Unknown XmlToken: Peeked = " + p); |
| 150 | } |
| 151 | } |
| 152 | |
| 153 | /** |
| 154 | * Actually do a peek. This method will return the peeked token and updates the internal varible |