code: private static HashMap<String, String[]> parseJsonErrorException(JsonParser parser) throws JsonParseException,
              IOException {
          HashMap<String, String[]> additionalDetails = new HashMap<String, String[]>();
  
          parser.nextToken();
          JsonUtilities.assertIsStartObjectJsonToken(parser);
  
          parser.nextToken();
          JsonUtilities.assertIsFieldNameJsonToken(parser);
  
          while (parser.getCurrentToken() != JsonToken.END_OBJECT) {
              if (parser.getCurrentName().equals(TableConstants.ErrorConstants.ERROR_MESSAGE)) {
                  parser.nextToken();
                  additionalDetails.put(TableConstants.ErrorConstants.ERROR_MESSAGE,
                          new String[] { parser.getValueAsString() });
              }
              else if (parser.getCurrentName().equals(TableConstants.ErrorConstants.ERROR_EXCEPTION_TYPE)) {
                  parser.nextToken();
                  additionalDetails.put(TableConstants.ErrorConstants.ERROR_EXCEPTION_TYPE,
                          new String[] { parser.getValueAsString() });
              }
              else if (parser.getCurrentName().equals(TableConstants.ErrorConstants.ERROR_EXCEPTION_STACK_TRACE)) {
                  parser.nextToken();
                  additionalDetails
                          .put(Constants.ERROR_EXCEPTION_STACK_TRACE, new String[] { parser.getValueAsString() });
              }
              parser.nextToken();
          }
  
          return additionalDetails;
      }
docs: Parses the error exception details from the Json-formatted response.
  
  @param parser
  the {@link JsonParser} to use for parsing
  @throws IOException
  if an error occurs while accessing the stream with Json.
  @throws JsonParseException
  if an error occurs while parsing the stream.