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

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

Introduction

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

Prototype

public boolean equals(Object obj) 

Source Link

Document

Indicates whether some other object is "equal to" this one.

Usage

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));
    }/*from  w  w  w  .j ava2s .  c om*/

    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:eu.project.ttc.readers.TermSuiteJsonCasDeserializer.java

private static void FillFixedExpressions(JsonParser parser, JsonToken token, FixedExpression fe, CAS cas)
        throws IOException {
    if (token.equals(JsonToken.FIELD_NAME)) {
        switch (parser.getCurrentName()) {
        case F_BEGIN:
            fe.setBegin(parser.nextIntValue(0));
            break;
        case F_END:
            fe.setEnd(parser.nextIntValue(0));
            break;
        }/*w w w  .j a  v a2 s .c o  m*/
    }
}

From source file:eu.project.ttc.readers.TermSuiteJsonCasDeserializer.java

private static void fillSdi(JsonParser parser, JsonToken token, SourceDocumentInformation sdi)
        throws IOException {
    if (token.equals(JsonToken.FIELD_NAME)) {
        switch (parser.getCurrentName()) {
        case F_URI:
            sdi.setUri(parser.nextTextValue());
            break;
        case F_OFFSET_IN_SOURCE:
            sdi.setOffsetInSource(parser.nextIntValue(0));
            break;
        case F_DOCUMENT_INDEX:
            sdi.setDocumentIndex(parser.nextIntValue(0));
            break;
        case F_NB_DOCUMENTS:
            sdi.setNbDocuments(parser.nextIntValue(0));
            break;
        case F_DOCUMENT_SIZE:
            sdi.setDocumentSize(parser.nextIntValue(0));
            break;
        case F_CUMULATED_DOCUMENT_SIZE:
            sdi.setCumulatedDocumentSize(parser.nextLongValue(0));
            break;
        case F_CORPUS_SIZE:
            sdi.setCorpusSize(parser.nextLongValue(0));
            break;
        case F_LAST_SEGMENT:
            sdi.setLastSegment(parser.nextBooleanValue());
            break;
        case F_BEGIN:
            sdi.setBegin(parser.nextIntValue(0));
            break;
        case F_END:
            sdi.setEnd(parser.nextIntValue(0));
            break;
        }//  ww  w  .  ja v a2  s  . c  o m
    }
}

From source file:eu.project.ttc.readers.TermSuiteJsonCasDeserializer.java

private static void fillWordAnnotations(JsonParser parser, JsonToken token, WordAnnotation wa)
        throws IOException {
    if (token.equals(JsonToken.FIELD_NAME)) {
        switch (parser.getCurrentName()) {
        case F_CATEGORY:
            wa.setCategory(parser.nextTextValue());
            break;
        case F_LEMMA:
            wa.setLemma(parser.nextTextValue());
            break;
        case F_STEM:
            wa.setStem(parser.nextTextValue());
            break;
        case F_TAG:
            wa.setTag(parser.nextTextValue());
            break;
        case F_SUB_CATEGORY:
            wa.setSubCategory(parser.nextTextValue());
            break;
        case F_REGEX_LABEL:
            wa.setRegexLabel(parser.nextTextValue());
            break;
        case F_NUMBER:
            wa.setNumber(parser.nextTextValue());
            break;
        case F_GENDER:
            wa.setGender(parser.nextTextValue());
            break;
        case F_CASE:
            wa.setCase(parser.nextTextValue());
            break;
        case F_MOOD:
            wa.setMood(parser.nextTextValue());
            break;
        case F_TENSE:
            wa.setTense(parser.nextTextValue());
            break;
        case F_PERSON:
            wa.setPerson(parser.nextTextValue());
            break;
        case F_DEGREE:
            wa.setDegree(parser.nextTextValue());
            break;
        case F_FORMATION:
            wa.setFormation(parser.nextTextValue());
            break;
        case F_LABELS:
            wa.setLabels(parser.nextTextValue());
            break;
        case F_BEGIN:
            wa.setBegin(parser.nextIntValue(0));
            break;
        case F_END:
            wa.setEnd(parser.nextIntValue(0));
            break;
        }//from   w ww .j a v  a  2 s.  co m
    }
}

