private String parseMember(int[][] set, int end) throws URISyntaxException { int start = pos; while (true) { int chr = peek(); if (chr == EOF || chr == end) { break; } else if (isMember(set, chr)) { advance(1); } else { break; } } return iri.substring(start, pos); }
private String parseMember(int[][] set, int end) throws URISyntaxException { int start = pos; while (true) { int chr = peek(); if (chr == EOF || chr == end) { break; } else if (isMember(set, chr)) { advance(1); } else { break; } } return iri.substring(start, pos); }
private String parseUserInfo() throws URISyntaxException { int start = pos; String userinfo = parsePctEncoded(uchar, '@', '/'); if ('@' == peek()) { advance(1); return userinfo; } else { pos = start; // reset return null; } }
private String parseUserInfo() throws URISyntaxException { int start = pos; String userinfo = parsePctEncoded(uchar, '@', '/'); if ('@' == peek()) { advance(1); return userinfo; } else { pos = start; // reset return null; } }
private String parseMember(int[][] set, int end) throws URISyntaxException { int start = pos; while (true) { int chr = peek(); if (chr == EOF || chr == end) { break; } else if (isMember(set, chr)) { advance(1); } else { break; } } return iri.substring(start, pos); }
private String parseUserInfo() throws URISyntaxException { int start = pos; String userinfo = parsePctEncoded(uchar, '@', '/'); if ('@' == peek()) { advance(1); return userinfo; } else { pos = start; // reset return null; } }
private String parsePctEncoded(int[][] set, int end1, int end2) throws URISyntaxException { int start = pos; while (true) { int chr = peek(); if (chr == EOF || chr == end1 || chr == end2) { break; // optimize end character } else if (('a' <= chr && chr <= 'z') || ('A' <= chr && chr <= 'Z') || ('0' <= chr && chr <= '9')) { advance(1); } else if ('%' == chr) { if (Arrays.binarySearch(HEXDIG, peek(1)) >= 0 && Arrays.binarySearch(HEXDIG, peek(2)) >= 0) { advance(3); } else { throw error("Illegal percent encoding"); } } else if (isMember(set, chr)) { advance(1); } else { break; } } return iri.substring(start, pos); }
private String parsePctEncoded(int[][] set, int end1, int end2) throws URISyntaxException { int start = pos; while (true) { int chr = peek(); if (chr == EOF || chr == end1 || chr == end2) { break; // optimize end character } else if (('a' <= chr && chr <= 'z') || ('A' <= chr && chr <= 'Z') || ('0' <= chr && chr <= '9')) { advance(1); } else if ('%' == chr) { if (Arrays.binarySearch(HEXDIG, peek(1)) >= 0 && Arrays.binarySearch(HEXDIG, peek(2)) >= 0) { advance(3); } else { throw error("Illegal percent encoding"); } } else if (isMember(set, chr)) { advance(1); } else { break; } } return iri.substring(start, pos); }
private String parsePctEncoded(int[][] set, int end1, int end2) throws URISyntaxException { int start = pos; while (true) { int chr = peek(); if (chr == EOF || chr == end1 || chr == end2) { break; // optimize end character } else if (('a' <= chr && chr <= 'z') || ('A' <= chr && chr <= 'Z') || ('0' <= chr && chr <= '9')) { advance(1); } else if ('%' == chr) { if (Arrays.binarySearch(HEXDIG, peek(1)) >= 0 && Arrays.binarySearch(HEXDIG, peek(2)) >= 0) { advance(3); } else { throw error("Illegal percent encoding"); } } else if (isMember(set, chr)) { advance(1); } else { break; } } return iri.substring(start, pos); }
private String parseScheme() throws URISyntaxException { if (isMember(ALPHA, peek())) { int start = pos; String scheme = parseMember(schar, ':'); if (':' == peek()) { advance(1); return scheme; } else { pos = start; // reset } } return null; }
private String parseScheme() throws URISyntaxException { if (isMember(ALPHA, peek())) { int start = pos; String scheme = parseMember(schar, ':'); if (':' == peek()) { advance(1); return scheme; } else { pos = start; // reset } } return null; }
private String parseScheme() throws URISyntaxException { if (isMember(ALPHA, peek())) { int start = pos; String scheme = parseMember(schar, ':'); if (':' == peek()) { advance(1); return scheme; } else { pos = start; // reset } } return null; }