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.16
Committed: Sun Jan 28 06:03:58 2001 UTC (23 years, 3 months ago) by tdb
Branch: MAIN
Changes since 1.15: +9 -13 lines
Log Message:
A tidy up of the configuration getting section.

File Contents

# User Rev Content
1 tdb 1.1 //---PACKAGE DECLARATION---
2 tdb 1.9 package uk.ac.ukc.iscream.filtermanager;
3 tdb 1.1
4     //---IMPORTS---
5 ajm 1.12 import uk.ac.ukc.iscream.util.*;
6 tdb 1.1 import uk.ac.ukc.iscream.core.*;
7 tdb 1.14 import uk.ac.ukc.iscream.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.15 * @author $Author: tdb1 $
16 tdb 1.16 * @version $Id: FilterManager.java,v 1.15 2001/01/28 05:38:13 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.16 public static final String REVISION = "$Revision: 1.15 $";
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    
44     _logger.write(toString(), Logger.SYSINIT, "coming up");
45 tdb 1.10
46     // configuration variable we require
47     int listenPort = 0;
48 tdb 1.16
49 ajm 1.12 Configuration config = _refman.getCM().getConfiguration("FilterManager");
50 tdb 1.10 if (config == null) {
51 tdb 1.16 throw new ComponentStartException("Unable to obtain configuration for component");
52     }
53     else {
54 tdb 1.10 try {
55 tdb 1.16 // get the configuration properties we need
56 tdb 1.10 listenPort = Integer.parseInt(config.getProperty("FilterManager.listenPort"));
57     } catch (org.omg.CORBA.MARSHAL e) {
58 tdb 1.16 throw new ComponentStartException("Unable to obtain requried configuration property for component");
59 tdb 1.1 }
60     }
61 tdb 1.16
62 ajm 1.12 _logger.write(toString(), Logger.SYSMSG, "configured");
63 tdb 1.10
64 tdb 1.15 // startup a thread to listen for hosts
65 tdb 1.10 HostListener hostListener = new HostListener(listenPort);
66     hostListener.start();
67    
68 ajm 1.12 _logger.write(toString(), Logger.SYSINIT, "started");
69 tdb 1.1 }
70    
71 ajm 1.12 /**
72     * Overrides the {@link java.lang.Object#toString() Object.toString()}
73     * method to provide clean logging (every class should have this).
74     *
75     * This uses the uk.ac.ukc.iscream.util.NameFormat class
76     * to format the toString()
77     *
78     * @return the name of this class and its CVS revision
79     */
80     public String toString() {
81     return FormatName.getName(
82     _name,
83 ajm 1.13 getClass().getName(),
84 ajm 1.12 REVISION);
85     }
86 tdb 1.1
87     //---PRIVATE METHODS---
88    
89     //---ACCESSOR/MUTATOR METHODS---
90    
91     //---ATTRIBUTES---
92 ajm 1.12
93     /**
94     * This is the friendly identifier of the
95     * component this class is running in.
96     * eg, a Filter may be called "filter1",
97     * If this class does not have an owning
98     * component, a name from the configuration
99     * can be placed here. This name could also
100     * be changed to null for utility classes.
101     */
102     private String _name = FilterManager.NAME;
103    
104     /**
105     * This holds a reference to the
106     * system logger that is being used.
107     */
108     private Logger _logger = ReferenceManager.getInstance().getLogger();
109    
110     /**
111     * A reference to the reference manager in use
112     */
113     private ReferenceManager _refman = ReferenceManager.getInstance();
114 tdb 1.1
115     //---STATIC ATTRIBUTES---
116    
117     }