Example usage for org.apache.solr.common.util NamedList remove

List of usage examples for org.apache.solr.common.util NamedList remove

Introduction

In this page you can find the example usage for org.apache.solr.common.util NamedList remove.

Prototype

public T remove(String name) 

Source Link

Document

NOTE: this runs in linear time (it scans starting at the beginning of the list until it finds the first pair with the specified name).

Usage

From source file:com.kmwllc.search.graph.GraphQueryOldTest.java

License:Open Source License

private SolrQueryRequest createRequest(String query) {
    SolrQueryRequest qr = req(query);//  w w  w .  j  a  v a 2  s  . c  o m
    NamedList<Object> par = qr.getParams().toNamedList();
    par.add("defType", "kmw");
    par.add("debug", "true");
    par.add("rows", "10");
    par.add("fl", "id,node_id,edge_id");
    par.remove("qt");
    par.add("qt", "/select");
    // par.add("")
    SolrParams newp = SolrParams.toSolrParams(par);
    qr.setParams(newp);
    return qr;
}

From source file:com.kmwllc.search.graph.GraphQueryOldTest.java

License:Open Source License

private SolrQueryRequest createRequestWithTFilter(String query, String traversalFilter) {
    SolrQueryRequest qr = req(query);//from  ww  w  .j a  v a  2  s .c o m
    NamedList par = qr.getParams().toNamedList();
    par.add("traversalFilter", traversalFilter);
    par.add("defType", "graph");

    par.add("debug", "true");
    par.add("rows", "10");
    par.add("fl", "id,node_id,edge_id");
    par.remove("qt");
    par.add("qt", "/select");
    // par.add("")
    SolrParams newp = SolrParams.toSolrParams(par);
    qr.setParams(newp);
    return qr;
}

From source file:com.kmwllc.search.graph.GraphQueryTest.java

License:Open Source License

private SolrQueryRequest createRequest(String query) {
    SolrQueryRequest qr = req(query);/*from   w w w  .  j ava 2  s  .co m*/
    NamedList<Object> par = qr.getParams().toNamedList();
    par.add("defType", "graph");
    par.add("debug", "true");
    par.add("rows", "10");
    par.add("fl", "id,node_id,edge_id");
    par.remove("qt");
    par.add("qt", "/select");
    // par.add("")
    SolrParams newp = SolrParams.toSolrParams(par);
    qr.setParams(newp);
    return qr;
}

From source file:com.kmwllc.search.graph.LargeGraphQueryTest.java

License:Open Source License

private SolrQueryRequest createRequestWithTFilter(String query, String traversalFilter) {
    SolrQueryRequest qr = req(query);/*from  ww w.  ja va2  s.  c  o m*/
    NamedList<Object> par = qr.getParams().toNamedList();
    par.add("traversalFilter", traversalFilter);
    par.add("defType", "kmw");

    par.add("debug", "true");
    par.add("rows", "10");
    par.add("fl", "id,node_id,edge_id");
    par.remove("qt");
    par.add("qt", "/select");
    // par.add("")
    SolrParams newp = SolrParams.toSolrParams(par);
    qr.setParams(newp);
    return qr;
}

From source file:com.sindicetech.siren.solr.facet.SirenFacetProcessorFactory.java

License:Open Source License

/**
 * //from   w w w . ja  va2s .  c  o m
 * Taken from {@link AddSchemaFieldsUpdateProcessorFactory}'s parseTypeMappings().
 * 
 * @param args
 * @return
 */
