lace.make_observer.rid: Handle storage_Error locally.
This commit is contained in:
@@ -18,6 +18,7 @@ is
|
|||||||
end destroy;
|
end destroy;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
------------
|
------------
|
||||||
-- Responses
|
-- Responses
|
||||||
--
|
--
|
||||||
@@ -32,6 +33,7 @@ is
|
|||||||
end add;
|
end add;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
overriding
|
overriding
|
||||||
procedure rid (Self : access Item; the_Response : in Response.view;
|
procedure rid (Self : access Item; the_Response : in Response.view;
|
||||||
to_Kind : in Event.Kind;
|
to_Kind : in Event.Kind;
|
||||||
@@ -39,9 +41,14 @@ is
|
|||||||
is
|
is
|
||||||
begin
|
begin
|
||||||
Self.Responses.rid (Self, the_Response, to_Kind, from_Subject);
|
Self.Responses.rid (Self, the_Response, to_Kind, from_Subject);
|
||||||
|
|
||||||
|
exception
|
||||||
|
when storage_Error =>
|
||||||
|
null; -- The observer is dead.
|
||||||
end rid;
|
end rid;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
overriding
|
overriding
|
||||||
procedure relay_responseless_Events (Self : in out Item; To : in Observer.view)
|
procedure relay_responseless_Events (Self : in out Item; To : in Observer.view)
|
||||||
is
|
is
|
||||||
@@ -50,6 +57,7 @@ is
|
|||||||
end relay_responseless_Events;
|
end relay_responseless_Events;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-------------
|
-------------
|
||||||
-- Operations
|
-- Operations
|
||||||
--
|
--
|
||||||
|
|||||||
@@ -42,6 +42,7 @@ is
|
|||||||
end Name_of;
|
end Name_of;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
--------------
|
--------------
|
||||||
-- Connections
|
-- Connections
|
||||||
--
|
--
|
||||||
@@ -68,14 +69,9 @@ is
|
|||||||
Subject_Name : in String)
|
Subject_Name : in String)
|
||||||
is
|
is
|
||||||
begin
|
begin
|
||||||
begin
|
the_Observer.rid (for_Response,
|
||||||
the_Observer.rid (for_Response,
|
to_Event_Kind,
|
||||||
to_Event_Kind,
|
Subject_Name);
|
||||||
Subject_Name);
|
|
||||||
exception
|
|
||||||
when storage_Error =>
|
|
||||||
null; -- The observer is dead.
|
|
||||||
end;
|
|
||||||
|
|
||||||
begin
|
begin
|
||||||
from_Subject.deregister (the_Observer,
|
from_Subject.deregister (the_Observer,
|
||||||
@@ -88,6 +84,7 @@ is
|
|||||||
end disconnect;
|
end disconnect;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
----------
|
----------
|
||||||
-- Logging
|
-- Logging
|
||||||
--
|
--
|
||||||
|
|||||||
Reference in New Issue
Block a user