litesoft
@ 947
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
// This Source Code is in the Public Domain per: http://unlicense.org package org.litesoft.orsup.base; import org.litesoft.logger.*; public abstract class POQueryFilter { public static final Logger LOGGER = LoggerFactory.getLogger( POQueryFilter.class ); public enum TYPE { NoneAcceptable, AllAcceptable, PotentialFilteringByKey, PotentialFilteringByInstance } private MetaDataForPO mMetaDataForPO; protected POQueryFilter( MetaDataForPO pMetaDataForPO ) { mMetaDataForPO = pMetaDataForPO; } /** * @return Filtering on PO MetaData or null: null indicates that there is either No Filtering or that No POs would pass the filter. */ public MetaDataForPO getMetaDataForPO() { return mMetaDataForPO; } abstract public TYPE getType(); @Override public String toString() { return getClass().getSimpleName() + " " + getType() + " on " + getMetaDataForPO(); } public static POQueryFilter NONE_ACCEPTABLE = new POQueryFilter( null ) { @Override public TYPE getType() { return TYPE.NoneAcceptable; } }; public static POQueryFilter ALL_ACCEPTABLE = new POQueryFilter( null ) { @Override public TYPE getType() { return TYPE.AllAcceptable; } }; } |