Я хочу создать (: вокруг квалифицированного) специалиста initialize-instance для класса X, который сначала вызовет метод next-next, а затем вызовет make-instance другого класса, предоставив ему созданный экземпляр X. Как я могу получить созданный экземпляр внутри метода initialize-instance: around? (если конечно после вызова call-next-method мы находимся на завершающей стороне: около)
EDIT:
Класс A имеет двунаправленную связь с классом B через слот в каждом, который содержит идентификатор другого, но класс A требует идентификатор класса B, в то время как обратное не требуется. Итак, поток, который я хочу, это:
- make-instance 'classA
внутри инициализируемого экземпляра: вокруг класса A у меня будет:
я. make-instance classB и aquire id-of-B.
ii call-next-method добавление id-of-B
iii установить соответствующий слот id-of-A точки classB для нашего созданного экземпляра classA (это моя первоначальная причина вопроса)
Теперь я могу сделать [i] in: before и [iii] in: after, но я не могу:
Классы A и B являются постоянными классами в слоне, и я хочу обернуть весь поток в транзакцию, которую я не хотел бы охватывать многими методами. Для тех, кто знаком с elephant, я хочу использовать оболочку обеспечивает транзакции и не хочу использовать явные вызовы функций begin и commit в разных точках.