AgE 2.5 : TworzenieKolekcjiObiektowImpl

Tworzenie kolekcji obiektów

Na stronie Obiektowy model konfiguracji wyróżniono 3 klasy opisujące kolekcje obiektów: ListDefinition, SetDefinition oraz MapDefinition. Każda z nich implementuje metodę createInstance z interfejsu IComponentDefinition. W przypadku kolekcji metoda ta poza utworzeniem instancji kolekcji, jest odpowiedzialna za dodanie do niej obiektów opisanych w definicji. Zasada działania podobna jest dla wszystkich 3 klas, dlatego schemat działania metody zostanie przedstawiony na jednym przykładzie.


Rysunek: Diagram sekwencji tworzenia listy

Rysunek przedstawia proces tworzenia listy zdefiniowanej przez obiekt typu ListDefinition. Po utworzeniu kolekcji (w tym przypadku listy), pobierane są kolejno wszystkie elementy mapy items, która zawiera obiekty typu IValueProvider oraz ich liczebność w kolekcji. Dla każdego obiektu IValueProvider pobierane są obiekty docelowe według mechanizmu opisanego na stronie Interfejs IValueProvider. Liczba pobranych obiektów określona jest przez wartość przechowywaną w mapie items skojarzoną z danym "dostawcą". Pobrane obiekty dodawane są do listy, która zwracana jest jako rezultat metody createInstance.

Attachments: