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
(Generate patch)

Comparing projects/cms/source/server/uk/org/iscream/cms/server/filtermanager/FilterManager.java (file contents):
Revision 1.13 by ajm, Tue Dec 12 19:55:45 2000 UTC vs.
Revision 1.26 by tdb, Tue May 21 16:47:18 2002 UTC

# Line 1 | Line 1
1 + /*
2 + * i-scream central monitoring system
3 + * http://www.i-scream.org.uk
4 + * Copyright (C) 2000-2002 i-scream
5 + *
6 + * This program is free software; you can redistribute it and/or
7 + * modify it under the terms of the GNU General Public License
8 + * as published by the Free Software Foundation; either version 2
9 + * of the License, or (at your option) any later version.
10 + *
11 + * This program is distributed in the hope that it will be useful,
12 + * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 + * GNU General Public License for more details.
15 + *
16 + * You should have received a copy of the GNU General Public License
17 + * along with this program; if not, write to the Free Software
18 + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
19 + */
20 +
21   //---PACKAGE DECLARATION---
22 < package uk.ac.ukc.iscream.filtermanager;
22 > package uk.org.iscream.cms.server.filtermanager;
23  
24   //---IMPORTS---
25 < import uk.ac.ukc.iscream.util.*;
26 < import uk.ac.ukc.iscream.core.*;
25 > import uk.org.iscream.cms.server.util.*;
26 > import uk.org.iscream.cms.server.core.*;
27 > import uk.org.iscream.cms.server.componentmanager.*;
28  
29   /**
30   * The FilterManager handles initialisation
# Line 14 | Line 35 | import uk.ac.ukc.iscream.core.*;
35   * @author  $Author$
36   * @version $Id$
37   */
38 < public class FilterManager implements uk.ac.ukc.iscream.util.Component {
38 > public class FilterManager implements Component {
39  
40   //---FINAL ATTRIBUTES---
41  
# Line 23 | Line 44 | public class FilterManager implements uk.ac.ukc.iscrea
44       */
45      public static final String REVISION = "$Revision$";
46      
26    /**
27     * The friendly name for this component, used by
28     * all related classes.
29     */
30    public static final String NAME = "FilterManager";
31    
47   //---STATIC METHODS---
48  
49   //---CONSTRUCTORS---
50  
51 +    /**
52 +     * Constructs a FilterManager with the name given
53 +     *
54 +     * @param givenName the name
55 +     */
56 +    public FilterManager(String givenName) {
57 +        NAME = givenName;
58 +    }
59 +
60   //---PUBLIC METHODS---
61  
62      /**
63       * This method starts the FilterManager
64       */
65       public void start() throws ComponentStartException {
66 <                
66 >        // get references to key objects
67 >        _logger = _refman.getLogger();
68 >        
69          _logger.write(toString(), Logger.SYSINIT, "coming up");
70          
71 <        // configuration variable we require
72 <        int listenPort = 0;
47 <
48 <        Configuration config = _refman.getCM().getConfiguration("FilterManager");
49 <        if (config == null) {
50 <            System.err.println("CRITICAL:Unable to obtain configuration" +
51 <                               "\n         Advise you check the i-scream log for more information.");
52 <            _logger.write(toString(), Logger.FATAL, "ERROR - unable to obtain configuration");
53 <            System.exit(1);
54 <        } else {
55 <            try {
56 <                listenPort = Integer.parseInt(config.getProperty("FilterManager.listenPort"));
57 <            } catch (org.omg.CORBA.MARSHAL e) {
58 <                System.err.println ("CRITICAL:Unable to obtain required configuration property" +
59 <                                    "\n         Advise you check the i-scream log for more information.");
60 <                _logger.write(toString(), Logger.FATAL, "ERROR - required configuration property not present");
61 <                System.exit(1);
62 <            }
63 <        }
64 <        
65 <        _logger.write(toString(), Logger.SYSMSG, "configured");
66 <        
67 <        HostListener hostListener = new HostListener(listenPort);
71 >        // startup a thread to listen for hosts
72 >        HostListener hostListener = new HostListener();
73          hostListener.start();
74          
75          _logger.write(toString(), Logger.SYSINIT, "started");
76      }
77 <
77 >    
78      /**
79 +     * Does a dependency check. Used mainly at startup to
80 +     * see if the required dependencies (components) are up
81 +     * and running.
82 +     *
83 +     * @return a boolean value, true if the depdencies are satisfied
84 +     */
85 +    public boolean depCheck() {
86 +        // This also depends on Filters.. but only when requested.
87 +        // I believe the code is in place to handle that elsewhere.
88 +        try {
89 +            org.omg.CORBA.Object obj;
90 +            obj = _refman.getCORBARef("iscream.Logger");
91 +            obj = _refman.getCORBARef("iscream.ConfigurationManager");
92 +        } catch(ComponentCORBAException e) {
93 +            System.err.println(toString() + ": Dependency Failure: "+e);
94 +            return false;
95 +        }
96 +        // dependency check suceeded
97 +        return true;
98 +    }
99 +    
100 +    /**
101       * Overrides the {@link java.lang.Object#toString() Object.toString()}
102       * method to provide clean logging (every class should have this).
103       *
104 <     * This uses the uk.ac.ukc.iscream.util.NameFormat class
104 >     * This uses the uk.org.iscream.cms.server.util.NameFormat class
105       * to format the toString()
106       *
107       * @return the name of this class and its CVS revision
108       */
109      public String toString() {
110          return FormatName.getName(
111 <            _name,
111 >            NAME,
112              getClass().getName(),
113              REVISION);
114      }
# Line 107 | Line 134 | public class FilterManager implements uk.ac.ukc.iscrea
134       * This holds a reference to the
135       * system logger that is being used.
136       */
137 <    private Logger _logger = ReferenceManager.getInstance().getLogger();
138 <
137 >    private Logger _logger;
138 >    
139      /**
140       * A reference to the reference manager in use
141       */
142      private ReferenceManager _refman = ReferenceManager.getInstance();
143  
144   //---STATIC ATTRIBUTES---
145 +
146 +    /**
147 +     * The friendly name for this component, used by
148 +     * all related classes.
149 +     * This is set from the configuration.
150 +     */
151 +    public static String NAME;
152  
153   }            

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines