public static boolean isSpatial(final NumericDimensionField<?> d) { final Class<?> commonIndexType = GenericTypeResolver.resolveTypeArgument(d.getClass(), NumericDimensionField.class); return GeometryWrapper.class.isAssignableFrom(commonIndexType); }
@SuppressWarnings("unchecked") protected FieldType[] readVariableSizeField( final byte[] fieldData, final SerializationHelper<FieldType> serializationHelper) { if ((fieldData == null) || (fieldData.length == 0)) { return null; } final List<FieldType> result = new ArrayList<FieldType>(); final ByteBuffer buff = ByteBuffer.wrap(fieldData); // this would be bad if (buff.get() != Encoding.VARIABLE_SIZE_ENCODING.getByteEncoding()) { return null; } while (buff.remaining() >= 1) { final int size = serializationHelper.readUnsignedInt(buff); if (size > 0) { final byte[] bytes = new byte[size]; buff.get(bytes); result.add(serializationHelper.readField(reader, bytes)); } else { result.add(null); } } final FieldType[] resultArray = (FieldType[]) Array.newInstance( GenericTypeResolver.resolveTypeArgument(reader.getClass(), FieldReader.class), result.size()); return result.toArray(resultArray); }
GenericTypeResolver.resolveTypeArgument(reader.getClass(), FieldReader.class), result.size()); return result.toArray(resultArray);
/** * Get index field handler for the provided dimension. * * @param dimension * @return field handler */ public IndexFieldHandler<T, ? extends CommonIndexValue, Object> getFieldHandler( final NumericDimensionField<? extends CommonIndexValue> dimension) { // first try explicit dimension matching IndexFieldHandler<T, ? extends CommonIndexValue, Object> fieldHandler = fieldNameMatchingFieldHandlers.get(dimension.getFieldName()); if (fieldHandler == null) { // if that fails, go for type matching fieldHandler = FieldUtils.getAssignableValueFromClassMap( GenericTypeResolver.resolveTypeArgument( dimension.getClass(), NumericDimensionField.class), typeMatchingFieldHandlers); fieldNameMatchingFieldHandlers.put(dimension.getFieldName(), fieldHandler); } return fieldHandler; }
if (serializationProvider != null) { final Class<?> type = GenericTypeResolver.resolveTypeArgument( serializationProvider.getClass(), FieldSerializationProviderSpi.class);