AspectJ sice zvládne i privátní metody, ale neumí měnit třídy z balíku java.

Z.T.
-- 
Zdenek Tronicek
FIT CTU in Prague


Michal Eibl napsal(a):
> Ano, bylo mysleno mit hlidanou finalize().
> AspectJ by nemel mit problem nejen s protected ale ani s private.
>
> M.
>
> On 22.9.2011 9:16, Vaclav Stumbauer wrote:
>> Musim priznat ze je mimo moji mentalni kapacitu rozlusit jakym
>> zpusobem by AOP melo
>> resit problem tazatele, zkuste vyhovet tazatali a rozvest jak presne
>> jeho problem pomoci AOP resit :-).
>>
>> Jediny pro me viditelny link (podle me nefcni) je mit interceptor na
>> PROTECTED metode (definovana v ramci Object) finalize(),
>> nemam sice prilis zkusenosti s AOP, ale nezda se mi kombinace
>> interceptoru a protected metody.
>>
>> diky
>>
>> VS
>>
>>
>>
>> 2011/9/22 Martin Kuba<[email protected]>:
>>> Dne 21.9.2011 15:49, Michal Eibl napsal(a):
>>>> Kniha je tu http://www.manning.com/laddad2/
>>>> zdrojaky jsou tam ke stazeni, tohle je konkretne z
>>>> ch02\workspace\Section2.4.3LoadTimeWeaving
>>>>
>>>> On 21.9.2011 15:04, Libor Jelinek wrote:
>>>>> Můžete to s těmi aspektovými frameworky a weak a phantonovými nápady
>>>>> rozvést? To se přiznám, že už je na mě příliš.... Ohledně referencí
>>>>> vím, že existují 4 typy referencí, ale aspektové programování slyším
>>>>> poprvé....
>>> Pro pochopení principu mi přijde dobrá i kapitola o aspektovém
>>> programování
>>> z dokumentace Springu:
>>> http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/aop.html
>>>
>>> Terminologie AOP mi přijde podivuhodně nestravitelná, dost dlouho mi
>>> trvalo,
>>> než jsem pochopil, že "cut across multiple types and objects" v
>>> podstatě
>>> znamená, že jsem schopen pomocí nového specifikačního jazyka
>>> nadefinovat,
>>> aby se
>>> před, po nebo místo volání zvolených metod volal můj kód.
>>>
>>> Pěkný příklad jsou databázové transakce, ve Springu je pomocí AOP
>>> nastaveno,
>>> že když se vstupuje do libovolné metody označené anotací
>>> @Transactional,
>>> tak se zahájí transakce (pokud už nebyla zahájena), a když se z té
>>> metody
>>> vystupuje, zase se transakce ukončí. A to lze specifikovat na jednom
>>> místě,
>>> místo rozesetí stejného kódu do spousty metod.
>>>
>>> Podobně bych mohl pomocí AOP říci, že se má třeba změřit doba trvání
>>> všech
>>> metod,
>>> jejichž jméno začíná na "a" a mají tři parametry. Nebo že má být
>>> zapsáno do
>>> logu volání
>>> libovolné metody určité třídy. Nebo že se má poslat email kdykoliv bude
>>> zavolána metoda, jejíž parametr je typu TopSecret. A tak podobně.
>>>
>>> Prostě v jednom aspektu popíšu nějak množinu metod (pointcut) a
>>> co se má stát a jestli se to má stát před, po nebo místo volání metody
>>> (advice).
>>>
>>>
>>> Makub
>>> --
>>> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>> CERIT-SC                               Martin Kuba
>>> Institute of Computer Science    email: [email protected]
>>> Masaryk University             http://www.ics.muni.cz/~makub/
>>> Botanicka 68a, 60200 Brno, CZ     mobil: +420-603-533775
>>> --------------------------------------------------------------
>>>
>>>
>
> --
> ===============================
> Ing. Michal Eibl
> Budyně nad Ohří - Písty 50
> 413 01 Roudnice nad Labem
> Czech Republic
> --------------------------
> gms: (+420) 777-290-418
> e-mail: [email protected]
> icq: #68436986
> skype: michal.eibl
> web:
>    facebook.com/michal.eibl
>    cz.linkedin.com/in/michaleibl
> ===============================
>
>

Odpovedet emailem