1 package rydeen;
2
3 import java.io.IOException;
4 import java.util.Iterator;
5
6 /**
7 * <p>
8 * Rydeenへの入力であるProcessTargetの集合を表します.
9 * </p><p>
10 * 入力は一般的にクラスファイルが格納されたJarファイル,
11 * もしくは指定されたディレクトリ以下のクラスファイルです.
12 * </p>
13 *
14 * @author Haruaki Tamada
15 */
16 public interface TargetSource extends Iterable<ProcessTarget>{
17 /**
18 * このオブジェクトを互いに区別する名前を返します.
19 * ただし,この名前は他のTargetSourceと重複する可能性があります.
20 */
21 public String getName();
22
23 /**
24 * このオブジェクトが持つProcessTargetの列挙を返します.
25 */
26 @Override
27 public Iterator<ProcessTarget> iterator();
28
29 /**
30 * このオブジェクトを閉じます.
31 * このメソッド呼び出し以降,このオブジェクトの他のメソッドの動作は保証されません.
32 */
33 public void close() throws IOException;
34
35 /**
36 * このTargetSourceオブジェクトに指定されたファイルが含まれていればtrueを返します.
37 * @param target 含まれているか判断するファイル.
38 * @return このTargetSourceオブジェクトにtargetが含まれていればtrue,含まれていなければfalse.
39 */
40 public boolean contains(String target);
41 }