/** */ String nextName() { if (this.tag == null) return null; if (this.offset >= this.length) return null; if (nextChar() == 0) return null; int nameOffset = this.offset; for (; this.offset < this.length; this.offset++) { char c = this.tag.charAt(this.offset); if (isEnd(c) || isSpace(c)) break; if (isEqual(c) && this.offset > nameOffset) break; } if (this.offset == nameOffset) return null; return this.tag.substring(nameOffset, this.offset); }
return null; TagScanner scanner = new TagScanner(data, 0, true); // one line String name = scanner.nextName(); if (name == null || !name.equalsIgnoreCase(MetaData.METADATA)) return null; boolean isStartSpan = false; boolean isEndSpan = false; name = scanner.nextName(); while (name != null) { String value = scanner.nextValue(); if (name.equalsIgnoreCase(MetaData.TYPE)) { if (value == null) isEndSpan = true; name = scanner.nextName(); return null; String metaData = null; int offset = scanner.getNextOffset(); // skip new line if (offset < data.length()) metaData = data.substring(offset);
/** */ int getNextOffset() { for (; this.offset < this.length; this.offset++) { char c = this.tag.charAt(this.offset); if (!isEnd(c)) break; } return this.offset; }
return null; char seperator = nextChar(); if (!isEqual(seperator)) return null; this.offset++; // skip '=' char quote = nextChar(); if (quote == 0) return null; if (isQuote(quote)) this.offset++; else for (; this.offset < this.length; this.offset++) { char c = this.tag.charAt(this.offset); if (isEnd(c)) { quote = 0; break; if (isSpace(c)) break;