List of usage examples for com.fasterxml.jackson.core JsonToken START_OBJECT
JsonToken START_OBJECT
To view the source code for com.fasterxml.jackson.core JsonToken START_OBJECT.
Click Source Link
From source file:org.lobid.lodmill.JsonDecoder.java
private void processTokens(JsonToken token) throws IOException, JsonParseException { JsonToken currentToken = token;//from ww w. j a va 2 s . c o m while (currentToken != null) { if (JsonToken.START_OBJECT == currentToken) { if (!STARTED) { getReceiver().startRecord(""); STARTED = true; } currentToken = processRecordContent(this.jsonParser.nextToken()); } LOG.debug("############################ End"); if (STARTED & !oneRecord) { getReceiver().endRecord(); STARTED = false; } } }
From source file:com.sdl.odata.unmarshaller.json.core.JsonProcessor.java
/** * Process all things that do not contain special ODataTags. * * @param jsonParser the parser//from ww w . ja va2 s .c o m * @throws ODataUnmarshallingException If unable to unmarshall * @throws IOException If unable to read input parser */ private void process(JsonParser jsonParser) throws IOException, ODataUnmarshallingException { if (jsonParser.getCurrentToken() == JsonToken.FIELD_NAME) { LOG.info("Starting to parse {} token", jsonParser.getCurrentName()); String key = jsonParser.getCurrentName(); jsonParser.nextToken(); JsonToken token = jsonParser.getCurrentToken(); if (token == JsonToken.START_ARRAY) { if (JsonConstants.VALUE.equals(key)) { throw new ODataUnmarshallingException("Feed is not supported"); } values.put(key, getCollectionValue(jsonParser)); } else if (token == JsonToken.START_OBJECT) { values.put(key, getEmbeddedObject(jsonParser)); } else { if (token.equals(JsonToken.VALUE_NULL)) { values.put(key, null); } else { values.put(key, jsonParser.getText()); } } } }
From source file:org.mongojack.internal.object.BsonObjectTraversingParser.java
public BsonObjectTraversingParser(JacksonDBCollection dbCollection, BSONObject o, ObjectCodec codec) { super(0);/*from w ww . ja v a 2 s .c o m*/ this.dbCollection = dbCollection; objectCodec = codec; if (o instanceof Iterable) { nextToken = JsonToken.START_ARRAY; nodeCursor = new BsonObjectCursor.ArrayCursor((Iterable) o, null); } else { nextToken = JsonToken.START_OBJECT; nodeCursor = new BsonObjectCursor.ObjectCursor(o, null); } }
From source file:com.adobe.communities.ugc.migration.importer.ScoresImportServlet.java
/** * The post operation accepts a json file, parses it and applies the profile scores to local profiles * @param request - the request// w ww .j av a 2s .c o m * @param response - the response * @throws javax.servlet.ServletException * @throws java.io.IOException */ protected void doPost(final SlingHttpServletRequest request, final SlingHttpServletResponse response) throws ServletException, IOException { final ResourceResolver resolver = request.getResourceResolver(); UGCImportHelper.checkUserPrivileges(resolver, rrf); final RequestParameter[] fileRequestParameters = request.getRequestParameters("file"); if (fileRequestParameters != null && fileRequestParameters.length > 0 && !fileRequestParameters[0].isFormField() && fileRequestParameters[0].getFileName().endsWith(".json")) { final InputStream inputStream = fileRequestParameters[0].getInputStream(); final JsonParser jsonParser = new JsonFactory().createParser(inputStream); JsonToken token = jsonParser.nextToken(); // get the first token if (token.equals(JsonToken.START_OBJECT)) { try { final UserPropertiesManager userManager = userPropertiesService .createUserPropertiesManager(resolver); importFile(jsonParser, userManager, resolver); } catch (RepositoryException e) { throw new ServletException("Unable to communicate with Jcr repository", e); } catch (final Exception e) { throw new ServletException("Problem!", e); } } else { throw new ServletException("Expected a start object token, got " + token); } } else { throw new ServletException("Expected to get a json file in post request"); } }
From source file:no.ssb.jsonstat.v2.deser.DatasetDeserializer.java
@Override public DatasetBuildable deserialize(JsonParser p, DeserializationContext ctxt) throws IOException { if (p.getCurrentToken() == JsonToken.START_OBJECT) { p.nextToken();/*from ww w.j av a 2 s. c o m*/ } Set<String> ids = Collections.emptySet(); List<Integer> sizes = Collections.emptyList(); Multimap<String, String> roles = ArrayListMultimap.create(); Map<String, Dimension.Builder> dims = Collections.emptyMap(); List<Number> values = Collections.emptyList(); DatasetBuilder builder = Dataset.create(); Optional<String> version = Optional.empty(); Optional<String> clazz = Optional.empty(); Optional<ObjectNode> extension = Optional.empty(); while (p.nextValue() != JsonToken.END_OBJECT) { switch (p.getCurrentName()) { case "label": builder.withLabel(_parseString(p, ctxt)); break; case "source": builder.withSource(_parseString(p, ctxt)); break; case "href": break; case "updated": Instant updated = parseEcmaDate(_parseString(p, ctxt)); builder.updatedAt(updated); break; case "value": values = parseValues(p, ctxt); break; case "dimension": if (!version.orElse("1.x").equals("2.0")) { dims = Maps.newHashMap(); // Deal with the id, size and role inside dimension. while (p.nextValue() != JsonToken.END_OBJECT) { switch (p.getCurrentName()) { case "id": ids = p.readValueAs(ID_SET); break; case "size": sizes = p.readValueAs(SIZE_LIST); break; case "role": roles = p.readValueAs(ROLE_MULTIMAP); break; default: dims.put(p.getCurrentName(), ctxt.readValue(p, Dimension.Builder.class)); } } } else { dims = p.readValueAs(DIMENSION_MAP); } break; case "id": ids = p.readValueAs(ID_SET); break; case "size": sizes = p.readValueAs(SIZE_LIST); break; case "role": roles = p.readValueAs(ROLE_MULTIMAP); break; case "extension": extension = Optional.of(ctxt.readValue(p, ObjectNode.class)); break; case "link": case "status": // TODO p.skipChildren(); break; case "version": version = Optional.of(_parseString(p, ctxt)); break; case "class": // TODO clazz = Optional.of(_parseString(p, ctxt)); break; default: boolean handled = ctxt.handleUnknownProperty(p, this, Dimension.Builder.class, p.getCurrentName()); if (!handled) p.skipChildren(); break; } } // Setup roles for (Map.Entry<String, String> dimRole : roles.entries()) { Dimension.Roles role = Dimension.Roles.valueOf(dimRole.getKey().toUpperCase()); Dimension.Builder dimension = checkNotNull(dims.get(dimRole.getValue()), "could not assign the role {} to the dimension {}. The dimension did not exist", role, dimRole.getValue() ); dimension.withRole(role); } List<Dimension.Builder> orderedDimensions = Lists.newArrayList(); for (String dimensionName : ids) { orderedDimensions.add(dims.get(dimensionName)); } // TODO: Check size? // Check ids and add to the data set. checkArgument(ids.size() == dims.size(), "dimension and size did not match"); if (extension.isPresent()) { builder.withExtension(extension.get()); } return builder.withDimensions(orderedDimensions).withValues(values); }
From source file:com.netflix.spectator.tdigest.Json.java
private TDigestMeasurement decode(JsonParser parser) throws IOException { expect(parser, JsonToken.START_OBJECT); require("name".equals(parser.nextFieldName()), "expected name"); Id id = registry.createId(parser.nextTextValue()); while (parser.nextToken() == JsonToken.FIELD_NAME) { id = id.withTag(parser.getText(), parser.nextTextValue()); }/*from ww w .j av a 2s . c om*/ long t = parser.nextLongValue(-1L); expect(parser, JsonToken.VALUE_EMBEDDED_OBJECT); TDigest v = AVLTreeDigest.fromBytes(ByteBuffer.wrap(parser.getBinaryValue())); expect(parser, JsonToken.END_ARRAY); return new TDigestMeasurement(id, t, v); }
From source file:org.elasticsearch.client.sniff.ElasticsearchNodesSniffer.java
static List<Node> readHosts(HttpEntity entity, Scheme scheme, JsonFactory jsonFactory) throws IOException { try (InputStream inputStream = entity.getContent()) { JsonParser parser = jsonFactory.createParser(inputStream); if (parser.nextToken() != JsonToken.START_OBJECT) { throw new IOException("expected data to start with an object"); }//from w w w . j a va 2 s. c om List<Node> nodes = new ArrayList<>(); while (parser.nextToken() != JsonToken.END_OBJECT) { if (parser.getCurrentToken() == JsonToken.START_OBJECT) { if ("nodes".equals(parser.getCurrentName())) { while (parser.nextToken() != JsonToken.END_OBJECT) { JsonToken token = parser.nextToken(); assert token == JsonToken.START_OBJECT; String nodeId = parser.getCurrentName(); Node node = readNode(nodeId, parser, scheme); if (node != null) { nodes.add(node); } } } else { parser.skipChildren(); } } } return nodes; } }
From source file:org.mongojack.internal.object.BsonObjectCursor.java
private static JsonToken getToken(Object o) { if (o == null) { return JsonToken.VALUE_NULL; } else if (o instanceof Iterable) { return JsonToken.START_ARRAY; } else if (o instanceof BSONObject) { return JsonToken.START_OBJECT; } else if (o instanceof Number) { if (o instanceof Double || o instanceof Float || o instanceof BigDecimal) { return JsonToken.VALUE_NUMBER_FLOAT; } else {/*from w ww . j av a 2 s . co m*/ return JsonToken.VALUE_NUMBER_INT; } } else if (o instanceof Boolean) { if ((Boolean) o) { return JsonToken.VALUE_TRUE; } else { return JsonToken.VALUE_FALSE; } } else if (o instanceof CharSequence) { return JsonToken.VALUE_STRING; } else if (o instanceof ObjectId) { return JsonToken.VALUE_EMBEDDED_OBJECT; } else if (o instanceof DBRef) { return JsonToken.VALUE_EMBEDDED_OBJECT; } else if (o instanceof Date) { return JsonToken.VALUE_EMBEDDED_OBJECT; } else if (o instanceof byte[]) { return JsonToken.VALUE_EMBEDDED_OBJECT; } else { throw new IllegalStateException("Don't know how to parse type: " + o.getClass()); } }
From source file:org.jberet.support.io.XmlItemReader.java
@Override public Object readItem() throws Exception { if (rowNumber >= end) { return null; }/*from ww w. j a v a 2 s.c om*/ int nestedObjectLevel = 0; do { token = fromXmlParser.nextToken(); if (token == null) { return null; } else if (token == JsonToken.START_OBJECT) { nestedObjectLevel++; if (nestedObjectLevel == 1) { rowNumber++; } else if (nestedObjectLevel < 1) { throw SupportMessages.MESSAGES.unexpectedJsonContent(fromXmlParser.getCurrentLocation()); } if (rowNumber >= start) { break; } } else if (token == JsonToken.END_OBJECT) { nestedObjectLevel--; } } while (true); final Object readValue = xmlMapper.readValue(fromXmlParser, beanType); if (!skipBeanValidation) { ItemReaderWriterBase.validate(readValue); } return readValue; }
From source file:com.cedarsoft.couchdb.io.ViewResponseSerializer.java
public <K, V, D> ViewResponse<K, V, D> deserialize(@Nonnull JacksonSerializer<? super K> keySerializer, @Nonnull JacksonSerializer<? super V> valueSerializer, @Nullable JacksonSerializer<? extends D> documentSerializer, @Nonnull InputStream in) throws IOException, InvalidTypeException { JsonFactory jsonFactory = JacksonSupport.getJsonFactory(); JsonParser parser = jsonFactory.createJsonParser(in); JacksonParserWrapper parserWrapper = new JacksonParserWrapper(parser); parserWrapper.nextToken(JsonToken.START_OBJECT); parserWrapper.nextToken(JsonToken.FIELD_NAME); //If reduced, no total rows and no offset are availlable! String fieldName = parser.getText(); int totalRows = -1; int offset = -1; while (!fieldName.equals(PROPERTY_ROWS)) { if (fieldName.equals(PROPERTY_TOTAL_ROWS)) { parserWrapper.nextToken(JsonToken.VALUE_NUMBER_INT); totalRows = parser.getIntValue(); }/*from w ww .j a v a 2 s . co m*/ if (fieldName.equals(PROPERTY_OFFSET)) { parserWrapper.nextToken(JsonToken.VALUE_NUMBER_INT); offset = parser.getIntValue(); } parserWrapper.nextToken(JsonToken.FIELD_NAME); fieldName = parser.getText(); } //Now the rows... parserWrapper.nextToken(JsonToken.START_ARRAY); List<Row<K, V, D>> deserialized = new ArrayList<>(); while (parser.nextToken() != JsonToken.END_ARRAY) { Row<K, V, D> deserializedRow = rowSerializer.deserialize(keySerializer, valueSerializer, documentSerializer, parser); deserialized.add(deserializedRow); } return new ViewResponse<>(totalRows, offset, deserialized); }