ssbm.presentation.filters
Class TextLengthFilter

java.lang.Object
  extended by ssbm.presentation.filters.Filter
      extended by ssbm.presentation.filters.TextLengthFilter
All Implemented Interfaces:
java.lang.Comparable<Filter>

 class TextLengthFilter
extends Filter

Questa classe si occupa di filtrare il contenuto dei campi testuali; il filtraggio consiste nel controllare che che il contenuto dei campi abbia un numero di caratteri compreso tra il minimo (se definito) e il massimo definiti negli appositi campi di DomainConstraints.

Author:
Salvatore Piccione

Field Summary
private  java.util.Map<FieldMetadata,java.lang.Integer> MAX_LENGTHS_TABLE
          Il dizionario che memorizza l'associazione tra i metadati dei campi e il massimo numero di caratteri che può avere il contenuto di tali campi.
private  java.util.Map<FieldMetadata,java.lang.Integer> MIN_LENGTHS_TABLE
          Il dizionario che memorizza l'associazione tra i metadati dei campi e il minimo numero di caratteri che può avere il contenuto di tali campi.
private static int PRIORITY
          Priorità di esecuzione del filtro.
private static java.util.Set<DataTypes> TYPE_SET
          Insieme dei tipi di dati gestiti.
 
Fields inherited from class ssbm.presentation.filters.Filter
fieldsChanged, fieldsTable, metadataList
 
Constructor Summary
TextLengthFilter()
          Costruisce un'istanza priva del dizionario dei campi da filtrare.
 
Method Summary
(package private)  boolean execute()
          Esegue il filtraggio dei dati contenuti nei campi gestiti da questo filtro.
(package private)  int getPriority()
          Restituisce la priorità di esecuzione di un filtro.
(package private)  java.util.Set<DataTypes> getTypesSet()
          Restituisce l'insieme dei tipi di dati gestiti da questo filtro.
private static java.util.Map<FieldMetadata,java.lang.Integer> initializeMaxTable()
          Costruisce il dizionario che memorizza l'associazione tra i metadati dei campi e il massimo numero di caratteri che può avere il contenuto di tali campi.
private static java.util.Map<FieldMetadata,java.lang.Integer> initializeMinTable()
          Costruisce il dizionario che memorizza l'associazione tra i metadati dei campi e il minimo numero di caratteri che può avere il contenuto di tali campi.
 
Methods inherited from class ssbm.presentation.filters.Filter
compareTo, equals, getResult, isExecutable, setFieldsTable
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

PRIORITY

private static final int PRIORITY
Priorità di esecuzione del filtro.

See Also:
Constant Field Values

TYPE_SET

private static final java.util.Set<DataTypes> TYPE_SET
Insieme dei tipi di dati gestiti.


MAX_LENGTHS_TABLE

private java.util.Map<FieldMetadata,java.lang.Integer> MAX_LENGTHS_TABLE
Il dizionario che memorizza l'associazione tra i metadati dei campi e il massimo numero di caratteri che può avere il contenuto di tali campi.


MIN_LENGTHS_TABLE

private java.util.Map<FieldMetadata,java.lang.Integer> MIN_LENGTHS_TABLE
Il dizionario che memorizza l'associazione tra i metadati dei campi e il minimo numero di caratteri che può avere il contenuto di tali campi.

Constructor Detail

TextLengthFilter

TextLengthFilter()
Costruisce un'istanza priva del dizionario dei campi da filtrare.

Method Detail

execute

boolean execute()
          throws FiltrationException
Esegue il filtraggio dei dati contenuti nei campi gestiti da questo filtro.

Specified by:
execute in class Filter
Returns:
true se il filtraggio ha modificato il contenuto dei campi, false altrimenti.
Throws:
FiltrationException - nel caso in cui il filtraggio rilevi degli errori nei dati o se non sono stati impostati il dizionario dei campi e l'elenco dei metadati di riferimento.
See Also:
Filter.isExecutable(), Filter.setFieldsTable(FieldsContainer)

getPriority

int getPriority()
Restituisce la priorità di esecuzione di un filtro.
Ciascuna sottoclasse di Filter deve avere una priorità diversa dalle altre sottoclassi. Le istanze di una stessa sottoclasse devono avere la stessa priorità.
Data una sottoclasse F con priorità x:La priorità deve essere un NUMERO INTERO NON NEGATIVO.

Specified by:
getPriority in class Filter
Returns:
la priorità di esecuzione.

getTypesSet

java.util.Set<DataTypes> getTypesSet()
Restituisce l'insieme dei tipi di dati gestiti da questo filtro.
Tutte le istanze di una sottoclasse di Filter devono restituire un insieme con lo stesso contenuto. L'insieme non è modificabile.

Specified by:
getTypesSet in class Filter
Returns:
l'insieme dei tipi di dati ai quali si applica il filtro.

initializeMaxTable

private static java.util.Map<FieldMetadata,java.lang.Integer> initializeMaxTable()
Costruisce il dizionario che memorizza l'associazione tra i metadati dei campi e il massimo numero di caratteri che può avere il contenuto di tali campi.
È necessario che tali limiti siano stati definiti nella classe DomainConstraints.

Returns:
il dizionario che memorizza l'associazione tra i metadati dei campi e il massimo numero di caratteri che può avere il contenuto di tali campi.

initializeMinTable

private static java.util.Map<FieldMetadata,java.lang.Integer> initializeMinTable()
Costruisce il dizionario che memorizza l'associazione tra i metadati dei campi e il minimo numero di caratteri che può avere il contenuto di tali campi.
È necessario che tali limiti siano stati definiti nella classe DomainConstraints.

Returns:
il dizionario che memorizza l'associazione tra i metadati dei campi e il minimo numero di caratteri che può avere il contenuto di tali campi.