blob: 8bb5c160cd02f06bb8613256e80e987146d2b2bc (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
package com.davemorrissey.labs.subscaleview.decoder;
import java.lang.reflect.InvocationTargetException;
/**
* Interface for decoder (and region decoder) factories.
* @param <T> the class of decoder that will be produced.
*/
public interface DecoderFactory<T> {
/**
* Produce a new instance of a decoder with type {@link T}.
* @return a new instance of your decoder.
* @throws IllegalAccessException if the factory class cannot be instantiated.
* @throws InstantiationException if the factory class cannot be instantiated.
* @throws NoSuchMethodException if the factory class cannot be instantiated.
* @throws InvocationTargetException if the factory class cannot be instantiated.
*/
T make() throws IllegalAccessException, InstantiationException, NoSuchMethodException, InvocationTargetException;
}
|