ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/cms/source/server/uk/org/iscream/cms/server/filtermanager/FilterManager.java
Revision: 1.23
Committed: Tue May 29 17:02:35 2001 UTC (23 years ago) by tdb
Branch: MAIN
Branch point for: SERVER_PIRCBOT
Changes since 1.22: +7 -7 lines
Log Message:
Major change in the java package naming. This has been held off for some time
now, but it really needed doing. The future packaging of all i-scream products
will be;

uk.org.iscream.<product>.<subpart>.*

In the case of the central monitoring system server this will be;

uk.org.iscream.cms.server.*

The whole server has been changed to follow this structure, and tested to a
smallish extent. Further changes in other parts of the CMS will follow.

File Contents

# User Rev Content
1 tdb 1.1 //---PACKAGE DECLARATION---
2 tdb 1.23 package uk.org.iscream.cms.server.filtermanager;
3 tdb 1.1
4     //---IMPORTS---
5 tdb 1.23 import uk.org.iscream.cms.server.util.*;
6     import uk.org.iscream.cms.server.core.*;
7     import uk.org.iscream.cms.server.componentmanager.*;
8 tdb 1.1
9     /**
10 ajm 1.12 * The FilterManager handles initialisation
11     * of hosts with the system, allowing hosts to
12     * gain their configuration and a hook to a Filter
13     * to talk to.
14 tdb 1.1 *
15 tdb 1.19 * @author $Author: tdb1 $
16 tdb 1.23 * @version $Id: FilterManager.java,v 1.22 2001/03/14 23:25:29 tdb1 Exp $
17 tdb 1.1 */
18 tdb 1.14 public class FilterManager implements Component {
19 tdb 1.1
20     //---FINAL ATTRIBUTES---
21    
22     /**
23     * The current CVS revision of this class
24     */
25 tdb 1.23 public static final String REVISION = "$Revision: 1.22 $";
26 ajm 1.12
27     /**
28 ajm 1.13 * The friendly name for this component, used by
29 ajm 1.12 * all related classes.
30     */
31     public static final String NAME = "FilterManager";
32 tdb 1.1
33     //---STATIC METHODS---
34    
35 ajm 1.12 //---CONSTRUCTORS---
36    
37     //---PUBLIC METHODS---
38    
39     /**
40     * This method starts the FilterManager
41     */
42     public void start() throws ComponentStartException {
43 ajm 1.17 // get references to key objects
44 tdb 1.20 _logger = _refman.getLogger();
45 ajm 1.17
46 ajm 1.12 _logger.write(toString(), Logger.SYSINIT, "coming up");
47 tdb 1.10
48 tdb 1.15 // startup a thread to listen for hosts
49 tdb 1.18 HostListener hostListener = new HostListener();
50 tdb 1.10 hostListener.start();
51    
52 ajm 1.12 _logger.write(toString(), Logger.SYSINIT, "started");
53 tdb 1.1 }
54 tdb 1.19
55     /**
56     * Does a dependency check. Used mainly at startup to
57     * see if the required dependencies (components) are up
58     * and running.
59     *
60     * @return a boolean value, true if the depdencies are satisfied
61     */
62     public boolean depCheck() {
63 tdb 1.21 // This also depends on Filters.. but only when requested.
64     // I believe the code is in place to handle that elsewhere.
65     try {
66     org.omg.CORBA.Object obj;
67     obj = _refman.getCORBARef("iscream.Logger");
68     obj = _refman.getCORBARef("iscream.ConfigurationManager");
69     } catch(ComponentCORBAException e) {
70     System.err.println(toString() + ": Dependency Failure: "+e);
71     return false;
72     }
73     // dependency check suceeded
74 tdb 1.19 return true;
75     }
76    
77 ajm 1.12 /**
78     * Overrides the {@link java.lang.Object#toString() Object.toString()}
79     * method to provide clean logging (every class should have this).
80     *
81 tdb 1.23 * This uses the uk.org.iscream.cms.server.util.NameFormat class
82 ajm 1.12 * to format the toString()
83     *
84     * @return the name of this class and its CVS revision
85     */
86     public String toString() {
87     return FormatName.getName(
88     _name,
89 ajm 1.13 getClass().getName(),
90 ajm 1.12 REVISION);
91     }
92 tdb 1.1
93     //---PRIVATE METHODS---
94    
95     //---ACCESSOR/MUTATOR METHODS---
96    
97     //---ATTRIBUTES---
98 ajm 1.12
99     /**
100     * This is the friendly identifier of the
101     * component this class is running in.
102     * eg, a Filter may be called "filter1",
103     * If this class does not have an owning
104     * component, a name from the configuration
105     * can be placed here. This name could also
106     * be changed to null for utility classes.
107     */
108     private String _name = FilterManager.NAME;
109    
110     /**
111     * This holds a reference to the
112     * system logger that is being used.
113     */
114 ajm 1.17 private Logger _logger;
115 tdb 1.20
116     /**
117     * A reference to the reference manager in use
118     */
119     private ReferenceManager _refman = ReferenceManager.getInstance();
120 tdb 1.1
121     //---STATIC ATTRIBUTES---
122    
123     }