private void consumeEnd() { try { JsonToken jsonToken = input.nextToken(); if ( jsonToken == null ) return; if ( ! jsonToken.isStructEnd() ) { throw new RuntimeException("end of structure expected found:"+jsonToken+" : value:"+input.getValueAsString()+" fname:'"+input.getCurrentName()+"'"); } } catch (IOException e) { FSTUtil.<RuntimeException>rethrow(e); } }
private void processTokenNormal(JsonToken token, List<TokenBuffer> result) throws IOException { this.tokenBuffer.copyCurrentEvent(this.parser); if ((token.isStructEnd() || token.isScalarValue()) && this.objectDepth == 0 && this.arrayDepth == 0) { result.add(this.tokenBuffer); this.tokenBuffer = new TokenBuffer(this.parser); } }
private void consumeEnd() { try { JsonToken jsonToken = input.nextToken(); if ( jsonToken == null ) return; if ( ! jsonToken.isStructEnd() ) { throw new RuntimeException("end of structure expected found:"+jsonToken+" : value:"+input.getValueAsString()+" fname:'"+input.getCurrentName()+"'"); } } catch (IOException e) { FSTUtil.<RuntimeException>rethrow(e); } }
public List readJSonArr2List(List arrayTokens) throws IOException { JsonToken elem = input.nextToken(); while ( ! elem.isStructEnd() ) { if ( elem == JsonToken.VALUE_NUMBER_INT ) { arrayTokens.add(input.getLongValue()); } else if ( elem == JsonToken.VALUE_NUMBER_FLOAT ) { arrayTokens.add(input.getDoubleValue()); } else if ( elem == JsonToken.VALUE_TRUE ) { arrayTokens.add(true); } else if ( elem == JsonToken.VALUE_FALSE ) { arrayTokens.add(false); } else if ( elem == JsonToken.VALUE_NULL ) { arrayTokens.add(null); } else { arrayTokens.add(input.getText()); } elem = input.nextValue(); } return arrayTokens; }
private void processTokenNormal(JsonToken token, List<TokenBuffer> result) throws IOException { this.tokenBuffer.copyCurrentEvent(this.parser); if ((token.isStructEnd() || token.isScalarValue()) && this.objectDepth == 0 && this.arrayDepth == 0) { result.add(this.tokenBuffer); this.tokenBuffer = new TokenBuffer(this.parser); } }
protected Unknown createUnknownArray() throws IOException { unknownNestLevel++; List arrayTokens = new ArrayList(14); JsonToken elem = input.nextToken(); while ( ! elem.isStructEnd() ) { if ( elem == JsonToken.VALUE_NUMBER_INT ) { arrayTokens.add(input.getLongValue()); } else if ( elem == JsonToken.VALUE_NUMBER_FLOAT ) { arrayTokens.add(input.getDoubleValue()); } else if ( elem == JsonToken.VALUE_TRUE ) { arrayTokens.add(true); } else if ( elem == JsonToken.VALUE_FALSE ) { arrayTokens.add(false); } else if ( elem == JsonToken.VALUE_NULL ) { arrayTokens.add(null); } else if ( elem == JsonToken.VALUE_STRING ){ arrayTokens.add(input.getText()); } else if ( elem == JsonToken.START_OBJECT ) { arrayTokens.add( readUnknownObject() ); } else if ( elem == JsonToken.START_ARRAY ) { arrayTokens.add( createUnknownArray() ); } else { throw new RuntimeException("unexpected array content in Unknown array"); } elem = input.nextValue(); } unknownNestLevel--; return new Unknown().items(arrayTokens); }
/** * Need to override, re-implement similar to how method defined in * {@link com.fasterxml.jackson.core.base.ParserMinimalBase}, to keep * state correct here. */ @Override public JsonParser skipChildren() throws IOException { if ((_currToken != JsonToken.START_OBJECT) && (_currToken != JsonToken.START_ARRAY)) { return this; } int open = 1; // Since proper matching of start/end markers is handled // by nextToken(), we'll just count nesting levels here while (true) { JsonToken t = nextToken(); if (t == null) { // not ideal but for now, just return return this; } if (t.isStructStart()) { ++open; } else if (t.isStructEnd()) { if (--open == 0) { return this; } } } }
public List readJSonArr2List(List arrayTokens) throws IOException { JsonToken elem = input.nextToken(); while ( ! elem.isStructEnd() ) { if ( elem == JsonToken.VALUE_NUMBER_INT ) { arrayTokens.add(input.getLongValue()); } else if ( elem == JsonToken.VALUE_NUMBER_FLOAT ) { arrayTokens.add(input.getDoubleValue()); } else if ( elem == JsonToken.VALUE_TRUE ) { arrayTokens.add(true); } else if ( elem == JsonToken.VALUE_FALSE ) { arrayTokens.add(false); } else if ( elem == JsonToken.VALUE_NULL ) { arrayTokens.add(null); } else { arrayTokens.add(input.getText()); } elem = input.nextValue(); } return arrayTokens; }
} else if (t.isStructEnd()) { if (--open == 0) { return this;
protected Unknown createUnknownArray() throws IOException { unknownNestLevel++; List arrayTokens = new ArrayList(14); JsonToken elem = input.nextToken(); while ( ! elem.isStructEnd() ) { if ( elem == JsonToken.VALUE_NUMBER_INT ) { arrayTokens.add(input.getLongValue()); } else if ( elem == JsonToken.VALUE_NUMBER_FLOAT ) { arrayTokens.add(input.getDoubleValue()); } else if ( elem == JsonToken.VALUE_TRUE ) { arrayTokens.add(true); } else if ( elem == JsonToken.VALUE_FALSE ) { arrayTokens.add(false); } else if ( elem == JsonToken.VALUE_NULL ) { arrayTokens.add(null); } else if ( elem == JsonToken.VALUE_STRING ){ arrayTokens.add(input.getText()); } else if ( elem == JsonToken.START_OBJECT ) { arrayTokens.add( readUnknownObject() ); } else if ( elem == JsonToken.START_ARRAY ) { arrayTokens.add( createUnknownArray() ); } else { throw new RuntimeException("unexpected array content in Unknown array"); } elem = input.nextValue(); } unknownNestLevel--; return new Unknown().items(arrayTokens); }
/** * Need to override, re-implement similar to how method defined in * {@link com.fasterxml.jackson.core.base.ParserMinimalBase}, to keep * state correct here. */ @Override public JsonParser skipChildren() throws IOException { if ((_currToken != JsonToken.START_OBJECT) && (_currToken != JsonToken.START_ARRAY)) { return this; } int open = 1; // Since proper matching of start/end markers is handled // by nextToken(), we'll just count nesting levels here while (true) { JsonToken t = nextToken(); if (t == null) { // not ideal but for now, just return return this; } if (t.isStructStart()) { ++open; } else if (t.isStructEnd()) { if (--open == 0) { return this; } } } }
} else if (t.isStructEnd()) { if (--open == 0) { return this;
/** * Need to override, re-implement similar to how method defined in * {@link com.fasterxml.jackson.core.base.ParserMinimalBase}, to keep * state correct here. */ @Override public JsonParser skipChildren() throws IOException { if ((delegate.currentToken() != JsonToken.START_OBJECT) && (delegate.currentToken() != JsonToken.START_ARRAY)) { return this; } int open = 1; // Since proper matching of start/end markers is handled // by nextToken(), we'll just count nesting levels here while (true) { JsonToken t = nextToken(); if (t == null) { // not ideal but for now, just return return this; } if (t.isStructStart()) { ++open; } else if (t.isStructEnd()) { if (--open == 0) { return this; } } } }
boolean expectField = true; String field = null; while ( ! elem.isStructEnd() ) { if ( expectField ) { field = input.getValueAsString();
/** * Need to override, re-implement similar to how method defined in * {@link com.fasterxml.jackson.core.base.ParserMinimalBase}, to keep * state correct here. */ @Override public JsonParser skipChildren() throws IOException { if ((delegate.currentToken() != JsonToken.START_OBJECT) && (delegate.currentToken() != JsonToken.START_ARRAY)) { return this; } int open = 1; // Since proper matching of start/end markers is handled // by nextToken(), we'll just count nesting levels here while (true) { JsonToken t = nextToken(); if (t == null) { // not ideal but for now, just return return this; } if (t.isStructStart()) { ++open; } else if (t.isStructEnd()) { if (--open == 0) { return this; } } } }
boolean expectField = true; String field = null; while ( ! elem.isStructEnd() ) { if ( expectField ) { field = input.getValueAsString();
private int nestingOffset(JsonToken t) { if (t.isStructStart()) { return 1; } else if (t.isStructEnd()) { return -1; } else { return 0; } }
private static boolean isEmpty(byte[] buffer, int len) { if (len == 0) { return true; } // Test for "logically empty" (e.g. "{}" or "[]") try { JsonParser jp = JSON_FACTORY.createParser(buffer, 0, len); return jp.nextToken().isStructStart() && jp.nextToken().isStructEnd(); } catch (IOException e) { return false; } }
private void processTokenNormal(JsonToken token, List<TokenBuffer> result) throws IOException { this.tokenBuffer.copyCurrentEvent(this.parser); if ((token.isStructEnd() || token.isScalarValue()) && this.objectDepth == 0 && this.arrayDepth == 0) { result.add(this.tokenBuffer); this.tokenBuffer = new TokenBuffer(this.parser); } }
private void processTokenNormal(JsonToken token, List<TokenBuffer> result) throws IOException { this.tokenBuffer.copyCurrentEvent(this.parser); if ((token.isStructEnd() || token.isScalarValue()) && this.objectDepth == 0 && this.arrayDepth == 0) { result.add(this.tokenBuffer); this.tokenBuffer = new TokenBuffer(this.parser); } }