From source file:eu.project.ttc.readers.TermSuiteJsonCasDeserializer.java

private static void FillTermOccAnnotations(JsonParser parser, JsonToken token, TermOccAnnotation toa, CAS cas)
        throws IOException, CASException {
    if (token.equals(JsonToken.FIELD_NAME)) {
        switch (parser.getCurrentName()) {
        case F_PATTERN:
            String[] patternTable = parser.nextTextValue().split(" ");
            StringArray stringArray = new StringArray(cas.getJCas(), patternTable.length);

            for (int i = 0; i < patternTable.length; i++) {
                stringArray.set(i, patternTable[i]);
            }//from w w  w  .  j a  v a 2 s  . c  om
            toa.setPattern(stringArray);
            break;

        case F_SPOTTING_RULE_NAME:
            toa.setSpottingRuleName(parser.nextTextValue());
            break;
        case F_TERM_KEY:
            toa.setTermKey(parser.nextTextValue());
            break;
        case F_WORDS:
            fillWords(toa, cas);
            break;
        case F_BEGIN:
            toa.setBegin(parser.nextIntValue(0));
            break;
        case F_END:
            toa.setEnd(parser.nextIntValue(0));
            break;
        }
    }
}

From source file:com.adobe.communities.ugc.migration.importer.UGCImportHelper.java

public static Map<String, Object> extractSubmap(final JsonParser jsonParser) throws IOException {
    jsonParser.nextToken(); // skip the START_OBJECT token
    final Map<String, Object> subMap = new HashMap<String, Object>();
    while (!jsonParser.getCurrentToken().equals(JsonToken.END_OBJECT)) {
        final String label = jsonParser.getCurrentName(); // get the current label
        final JsonToken token = jsonParser.nextToken(); // get the current value
        if (!token.isScalarValue()) {
            if (token.equals(JsonToken.START_OBJECT)) {
                // if the next token starts a new object, recurse into it
                subMap.put(label, extractSubmap(jsonParser));
            } else if (token.equals(JsonToken.START_ARRAY)) {
                final List<String> subArray = new ArrayList<String>();
                jsonParser.nextToken(); // skip the START_ARRAY token
                while (!jsonParser.getCurrentToken().equals(JsonToken.END_ARRAY)) {
                    subArray.add(jsonParser.getValueAsString());
                    jsonParser.nextToken();
                }/*from  w w w  .ja  va2  s  .c o m*/
                subMap.put(label, subArray);
                jsonParser.nextToken(); // skip the END_ARRAY token
            }
        } else {
            // either a string, boolean, or long value
            if (token.isNumeric()) {
                subMap.put(label, jsonParser.getValueAsLong());
            } else {
                final String value = jsonParser.getValueAsString();
                if (value.equals("true") || value.equals("false")) {
                    subMap.put(label, jsonParser.getValueAsBoolean());
                } else {
                    subMap.put(label, value);
                }
            }
        }
        jsonParser.nextToken(); // next token will either be an "END_OBJECT" or a new label
    }
    jsonParser.nextToken(); // skip the END_OBJECT token
    return subMap;
}

From source file:com.adobe.communities.ugc.migration.importer.UGCImportHelper.java

