URI uriObject = new URI(uri);
if (uriObject.isAbsolute()) {
Pattern regexRequestUri = Pattern.compile(baseUri + "/([^/][^?]*)(\\?.*)?");
if (uriScanner.hasNext(regexRequestUri)) {
uriScanner.next(regexRequestUri);
MatchResult result = uriScanner.match();
if (result.groupCount() == 2) {
odataPathSegmentsAsString = result.group(1);
queryParametersAsString = result.group(2) != null ? result.group(2) : "";
} else {
uriScanner.close();
throw new BatchException(BatchException.INVALID_URI.addContent(currentLineNumber));
}
} else {
uriScanner.close();
throw new BatchException(BatchException.INVALID_URI.addContent(currentLineNumber));
}
} else {
Pattern regexRequestUri = Pattern.compile("([^/][^?]*)(\\?.*)?");
if (uriScanner.hasNext(regexRequestUri)) {
uriScanner.next(regexRequestUri);
MatchResult result = uriScanner.match();
if (result.groupCount() == 2) {
odataPathSegmentsAsString = result.group(1);
queryParametersAsString = result.group(2) != null ? result.group(2) : "";
} else {
uriScanner.close();
throw new BatchException(BatchException.INVALID_URI.addContent(currentLineNumber));
}
} else if (uriScanner.hasNext("/(.*)")) {