@SuppressWarnings("rawtypes")
private List<TypeMapping> parseTypeMappings(NamedList args) {
    List<TypeMapping> typeMappings = new ArrayList<TypeMapping>();
    List typeMappingsParams = args.getAll(TYPE_MAPPING_PARAM);
    for (Object typeMappingObj : typeMappingsParams) {
        if (null == typeMappingObj) {
            throw new SolrException(SERVER_ERROR, "'" + TYPE_MAPPING_PARAM + "' init param cannot be null");
        }
        if (!(typeMappingObj instanceof NamedList)) {
            throw new SolrException(SERVER_ERROR, "'" + TYPE_MAPPING_PARAM + "' init param must be a <lst>");
        }
        NamedList typeMappingNamedList = (NamedList) typeMappingObj;

        Object fieldTypeObj = typeMappingNamedList.remove(FIELD_TYPE_PARAM);
        if (null == fieldTypeObj) {
            throw new SolrException(SERVER_ERROR,
                    "Each '" + TYPE_MAPPING_PARAM + "' <lst/> must contain a '" + FIELD_TYPE_PARAM + "' <str>");
        }
        if (!(fieldTypeObj instanceof CharSequence)) {
            throw new SolrException(SERVER_ERROR, "'" + FIELD_TYPE_PARAM + "' init param must be a <str>");
        }
        if (null != typeMappingNamedList.get(FIELD_TYPE_PARAM)) {
            throw new SolrException(SERVER_ERROR, "Each '" + TYPE_MAPPING_PARAM
                    + "' <lst/> may contain only one '" + FIELD_TYPE_PARAM + "' <str>");
        }
        String fieldType = fieldTypeObj.toString();

        Object maxFieldSizeObj = typeMappingNamedList.remove(MAX_FIELD_SIZE_PARAM);
        if (maxFieldSizeObj != null) {
            if (!(maxFieldSizeObj instanceof Integer)) {
                throw new SolrException(SERVER_ERROR, "'" + FIELD_TYPE_PARAM + "' init param must be an <int>");
            }
        }

        Collection<String> valueClasses = typeMappingNamedList.removeConfigArgs(VALUE_CLASS_PARAM);
        if (valueClasses.isEmpty()) {
            throw new SolrException(SERVER_ERROR, "Each '" + TYPE_MAPPING_PARAM
                    + "' <lst/> must contain at least one '" + VALUE_CLASS_PARAM + "' <str>");
        }
        typeMappings.add(new TypeMapping(fieldType, (Integer) maxFieldSizeObj, valueClasses));

        if (0 != typeMappingNamedList.size()) {
            throw new SolrException(SERVER_ERROR, "Unexpected '" + TYPE_MAPPING_PARAM + "' init sub-param(s): '"
                    + typeMappingNamedList.toString() + "'");
        }
        args.remove(TYPE_MAPPING_PARAM);
    }

    checkMappingExists(typeMappings, FacetDatatype.BOOLEAN.xsdDatatype);
    checkMappingExists(typeMappings, FacetDatatype.DOUBLE.xsdDatatype);
    checkMappingExists(typeMappings, FacetDatatype.LONG.xsdDatatype);
    checkMappingExists(typeMappings, FacetDatatype.STRING.xsdDatatype);

    return typeMappings;
}

From source file:com.sindicetech.siren.solr.handler.SirenUpdateRequestHandler.java

License:Open Source License

private List<FieldMapper> parseMappings(NamedList args, String paramName) {
    List<FieldMapper> mappers = new ArrayList<>();
    List params = args.getAll(paramName);

    if (!params.isEmpty()) {
        for (Object mapping : params) {
            NamedList mappingNamedList = this.validateParameter(paramName, mapping);
            String fieldType = this.parseFieldTypeParameter(mappingNamedList);
            String path = this.parseStringParameter(mappingNamedList, PATH_PARAM);
            String type = this.parseStringParameter(mappingNamedList, TYPE_PARAM);

            if ((path == null && type == null) || (path != null && type != null)) {
                throw new SolrException(SERVER_ERROR, "Each mapping must contain either a '" + PATH_PARAM
                        + "' or a '" + TYPE_PARAM + "' sub-parameter");
            }/*w  w w  .j a v  a  2  s  . c  o m*/

            if (mappingNamedList.size() != 0) {
                throw new SolrException(SERVER_ERROR, "Unexpected '" + paramName + "' sub-parameter(s): '"
                        + mappingNamedList.toString() + "'");
            }

            if (path == null) {
                mappers.add(new TypeFieldMapper(type, fieldType));
            } else {
                mappers.add(new PathFieldMapper(path, fieldType));
            }
        }
        args.remove(paramName);
    }

    return mappers;
}

