Example usage for com.fasterxml.jackson.core JsonParser getCurrentToken

List of usage examples for com.fasterxml.jackson.core JsonParser getCurrentToken

Introduction

In this page you can find the example usage for com.fasterxml.jackson.core JsonParser getCurrentToken.

Prototype

public abstract JsonToken getCurrentToken();

Source Link

Document

Accessor to find which token parser currently points to, if any; null will be returned if none.

Usage

From source file:com.microsoft.azure.storage.core.EncryptionAgent.java

public static EncryptionAgent deserialize(JsonParser parser) throws JsonParseException, IOException {
    JsonUtilities.assertIsStartObjectJsonToken(parser);

    parser.nextToken();/*from  w  w w. j  av a 2 s.  c om*/

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

        if (name.equals("Protocol")) {
            agent.setProtocol(parser.getValueAsString());
        } else if (name.equals("EncryptionAlgorithm")) {
            agent.setEncryptionAlgorithm(EncryptionAlgorithm.valueOf(parser.getValueAsString()));
        }
        parser.nextToken();
    }

    JsonUtilities.assertIsEndObjectJsonToken(parser);

    return agent;
}

From source file:com.microsoft.azure.storage.core.EncryptionData.java

public static void consumeJsonObject(JsonParser parser) throws IOException {
    JsonUtilities.assertIsStartObjectJsonToken(parser);
    parser.nextToken();/*from w  w  w. ja  v a  2  s.  co m*/
    if (parser.getCurrentToken() != JsonToken.END_OBJECT) {
        consumeJsonObject(parser);
    }
}

From source file:org.elasticsearch.client.sniff.ElasticsearchHostsSniffer.java

private static HttpHost readHost(String nodeId, JsonParser parser, Scheme scheme) throws IOException {
    HttpHost httpHost = null;/* ww w  . j  av  a  2s.  c  o m*/
    String fieldName = null;
    while (parser.nextToken() != JsonToken.END_OBJECT) {
        if (parser.getCurrentToken() == JsonToken.FIELD_NAME) {
            fieldName = parser.getCurrentName();
        } else if (parser.getCurrentToken() == JsonToken.START_OBJECT) {
            if ("http".equals(fieldName)) {
                while (parser.nextToken() != JsonToken.END_OBJECT) {
                    if (parser.getCurrentToken() == JsonToken.VALUE_STRING
                            && "publish_address".equals(parser.getCurrentName())) {
                        URI boundAddressAsURI = URI.create(scheme + "://" + parser.getValueAsString());
                        httpHost = new HttpHost(boundAddressAsURI.getHost(), boundAddressAsURI.getPort(),
                                boundAddressAsURI.getScheme());
                    } else if (parser.getCurrentToken() == JsonToken.START_OBJECT) {
                        parser.skipChildren();
                    }
                }
            } else {
                parser.skipChildren();
            }
        }
    }
    //http section is not present if http is not enabled on the node, ignore such nodes
    if (httpHost == null) {
        logger.debug("skipping node [" + nodeId + "] with http disabled");
        return null;
    }
    return httpHost;
}

From source file:org.datagator.api.client.MatrixDeserializer.java

private static ArrayList<ArrayList<Object>> parseRows(JsonParser jp, int bodyRow, int bodyColumn)
        throws IOException, JsonProcessingException {
    ArrayList<ArrayList<Object>> columnHeaders = new ArrayList<ArrayList<Object>>();

    int rowIndex = 0;

    JsonToken token = jp.getCurrentToken(); // START_ARRAY
    if (!token.equals(JsonToken.START_ARRAY)) {
        throw new RuntimeException(String.format("Unexpected token %s", token));
    }//www .j a  v  a  2s . co m

    token = jp.nextToken(); // START_ARRAY
    while (token.equals(JsonToken.START_ARRAY)) {
        int columnIndex = 0;
        if (rowIndex < bodyRow) {
            ArrayList<Object> rowBuffer = new ArrayList<Object>();
            token = jp.nextToken();
            while (!token.equals(JsonToken.END_ARRAY)) {
                rowBuffer.add(jp.getText());
                columnIndex += 1;
                token = jp.nextToken();
            }
            columnHeaders.add(rowBuffer);
        } else {
            token = jp.nextToken();
            while (!token.equals(JsonToken.END_ARRAY)) {
                columnIndex += 1;
                token = jp.nextToken();
            }
        }
        rowIndex += 1;
        token = jp.nextToken(); // START_ARRAY
    }

    return columnHeaders;
}

