У меня есть объект, который может быть составлен по компонентам, но каждый компонент имеет тип и должен быть уникальным:
Class Client{
Set<IComposite> elements
}
interface IComposite{
String getType();
}
class Status implements IComposite{
String getType(){return "status"}
}
class ClientDates implements IComposite{
String getType(){return "clientdate"}
}
Итак, я полагаю, что я мог бы инкапсулировать коллекцию, но каждый элемент должен быть уникальным, поэтому только 1 статус, только одна дата доступа, но, возможно, я могу создать новый класс Composite, который может быть кратным.
Идея, как спроектировать это?
Большое спасибо