Wednesday, April 4, 2007

Kolekcijos su event'ais

Bandau implementuoti UndoHistoryRepository ir susidūriau su tokia problema, kad UndoHistoryRepository turi žinoti, kada nauji objektai yra sukuriami, ir kada pašalinami.

Microsofto System.Collections namespace'e jokių kolekcijų su eventais neradau, tad leidausi į kelionę ieškoti. Rezultatai tokie:

* PowerCollections - Wintellect kompanijos(?) gaminama biblioteka. Kiek tikrinau, visos nuorodos į biblioteką yra mirusios. Be to, biblioteka neduoda reikiamo dalyko.

* IESI.Collections - JasonSmith'o kolekcija. IESI pagrindins tikslas yra ISet (aibės) kolekcijos realizavimas. Vėlgi, eventai nerealizuoti, tačiau IESI.collections yra gana žinomas dalykas, paplitęs per NHibernate projektą


* OpenDocument4All - Lars Behrmann'o parašyta OpenDocument generavimo biblioteka. Nors tai nėra kolekcijų biblioteka, bet jos viduje yra naudojamos kolekcijos su event'ais. Kodas nėra gražus, standartizuotas, ir tuo labiau tinkamas naudoti kituose projektuose.

* C5 biblioteka - Niels Kokholm ir Peter Sestoft parašyta biblioteka, Kopenhagos universitetas. C5 is a library of generic collection classes for C# and other CLI languages and works with Microsoft .Net version 2.0 and Mono version 1.1.16 and later.

Taip pat ši biblioteka turi neblogą (258 puslapių) manual'ą, kurio 8.8 skyryje parašyta : "Events: observing changes to a collection".

Būtent to mums ir reikia.

No comments: