我宣布了几个假客户。
public interface AddressClient{
@RequestLine("GET addresses")
public AddressResponse get();
@RequestLine("POST /api/addresses")
public AddressResponse add(String json);
@RequestLine("PUT addresses")
public AddressResponse update(String json);
@RequestLine("DELETE /api/addresses")
public AddressResponse delete(String json);
}
我有几个声明相同的方法(获取,添加,放置,发布)。
我正在尝试实现工厂模式,以便将特定的类链接到特定的伪客户端。这样:
public Object getClient(Object obj) {
if (checkClassType(obj, Individual.class)) {
return individualRestClient;
} else if (checkClassType(obj, Address.class)) {
return addressRestClient;
} else
return null;
}
}
private boolean checkClassType(Object obj, Class clazz) {
return obj.getClass().equals(clazz);
}
我希望从工厂类中返回我需要的客户端,并且我能够调用该方法在其上获取,放置,发布和删除...
我的第一个问题是我没有找到为假冒客户返回类型的解决方案。我实际上是在返回对象(getClient(Object obj))。.
我的第二个问题是我如何告诉我的工厂调用通用方法..实际上它们都是接口而不是类..而一个接口不能实现另一个接口..