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 }