1 package rydeen.spi;
2
3 import rydeen.ProcessorServicePool;
4
5 /**
6 * ProcessorServiceをServiceLoaderを使って読み込むためのインターフェースです.
7 *
8 * @author Haruaki Tamada
9 */
10 public interface ProcessorServiceLoader{
11 /**
12 * このProcessorServiceLoaderの名前を返します.
13 */
14 public String getName();
15
16 /**
17 * デフォルトのクラスローダを使いProcessorServiceをロードし,
18 * 新たなProcessorServicePoolに格納して返します.
19 */
20 public ProcessorServicePool loadServices();
21
22 /**
23 * デフォルトのクラスローダを使いProcessorServiceをロードし,
24 * 指定されたProcessorServicePoolに格納します.
25 */
26 public ProcessorServicePool loadServices(ProcessorServicePool pool);
27
28 /**
29 * 指定されたクラスローダを使いProcessorServiceをロードし,
30 * 指定されたProcessorServicePoolに格納します.
31 */
32 public ProcessorServicePool loadServices(ProcessorServicePool pool, ClassLoader loader);
33 }