public boolean isRecompactionNeeded ( DatasetHelper helper ) { if ( recompactionConditions . isEmpty ( ) ) return false ; if ( operation == CombineOperation . OR ) { for ( RecompactionCondition c : recompactionConditions ) { if ( c . isRecompactionNeeded ( helper ) ) { return true ; } } return false ; } else { for ( RecompactionCondition c : recompactionConditions ) { if ( ! c . isRecompactionNeeded ( helper ) ) { return false ; } } return true ; } }
For OR combination return true iff one of conditions return true For AND combination return true iff all of conditions return true Other cases return false