JsonToken token = xmlParser.nextToken(); if (token == JsonToken.FIELD_NAME) { String fieldName = xmlParser.getValueAsString(); token = xmlParser.nextToken(); firstElementSkipped = true; "true".equalsIgnoreCase(xmlParser.getValueAsString())) { token = xmlParser.nextToken(); firstElementSkipped = false;
@Override protected FromXmlParser _createParser(InputStream in, IOContext ctxt) throws IOException { XMLStreamReader sr; try { sr = _xmlInputFactory.createXMLStreamReader(in); sr = _initializeXmlReader(sr); } catch (XMLStreamException e) { return StaxUtil.throwXmlAsIOException(e); } FromXmlParser xp = new FromXmlParser(ctxt, _generatorFeatures, _xmlGeneratorFeatures, _objectCodec, sr); if (_cfgNameForTextElement != null) { xp.setXMLTextElementName(_cfgNameForTextElement); } return xp; }
@Override public byte[] getBinaryValue(Base64Variant b64variant) throws IOException { if (_currToken != JsonToken.VALUE_STRING && (_currToken != JsonToken.VALUE_EMBEDDED_OBJECT || _binaryValue == null)) { _reportError("Current token ("+_currToken+") not VALUE_STRING or VALUE_EMBEDDED_OBJECT, can not access as binary"); } /* To ensure that we won't see inconsistent data, better clear up * state... */ if (_binaryValue == null) { try { _binaryValue = _decodeBase64(b64variant); } catch (IllegalArgumentException iae) { throw _constructError("Failed to decode VALUE_STRING as base64 ("+b64variant+"): "+iae.getMessage()); } } return _binaryValue; }
@SuppressWarnings("resource") protected byte[] _decodeBase64(Base64Variant b64variant) throws IOException { ByteArrayBuilder builder = _getByteArrayBuilder(); final String str = getText(); _decodeBase64(str, builder, b64variant); return builder.toByteArray(); }
JsonToken token = xmlParser.getCurrentToken(); token = xmlParser.nextToken(); return getJsonManager().create(); token = xmlParser.nextToken(); if (token != JsonToken.FIELD_NAME) { throw new RuntimeException("Expecting a FIELD_NAME token here, got : " + token); String fieldName = xmlParser.getValueAsString(); token = xmlParser.nextToken(); "true".equalsIgnoreCase(xmlParser.getValueAsString())) { token = xmlParser.nextToken(); return deserializeJsonArray(xmlParser, context); firstValue = deserializeObjectOrArray(xmlParser, context); } else { firstValue = xmlParser.readValueAs(Object.class); token = xmlParser.nextToken(); return deserializeJsonObject(xmlParser, context,
@Override public void close() throws IOException { if (!_closed) { _closed = true; try { if (_ioContext.isResourceManaged() || isEnabled(JsonParser.Feature.AUTO_CLOSE_SOURCE)) { _xmlTokens.closeCompletely(); } else { _xmlTokens.close(); } } finally { // as per [JACKSON-324], do in finally block // Also, internal buffer(s) can now be released as well _releaseBuffers(); } } }
@Override public final String getValueAsString() throws IOException { return getValueAsString(null); }
/** * Method called when an EOF is encountered between tokens. * If so, it may be a legitimate EOF, but only iff there * is no open non-root context. */ @Override protected void _handleEOF() throws JsonParseException { if (!_parsingContext.inRoot()) { String marker = _parsingContext.inArray() ? "Array" : "Object"; _reportInvalidEOF(String.format( ": expected close marker for %s (start marker at %s)", marker, _parsingContext.getStartLocation(_ioContext.getSourceReference())), null); } }
return _currText; _updateState(t); return null;
JsonToken token = xmlParser.getCurrentToken(); while (token == JsonToken.FIELD_NAME || firstElementSkipped) { String tokenName = xmlParser.getValueAsString(); token = xmlParser.nextToken(); } else { firstElementSkipped = false; token = xmlParser.nextToken(); if (token != JsonToken.FIELD_NAME) { throw new RuntimeException("Expecting a FIELD_NAME token here, got : " + token); String fieldName = xmlParser.getValueAsString(); token = xmlParser.nextToken(); if (token == JsonToken.VALUE_NULL) { Object value = xmlParser.readValueAs(Object.class); jsonObject.set(fieldName, value); token = xmlParser.nextToken(); Object value = xmlParser.readValueAs(Object.class); jsonArray.add(value); token = xmlParser.nextToken();
@SuppressWarnings("resource") protected byte[] _decodeBase64(Base64Variant b64variant) throws IOException { ByteArrayBuilder builder = _getByteArrayBuilder(); final String str = getText(); _decodeBase64(str, builder, b64variant); return builder.toByteArray(); }
@Override public void close() throws IOException { if (!_closed) { _closed = true; try { if (_ioContext.isResourceManaged() || isEnabled(StreamReadFeature.AUTO_CLOSE_SOURCE)) { _xmlTokens.closeCompletely(); } else { _xmlTokens.close(); } } catch (XMLStreamException e) { StaxUtil.throwAsParseException(e, this); } finally { // Also, internal buffer(s) can now be released as well _releaseBuffers(); } } }
@Override public final String getValueAsString() throws IOException { return getValueAsString(null); }
/** * Method called when an EOF is encountered between tokens. * If so, it may be a legitimate EOF, but only iff there * is no open non-root context. */ @Override protected void _handleEOF() throws JsonParseException { if (!_parsingContext.inRoot()) { String marker = _parsingContext.inArray() ? "Array" : "Object"; _reportInvalidEOF(String.format( ": expected close marker for %s (start marker at %s)", marker, _parsingContext.getStartLocation(_ioContext.getSourceReference())), null); } }
return _currText; _updateState(t); return null;
@Override protected FromXmlParser _createParser(Reader r, IOContext ctxt) throws IOException { XMLStreamReader sr; try { sr = _xmlInputFactory.createXMLStreamReader(r); sr = _initializeXmlReader(sr); } catch (XMLStreamException e) { return StaxUtil.throwXmlAsIOException(e); } FromXmlParser xp = new FromXmlParser(ctxt, _generatorFeatures, _xmlGeneratorFeatures, _objectCodec, sr); if (_cfgNameForTextElement != null) { xp.setXMLTextElementName(_cfgNameForTextElement); } return xp; }
JsonToken token = xmlParser.getCurrentToken(); while (token == JsonToken.FIELD_NAME) { String fieldName = xmlParser.getValueAsString(); if (StringUtils.isBlank(fieldName)) { throw new RuntimeException("A Json object can't have a property with an empty name. " + token = xmlParser.nextToken(); jsonObject.set(fieldName, deserializeObjectOrArray(xmlParser, context)); } else { Object value = xmlParser.readValueAs(Object.class); token = xmlParser.nextToken();
@Override public byte[] getBinaryValue(Base64Variant b64variant) throws IOException { if (_currToken != JsonToken.VALUE_STRING && (_currToken != JsonToken.VALUE_EMBEDDED_OBJECT || _binaryValue == null)) { _reportError("Current token ("+_currToken+") not VALUE_STRING or VALUE_EMBEDDED_OBJECT, can not access as binary"); } /* To ensure that we won't see inconsistent data, better clear up * state... */ if (_binaryValue == null) { try { _binaryValue = _decodeBase64(b64variant); } catch (IllegalArgumentException iae) { throw _constructError("Failed to decode VALUE_STRING as base64 ("+b64variant+"): "+iae.getMessage()); } } return _binaryValue; }