com.sibvisions.rad.model
Class Filter

java.lang.Object
  extended by com.sibvisions.rad.model.Filter

public class Filter
extends Object

The Filter class provide helper functions to create combined IConditions.

See Also:
ICondition

Constructor Summary
protected Filter()
          Should not be used.
 
Method Summary
static ICondition createCondition(ICondition pCondition, boolean pInclude, String... pColumns)
          Creates a new ICondition from the given ICondition and ignores or uses specific columns.
static ICondition createEqualsFilter(IDataRow pFilterDataRow, String[] pFilterColumnNames)
          Creates a Filter with AND combined EQUALS conditions over all filter column names.
static ICondition createEqualsFilter(IDataRow pFilterDataRow, String[] pFilterColumnNames, boolean pIgnoreNull)
          Creates a Filter with AND combined EQUALS conditions over all filter column names.
static ICondition createEqualsFilter(String[] pColumnNames, Object[] pDataRow, ColumnMetaData[] pColumnMetaData)
          Creates a Filter with AND combined EQUALS conditions over all filter column names.
static ICondition createFilter(IDataRow pFilterDataRow)
          Creates an Filter with AND combined and for each
- column with the DataType String with LikeIgnoreCase condition and
- column with the DataType BigDecimal & Boolean with Equals condition and
- for two column in order with the DataType Timestamp the first with GreaterEquals and the second with LessEquals condition and
- one column with the DataType Timestamp with Equals condition and
- column with an ILinkedCellEditor.setValidationEnabled(true) with Equals otherwise with a LikeIgnoreCase condition
over all columns.
static ICondition createFilter(IDataRow pFilterDataRow, String[] pFilterColumnNames)
          Creates an Filter with AND combined and for each
- column with the DataType String with LikeIgnoreCase condition and
- column with the DataType BigDecimal & Boolean with Equals condition and
- for two column in order with the DataType Timestamp the first with GreaterEquals and the second with LessEquals condition and
- one column with the DataType Timestamp with Equals condition and
- column with an ILinkedCellEditor.setValidationEnabled(true) with Equals otherwise with a LikeIgnoreCase condition
over all filter column names.
static ICondition createFullTextFilter(IDataBook pDataBook, String pSearchString, String... pIncludedColumns)
          Full text filter.
static ICondition createLikeFilter(IDataRow pFilterDataRow, String[] pFilterColumnNames)
          Creates a Filter with AND combined LIKE conditions over all filter column names.
static ICondition createLikeIgnoreCaseFilter(IDataRow pFilterDataRow, String[] pFilterColumnNames)
          Creates a Filter with AND combined LikeIgnoreCase conditions over all filter column names.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Filter

protected Filter()
Should not be used.

Method Detail

createLikeFilter

public static ICondition createLikeFilter(IDataRow pFilterDataRow,
                                          String[] pFilterColumnNames)
Creates a Filter with AND combined LIKE conditions over all filter column names.

Parameters:
pFilterDataRow - the IDataRow used for the Filter
pFilterColumnNames - the Columns to use in the Filter
Returns:
an Filter with AND combined LIKE conditions over all filter column names.

createLikeIgnoreCaseFilter

public static ICondition createLikeIgnoreCaseFilter(IDataRow pFilterDataRow,
                                                    String[] pFilterColumnNames)
Creates a Filter with AND combined LikeIgnoreCase conditions over all filter column names.

Parameters:
pFilterDataRow - the IDataRow used for the Filter
pFilterColumnNames - the Columns to use in the Filter
Returns:
an Filter with AND combined LikeIgnoreCase conditions over all filter column names.

createEqualsFilter

public static ICondition createEqualsFilter(IDataRow pFilterDataRow,
                                            String[] pFilterColumnNames)
Creates a Filter with AND combined EQUALS conditions over all filter column names. The new filter ignores NULL values.

Parameters:
pFilterDataRow - the IDataRow used for the Filter
pFilterColumnNames - the Columns to use in the Filter
Returns:
an Filter with AND combined EQUALS conditions over all filter column names.

createEqualsFilter

public static ICondition createEqualsFilter(IDataRow pFilterDataRow,
                                            String[] pFilterColumnNames,
                                            boolean pIgnoreNull)
Creates a Filter with AND combined EQUALS conditions over all filter column names.

Parameters:
pFilterDataRow - the IDataRow used for the Filter
pFilterColumnNames - the Columns to use in the Filter
pIgnoreNull - true to ignore null values (don't use columns with null value in filter)
Returns:
an Filter with AND combined EQUALS conditions over all filter column names.

createEqualsFilter

public static ICondition createEqualsFilter(String[] pColumnNames,
                                            Object[] pDataRow,
                                            ColumnMetaData[] pColumnMetaData)
Creates a Filter with AND combined EQUALS conditions over all filter column names.

Parameters:
pColumnNames - the column names to use
pDataRow - the values Object[] of the row to use.
pColumnMetaData - the meta data for the columns used by the pDataRow
Returns:
an Filter with AND combined EQUALS conditions over all filter column names.

createFilter

public static ICondition createFilter(IDataRow pFilterDataRow)
Creates an Filter with AND combined and for each
- column with the DataType String with LikeIgnoreCase condition and
- column with the DataType BigDecimal & Boolean with Equals condition and
- for two column in order with the DataType Timestamp the first with GreaterEquals and the second with LessEquals condition and
- one column with the DataType Timestamp with Equals condition and
- column with an ILinkedCellEditor.setValidationEnabled(true) with Equals otherwise with a LikeIgnoreCase condition
over all columns.

Parameters:
pFilterDataRow - the IDataRow used for the Filter
Returns:
an Filter with AND combined with a guessed default conditions over all columns.

createFilter

public static ICondition createFilter(IDataRow pFilterDataRow,
                                      String[] pFilterColumnNames)
Creates an Filter with AND combined and for each
- column with the DataType String with LikeIgnoreCase condition and
- column with the DataType BigDecimal & Boolean with Equals condition and
- for two column in order with the DataType Timestamp the first with GreaterEquals and the second with LessEquals condition and
- one column with the DataType Timestamp with Equals condition and
- column with an ILinkedCellEditor.setValidationEnabled(true) with Equals otherwise with a LikeIgnoreCase condition
over all filter column names.

Parameters:
pFilterDataRow - the IDataRow used for the Filter
pFilterColumnNames - the Columns to use in the Filter
Returns:
an Filter with AND combined with a guessed default conditions over all filter column names.

createFullTextFilter

public static ICondition createFullTextFilter(IDataBook pDataBook,
                                              String pSearchString,
                                              String... pIncludedColumns)
Full text filter.

Parameters:
pDataBook - the databook to search.
pSearchString - the search string.
pIncludedColumns - the list of column names for filtering or null to use all column names
Returns:
The full text filter

createCondition

public static ICondition createCondition(ICondition pCondition,
                                         boolean pInclude,
                                         String... pColumns)
Creates a new ICondition from the given ICondition and ignores or uses specific columns.

Parameters:
pCondition - the condition
pInclude - true to include only given column, false to exclude given columns
pColumns - columns which should be ignored or used
Returns:
the condition without removed columns


Copyright © 2009 SIB Visions GmbH. All Rights Reserved.