@Test public void testNoTime() { schema.getDescriptor("when").getUserData().clear(); schema.getDescriptor("whennot").getUserData().clear(); schema.getDescriptor("when").getUserData().put("time", Boolean.FALSE); schema.getDescriptor("whennot").getUserData().put("time", Boolean.FALSE); final FeatureDataAdapter dataAdapter = new FeatureDataAdapter( schema, new GlobalVisibilityHandler<SimpleFeature, Object>("default")); final List<IndexFieldHandler<SimpleFeature, ? extends CommonIndexValue, Object>> handlers = dataAdapter.getDefaultTypeMatchingHandlers(schema); boolean found = false; for (final IndexFieldHandler<SimpleFeature, ? extends CommonIndexValue, Object> handler : handlers) { found |= (handler instanceof FeatureTimestampHandler); } assertFalse(found); }
@Override protected List<IndexFieldHandler<SimpleFeature, ? extends CommonIndexValue, Object>> getDefaultTypeMatchingHandlers( final Object typeObj) { if ((typeObj != null) && (typeObj instanceof SimpleFeatureType)) { final SimpleFeatureType internalType = (SimpleFeatureType) typeObj; final List<IndexFieldHandler<SimpleFeature, ? extends CommonIndexValue, Object>> defaultHandlers = new ArrayList<>(); nativeFieldHandlers = getFieldHandlersFromFeatureType(internalType); final IndexFieldHandler<SimpleFeature, Time, Object> timeHandler = getTimeRangeHandler(internalType); if (timeHandler != null) { defaultHandlers.add(timeHandler); } final AttributeDescriptor descriptor = internalType.getGeometryDescriptor(); final VisibilityConfiguration visConfig = new VisibilityConfiguration(internalType); if (descriptor != null) { defaultHandlers.add( new FeatureGeometryHandler( descriptor, visConfig.getManager().createVisibilityHandler( descriptor.getLocalName(), fieldVisiblityHandler, visConfig.getAttributeName()))); } return defaultHandlers; } LOGGER.warn("Simple Feature Type could not be used for handling the indexed data"); return super.getDefaultTypeMatchingHandlers(reprojectedFeatureType); }
FeatureDataAdapter extends AbstractDataAdapter<SimpleFeature> implements
    GeotoolsFeatureDataAdapter<SimpleFeature>,
    StatisticsProvider<SimpleFeature>,
    HadoopDataAdapter<SimpleFeature, FeatureWritable>,
    InitializeWithIndicesDataAdapter<SimpleFeature> { @Override protected List<IndexFieldHandler<SimpleFeature, ? extends CommonIndexValue, Object>> getDefaultTypeMatchingHandlers( final Object typeObj) { if ((typeObj != null) && (typeObj instanceof SimpleFeatureType)) { final SimpleFeatureType internalType = (SimpleFeatureType) typeObj; final List<IndexFieldHandler<SimpleFeature, ? extends CommonIndexValue, Object>> defaultHandlers = new ArrayList<>(); nativeFieldHandlers = getFieldHandlersFromFeatureType(internalType); final IndexFieldHandler<SimpleFeature, Time, Object> timeHandler = getTimeRangeHandler(internalType); if (timeHandler != null) { defaultHandlers.add(timeHandler); } final AttributeDescriptor descriptor = internalType.getGeometryDescriptor(); final VisibilityConfiguration visConfig = new VisibilityConfiguration(internalType); if (descriptor != null) { defaultHandlers.add( new FeatureGeometryHandler( descriptor, visConfig.getManager().createVisibilityHandler( descriptor.getLocalName(), fieldVisiblityHandler, visConfig.getAttributeName()))); } return defaultHandlers; } LOGGER.warn("Simple Feature Type could not be used for handling the indexed data"); return super.getDefaultTypeMatchingHandlers(reprojectedFeatureType); } }
