Information Technology Reference
In-Depth Information
example proposed, but in this way we can delete messages of the bSD
.For
instance, in an amalgamated sum, if the right operand (the bSD advice in the
example) is an empty bSD then the part of the left operand which is isomorphic
to the
base
pointcut
(that is to say the join point), is deleted. Finally, all the elements
base
advice
f
g
of the bSDs
and
having no antecedent by
and
are kept in the
result
advice
bSD
, but the events of the bSD
will always form a “block” around
which the events of the bSD
base
will be added. For instance, in Fig. 11, in
the bSD
base
, if there were an event
e
on the object
customer
just after the
message
try again
, then this event
e
would be localized just after the sending of
the message
ea 7 )inthewovenSD.
Formally, a left amalgamated sum is defined by:
update
(event
Definition 12 (left amalgamated sum). Let
M 0 =(
I 0 ,E 0 , ≤ 0 ,A 0 0 0 ,
0 ) ,
M 1 =(
I 1 ,E 1 , ≤ 1 ,A 1 1 1 , ≺ 1 ) and
M 2 =(
I 2 ,E 2 , ≤ 2 ,A 2 2 2 , ≺ 2 ) be
three bSDs. Let
f
=
<f 0 ,f 1 ,f 2 >
:
M 0 → M 1 and
g
=
<g 0 ,g 1 ,g 2 >
:
M 0 → M 2
M 1 of
be two bSDs morphisms such that
f
(
M 0 ) defines a part
M 1 and that
f
M 1 . The left amalgamated sum of
is a isomorphism from
M 0 to
M 1 and
M 2
is the bSD
M
=
M 1 + f,g M 2 where
M
=(
I,E,≤,A,α,φ,≺
) is defined by:
I 1 ∪{i 2 ∈ I 2 | i 0 ∈ I 0 ,g 0 (
I
=
i 2 )=
i 0 }
;
∈ E 2 ,f 1 (
E
=
{e 1
∈ E 1 |∃e 0
∈ E 0 , ∃e 2
e 1 )=
e 0 ∧ g 1 (
e 0 )=
e 2 }∪{e 1
E 1 | e 0 ∈ E 0 ,f 1 (
e 0 }∪{e 2 ∈ E 2 | e 0 ∈ E 0 ,g 1 (
e 1 )=
e 2 )=
e 0 }
;
(
|e 1 1 e 2
e 1 ,e 2 )
(
E 1 ∩ E
) 2
(
|e 1 2 e 2
e 1 ,e 2 )
(
E 2 ∩ E
) 2
(
e 1 ,e 2 )
,e 1
(
f 1 (
E 0 )
∩ E
)
,e 2
(
E 2 ∩ E
)
|
∧ e 2 2 e 2
g 1 ◦ f 1 (
∃e 2 ∈ E 2 ,e 2 =
e 1 )
(
e 1 ,e 2 )
,e 1
(
E 2 ∩ E
)
,e 2
(
f 1 (
E 0 )
∩ E
)
|
∧ e 1 2 e 2
=
∃e 2 ∈ E 2 ,e 2 =
g 1 ◦ f 1
1
(
e 2 )
(
,e 1 pred < 1 ,E 1 f 1 (
E 0 ) ,e 2
e 1 ,e 2 )
E 0 )
− f 1 (
(
E 2 ∩ E
)
|
e 2 )
φ
(
e 1 )=
φ
(
(
succ < 1 ,E 1 f 1 (
E 0 )
e 1 ,e 2 )
,e 1
(
E 2 ∩ E
)
,e 2
E 0 )
− f 1 (
|
e 2 )
φ
e 1 )=
φ
(
(
)= α 1 (
e
) if
e ∈ E 1
∀e ∈ E, α
e
α 2 ( e ) if e ∈ E 2 ;
(
)= φ 1 (
e
) if
e ∈ E 1
∀e ∈ E, φ
(
e
e ∈ E 2 ;
φ 2 (
e
) if
A
=
α
(
E
) ;
2 .
=(
1 ∪≺ 2 )
∩ E
The first line of the definition of
means that each pair of events of
E 1 present
in
E
and ordered by
1 remains ordered by
. The second line is equivalent
but for the events of
E 2 . The third line means that an event
e 1 of
E 1 present
e 2 of
in
E
precedes an event
e 2 of
E 2 present in
E
, if there exists an event
E 2
preceding
e 2 and corresponding to
e 1 in
M 0 . The fourth line means that an event
e 2 of
E 1 present in
E
succeeds an event
e 1 of
E 2 present in
E
,ifthereexists
e 2 of
an event
E 2 succeeding
e 1 and having the same antecedent as
e 2 in
M 0 .
Finally, the fifth line means that an event
e 1 of
E 1 preceding the part detected
 
Search WWH ::




Custom Search