|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.knime.base.node.preproc.filter.row.rowfilter.RowFilter
public abstract class RowFilter
Used by the RowFilterIterator
to determine whether a row should be filtered or not.
New row filter implementations MUST also modify the
RowFilterFactory in
order to get load and save work.
| Constructor Summary | |
|---|---|
RowFilter()
|
|
| Method Summary | |
|---|---|
Object |
clone()
|
abstract DataTableSpec |
configure(DataTableSpec inSpec)
Called when a new DataTableSpec is available. |
abstract void |
loadSettingsFrom(NodeSettingsRO cfg)
Load your internal settings from the configuration object. |
abstract boolean |
matches(DataRow row,
int rowIndex)
Return true if the specified row matches the criteria set
in the filter. |
protected abstract void |
saveSettings(NodeSettingsWO cfg)
Do not call this function - rather call saveSettingsTo(NodeSettingsWO). |
void |
saveSettingsTo(NodeSettingsWO cfg)
Save your internal settings into the specified configuration object. |
| Methods inherited from class java.lang.Object |
|---|
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public RowFilter()
| Method Detail |
|---|
public abstract boolean matches(DataRow row,
int rowIndex)
throws EndOfTableException,
IncludeFromNowOn
true if the specified row matches the criteria set
in the filter. Can throw a EndOfTableException if the filter can
tell that no more rows of the table will be able to fulfill the criteria.
row - the row to testrowIndex - the row index of the passed row in the original table
true if the row matches the criteria set in the
filter, false if not
EndOfTableException - if there is no chance that any of the rows
coming (including the current rowIndex) will
fulfill the criteria, thus no further row in the original
table will be a match to this filter. (In general this is
hard to tell, but a row number filter can certainly use it.)
If the exception is received the row filter table iterator
will flag an end of table.
IncludeFromNowOn - if the current and all following rows from now
on are to be included into the result table
public abstract void loadSettingsFrom(NodeSettingsRO cfg)
throws InvalidSettingsException
cfg - the object holding the settings to load
InvalidSettingsException - if cfg contains
invalid/incorrect/inconsistent settingspublic final void saveSettingsTo(NodeSettingsWO cfg)
cfg - the object to add the current internal settings toprotected abstract void saveSettings(NodeSettingsWO cfg)
saveSettingsTo(NodeSettingsWO). This is just a helper function
for saveSettingsTo(NodeSettingsWO). Row filters implement this
and do the work usually done in saveSettingsTo(NodeSettingsWO).
The passed config is prepared in a way that the factory will be able to
recreate this object from it.
cfg - object to add the current internal settings to
public abstract DataTableSpec configure(DataTableSpec inSpec)
throws InvalidSettingsException
DataTableSpec is available. The filters can
grab whatever they need from that new config (e.g. a comparator), should
do some error checking (e.g. col number against number of columns) -
throw an InvalidSettingsException if settings are invalid, and
can return a new table spec according to their settings - if they can. If
a filter cannot tell how it would modify the spec, it should return null.
(Returned table specs are not used right now anyway.)
inSpec - the new spec propagated into the row filter node. Could be
null or empty!
InvalidSettingsException - if the settings in the row filter are
not compatible with the table spec coming inpublic Object clone()
clone in class Object
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||