Example usage for org.apache.solr.client.solrj.response RangeFacet.Numeric getBetween

List of usage examples for org.apache.solr.client.solrj.response RangeFacet.Numeric getBetween

Introduction

In this page you can find the example usage for org.apache.solr.client.solrj.response RangeFacet.Numeric getBetween.

Prototype

public Number getBetween() 

Source Link

Usage

From source file:com.nridge.ds.solr.SolrResponseBuilder.java

License:Open Source License

@SuppressWarnings({ "unchecked", "rawtypes" })
private void populateFacet(DataTable aTable, RangeFacet aRangeFacet) {
    DataField schemaField;//from  www. j a v a 2  s .  com
    Logger appLogger = mAppMgr.getLogger(this, "populateFacet");

    appLogger.trace(mAppMgr.LOGMSG_TRACE_ENTER);

    DataBag resultBag = mBag;
    String fieldName = aRangeFacet.getName();
    schemaField = resultBag.getFieldByName(fieldName);
    Field.Type fieldType = facetRangeToFieldType(aRangeFacet, schemaField);
    if (Field.isDateOrTime(fieldType)) {
        RangeFacet<Date, Date> facetRangeDate = (RangeFacet<Date, Date>) aRangeFacet;

        aTable.newRow();
        aTable.setValueByName("field_name", fieldName);
        if ((schemaField != null) && (StringUtils.isNotEmpty(schemaField.getTitle())))
            aTable.setValueByName("field_title", schemaField.getTitle());
        else
            aTable.setValueByName("field_title", Field.nameToTitle(fieldName));
        aTable.setValueByName("field_type", Field.typeToString(fieldType));
        Object objectValue = facetRangeDate.getStart();
        if (objectValue != null)
            aTable.setValueByName("field_start", facetRangeDate.getStart());
        objectValue = facetRangeDate.getEnd();
        if (objectValue != null)
            aTable.setValueByName("field_finish", facetRangeDate.getEnd());
        objectValue = facetRangeDate.getGap();
        if (objectValue != null)
            aTable.setValueByName("field_gap", objectValue.toString());
        objectValue = facetRangeDate.getAfter();
        if (objectValue != null)
            aTable.setValueByName("count_after", objectValue.toString());
        objectValue = facetRangeDate.getBefore();
        if (objectValue != null)
            aTable.setValueByName("count_before", objectValue.toString());
        objectValue = facetRangeDate.getBetween();
        if (objectValue != null)
            aTable.setValueByName("count_between", objectValue.toString());
        ArrayList<String> fieldValueList = new ArrayList<>();
        for (RangeFacet.Count rfCount : facetRangeDate.getCounts())
            fieldValueList.add(String.format("%s (%d)", rfCount.getValue(), rfCount.getCount()));
        aTable.setValuesByName("facet_name_count", fieldValueList);
        aTable.addRow();
    } else {
        RangeFacet.Numeric facetRangeNumber = (RangeFacet.Numeric) aRangeFacet;

        aTable.newRow();
        aTable.setValueByName("field_name", fieldName);
        if ((schemaField != null) && (StringUtils.isNotEmpty(schemaField.getTitle())))
            aTable.setValueByName("field_title", schemaField.getTitle());
        else
            aTable.setValueByName("field_title", Field.nameToTitle(fieldName));
        aTable.setValueByName("field_type", Field.typeToString(fieldType));
        Object objectValue = facetRangeNumber.getStart();
        if (objectValue != null)
            aTable.setValueByName("field_start", objectValue.toString());
        objectValue = facetRangeNumber.getEnd();
        if (objectValue != null)
            aTable.setValueByName("field_finish", objectValue.toString());
        objectValue = facetRangeNumber.getGap();
        if (objectValue != null)
            aTable.setValueByName("field_gap", objectValue.toString());
        objectValue = facetRangeNumber.getAfter();
        if (objectValue != null)
            aTable.setValueByName("count_after", objectValue.toString());
        objectValue = facetRangeNumber.getBefore();
        if (objectValue != null)
            aTable.setValueByName("count_before", objectValue.toString());
        objectValue = facetRangeNumber.getBetween();
        if (objectValue != null)
            aTable.setValueByName("count_between", objectValue.toString());
        ArrayList<String> fieldValueList = new ArrayList<>();
        for (RangeFacet.Count rfCount : facetRangeNumber.getCounts())
            fieldValueList.add(String.format("%s (%d)", rfCount.getValue(), rfCount.getCount()));
        aTable.setValuesByName("facet_name_count", fieldValueList);
        aTable.addRow();
    }

    appLogger.trace(mAppMgr.LOGMSG_TRACE_DEPART);
}

From source file:fr.cnes.sitools.metacatalogue.representation.GeoJsonMDEORepresentation.java

License:Open Source License

private void writeFacetRanges(JsonGenerator jGenerator) throws JsonGenerationException, IOException {

    jGenerator.writeObjectFieldStart("facet_ranges");
    if (this.rangesFacets != null) {
        for (RangeFacet facet : this.rangesFacets) {
            jGenerator.writeObjectFieldStart(facet.getName());
            jGenerator.writeArrayFieldStart("counts");
            if (facet instanceof RangeFacet.Date) {
                RangeFacet.Date facetDate = (RangeFacet.Date) facet;
                for (RangeFacet.Count count : facetDate.getCounts()) {
                    jGenerator.writeString(count.getValue());
                    jGenerator.writeNumber(count.getCount());
                }/*from  ww w. ja  v  a  2 s . co  m*/
                jGenerator.writeEndArray();
                jGenerator.writeStringField("start", formatDate(facetDate.getStart()));
                jGenerator.writeStringField("end", formatDate(facetDate.getEnd()));
                jGenerator.writeStringField("gap", facetDate.getGap());
                writeNumber(jGenerator, "after", facetDate.getAfter());
                writeNumber(jGenerator, "before", facetDate.getBefore());
                writeNumber(jGenerator, "between", facetDate.getBetween());
            }
            if (facet instanceof RangeFacet.Numeric) {
                RangeFacet.Numeric facetNumeric = (RangeFacet.Numeric) facet;
                for (RangeFacet.Count count : facetNumeric.getCounts()) {
                    jGenerator.writeString(count.getValue());
                    jGenerator.writeNumber(count.getCount());
                }
                jGenerator.writeEndArray();
                writeNumber(jGenerator, "start", facetNumeric.getStart());
                writeNumber(jGenerator, "end", facetNumeric.getEnd());
                writeNumber(jGenerator, "gap", facetNumeric.getGap());
                writeNumber(jGenerator, "after", facetNumeric.getAfter());
                writeNumber(jGenerator, "before", facetNumeric.getBefore());
                writeNumber(jGenerator, "between", facetNumeric.getBetween());
            }

            jGenerator.writeEndObject();
        }
    }
    jGenerator.writeEndObject();
}