From source file:com.microsoft.azure.storage.core.WrappedContentKey.java

public static WrappedContentKey deserialize(JsonParser parser) throws JsonParseException, IOException {
    JsonUtilities.assertIsStartObjectJsonToken(parser);

    parser.nextToken();/*from  w w  w  .  j  a v  a2s  . c o  m*/

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

        if (name.equals("KeyId")) {
            wrappedContentKey.setKeyId(parser.getValueAsString());
        } else if (name.equals("EncryptedKey")) {
            wrappedContentKey.setEncryptedKey(parser.getBinaryValue());
        } else if (name.equals("Algorithm")) {
            wrappedContentKey.setAlgorithm(parser.getValueAsString());
        }
        parser.nextToken();
    }

    JsonUtilities.assertIsEndObjectJsonToken(parser);

    return wrappedContentKey;
}

From source file:com.boundary.zoocreeper.Restore.java

private static void expectNextToken(JsonParser jp, JsonToken expected) throws IOException {
    if (jp.nextToken() != expected) {
        throw new IOException(String.format("Expected: %s, Found: %s", expected, jp.getCurrentToken()));
    }/*  w w  w  .  j a  v a  2 s . co  m*/
}

From source file:com.microsoft.azure.storage.core.EncryptionData.java

public static EncryptionData deserialize(JsonParser parser) throws JsonParseException, IOException {
    JsonUtilities.assertIsStartObjectJsonToken(parser);

    parser.nextToken();//from   w w w. j a  v  a  2 s  . co m

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

        if (name.equals(Constants.EncryptionConstants.WRAPPED_CONTENT_KEY)) {
            data.setWrappedContentKey(WrappedContentKey.deserialize(parser));
        } else if (name.equals(Constants.EncryptionConstants.ENCRYPTION_AGENT)) {
            data.setEncryptionAgent(EncryptionAgent.deserialize(parser));
        } else if (name.equals(Constants.EncryptionConstants.CONTENT_ENCRYPTION_IV)) {
            data.setContentEncryptionIV(parser.getBinaryValue());
        } else if (name.equals(Constants.EncryptionConstants.KEY_WRAPPING_METADATA)) {
            data.setKeyWrappingMetadata(deserializeKeyWrappingMetadata(parser));
        } else {
            consumeJsonObject(parser);
        }
        parser.nextToken();
    }

    JsonUtilities.assertIsEndObjectJsonToken(parser);

    return data;
}

From source file:com.microsoft.azure.storage.blob.BlobEncryptionData.java

public static BlobEncryptionData deserialize(String inputData) throws JsonProcessingException, IOException {
    JsonParser parser = Utility.getJsonParser(inputData);
    BlobEncryptionData data = new BlobEncryptionData();
    try {/*from  w w  w .  j  a  v a  2  s . c  om*/
        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(Constants.EncryptionConstants.ENCRYPTION_MODE)) {
                data.setEncryptionMode(parser.getValueAsString());
            } else if (name.equals(Constants.EncryptionConstants.WRAPPED_CONTENT_KEY)) {
                data.setWrappedContentKey(WrappedContentKey.deserialize(parser));
            } else if (name.equals(Constants.EncryptionConstants.ENCRYPTION_AGENT)) {
                data.setEncryptionAgent(EncryptionAgent.deserialize(parser));
            } else if (name.equals(Constants.EncryptionConstants.CONTENT_ENCRYPTION_IV)) {
                data.setContentEncryptionIV(parser.getBinaryValue());
            } else if (name.equals(Constants.EncryptionConstants.KEY_WRAPPING_METADATA)) {
                data.setKeyWrappingMetadata(deserializeKeyWrappingMetadata(parser));
            } else {
                consumeJsonObject(parser);
            }
            parser.nextToken();
        }

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

    return data;
}

