The Critic Artist Components
See Also: Critic Framework Overview.
High-Level Description: Critic artists are responsible for creating a Swing GUI rendering of a Critic Issue. There is one component in ArchStudio 3, the Default Critic Artist, that provides a default view of any critic issue, but other artist components can be plugged in to provide more detailed or faithful views for particular critic issues.
Top Interface Requests: (The following are requests sent out by this component to components above).
- None.
Top Interface Notifications: (The following are notifications handled by this component from components above).
archstudio.critics.CriticIssueMessage
: These events, which usually come from critics, indicate the change in state of a particular issue. If the issue is open, the critic artist will render it and send aCriticArtistMessage
downward, see below.
Bottom Interface Requests: (The following are requests handled by this component).
- None.
Bottom Interface Notifications: (The following are notifications sent out by this component).
archstudio.critics.CriticArtistMessage
: When a critic artist receives a CriticIssueMessage indicating an open issue, it renders that message to two Swing components: a label (indicating the high-level category of the issue, not necessarily a JLabel) and content, providing a detailed rendering of the issue at hand. An example of this, the default rendering provided by the Default Critic Artist, is shown here:CriticArtistMessage
s also include an integer parameter called fidelity. This describes how faithful the rendering is to the original issue--how much detail is captured. Because there can be many different types of critic issues arranged in an object-oriented inheritance hierarchy, it is possible that many critic artists will know how to render the same issue. The default critic artist, for instance, is a low-fidelity renderer. While it can render any kind of issue, it does not provide anything special for any particular kind of issue. A different artist might know how to render one type of issue with a lot of detail, so it should report a higher fidelity.
Required EBI Service Interfaces: (The following are interfaces used by this component via the EBI Wrapper Mechanism and should be made available by a component above this one).
- None.
Provided EBI Service Interfaces: (The following are interfaces implemented by this component via the EBI Wrapper Mechanism and are made available to components below this one).
- None.