ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/cms/source/server/uk/org/iscream/cms/server/componentmanager/Component.java
Revision: 1.4
Committed: Wed Mar 14 01:34:25 2001 UTC (23 years, 2 months ago) by tdb
Branch: MAIN
Changes since 1.3: +11 -2 lines
Log Message:
New dependency checking. The old method was to attempt to start a Component, and
if it failed, it probably had a depdency problem. The approach now is to ask the
Component to perform a dependency check first, then if this suceeds, have a go
at actually starting it up.
The actual dependency check is a bit neater and more precise than before, and
should be much more fool proof. The order the components are specified in the
default.properties file is now irrelevant, although the "correct" order would
certainly increase booting time.

File Contents

# Content
1 //---PACKAGE DECLARATION---
2 package uk.ac.ukc.iscream.componentmanager;
3
4 //---IMPORTS---
5
6 /**
7 * This interface should be implemented by any independent
8 * components of the system. It presents a management
9 * interface for all i-scream components.
10 *
11 * @author $Author: tdb1 $
12 * @version $Id: Component.java,v 1.3 2001/01/18 23:01:50 tdb1 Exp $
13 */
14 public interface Component {
15
16 //---FINAL ATTRIBUTES---
17
18 //---STATIC METHODS---
19
20 //---CONSTRUCTORS---
21
22 //---PUBLIC METHODS---
23
24 /**
25 * This method starts the implementing component
26 */
27 public void start() throws ComponentStartException;
28
29 /**
30 * Does a dependency check. Used mainly at startup to
31 * see if the required dependencies (components) are up
32 * and running.
33 *
34 * @return a boolean value, true if the depdencies are satisfied
35 */
36 public boolean depCheck();
37
38 //---PRIVATE METHODS---
39
40 //---ACCESSOR/MUTATOR METHODS---
41
42 //---ATTRIBUTES---
43
44 //---STATIC ATTRIBUTES---
45
46 }
47