ssbm.db
Class SQLStatementProvider

java.lang.Object
  extended by ssbm.db.SQLStatementProvider

public class SQLStatementProvider
extends java.lang.Object

Questa classe fornisce gli statement SQL che consentono di recuperare e manipolare i dati memorizzati nel database dell'applicazione.

Author:
Salvatore Piccione

Field Summary
static java.lang.String SELECT_ELENCO_MOVIMENTAZIONI
          La stringa contenente lo statement SQL per il recupero dell'elenco di movimentazioni relative ad un utente, aventi una specifica natura e verificatesi in uno specifico periodo di tempo.
static java.lang.String SELECT_ELENCO_TIPI
          La stringa contenente lo statement SQL per il recupero dell'elenco dei tipi di movimentazione relativi ad una particolare natura.
static java.lang.String SELECT_LAST_INSERT_ID
          La stringa contenente lo statement SQL per il recupero dell'ultimo ID generato nell'ambito della connessione corrente al database dell'applicazione.
static java.lang.String SELECT4SECURITY_CHECK
          La stringa contenente lo statement SQL che seleziona l'ID utente della tupla individuata dallo username e dall'indirizzo IP.
 
Constructor Summary
SQLStatementProvider()
           
 
Method Summary
static java.lang.String[] getSQLStatement(Services service, Entities entity)
          Restituisce l'elenco degli statement SQL che recuperano e/o manipolano i dati memorizzati nel database per poter eseguire il servizio richiesto.
static java.lang.String getSQLStatement(Services service, Services helperService)
          Restituisce lo statement SQL che recupera o manipola i dati memorizzati nel database per eseguire un servizio di autenticazione richiesto o il servizio d’uso ausiliario ad un servizio di autenticazione.
private static java.lang.String[] getSQLStatement4Delete(Entities entity)
          Restituisce l'elenco degli statement SQL da eseguire per aggiornare i dati di un'entità nel database.
private static java.lang.String[] getSQLStatement4Insert(Entities entity)
          Restituisce l'elenco degli statement SQL da eseguire per memorizzare i dati di un'entità nel database.
private static java.lang.String getSQLStatement4Select(Entities entity)
          Restituisce lo statement SQL da eseguire per recuperare i dati di un'entità.
private static java.lang.String[] getSQLStatement4Update(Entities entity)
          Restituisce l'elenco degli statement SQL da eseguire per aggiornare i dati di un'entità nel database.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

SELECT_ELENCO_TIPI

public static final java.lang.String SELECT_ELENCO_TIPI
La stringa contenente lo statement SQL per il recupero dell'elenco dei tipi di movimentazione relativi ad una particolare natura.

See Also:
Constant Field Values

SELECT_ELENCO_MOVIMENTAZIONI

public static final java.lang.String SELECT_ELENCO_MOVIMENTAZIONI
La stringa contenente lo statement SQL per il recupero dell'elenco di movimentazioni relative ad un utente, aventi una specifica natura e verificatesi in uno specifico periodo di tempo.

See Also:
Constant Field Values

SELECT4SECURITY_CHECK

public static final java.lang.String SELECT4SECURITY_CHECK
La stringa contenente lo statement SQL che seleziona l'ID utente della tupla individuata dallo username e dall'indirizzo IP.
Questa interrogazione è eseguita per effettuare il controllo di sicurezza sulla provenienza delle richieste di esecuzione di servizi.

See Also:
Constant Field Values

SELECT_LAST_INSERT_ID

public static final java.lang.String SELECT_LAST_INSERT_ID
La stringa contenente lo statement SQL per il recupero dell'ultimo ID generato nell'ambito della connessione corrente al database dell'applicazione.

See Also:
Constant Field Values
Constructor Detail

SQLStatementProvider

public SQLStatementProvider()
Method Detail

getSQLStatement

public static java.lang.String getSQLStatement(Services service,
                                               Services helperService)
Restituisce lo statement SQL che recupera o manipola i dati memorizzati nel database per eseguire un servizio di autenticazione richiesto o il servizio d’uso ausiliario ad un servizio di autenticazione.
L'indicazione del servizio di autenticazione è obbligatorio mentre il servizio d'uso ausiliario deve essere indicato solo se si deve recuperare il relativo statement SQL.

