ssbm.presentation.filters
Class FilterManager

java.lang.Object
  extended by ssbm.presentation.filters.FilterManager

public class FilterManager
extends java.lang.Object

Questa classe si occupa della gestione del filtraggio del contenuto dei campi di una schermata dell’interfaccia utente.
Costruisce un’istanza di FilterChain popolandola con i filtri che operano sui tipi di dati presenti nei campi da filtrare ed esegue tale sequenza di filtri restituendo il dizionario dei campi ottenuti.
Per garantire l’indipendenza dei filtri, questa classe comunica con le classi di gestione dell’interfaccia utente attraverso istanze diDataContainer.

Author:
Salvatore Piccione

Field Summary
private  FieldsContainer fieldsTable
          Dizionario dei campi da filtrare.
private  FilterChain filterChain
          Catena dei filtri.
private static Filter[] MANAGED_FILTERS
          Elenco dei filtri gestiti.
 
Constructor Summary
FilterManager(DataContainer dataToBeFiltered)
          Costruisce un'istanza con:il dizionario dei campi da filtrare valorizzato con il parametro passato; la coda dei filtri popolata mediante il metodo privato populateFilterChain().
 
Method Summary
private static DataContainer buildDataContainer(FieldsContainer fieldsTable)
          Converte un dizionario di campi in un dizionario di dati.
private static FieldsContainer buildFieldsContainer(DataContainer dataTable)
          Converte un dizionario di dati in un dizionario di campi.
 DataContainer executeFiltration()
          Esegue il filtraggio dei dati.
private  void populateFilterChain()
          Popola la catena di filtri.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MANAGED_FILTERS

private static final Filter[] MANAGED_FILTERS
Elenco dei filtri gestiti.


filterChain

private FilterChain filterChain
Catena dei filtri.


fieldsTable

private FieldsContainer fieldsTable
Dizionario dei campi da filtrare.

Constructor Detail

FilterManager

public FilterManager(DataContainer dataToBeFiltered)
              throws FiltrationException
Costruisce un'istanza con:

Parameters:
dataToBeFiltered - il dizionario dei campi da filtrare.
Throws:
FiltrationException - se si riscontrano problemi nel popolamento della coda.
See Also:
populateFilterChain()
Method Detail

populateFilterChain

private void populateFilterChain()
                          throws FiltrationException
Popola la catena di filtri.

Throws:
FiltrationException - se si riscontrano problemi nel popolamento della coda.

executeFiltration

public DataContainer executeFiltration()
                                throws FiltrationException
Esegue il filtraggio dei dati.

Returns:
l'istanza di DataContainer ottenuta con l'esecuzione dei filtri.
Throws:
FiltrationException - se l'esecuzione dei filtri riscontra degli errori.

buildFieldsContainer

private static FieldsContainer buildFieldsContainer(DataContainer dataTable)
Converte un dizionario di dati in un dizionario di campi.

Parameters:
dataTable - il dizionario di dati.
Returns:
il dizionario di campi.

buildDataContainer

private static DataContainer buildDataContainer(FieldsContainer fieldsTable)
Converte un dizionario di campi in un dizionario di dati.

Parameters:
fieldsTable - il dizionario di campi.
Returns:
il dizionario di dati.