protected static void getAttachments(final JsonParser jsonParser, final List attachments) throws IOException {

    JsonToken token = jsonParser.nextToken(); // skip START_ARRAY token
    String filename;/* ww  w  . j  a v a2  s  .  c  om*/
    String mimeType;
    InputStream inputStream;
    while (token.equals(JsonToken.START_OBJECT)) {
        filename = null;
        mimeType = null;
        inputStream = null;
        byte[] databytes = null;
        token = jsonParser.nextToken();
        while (!token.equals(JsonToken.END_OBJECT)) {
            final String label = jsonParser.getCurrentName();
            jsonParser.nextToken();
            if (label.equals("filename")) {
                filename = URLDecoder.decode(jsonParser.getValueAsString(), "UTF-8");
            } else if (label.equals("jcr:mimeType")) {
                mimeType = jsonParser.getValueAsString();
            } else if (label.equals("jcr:data")) {
                databytes = Base64.decodeBase64(jsonParser.getValueAsString());
                inputStream = new ByteArrayInputStream(databytes);
            }
            token = jsonParser.nextToken();
        }
        if (filename != null && mimeType != null && inputStream != null) {
            attachments.add(
                    new UGCImportHelper.AttachmentStruct(filename, inputStream, mimeType, databytes.length));
        } else {
            // log an error
            LOG.error(
                    "We expected to import an attachment, but information was missing and nothing was imported");
        }
        token = jsonParser.nextToken();
    }
}

From source file:org.springframework.data.convert.JsonBooleanDeserializer.java

@Override
public Boolean deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException {
    JsonToken currentToken = jp.getCurrentToken();

    if (currentToken.equals(JsonToken.VALUE_STRING)) {
        String text = jp.getText().trim();

        if (YES.equalsIgnoreCase(text)) {
            return Boolean.TRUE;
        } else if (NO.equalsIgnoreCase(text)) {
            return Boolean.FALSE;
        }/* ww w.j av a 2  s .c  o m*/

        throw ctxt.weirdStringException(text, Boolean.class,
                "Only \"" + YES + "\" or \"" + NO + "\" values supported");
    } else if (currentToken.equals(JsonToken.VALUE_NULL)) {
        return getNullValue();
    }

    throw ctxt.mappingException(Boolean.class);
}

From source file:com.adobe.communities.ugc.migration.importer.SocialGraphImportServlet.java

private void importFile(final JsonParser jsonParser, final SlingHttpServletRequest request)
        throws ServletException, IOException {

    JsonToken token = jsonParser.nextToken();
    while (!token.equals(JsonToken.END_OBJECT)) {
        if (!token.equals(JsonToken.FIELD_NAME)) {
            throw new ServletException("Expected a field name, got " + token);
        }//from  w ww .j  a  va2 s .c  o m
        final String userId = jsonParser.getCurrentName();
        token = jsonParser.nextToken();
        if (!token.equals(JsonToken.START_ARRAY)) {
            throw new ServletException("Expected an array start token, got " + token);
        }
        token = jsonParser.nextToken();
        final Resource tmpParent = request.getResourceResolver().getResource("/tmp");
        while (!token.equals(JsonToken.END_ARRAY)) {
            final Map<String, Object> props = new HashMap<String, Object>();
            props.put("resourceType", Following.RESOURCE_TYPE);
            props.put("userId", userId);
            props.put("followedId", jsonParser.getValueAsString());
            Resource resource;
            resource = request.getResourceResolver().create(tmpParent, "following", props);
            final SocialComponentFactory factory = componentFactoryManager
                    .getSocialComponentFactory(Following.RESOURCE_TYPE);
            final Following following = (Following) factory.getSocialComponent(resource, request);
            request.getResourceResolver().delete(resource); // need to delete it so we can create it again next time
            final Vertex node = following.userNode();
            final Vertex other = following.followedNode();
            final String relType = "USER";
            try {
                node.createRelationshipTo(other, Edge.FOLLOWING_RELATIONSHIP_TYPE, relType);
                following.socialGraph().save();
            } catch (final IllegalArgumentException e) {
                // The relationship already exists. Do nothing.
            }
            token = jsonParser.nextToken();
        }
        token = jsonParser.nextToken(); // skip over END_ARRAY
    }
}

From source file:com.adobe.communities.ugc.migration.importer.SocialGraphImportServlet.java

/**
 * The post operation accepts a json file, parses it and applies the social graph relationships to local profiles
 * @param request - the request//from  w  w  w.j  av a  2  s .  c  om
 * @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)) {
            importFile(jsonParser, request);
        } else {
            throw new ServletException("Expected a start object token, got " + token);
        }
    } else {
        throw new ServletException("Expected to get a json file in post request");
    }
}