Strażnicy, czyli coś czego mi brakuje w Javie

W sumie brakuje mi dobrej implementacji tego rozwiązania, bo można taką funkcjonalność mieć z wykorzystaniem np. AspectJ czy Type Annotations. Jednak o co chodzi? Guardians of Erlang Erlang posiada bardzo fajną konstrukcję zwaną strażnikami (guardians). Cóż to jest? Otóż mając jakąś funkcję możemy walidować argumenty w deklaratywny sposób. Nie wywołujemy żadnego wywołania czy też nie […]

Guice, a JSR-303 z pomocą AspectJ

Problem mam. Mój własny walidator zgodny z JSR-303 wymaga dostępu do usługi zewnętrznej. Oczywiście instancja walidatora jest tworzona przez silnik Bean Validation. Mogę co prawda w metodzie initialize stworzyć ręcznie usługę, ale ja lubię Guice… Problem z Bean Validation polega na tym, że nie za bardzo idzie wpiąć się do niego w taki sposób by […]

Różnica pomiędzy call i execution w AspectJ

Różnica wredna, która potrafi zepsuć dzień. Generalnie zarówno call jak i execution nie różnią się jeżeli chodzi o moment wywołania. Jeżeli zdefiniujemy, że mają być wkompilowane przed to zostaną wkompilowane przed. Jeżeli po to po. Kompilator zapewnia, że w danym przepływie sterowania aspekt będzie umieszczony w odpowiednim miejscu. Oczywiście przy założeniu, że nie ma tam […]