私は以下のコードを持つクラスを持っています、
public class DocTransformer implements Callable<IndexableDocument> {
WDoc document;
public DocTransformer(Map<INDEXFIELD, Tokenizer> tknizerMap, WDoc doc) {
this.document = doc;
}
public IndexableDocument call() throws TokenizerException {
System.out.println("Inside doctrans: "+this.document.getId());
}
}
IndexableDocument は以下のようになります。
public class IndexableDocument {
WDoc doc;
public IndexableDocument() {
System.out.println("this is inside indexable document");
}
public void addField(INDEXFIELD field, TStream stream) {
//TODO: Implement this method
}
public TokenStream getStream(INDEXFIELD key) {
//TODO: Implement this method
return null;
}
public String getDocumentIdentifier() {
System.out.println(doc.getId);
}
}
ランナー クラスは DocTransformer を呼び出します。WDoc はランナー クラスから呼び出され、そこからオブジェクトが DocTransformer に渡されるため、DocTransformer 内の WDoc にアクセスできます。しかし、IndexableDocument 内の WDoc オブジェクトにアクセスする必要があります。それを達成する方法は?私はスレッドに非常に慣れていないので、私の質問を言い換える必要があるかどうかを説明してください。