From source file:org.n52.movingcode.runtime.processors.config.ProcessorConfig.java

/**
 * Parsing routine for processor objects
 * /*from  w w w.j  a v a 2  s  .  c o  m*/
 * @param jp
 * @return
 * @throws JsonParseException
 * @throws IOException
 */
private static final ProcessorDescription parseProcessorJSON(JsonParser jp)
        throws JsonParseException, IOException {
    ProcessorDescription p = new ProcessorDescription();
    while (jp.nextToken() != END_OBJECT) {
        JsonToken jt = jp.getCurrentToken();

        // look for ID and parse it
        if (jp.getCurrentName().equalsIgnoreCase(KEY_ID) && jt == VALUE_STRING) {
            p.setId(jp.getValueAsString());
        }

        // look for temp workspace and parse it
        if (jp.getCurrentName().equalsIgnoreCase(KEY_TEMPWORKSPACE) && jt == VALUE_STRING) {
            p.setTempWorkspace(jp.getValueAsString());
        }

        // look for containers and parse them (Value Case)
        if (jp.getCurrentName().equalsIgnoreCase(KEY_SUPPORTED_CONTAINER) && jt == VALUE_STRING) {
            p.addContainer(jp.getValueAsString());
        }

        // look for containers and parse them (Array Case)
        if (jp.getCurrentName().equalsIgnoreCase(KEY_SUPPORTED_CONTAINER) && jt == START_ARRAY) {
            while (jp.nextToken() != END_ARRAY) {
                if (jp.getCurrentToken() == VALUE_STRING) {
                    p.addPlatform(jp.getValueAsString());
                }
            }
        }

        // look for platforms and parse them (Array Case)
        if (jp.getCurrentName().equalsIgnoreCase(KEY_AVAILABLE_PLATFORMS) && jt == JsonToken.START_ARRAY) {
            while (jp.nextToken() != END_ARRAY) {
                if (jp.getCurrentToken() == VALUE_STRING) {
                    p.addPlatform(jp.getValueAsString());
                }
            }
        }

        // look for platforms and parse them (Value Case)
        if (jp.getCurrentName().equalsIgnoreCase(KEY_AVAILABLE_PLATFORMS) && jt == JsonToken.VALUE_STRING) {
            p.addPlatform(jp.getValueAsString());
        }

        // look for properties and parse them
        if (jp.getCurrentName().equalsIgnoreCase(KEY_PROPERTIES) && jt == JsonToken.START_ARRAY) {
            HashMap<String, String> props = new HashMap<String, String>();
            while (jp.nextToken() != END_ARRAY) {
                if (jp.getCurrentToken() == FIELD_NAME) {
                    props.put(jp.getCurrentName(), jp.nextTextValue());
                }

            }

            p.setProperties(props);

        }
    }

    return p;
}

From source file:com.microsoft.azure.storage.core.EncryptionData.java

public static HashMap<String, String> deserializeKeyWrappingMetadata(JsonParser parser)
        throws JsonParseException, IOException {
    JsonUtilities.assertIsStartObjectJsonToken(parser);

    parser.nextToken();/*ww  w.ja  v  a  2 s  . co m*/

    HashMap<String, String> keyWrappingMetadata = new HashMap<String, String>();
    while (parser.getCurrentToken() != JsonToken.END_OBJECT) {
        String name = parser.getCurrentName();
        parser.nextToken();
        keyWrappingMetadata.put(name, parser.getValueAsString());
        parser.nextToken();
    }

    JsonUtilities.assertIsEndObjectJsonToken(parser);

    return keyWrappingMetadata;
}