FeatureDataAdapter extends AbstractDataAdapter<SimpleFeature> implements
    GeotoolsFeatureDataAdapter<SimpleFeature>,
    StatisticsProvider<SimpleFeature>,
    HadoopDataAdapter<SimpleFeature, FeatureWritable>,
    InitializeWithIndicesDataAdapter<SimpleFeature> { @Override protected List<IndexFieldHandler<SimpleFeature, ? extends CommonIndexValue, Object>> getDefaultTypeMatchingHandlers( final Object typeObj) { if ((typeObj != null) && (typeObj instanceof SimpleFeatureType)) { final SimpleFeatureType internalType = (SimpleFeatureType) typeObj; final List<IndexFieldHandler<SimpleFeature, ? extends CommonIndexValue, Object>> defaultHandlers = new ArrayList<>(); nativeFieldHandlers = getFieldHandlersFromFeatureType(internalType); final IndexFieldHandler<SimpleFeature, Time, Object> timeHandler = getTimeRangeHandler(internalType); if (timeHandler != null) { defaultHandlers.add(timeHandler); } final AttributeDescriptor descriptor = internalType.getGeometryDescriptor(); final VisibilityConfiguration visConfig = new VisibilityConfiguration(internalType); if (descriptor != null) { defaultHandlers.add( new FeatureGeometryHandler( descriptor, visConfig.getManager().createVisibilityHandler( descriptor.getLocalName(), fieldVisiblityHandler, visConfig.getAttributeName()))); } return defaultHandlers; } LOGGER.warn("Simple Feature Type could not be used for handling the indexed data"); return super.getDefaultTypeMatchingHandlers(reprojectedFeatureType); } protected  FeatureDataAdapter();  FeatureDataAdapter(final SimpleFeatureType featureType);  FeatureDataAdapter(
      final SimpleFeatureType featureType,
      final List<PersistentIndexFieldHandler<SimpleFeature, ? extends CommonIndexValue, Object>> customIndexHandlers);  FeatureDataAdapter(
      final SimpleFeatureType featureType,
      final VisibilityManagement<SimpleFeature> visibilityManagement);  FeatureDataAdapter(
      final SimpleFeatureType featureType,
      final FieldVisibilityHandler<SimpleFeature, Object> fieldVisiblityHandler);  FeatureDataAdapter(
      final SimpleFeatureType featureType,
      final List<PersistentIndexFieldHandler<SimpleFeature, ? extends CommonIndexValue, Object>> customIndexHandlers,
      final FieldVisibilityHandler<SimpleFeature, Object> fieldVisiblityHandler,
      final VisibilityManagement<SimpleFeature> defaultVisibilityManagement); }
FeatureDataAdapter extends AbstractDataAdapter<SimpleFeature> implements
    GeotoolsFeatureDataAdapter<SimpleFeature>,
    StatisticsProvider<SimpleFeature>,
    HadoopDataAdapter<SimpleFeature, FeatureWritable>,
    InitializeWithIndicesDataAdapter<SimpleFeature> { @Override protected List<IndexFieldHandler<SimpleFeature, ? extends CommonIndexValue, Object>> getDefaultTypeMatchingHandlers( final Object typeObj) { if ((typeObj != null) && (typeObj instanceof SimpleFeatureType)) { final SimpleFeatureType internalType = (SimpleFeatureType) typeObj; final List<IndexFieldHandler<SimpleFeature, ? extends CommonIndexValue, Object>> defaultHandlers = new ArrayList<>(); nativeFieldHandlers = getFieldHandlersFromFeatureType(internalType); final IndexFieldHandler<SimpleFeature, Time, Object> timeHandler = getTimeRangeHandler(internalType); if (timeHandler != null) { defaultHandlers.add(timeHandler); } final AttributeDescriptor descriptor = internalType.getGeometryDescriptor(); final VisibilityConfiguration visConfig = new VisibilityConfiguration(internalType); if (descriptor != null) { defaultHandlers.add( new FeatureGeometryHandler( descriptor, visConfig.getManager().createVisibilityHandler( descriptor.getLocalName(), fieldVisiblityHandler, visConfig.getAttributeName()))); } return defaultHandlers; } LOGGER.warn("Simple Feature Type could not be used for handling the indexed data"); return super.getDefaultTypeMatchingHandlers(reprojectedFeatureType); } protected  FeatureDataAdapter();  FeatureDataAdapter(final SimpleFeatureType featureType);  FeatureDataAdapter(
      final SimpleFeatureType featureType,
      final List<PersistentIndexFieldHandler<SimpleFeature, ? extends CommonIndexValue, Object>> customIndexHandlers);  FeatureDataAdapter(
      final SimpleFeatureType featureType,
      final VisibilityManagement<SimpleFeature> visibilityManagement);  FeatureDataAdapter(
      final SimpleFeatureType featureType,
      final FieldVisibilityHandler<SimpleFeature, Object> fieldVisiblityHandler);  FeatureDataAdapter(
      final SimpleFeatureType featureType,
      final List<PersistentIndexFieldHandler<SimpleFeature, ? extends CommonIndexValue, Object>> customIndexHandlers,
      final FieldVisibilityHandler<SimpleFeature, Object> fieldVisiblityHandler,
      final VisibilityManagement<SimpleFeature> defaultVisibilityManagement); @Override boolean init(final Index... indices); @Override IndexFieldHandler<SimpleFeature, ? extends CommonIndexValue, Object> getFieldHandler(
      final NumericDimensionField<? extends CommonIndexValue> dimension); @Override void setNamespace(final String namespaceURI); @Override FieldReader<Object> getReader(final String fieldName); @Override FieldWriter<SimpleFeature, Object> getWriter(final String fieldName); @Override String getTypeName(); @Override byte[] getDataId(final SimpleFeature entry); @Override SimpleFeatureType getFeatureType(); @Override AdapterPersistenceEncoding encode(
      final SimpleFeature entry,
      final CommonIndexModel indexModel); @Override StatisticsId[] getSupportedStatistics(); @Override InternalDataStatistics<SimpleFeature, R, B> createDataStatistics(
      final StatisticsId statisticsId); @Override EntryVisibilityHandler<SimpleFeature> getVisibilityHandler(
      final CommonIndexModel indexModel,
      final DataTypeAdapter<SimpleFeature> adapter,
      final StatisticsId statisticsId); @Override boolean hasTemporalConstraints(); synchronized void resetTimeDescriptors(); @Override synchronized TimeDescriptors getTimeDescriptors(); @Override HadoopWritableSerializer<SimpleFeature, FeatureWritable> createWritableSerializer(); @Override int getPositionOfOrderedField(final CommonIndexModel model, final String fieldName); @Override String getFieldNameForPosition(final CommonIndexModel model, final int position); static CoordinateReferenceSystem decodeCRS(final String crsCode); @Override Map<String, String> describe(); }
