当前位置: 首页>>代码示例>>Java>>正文


Java Token.START_OBJECT属性代码示例

本文整理汇总了Java中org.elasticsearch.common.xcontent.XContentParser.Token.START_OBJECT属性的典型用法代码示例。如果您正苦于以下问题:Java Token.START_OBJECT属性的具体用法?Java Token.START_OBJECT怎么用?Java Token.START_OBJECT使用的例子?那么恭喜您, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在org.elasticsearch.common.xcontent.XContentParser.Token的用法示例。


在下文中一共展示了Token.START_OBJECT属性的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: setInline

/**
 * Since inline scripts can accept code rather than just an id, they must also be able
 * to handle template parsing, hence the need for custom parsing code.  Templates can
 * consist of either an {@link String} or a JSON object.  If a JSON object is discovered
 * then the content type option must also be saved as a compiler option.
 */
private void setInline(XContentParser parser) {
    try {
        if (type != null) {
            throwOnlyOneOfType();
        }

        type = ScriptType.INLINE;

        if (parser.currentToken() == Token.START_OBJECT) {
            //this is really for search templates, that need to be converted to json format
            XContentBuilder builder = XContentFactory.jsonBuilder();
            idOrCode = builder.copyCurrentStructure(parser).string();
            options.put(CONTENT_TYPE_OPTION, XContentType.JSON.mediaType());
        } else {
            idOrCode = parser.text();
        }
    } catch (IOException exception) {
        throw new UncheckedIOException(exception);
    }
}
 
开发者ID:justor,项目名称:elasticsearch_my,代码行数:26,代码来源:Script.java

示例2: parseOption

protected static Option parseOption(XContentParser parser) throws IOException {
    Token token;
    String currentFieldName = null;
    Option option = new Option();
    while ((token = parser.nextToken()) != Token.END_OBJECT) {
        if (token == Token.FIELD_NAME) {
            currentFieldName = parser.currentName();
        } else if (token.isValue()) {
            if ("text".equals(currentFieldName)) {
                option.text = parser.text();
            } else if ("score".equals(currentFieldName)) {
                option.score = parser.floatValue();
            }
        } else if (token == Token.START_OBJECT && "payload".equals(currentFieldName)) {
            try (XContentBuilder docBuilder = XContentFactory.contentBuilder(XContentType.JSON)) {
                docBuilder.copyCurrentStructure(parser);
                option.payload = docBuilder.bytes().toUtf8();
            }
        }
    }
    return option;
}
 
开发者ID:obourgain,项目名称:elasticsearch-http,代码行数:22,代码来源:Completion.java

示例3: setCode

/**
 * Since stored scripts can accept templates rather than just scripts, they must also be able
 * to handle template parsing, hence the need for custom parsing code.  Templates can
 * consist of either an {@link String} or a JSON object.  If a JSON object is discovered
 * then the content type option must also be saved as a compiler option.
 */
private void setCode(XContentParser parser) {
    try {
        if (parser.currentToken() == Token.START_OBJECT) {
            //this is really for search templates, that need to be converted to json format
            XContentBuilder builder = XContentFactory.jsonBuilder();
            code = builder.copyCurrentStructure(parser).string();
            options.put(Script.CONTENT_TYPE_OPTION, XContentType.JSON.mediaType());
        } else {
            code = parser.text();
        }
    } catch (IOException exception) {
        throw new UncheckedIOException(exception);
    }
}
 
开发者ID:justor,项目名称:elasticsearch_my,代码行数:20,代码来源:StoredScriptSource.java

示例4: parseRange

private static Range parseRange(XContentParser parser, QueryParseContext context) throws IOException {
    String key = null;
    String from = null;
    String to = null;
    String mask = null;

    if (parser.currentToken() != Token.START_OBJECT) {
        throw new ParsingException(parser.getTokenLocation(), "[ranges] must contain objects, but hit a " + parser.currentToken());
    }
    while (parser.nextToken() != Token.END_OBJECT) {
        if (parser.currentToken() == Token.FIELD_NAME) {
            continue;
        }
        if (RangeAggregator.Range.KEY_FIELD.match(parser.currentName())) {
            key = parser.text();
        } else if (RangeAggregator.Range.FROM_FIELD.match(parser.currentName())) {
            from = parser.textOrNull();
        } else if (RangeAggregator.Range.TO_FIELD.match(parser.currentName())) {
            to = parser.textOrNull();
        } else if (MASK_FIELD.match(parser.currentName())) {
            mask = parser.text();
        } else {
            throw new ParsingException(parser.getTokenLocation(), "Unexpected ip range parameter: [" + parser.currentName() + "]");
        }
    }
    if (mask != null) {
        if (key == null) {
            key = mask;
        }
        return new Range(key, mask);
    } else {
        return new Range(key, from, to);
    }
}
 
开发者ID:justor,项目名称:elasticsearch_my,代码行数:34,代码来源:IpRangeAggregationBuilder.java

示例5: parseQueryContext

/**
 * Parses query contexts for this mapper
 */
public final List<InternalQueryContext> parseQueryContext(QueryParseContext context) throws IOException, ElasticsearchParseException {
    List<T> queryContexts = new ArrayList<>();
    XContentParser parser = context.parser();
    Token token = parser.nextToken();
    if (token == Token.START_OBJECT || token == Token.VALUE_STRING) {
        queryContexts.add(fromXContent(context));
    } else if (token == Token.START_ARRAY) {
        while (parser.nextToken() != Token.END_ARRAY) {
            queryContexts.add(fromXContent(context));
        }
    }
    return toInternalQueryContexts(queryContexts);
}
 
开发者ID:justor,项目名称:elasticsearch_my,代码行数:16,代码来源:ContextMapping.java

示例6: parseOptions

protected static List<Option> parseOptions(XContentParser parser) throws IOException {
    Token token;
    List<Option> result = new ArrayList<>();
    while ((token = parser.nextToken()) != Token.END_ARRAY) {
        if (token == Token.START_OBJECT) {
            result.add(parseOption(parser));
        }
    }
    return result;
}
 
开发者ID:obourgain,项目名称:elasticsearch-http,代码行数:10,代码来源:Term.java


注:本文中的org.elasticsearch.common.xcontent.XContentParser.Token.START_OBJECT属性示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。