Parameters:
service - il servizio di autenticazione.
helperService - il servizio d'uso ausiliario al servizio d'autenticazione service.
Returns:
la stringa contenente lo statement SQL necessario ad eseguire il servizio di autenticazione service (se helperService = null) o il servizio d'uso ausiliario helperService (se è diverso da null).

getSQLStatement

public static java.lang.String[] getSQLStatement(Services service,
                                                 Entities entity)
Restituisce l'elenco degli statement SQL che recuperano e/o manipolano i dati memorizzati nel database per poter eseguire il servizio richiesto.
Gli statement sono disposti in ordine di esecuzione: il primo elemento del vettore contiene il primo statement da eseguire, il secondo elemento del vettore contiene il secondo statement da eseguire, ..., l’ultimo elemento del vettore contiene l’ultimo statement da eseguire.

Parameters:
service - il servizio d'uso da eseguire.
entity - l'entità di riferimento.
Returns:
l'array di stringhe contenente gli statement SQL da eseguire.

getSQLStatement4Insert

private static java.lang.String[] getSQLStatement4Insert(Entities entity)
                                                  throws java.lang.IllegalArgumentException
Restituisce l'elenco degli statement SQL da eseguire per memorizzare i dati di un'entità nel database.
Se l'entità è Movimentazione Finanziaria, l'elenco è composto dai seguenti statement SQL:
  1. interrogazione per recuperare l'ID del tipo di movimentazione;
  2. inserimento di un nuovo tipo di movimentazione;
  3. interrogazione per recuperare l'ID della controparte;
  4. inserimento di una nuova controparte;
  5. interrogazione per recuperare l'ID dell'utente;
  6. inserimento dei dati della movimentazione.

Se l'entità è Utente, l'elenco è composto dal solo statement SQL per l'inserimento dei dati.

Parameters:
entity - il valore di Entities che denota l'entità da memorizzare.
Returns:
l'array di stringhe contenente gli statement SQL da eseguire.
Throws:
java.lang.IllegalArgumentException - se entity è uguale a Entities.Bilancio

getSQLStatement4Update

private static java.lang.String[] getSQLStatement4Update(Entities entity)
                                                  throws java.lang.IllegalArgumentException
Restituisce l'elenco degli statement SQL da eseguire per aggiornare i dati di un'entità nel database.
Se l'entità è Movimentazione Finanziaria, l'elenco è composto dai seguenti statement SQL:
  1. interrogazione per recuperare l'ID del tipo di movimentazione;
  2. inserimento di un nuovo tipo di movimentazione;
  3. interrogazione per recuperare l'ID della controparte;
  4. inserimento di una nuova controparte;
  5. interrogazione per recuperare l'ID dell'utente;
  6. aggiornamento dei dati della movimentazione.

Se l'entità è Utente, l'elenco è composto dal solo statement SQL per l'aggiornamento dei dati.

Parameters:
entity - il valore di Entities che denota l'entità da aggiornare.
Returns:
l'array di stringhe contenente gli statement SQL da eseguire.
Throws:
java.lang.IllegalArgumentException - se entity è uguale a Entities.Bilancio

getSQLStatement4Delete

private static java.lang.String[] getSQLStatement4Delete(Entities entity)
                                                  throws java.lang.IllegalArgumentException
Restituisce l'elenco degli statement SQL da eseguire per aggiornare i dati di un'entità nel database.
Se l'entità è Movimentazione Finanziaria, l'elenco è composto dai seguenti statement SQL:
  1. interrogazione per recuperare l'ID dell'utente;
  2. eliminazione dei dati della movimentazione.
Se l'entità è Utente, l'elenco è composto dal solo statement per l'eliminazione dei dati.

Parameters:
entity - il valore di Entities che denota l'entità da eliminare.
Returns:
l'array di stringhe contenente gli statement SQL da eseguire.
Throws:
java.lang.IllegalArgumentException - se entity è uguale a Entities.Bilancio

getSQLStatement4Select

private static java.lang.String getSQLStatement4Select(Entities entity)
Restituisce lo statement SQL da eseguire per recuperare i dati di un'entità.

Parameters:
entity - il valore di Entities che denota l'entità per la quale recuperare i dati dal database.
Returns:
la stringa contenente lo statement SQL di interrogazione.