Пример #1
0
 private boolean nextTokenIs(String expectedNextToken) {
   if (!esonTokenizer.hasNext()) {
     return false;
   }
   String nextToken = esonTokenizer.peekNextToken();
   return StringUtils.equals(nextToken, expectedNextToken);
 }
Пример #2
0
 private String expectId(String idName) throws IllegalStateException {
   if (!esonTokenizer.hasNext()) {
     String errorMessage = (idName != null ? idName : "Id") + " expected, but end of ESON reached";
     LOGGER.error(errorMessage);
     throw new IllegalStateException(errorMessage);
   }
   return esonTokenizer.nextToken();
 }
Пример #3
0
 private void expectEndOfData() throws IllegalStateException {
   if (esonTokenizer.hasNext()) {
     String errorMessage =
         "End of ESON expected, but not reached. Next token is \""
             + esonTokenizer.nextToken()
             + "\"";
     LOGGER.error(errorMessage);
     throw new IllegalStateException(errorMessage);
   }
 }
Пример #4
0
  /** Basically this method is the implementation of => of the Value rule */
  private boolean nextIsNewObject() {
    if (!esonTokenizer.hasNext()) {
      return false;
    }
    String firstNextToken = esonTokenizer.peekNextToken();
    String secondNextToken = esonTokenizer.peekSecondNextToken();

    if (firstNextToken == null || secondNextToken == null) {
      return false;
    }

    return !isESONToken(firstNextToken) && secondNextToken.equals("{");
  }
Пример #5
0
 private String expectStringValue(String expectedStringName) throws IllegalStateException {
   if (!esonTokenizer.hasNext()) {
     String errorMessage =
         (expectedStringName != null ? expectedStringName : "Id")
             + " (string) expected, but end of ESON reached";
     LOGGER.error(errorMessage);
     throw new IllegalStateException(errorMessage);
   }
   // ESON grammar says a string is either a wrapped between single quote or double quote
   String quote = expectOneOfToken("\"", "'");
   String stringValue = esonTokenizer.nextToken();
   expectToken(quote);
   return stringValue;
 }
Пример #6
0
 private void expectToken(String token) throws IllegalStateException {
   String nextToken = esonTokenizer.nextToken();
   if (!StringUtils.equals(nextToken, token)) {
     String errorMessage =
         "The token \"" + token + "\" was expected, but the next token was \"" + nextToken + "\"";
     LOGGER.error(errorMessage);
     throw new IllegalStateException(errorMessage);
   }
 }
Пример #7
0
 private String expectOneOfToken(String... tokens) throws IllegalStateException {
   String nextToken = esonTokenizer.nextToken();
   for (String token : tokens) {
     if (StringUtils.equals(nextToken, token)) {
       return token;
     }
   }
   String errorMessage =
       "None of these token were found: "
           + StringUtils.join(tokens, ", ")
           + ". The next token is \""
           + nextToken
           + "\"";
   LOGGER.error(errorMessage);
   throw new IllegalStateException(errorMessage);
 }