Example usage for com.fasterxml.jackson.core JsonToken END_OBJECT

List of usage examples for com.fasterxml.jackson.core JsonToken END_OBJECT

Introduction

In this page you can find the example usage for com.fasterxml.jackson.core JsonToken END_OBJECT.

Prototype

JsonToken END_OBJECT

To view the source code for com.fasterxml.jackson.core JsonToken END_OBJECT.

Click Source Link

Document

END_OBJECT is returned when encountering '}' which signals ending of an Object value

Usage

From source file:io.wcm.caravan.io.jsontransform.source.JacksonStreamSource.java

private JsonElement parseJsonElement(final JsonToken token) throws IOException {
    String key = parser.getCurrentName();
    if (JsonToken.START_OBJECT.equals(token)) {
        return JsonElement.DEFAULT_START_OBJECT;
    } else if (JsonToken.END_OBJECT.equals(token)) {
        return JsonElement.DEFAULT_END_OBJECT;
    } else if (JsonToken.START_ARRAY.equals(token)) {
        return JsonElement.DEFAULT_START_ARRAY;
    } else if (JsonToken.END_ARRAY.equals(token)) {
        return JsonElement.DEFAULT_END_ARRAY;
    } else if (JsonToken.FIELD_NAME.equals(token)) {
        return handleFieldName(key);
    }//  ww  w.ja v  a2  s.c o m
    return JsonElement.value(key, parseValue(token));
}

From source file:org.ojai.beans.jackson.DocumentParser.java

@Override
public JsonToken nextToken() throws IOException, JsonParseException {
    if (tokens.isEmpty() && (_currEventType = r.next()) != null) {
        if (r.inMap() && r.getFieldName() != null && _currEventType != EventType.END_MAP
                && _currEventType != EventType.END_ARRAY) {
            tokens.add(JsonToken.FIELD_NAME);
        }// w w w  . ja  v a  2s .  c o  m

        switch (_currEventType) {
        case START_ARRAY:
            tokens.add(JsonToken.START_ARRAY);
            break;
        case END_ARRAY:
            tokens.add(JsonToken.END_ARRAY);
            break;
        case START_MAP:
            tokens.add(JsonToken.START_OBJECT);
            break;
        case END_MAP:
            tokens.add(JsonToken.END_OBJECT);
            break;
        case NULL:
            tokens.add(JsonToken.VALUE_NULL);
            break;
        case STRING:
            tokens.add(JsonToken.VALUE_STRING);
            break;
        case BYTE:
        case SHORT:
        case INT:
        case LONG:
            tokens.add(JsonToken.VALUE_NUMBER_INT);
            break;
        case DECIMAL:
        case DOUBLE:
        case FLOAT:
            tokens.add(JsonToken.VALUE_NUMBER_FLOAT);
            break;
        case BOOLEAN:
            tokens.add(r.getBoolean() ? JsonToken.VALUE_TRUE : JsonToken.VALUE_FALSE);
            break;
        case DATE:
        case TIME:
        case TIMESTAMP:
        case INTERVAL:
        case BINARY:
            tokens.add(JsonToken.VALUE_EMBEDDED_OBJECT);
            break;
        }
    }
    _currToken = tokens.isEmpty() ? JsonToken.NOT_AVAILABLE : tokens.remove();
    return _currToken;
}

From source file:com.kaaprotech.satu.jackson.SatuDeserializers.java

@Override
public JsonDeserializer<?> findMapDeserializer(final MapType type, final DeserializationConfig config,
        BeanDescription beanDesc, final KeyDeserializer keyDeserializer,
        final TypeDeserializer elementTypeDeserializer, final JsonDeserializer<?> elementDeserializer)
        throws JsonMappingException {

    if (ImmutableMap.class.isAssignableFrom(type.getRawClass())) {
        return new StdDeserializer<Object>(type) {
            private static final long serialVersionUID = 1L;

            @Override/*from   w  ww.ja va2 s . c o  m*/
            public Object deserialize(JsonParser jp, DeserializationContext context) throws IOException {

                JsonToken t = jp.getCurrentToken();
                if (t == JsonToken.START_OBJECT) {
                    t = jp.nextToken();
                }
                if (t != JsonToken.FIELD_NAME && t != JsonToken.END_OBJECT) {
                    throw context.mappingException(type.getRawClass());
                }

                MutableMap<Object, Object> m = Maps.mutable.of();

                for (; jp.getCurrentToken() == JsonToken.FIELD_NAME; jp.nextToken()) {
                    // Pointing to field name
                    String fieldName = jp.getCurrentName();
                    Object key = (keyDeserializer == null) ? fieldName
                            : keyDeserializer.deserializeKey(fieldName, context);
                    t = jp.nextToken();

                    Object value;
                    if (t == JsonToken.VALUE_NULL) {
                        value = null;
                    } else if (elementDeserializer == null) {
                        value = jp.readValueAs(type.getContentType().getRawClass());
                    } else if (elementTypeDeserializer == null) {
                        value = elementDeserializer.deserialize(jp, context);
                    } else {
                        value = elementDeserializer.deserializeWithType(jp, context, elementTypeDeserializer);
                    }
                    m.put(key, value);
                }
                return m.toImmutable();
            }
        };
    }

    return super.findMapDeserializer(type, config, beanDesc, keyDeserializer, elementTypeDeserializer,
            elementDeserializer);
}