FeatureDataAdapter extends AbstractDataAdapter<SimpleFeature> implements
    GeotoolsFeatureDataAdapter<SimpleFeature>,
    StatisticsProvider<SimpleFeature>,
    HadoopDataAdapter<SimpleFeature, FeatureWritable>,
    InitializeWithIndicesDataAdapter<SimpleFeature> { @Override protected List<IndexFieldHandler<SimpleFeature, ? extends CommonIndexValue, Object>> getDefaultTypeMatchingHandlers( final Object typeObj) { if ((typeObj != null) && (typeObj instanceof SimpleFeatureType)) { final SimpleFeatureType internalType = (SimpleFeatureType) typeObj; final List<IndexFieldHandler<SimpleFeature, ? extends CommonIndexValue, Object>> defaultHandlers = new ArrayList<>(); nativeFieldHandlers = getFieldHandlersFromFeatureType(internalType); final IndexFieldHandler<SimpleFeature, Time, Object> timeHandler = getTimeRangeHandler(internalType); if (timeHandler != null) { defaultHandlers.add(timeHandler); } final AttributeDescriptor descriptor = internalType.getGeometryDescriptor(); final VisibilityConfiguration visConfig = new VisibilityConfiguration(internalType); if (descriptor != null) { defaultHandlers.add( new FeatureGeometryHandler( descriptor, visConfig.getManager().createVisibilityHandler( descriptor.getLocalName(), fieldVisiblityHandler, visConfig.getAttributeName()))); } return defaultHandlers; } LOGGER.warn("Simple Feature Type could not be used for handling the indexed data"); return super.getDefaultTypeMatchingHandlers(reprojectedFeatureType); } protected  FeatureDataAdapter();  FeatureDataAdapter(final SimpleFeatureType featureType);  FeatureDataAdapter(
      final SimpleFeatureType featureType,
      final List<PersistentIndexFieldHandler<SimpleFeature, ? extends CommonIndexValue, Object>> customIndexHandlers);  FeatureDataAdapter(
      final SimpleFeatureType featureType,
      final VisibilityManagement<SimpleFeature> visibilityManagement);  FeatureDataAdapter(
      final SimpleFeatureType featureType,
      final FieldVisibilityHandler<SimpleFeature, Object> fieldVisiblityHandler);  FeatureDataAdapter(
      final SimpleFeatureType featureType,
      final List<PersistentIndexFieldHandler<SimpleFeature, ? extends CommonIndexValue, Object>> customIndexHandlers,
      final FieldVisibilityHandler<SimpleFeature, Object> fieldVisiblityHandler,
      final VisibilityManagement<SimpleFeature> defaultVisibilityManagement); @Override boolean init(final Index... indices); @Override IndexFieldHandler<SimpleFeature, ? extends CommonIndexValue, Object> getFieldHandler(
      final NumericDimensionField<? extends CommonIndexValue> dimension); @Override void setNamespace(final String namespaceURI); @Override FieldReader<Object> getReader(final String fieldName); @Override FieldWriter<SimpleFeature, Object> getWriter(final String fieldName); @Override String getTypeName(); @Override byte[] getDataId(final SimpleFeature entry); @Override SimpleFeatureType getFeatureType(); @Override AdapterPersistenceEncoding encode(
      final SimpleFeature entry,
      final CommonIndexModel indexModel); @Override StatisticsId[] getSupportedStatistics(); @Override InternalDataStatistics<SimpleFeature, R, B> createDataStatistics(
      final StatisticsId statisticsId); @Override EntryVisibilityHandler<SimpleFeature> getVisibilityHandler(
      final CommonIndexModel indexModel,
      final DataTypeAdapter<SimpleFeature> adapter,
      final StatisticsId statisticsId); @Override boolean hasTemporalConstraints(); synchronized void resetTimeDescriptors(); @Override synchronized TimeDescriptors getTimeDescriptors(); @Override HadoopWritableSerializer<SimpleFeature, FeatureWritable> createWritableSerializer(); @Override int getPositionOfOrderedField(final CommonIndexModel model, final String fieldName); @Override String getFieldNameForPosition(final CommonIndexModel model, final int position); static CoordinateReferenceSystem decodeCRS(final String crsCode); @Override Map<String, String> describe();  }