Как реализовать редакторы GWT для подклассов типа?
Позволять'скажем, у меня есть иерархия объектов, как это:
Аккаунт> Сайт> Поставка
Аккаунт - это реальная компания, Сайт - это здание, которое у них есть, а Поставка - это либоElecSupply
или жеGasSupply
, Предложение никогда не создается и может быть абстрактным классом в теории.
Я использую Objectify для постоянства, и у меня есть страница, которая отображает список расходных материалов для каждого сайта, независимо от того, являются ли ониElecSupply
или же .GasSupply
Сейчас я реализуюGWT Editor Framework и столкнулись с проблемой этой полиморфной сущности. Как реализовать редактор и набор подредакторов для такого объекта?
@Entity
public class Supply implements Serializable
{
@Id
protected Long id;
@Embedded
protected List billingPeriods = new ArrayList();
public Supply()
{
}
// ...
}
Подклассы: (ElecSupply имеет 5 уникальных полей, а GasSupply имеет только одно)
@Subclass
public class ElecSupply extends Supply implements Serializable
{
private String profile;
private String mtc;
private String llf;
private String area;
private String core;
public ElecSupply()
{
}
}
@Subclass
public class GasSupply extends Supply implements Serializable
{
private String mpr;
public GasSupply()
{
}
// ...
}
Итак, я хотел бы знать, есть ли у кого-нибудь опыт работы с такой структурой? Я пытался сделать отдельные редакторы дляElecSupply
а такжеGasSupply
, а затем показать или скрыть их как часть страницы редактирования.
Другой способ, которым я думал об этом, - это иметь один редактор (для снабжения), а затем загружать разные подредакторы в зависимости от того, какой тип объекта мы редактируем.
Любой светлый сарай будет принят с благодарностью.