/** * Returns the inner {@link SortField.Type} expected for this sort field. */ static SortField.Type extractSortType(SortField sortField) { if (sortField.getComparatorSource() instanceof IndexFieldData.XFieldComparatorSource) { return ((IndexFieldData.XFieldComparatorSource) sortField.getComparatorSource()).reducedType(); } else if (sortField instanceof SortedSetSortField) { return SortField.Type.STRING; } else if (sortField instanceof SortedNumericSortField) { return ((SortedNumericSortField) sortField).getNumericType(); } else if ("LatLonPointSortField".equals(sortField.getClass().getSimpleName())) { // for geo distance sorting return SortField.Type.DOUBLE; } else { return sortField.getType(); } }
out.writeString(sortField.getField()); if (sortField.getComparatorSource() != null) { IndexFieldData.XFieldComparatorSource comparatorSource = (IndexFieldData.XFieldComparatorSource) sortField.getComparatorSource(); writeSortType(out, comparatorSource.reducedType()); writeMissingValue(out, comparatorSource.missingValue(sortField.getReverse()));
/** * Returns the inner {@link SortField.Type} expected for this sort field. */ static SortField.Type extractSortType(SortField sortField) { if (sortField.getComparatorSource() instanceof IndexFieldData.XFieldComparatorSource) { return ((IndexFieldData.XFieldComparatorSource) sortField.getComparatorSource()).reducedType(); } else if (sortField instanceof SortedSetSortField) { return SortField.Type.STRING; } else if (sortField instanceof SortedNumericSortField) { return ((SortedNumericSortField) sortField).getNumericType(); } else if ("LatLonPointSortField".equals(sortField.getClass().getSimpleName())) { // for geo distance sorting return SortField.Type.DOUBLE; } else { return sortField.getType(); } }
private String formatSortCriterion(SortField sortField) { StringBuilder buf = new StringBuilder(); buf.append (sortField.getField()); if (sortField.getReverse()) { buf.append (" descending"); } if (SearchResultIterator.MISSING_LAST.equals(sortField.getComparatorSource())) { buf.append (" empty greatest"); } switch (sortField.getType()) { case INT: buf.append(" int"); break; case LONG: buf.append(" long"); break; default: // default is string } return buf.toString(); }
/** * Returns the inner {@link SortField.Type} expected for this sort field. */ static SortField.Type extractSortType(SortField sortField) { if (sortField.getComparatorSource() instanceof IndexFieldData.XFieldComparatorSource) { return ((IndexFieldData.XFieldComparatorSource) sortField.getComparatorSource()).reducedType(); } else if (sortField instanceof SortedSetSortField) { return SortField.Type.STRING; } else if (sortField instanceof SortedNumericSortField) { return ((SortedNumericSortField) sortField).getNumericType(); } else if ("LatLonPointSortField".equals(sortField.getClass().getSimpleName())) { // for geo distance sorting return SortField.Type.DOUBLE; } else { return sortField.getType(); } }
private static Object convertValueFromSortField(Object value, SortField sortField, DocValueFormat format) { if (sortField.getComparatorSource() instanceof IndexFieldData.XFieldComparatorSource) { IndexFieldData.XFieldComparatorSource cmpSource = (IndexFieldData.XFieldComparatorSource) sortField.getComparatorSource(); return convertValueFromSortType(sortField.getField(), cmpSource.reducedType(), value, format); } SortField.Type sortType = extractSortType(sortField); return convertValueFromSortType(sortField.getField(), sortType, value, format); }
private SortField getAvailableSortField(String propertyName, org.springframework.data.domain.Sort.Direction direction) { if(sortFieldMap.containsKey(propertyName)) { SortField availableSortField = sortFieldMap.get(propertyName); boolean reverse = direction == org.springframework.data.domain.Sort.Direction.DESC ? true : false; if(availableSortField.getType() != null) { return new SortField(availableSortField.getField(), availableSortField.getType(), reverse); } else { return new SortField(availableSortField.getField(), availableSortField.getComparatorSource(), reverse); } } else { return sortFieldMap.get("name"); } }
private SortField getAvailableSortField(String propertyName, org.springframework.data.domain.Sort.Direction direction) { if (sortFieldMap.containsKey(propertyName)) { SortField availableSortField = sortFieldMap.get(propertyName); boolean reverse = direction == org.springframework.data.domain.Sort.Direction.DESC ? true : false; if (availableSortField.getType() != null) { return new SortField(availableSortField.getField(), availableSortField.getType(), reverse); } else { return new SortField(availableSortField.getField(), availableSortField.getComparatorSource(), reverse); } } else { return sortFieldMap.get("modifiedTime"); } } }
private static Object convertValueFromSortField(Object value, SortField sortField, DocValueFormat format) { if (sortField.getComparatorSource() instanceof IndexFieldData.XFieldComparatorSource) { IndexFieldData.XFieldComparatorSource cmpSource = (IndexFieldData.XFieldComparatorSource) sortField.getComparatorSource(); return convertValueFromSortType(sortField.getField(), cmpSource.reducedType(), value, format); } return convertValueFromSortType(sortField.getField(), sortField.getType(), value, format); }
private SortField getAvailableSortField(String propertyName, org.springframework.data.domain.Sort.Direction direction) { if(sortFieldMap.containsKey(propertyName)) { SortField availableSortField = sortFieldMap.get(propertyName); boolean reverse = direction == org.springframework.data.domain.Sort.Direction.DESC ? true : false; if(availableSortField.getType() != null) { return new SortField(availableSortField.getField(), availableSortField.getType(), reverse); } else { return new SortField(availableSortField.getField(), availableSortField.getComparatorSource(), reverse); } } else { return sortFieldMap.get("name"); } }
idx[i] = names.indexOf(orderings[i].getSelectorName()); SortField sf = orderings[i].getSortField(); if (sf.getComparatorSource() != null) { FieldComparator c = sf.getComparatorSource().newComparator(sf.getField(), numHits, 0, false); assert c instanceof FieldComparatorBase; comparators[i] = new ScoreDocComparator((FieldComparatorBase) c);
idx[i] = names.indexOf(orderings[i].getSelectorName()); SortField sf = orderings[i].getSortField(); if (sf.getComparatorSource() != null) { FieldComparator c = sf.getComparatorSource().newComparator(sf.getField(), numHits, 0, false); assert c instanceof FieldComparatorBase; comparators[i] = new ScoreDocComparator((FieldComparatorBase) c);
public Object visit(LowerCaseImpl node, Object data) throws Exception { SortField sf = (SortField) ((DynamicOperandImpl) node.getOperand()).accept(this, data); selectorName[0] = node.getSelectorQName(); return new SortField(sf.getField(), new LowerCaseSortComparator(sf.getComparatorSource()), !ordering.isAscending()); }
public Object visit(LowerCaseImpl node, Object data) throws Exception { SortField sf = (SortField) ((DynamicOperandImpl) node.getOperand()).accept(this, data); selectorName[0] = node.getSelectorQName(); return new SortField(sf.getField(), new LowerCaseSortComparator(sf.getComparatorSource()), !ordering.isAscending()); }
public Object visit(UpperCaseImpl node, Object data) throws Exception { SortField sf = (SortField) ((DynamicOperandImpl) node.getOperand()).accept(this, data); selectorName[0] = node.getSelectorQName(); return new SortField(sf.getField(), new UpperCaseSortComparator(sf.getComparatorSource()), !ordering.isAscending()); }
public Object visit(UpperCaseImpl node, Object data) throws Exception { SortField sf = (SortField) ((DynamicOperandImpl) node.getOperand()).accept(this, data); selectorName[0] = node.getSelectorQName(); return new SortField(sf.getField(), new UpperCaseSortComparator(sf.getComparatorSource()), !ordering.isAscending()); }
out.writeString(sortField.getField()); if (sortField.getComparatorSource() != null) { IndexFieldData.XFieldComparatorSource comparatorSource = (IndexFieldData.XFieldComparatorSource) sortField.getComparatorSource(); writeSortType(out, comparatorSource.reducedType()); writeMissingValue(out, comparatorSource.missingValue(sortField.getReverse()));
out.writeString(sortField.getField()); if (sortField.getComparatorSource() != null) { IndexFieldData.XFieldComparatorSource comparatorSource = (IndexFieldData.XFieldComparatorSource) sortField.getComparatorSource(); writeSortType(out, comparatorSource.reducedType()); writeMissingValue(out, comparatorSource.missingValue(sortField.getReverse()));
public ShardFieldSortedHitQueue(SortField[] fields, int size) { final int n = fields.length; comparators = new Comparator[n]; this.fields = new SortField[n]; for (int i = 0; i < n; ++i) { // keep track of the named fields int type = fields[i].getType(); if (type!=SortField.SCORE && type!=SortField.DOC) { fieldNames.add(fields[i].getField()); } String fieldname = fields[i].getField(); comparators[i] = getCachedComparator(fieldname, fields[i] .getType(), fields[i].getLocale(), fields[i].getComparatorSource()); if (fields[i].getType() == SortField.STRING) { this.fields[i] = new SortField(fieldname, fields[i].getLocale(), fields[i].getReverse()); } else { this.fields[i] = new SortField(fieldname, fields[i].getType(), fields[i].getReverse()); } //System.out.println("%%%%%%%%%%%%%%%%%% got "+fields[i].getType() +" for "+ fieldname +" fields[i].getReverse(): "+fields[i].getReverse()); } initialize(size); }
out.writeString(sortField.getField()); if (sortField.getComparatorSource() != null) { IndexFieldData.XFieldComparatorSource comparatorSource = (IndexFieldData.XFieldComparatorSource) sortField.getComparatorSource(); writeSortType(out, comparatorSource.reducedType()); writeMissingValue(out, comparatorSource.missingValue(sortField.getReverse()));