From source file:com.microsoft.azure.storage.queue.CloudQueueEncryptedMessage.java

public static CloudQueueEncryptedMessage deserialize(String inputMessage)
        throws JsonProcessingException, IOException {
    JsonParser parser = Utility.getJsonParser(inputMessage);
    CloudQueueEncryptedMessage message = new CloudQueueEncryptedMessage();
    try {//w ww  .j a  v  a2s . c  o m
        if (!parser.hasCurrentToken()) {
            parser.nextToken();
        }

        JsonUtilities.assertIsStartObjectJsonToken(parser);

        parser.nextToken();

        while (parser.getCurrentToken() != JsonToken.END_OBJECT) {
            String name = parser.getCurrentName();
            parser.nextToken();

            if (name.equals("EncryptedMessageContents")) {
                message.setEncryptedMessageContents(parser.getValueAsString());
            } else if (name.equals("EncryptionData")) {
                message.setEncryptionData(EncryptionData.deserialize(parser));
            }
            parser.nextToken();
        }

        JsonUtilities.assertIsEndObjectJsonToken(parser);
    } finally {
        parser.close();
    }

    return message;
}

From source file:org.nuxeo.client.test.marshallers.DocumentMarshaller.java

protected static void readProperties(JsonParser jp, Map<String, Object> props) throws IOException {
    JsonToken tok = jp.nextToken();/*from   w  ww  .ja v  a 2s.  c  om*/
    while (tok != null && tok != JsonToken.END_OBJECT) {
        String key = jp.getCurrentName();
        tok = jp.nextToken();
        switch (tok) {
        case START_ARRAY:
            props.put(key, readArrayProperty(jp));
            break;
        case START_OBJECT:
            props.put(key, readObjectProperty(jp));
            break;
        case VALUE_NULL:
            props.put(key, null);
            break;
        default:
            props.put(key, jp.getText());
        }
        tok = jp.nextToken();
    }
    if (tok == null) {
        throw new IllegalArgumentException("Unexpected end of stream.");
    }
}

From source file:org.onosproject.north.aaa.api.parser.impl.ScopeParser.java

public Scope jsonToScope(JsonParser jp) throws IOException, ParseException {
    Scope.Builder builder = Scope.builder();

    while (true) {
        JsonToken token = jp.nextToken();
        if (JsonToken.END_OBJECT.equals(token)) {
            // bail out
            break;
        }//from  ww w  .  j  a  v a  2  s.  c  o  m

        if (JsonToken.FIELD_NAME.equals(token) && "scopeId".equals(jp.getCurrentName())) {
            jp.nextToken();
            builder.buildScopeId(jp.getText());
        } else if (JsonToken.FIELD_NAME.equals(token) && "scopeDesc".equals(jp.getCurrentName())) {
            jp.nextToken();
            builder.buildScopeDesc(jp.getText());
        } else if (JsonToken.FIELD_NAME.equals(token) && "accesses".equals(jp.getCurrentName())) {
            token = jp.nextToken();
            if (!JsonToken.START_ARRAY.equals(token)) {
                // bail out
                throw new ParseException("expected ARRAY after accesses");
            }
            Set<String> accesses = new HashSet<>();

            while (true) {
                token = jp.nextToken();
                if (JsonToken.END_ARRAY.equals(token)) {
                    // bail out
                    break;
                }
                accesses.add(jp.getText());
            }
            builder.buildRestAccess(accesses);
        }
    }
    return builder.buildAll();
}

