Java 多个对象调用回调函数时如何区分回调函数

Java 多个对象调用回调函数时如何区分回调函数,java,android,interface,callback,Java,Android,Interface,Callback,我有一个类,它连接到web服务,然后返回响应。这个班在另一个线程中工作。它被称为SoapConnector。有一个接口通知调用方响应已就绪。它是: public interface ISoapConnectorObserver { public void onSoapRequestFinished(String response); } 当响应准备就绪时,将调用onSoapRequestFinished() 我使用SoapConnector获取不同的数据。例如,CustomerRead

我有一个类,它连接到web服务,然后返回响应。这个班在另一个线程中工作。它被称为SoapConnector。有一个接口通知调用方响应已就绪。它是:

public interface ISoapConnectorObserver {
    public void onSoapRequestFinished(String response);
}

当响应准备就绪时,将调用onSoapRequestFinished()

我使用SoapConnector获取不同的数据。例如,CustomerReader用于从服务器读取客户,ProductReader用于读取产品列表。如何将ISoapConnectorObserver更改为区分CustomerReaderProductReader的返回值

public class CustomerReader {
    private observer ISoapConnectorObserver observer;

    public CustomerReader(ISoapConnectorObserver observer) {
        this.observer = observer;
    }
    .
    .
}

public class ProductReader {
    private observer ISoapConnectorObserver observer;

    public ProductReader(ISoapConnectorObserver observer) {
        this.observer = observer;
    }
    .
    .
}

我想找到一种优雅的方法,不使用另一个helper类,而是扩展此接口或更改onSoapRequestFinished()。谢谢

您应该只通知请求的源,或者包含一个源参数,如
public void onSoapRequestFinished(对象源,字符串响应)可能重复的@Fildor你能写一个示例吗?@ehsantoghian你有API或方法的链接吗?答案可能在于传递到
onSoapRequestFinished()
的参数中。也许它包含调用它的函数。实际上不是。如果没有SoapConnector代码,那是不可能的。无论您做什么,都必须跟踪请求的来源。