Holger's
Java API

com.antelmann.db
Interface ProcessedFilterOption<T extends DBEntry>

All Superinterfaces:
Wrapped<DBClassStore<T>>
All Known Implementing Classes:
ArchiveDBClassStore, CategoryStore, DBClassStoreCache, DBDocumentStore, FriendsEntryStore, GPersonStore, ImageURLEntrySQLStore, PropertyEntryHeaderStore, PropertyEntryTableStore, ReadOnlyStore, SortedGroupableSQLStore, SQLColumnInfoStore, TaggableHeaderStore, TaggablePropertyEntrySQLStore, TaggableSQLStore, UnionSqlStore, WrappedDBClassStore, WrappedDBClassStoreMapping

public interface ProcessedFilterOption<T extends DBEntry>
extends Wrapped<DBClassStore<T>>

allows to control whether a processor is run before filtering when using a WrappedDBClassStore. Unfortunately, each option has its drawbacks. You can avoid all this hassle by having a store implementing ProcessorHook.

Since:
22.06.2014, 05:38:32
Author:
holger
See Also:
WrappedDBClassStore.wrapFilterForProcessing(Filter, Processor), Database.queryStoreForInterface(Class, Class)

Method Summary
 boolean isProcessBeforeFiltering()
          determines whether the option is set to processing via filtering, so that the filtering can take advantage of a processed entry
 void setProcessBeforeFiltering(boolean flag)
          If set to false, filtering during fetch operations operate on entries that have not yet run through the processor - if one is set.
 
Methods inherited from interface com.antelmann.util.Wrapped
unwrap
 

Method Detail

isProcessBeforeFiltering

boolean isProcessBeforeFiltering()
determines whether the option is set to processing via filtering, so that the filtering can take advantage of a processed entry


setProcessBeforeFiltering

void setProcessBeforeFiltering(boolean flag)
If set to false, filtering during fetch operations operate on entries that have not yet run through the processor - if one is set. Unfortunately, setting this option to true can have other drawbacks! See the implementation notes of an implementing class on how exactly problems may arise! ALSO: Make sure that - if you change this option temporarily - you change it while you are synchronized on the transaction, so that you can guarantee that no other Thread may be affected by the cange.

See Also:
WrappedDBClassStore.wrapFilterForProcessing(Filter, Processor)


(c) Holger Antelmann since 2001- all rights reserved (contact: info@antelmann.com)
see www.antelmann.com/developer for further details and available downloads