Következő
Előző
Tartalomjegyzék
4. Elosztottság
Az elosztottság lehetővé teszi távoli objektumok használatát,
eljárásainak hívását, paraméterek átadását. Ehhez szükség lehet az
objektumok teljes vagy részleges másolására, vagy referencia szerinti
átadására.
Az aspektus leírásához szükséges információk a következők:
- A távolról elérhető attribútumok, ezek láthatósága (írható,
vagy csak olvasható).
- A távolról elérhető metódusok. Ezekhez meg kell adni azt is, hogy
az adott metódus paraméterei és visszatérési értéke másolásra vagy
referencia szerinti átadásra kerülnek-e.
- A kliens és a szerver egymásra találásának módja.
A nyelvünk ezen igények kielégítésére a következő tagekkel bővül:
|
| CLASS |
- <REMOTENAME> ... </REMOTENAME>
(A tag belsejében levő java kódrészletnek kell visszatérnie a
szerver nevével. A kódrészlet globális változókat és objektumokat
használhat, és kontextusfüggetlennek kell lennie.)
- <REMOTEPORT> .. </REMOTEPORT>
(Mint fent, de a szerver portját adja vissza. Az implementáció
nem feltétlenül használja ezeket az értékeket; pl. CORBA alapú
elosztottság esetén port számra nincs szükség.)
|
|
| METHOD |
- REMOTE (Ez az attribútum akkor szerepel, ha az adott
eljárást távolról elérhetővé kivánjuk tenni. Ha szerepel, akkor
a PARAM és RETURN tageket is ki kell egészíteni a megfelelő
információkkal.)
|
|
| PARAM |
- REMOTE=MasolasTipus (A MasolasTipus csak osztály vagy
osztálytömb esetén szerepel. Értéke "COPY" vagy "GREF" lehet.
COPY esetén másolat készül az objektumról, vagy annak részéről,
GREF esetén csak egy globális objektum referencia adódik át.)
- BYPASS=AttrLista (COPY típusú másolás esetén meg lehet adni,
hogy mely attribútumok NE adódjanak át a paraméterként szereplő
objektumból.)
- ONLY=AttrLista (COPY típusú másolásnál csak ezek az attibútumok
adódnak át. Az ONLY és a BYPASS közül legfeljebb egy szerepelhet.)
|
|
| RETURN |
- REMOTE=MasolasTipus
- BYPASS=AttrLista
- ONLY=AttrLista
|
|
Ezen többletinformációk elegendőek az Aspektus Weavernek az szerver
és kliensoldali domain modell forrásán eszközölendő változtatások
automatikus generálására. Különböző elosztottsági technológiát használó
weaverek (pl. RMI alapú weaver, CORBA alapú weaver) eltérő lépéseket
tesznek, és az általuk generált applikáció más lesz, azonban a forrás
(a domain modell forrása, és az objektum modell leírása) azonos minden
esetben. Ez lehetővé teszi az elosztott technológia lecserélését egyéb
költséges változtatások nélkül.
Következő
Előző
Tartalomjegyzék