Package common.http.interceptor
Class ServletInterceptorFactory
- java.lang.Object
-
- common.http.interceptor.ServletInterceptorFactory
-
public final class ServletInterceptorFactory extends Object
Questa classe rappresenta un factory per la creazione di oggetti che estendono la classe astrattaServletInterceptor.
I metodi di questa classe consentono la registrazione di classi ammissibili per l'istanziazione e l'istanziazione di questi ultimi.
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static <T extends Annotation>
ServletInterceptor<T>instantiate(T annotation)Restituisce un'istanza diServletInterceptorassociata all'annotazione passata come parametro.
La classe concreta dell'oggetto restituito corrisponde a una sottoclasse diServletInterceptorregistrata nella classe factory per mezzo di una previa chiamata al metodoregister(Class).
Per poter essere istanziata dal factory, la classe concreta in questione deve possedere un costruttore vuoto pubblico.static voidregister(Class<? extends ServletInterceptor<? extends Annotation>> interceptorClass)Registra una sottoclasse diServletInterceptorper una seguente istanziazione
-
-
-
Method Detail
-
instantiate
public static <T extends Annotation> ServletInterceptor<T> instantiate(T annotation)
Restituisce un'istanza diServletInterceptorassociata all'annotazione passata come parametro.
La classe concreta dell'oggetto restituito corrisponde a una sottoclasse diServletInterceptorregistrata nella classe factory per mezzo di una previa chiamata al metodoregister(Class).
Per poter essere istanziata dal factory, la classe concreta in questione deve possedere un costruttore vuoto pubblico.- Type Parameters:
T- Tipo parametrizzato corrispondente al tipo dell'annotazione- Parameters:
annotation- Il tipo di annotazione associato alla classe interceptor da istanziare- Returns:
- Un'istanza di
ServletInterceptorassociata all'annotazione passata come parametro - Throws:
RuntimeException- Se la creazione dell'interceptor fallisce
-
register
public static void register(Class<? extends ServletInterceptor<? extends Annotation>> interceptorClass)
Registra una sottoclasse diServletInterceptorper una seguente istanziazione- Parameters:
interceptorClass- La classe da registrare- Throws:
IllegalArgumentException- se si tenta di registrare una classe astratta oppure se si tenta di registrare una classe con lo stesso tipo parametrizzato
-
-