From source file:org.onosproject.north.aaa.api.parser.impl.ApplicationParser.java

public Application jsonToApplication(JsonParser jp) throws ParseException, IOException {
    Application.Builder builder = Application.builder();

    while (true) {
        JsonToken token = jp.nextToken();
        if (JsonToken.END_OBJECT.equals(token)) {
            // bail out
            break;
        }/*from www.  j a  v a  2 s .  c  om*/

        if (JsonToken.FIELD_NAME.equals(token) && "appId".equals(jp.getCurrentName())) {
            jp.nextToken();
            builder.buildAppId(jp.getText());
        } else if (JsonToken.FIELD_NAME.equals(token) && "appDesc".equals(jp.getCurrentName())) {
            jp.nextToken();
            builder.buildAppDesc(jp.getText());
        } else if (JsonToken.FIELD_NAME.equals(token) && "appRoles".equals(jp.getCurrentName())) {
            jp.nextToken();
            String roles = jp.getText();

            if ("admin".equals(roles) || "normal".equals(roles) || "security".equals(roles)) {
                builder.buildAppRoles(roles);
            } else {
                // bail out
                throw new ParseException("appRoles must be set to \"admin\", \"normal\" or \"security\"");
            }

        } else if (JsonToken.FIELD_NAME.equals(token) && "devId".equals(jp.getCurrentName())) {
            jp.nextToken();
            builder.buildDevId(jp.getText());
        } else if (JsonToken.FIELD_NAME.equals(token) && "clientId".equals(jp.getCurrentName())) {
            jp.nextToken();
            builder.buildClientId(jp.getText());
        }
    }
    return builder.buildAll();
}

From source file:monasca.log.api.app.validation.LogApplicationTypeValidationTest.java

private String getMessage(String json) throws JsonParseException, IOException {
    JsonFactory factory = new JsonFactory();
    JsonParser jp = factory.createParser(json);
    jp.nextToken();/*from www .j a v a 2s . c o  m*/
    while (jp.nextToken() != JsonToken.END_OBJECT) {
        String fieldname = jp.getCurrentName();
        jp.nextToken();
        if ("message".equals(fieldname)) {

            return jp.getText();
        }
    }
    jp.close();
    return null;
}

From source file:org.onosproject.north.aaa.api.parser.impl.RestAccessParser.java

public RestAccess jsonToRestAccess(JsonParser jp) throws IOException, ParseException {
    RestAccess.Builder builder = RestAccess.builder();

    while (true) {
        JsonToken token = jp.nextToken();

        if (JsonToken.END_OBJECT.equals(token)) {
            // bail out
            break;
        }//  w w  w.j  ava2 s. c  o  m

        if (JsonToken.FIELD_NAME.equals(token) && "accessId".equals(jp.getCurrentName())) {
            jp.nextToken();
            builder.buildeAccessId(jp.getText());
        } else if (JsonToken.FIELD_NAME.equals(token) && "accessDesc".equals(jp.getCurrentName())) {
            jp.nextToken();
            builder.buildAccessDesc(jp.getText());
        } else if (JsonToken.FIELD_NAME.equals(token) && "restUri".equals(jp.getCurrentName())) {
            jp.nextToken();
            builder.buildRestUri(jp.getText());
        } else if (JsonToken.FIELD_NAME.equals(token) && "restMethod".equals(jp.getCurrentName())) {
            jp.nextToken();
            builder.buildRestMethod(jp.getText());
        } else if (JsonToken.FIELD_NAME.equals(token) && "restParam".equals(jp.getCurrentName())) {
            jp.nextToken();
            builder.buildRestParam(jp.getText());
        }
    }
    return builder.buildAll();
}

From source file:com.netflix.hollow.jsonadapter.HollowJsonAdapterPrimaryKeyFinder.java

private void addObject(JsonParser parser, HollowObjectSchema schema, StringBuilder currentFieldPath)
        throws IOException {
    JsonToken token = parser.nextToken();

    String fieldName = null;//w  w  w .  j a v a2  s  .co  m
    try {
        while (token != JsonToken.END_OBJECT) {
            fieldName = parser.getCurrentName();
            addObjectField(parser, token, schema, fieldName, currentFieldPath);
            token = parser.nextToken();
        }
    } catch (Exception ex) {
        throw new IOException(
                "Failed to parse field=" + fieldName + ", schema=" + schema.getName() + ", token=" + token, ex);
    }
}