我想用一个方法创建一个通用接口来转换对象…
让我解释一下。
在GWT中,使用GWT- platform,演示器有一个扩展View的内部接口。这个接口是由构建屏幕的类实现的(呈现器有按钮动作等)。
假设我有一个演示者作为用户帐户。它"代表"我的用户bean。
我希望我可以创建一个实现接口的类,我可以调用传递视图实现实例的方法,然后返回bean填充…我不知道我是否能说清楚……
OK。到目前为止一切顺利。我创建了一个这样的界面:
public interface ViewBeanConverter<T, U extends View>
{
public T convert(U u);
}
它适用于简单视图,但问题是有时我需要传递的参数不在接口视图中,而只在presenter类中,这些东西在视图中没有意义。
例如,假设bean要构建用户,我需要一个物品列表(现在想到的第一件事)。然后,在另一个屏幕上,例如一辆豆荚车,需要一个车主和一个音乐会的零件列表……我怎么处理得了?我不能正确地解释它,抱歉,但真正的问题是我需要不同数量的不同类型的参数…我想知道是否有一种优雅的方式来做到这一点。
对于不同数量的不同类型的参数,使用var args
public interface ViewBeanConverter<T, V extends View>
{
public T convert(V v,Object... objects);
}
或简单的Map
public T convert(V v, Map<Object, Object> objects);