B. Solution Architecture: The Action Catalog Service
The SCSF provides just such a capability in its action catalog service. Its operation is shown in Figure 7-1 on the facing page.
A conditionally executed method is known as an action. A module registers its actions with the action catalog service, either declaratively or programmatically, most often at the time that the module is loaded.
A module wishing to be notified of the requested invocation of an action, and to be allowed to inspect it and optionally veto it, provides the action catalog service with an object called an action condition. This object contains a Boolean method named CanExecute. An action condition may be registered for one named action (a specific condition) or all actions ...