From source file:com.sindicetech.siren.solr.handler.SirenUpdateRequestHandler.java

License:Open Source License

private FieldMapper parseDefaultMapping(NamedList args) {
    List defaultParams = args.getAll(DEFAULT_PARAM);
    if (defaultParams.size() > 1) {
        throw new SolrException(SERVER_ERROR, "Only one '" + DEFAULT_PARAM + "' mapping is allowed");
    }//  w w  w  .jav a2s .  c o  m

    FieldMapper mapper = null;

    if (!defaultParams.isEmpty()) {
        NamedList defaultMappingNamedList = this.validateParameter(DEFAULT_PARAM, defaultParams.get(0));
        String fieldType = this.parseFieldTypeParameter(defaultMappingNamedList);
        mapper = new DefaultFieldMapper(fieldType);
        args.remove(DEFAULT_PARAM);
    }

    return mapper;
}

From source file:com.sindicetech.siren.solr.handler.SirenUpdateRequestHandler.java

License:Open Source License

private FieldMapper parseJsonMapping(NamedList args) {
    List jsonParams = args.getAll(JSON_PARAM);
    if (jsonParams.size() > 1) {
        throw new SolrException(SERVER_ERROR, "Only one '" + JSON_PARAM + "' mapping is allowed");
    }/*from w w w.  j  a va 2  s. c om*/

    FieldMapper mapper = null;

    if (!jsonParams.isEmpty()) {
        NamedList jsonMappingNamedList = this.validateParameter(JSON_PARAM, jsonParams.get(0));
        String fieldType = this.parseFieldTypeParameter(jsonMappingNamedList);
        mapper = new JsonFieldMapper(fieldType);
        args.remove(JSON_PARAM);
    }

    return mapper;
}

From source file:com.sindicetech.siren.solr.handler.SirenUpdateRequestHandler.java

License:Open Source License

private String parseFieldTypeParameter(NamedList mappingNamedList) {
    Object fieldTypeObj = mappingNamedList.remove(FIELD_TYPE_PARAM);
    if (fieldTypeObj == null) {
        throw new SolrException(SERVER_ERROR, "Each mapping must contain a '" + FIELD_TYPE_PARAM + "' <str>");
    }//from ww  w  .  j av  a 2s.  c o  m
    if (!(fieldTypeObj instanceof CharSequence)) {
        throw new SolrException(SERVER_ERROR, "'" + FIELD_TYPE_PARAM + "' parameter must be a <str>");
    }
    if (mappingNamedList.get(FIELD_TYPE_PARAM) != null) {
        throw new SolrException(SERVER_ERROR,
                "Each mapping must contain only one '" + FIELD_TYPE_PARAM + "' <str>");
    }
    return fieldTypeObj.toString();
}

From source file:com.sindicetech.siren.solr.handler.SirenUpdateRequestHandler.java

License:Open Source License

private String parseStringParameter(NamedList mappingNamedList, String paramName) {
    Object obj = mappingNamedList.remove(paramName);
    if (obj == null) {
        return null;
    }//from ww w  .  ja v a  2s.c om
    if (!(obj instanceof CharSequence)) {
        throw new SolrException(SERVER_ERROR, "'" + paramName + "' parameter must be a <str>");
    }
    if (mappingNamedList.get(paramName) != null) {
        throw new SolrException(SERVER_ERROR, "Each mapping must contain only one '" + paramName + "' <str>");
    }
    return obj.toString();
}