ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/cms/source/server/uk/org/iscream/cms/server/rootfilter/RootFilter.java
Revision: 1.7
Committed: Thu Nov 30 03:15:43 2000 UTC (23 years, 5 months ago) by ajm
Branch: MAIN
Changes since 1.6: +3 -2 lines
Log Message:
added line to redefine the toString()
its temporary...but what the hell...when we do our funky class to have a standard toString() it might be better! ;-p

File Contents

# User Rev Content
1 tdb 1.1 //---PACKAGE DECLARATION---
2 tdb 1.3 package uk.ac.ukc.iscream.rootfilter;
3 tdb 1.1
4     //---IMPORTS---
5 ajm 1.5 import uk.ac.ukc.iscream.util.*;
6 tdb 1.1 import uk.ac.ukc.iscream.core.*;
7    
8     /**
9 ajm 1.5 * A Filter Startup Class
10 tdb 1.1 *
11 ajm 1.5 * @author $Author: ajm4 $
12 ajm 1.7 * @version $Id: RootFilterMain.java,v 1.6 2000/11/30 03:11:02 ajm4 Exp $
13 tdb 1.1 */
14 ajm 1.6 class RootFilterMain {
15 tdb 1.1
16     //---FINAL ATTRIBUTES---
17    
18     /**
19     * The current CVS revision of this class
20     */
21 ajm 1.7 public static final String REVISION = "$Revision: 1.6 $";
22 tdb 1.1
23     //---STATIC METHODS---
24    
25     public static void main(String[] args) {
26 ajm 1.5 // ***************************************
27     // VERY TEMPORARY - will find a better way
28 tdb 1.1 System.setProperty("org.omg.CORBA.ORBClass","jacorb.orb.ORB");
29     System.setProperty("org.omg.CORBA.ORBSingletonClass","jacorb.orb.ORBSingleton");
30 ajm 1.5 // ***************************************
31    
32     ReferenceManager refman = ReferenceManager.init(null, null);
33 tdb 1.1
34 ajm 1.5 // can't have a real toString() :)
35     String toString = "RootFilter{" + refman.getName() + "}(" + REVISION.substring(11, REVISION.length() - 2) + ")";
36    
37     refman.getLogger().write(toString, Logger.SYSINIT, "coming up");
38    
39     // configuration variables we require
40     String ourName = null;
41    
42     Configuration config = refman.getCM().getConfiguration("RootFilter");
43     if (config == null) {
44     throw new RuntimeException ("CRITICAL:Unable to obtain configuration" +
45     " Advise you check the i-scream log for more information.");
46     } else {
47     try {
48     ourName = config.getProperty("Filter.rootFilter");
49     } catch (org.omg.CORBA.MARSHAL e) {
50     refman.getLogger().write(toString, Logger.FATAL, "required config property not present");
51     throw new RuntimeException ("CRITICAL:Unable to obtain required configuration property" +
52     " Advise you check the i-scream log for more information.");
53    
54     }
55 tdb 1.1 }
56 ajm 1.5 // now we have the name of the Root Filter we set it
57     refman.setName(ourName);
58 ajm 1.7 toString = "RootFilter{" + refman.getName() + "}(" + REVISION.substring(11, REVISION.length() - 2) + ")";
59 ajm 1.5 refman.getLogger().write(toString, Logger.SYSINIT, "configured");
60 tdb 1.1
61 ajm 1.5 // FilterServant start (for inbound child filter data)
62     refman.getLogger().write(toString, Logger.DEBUG, "starting Root Filter");
63     RootFilterServant filterServant = new RootFilterServant();
64     refman.bindToOrb(filterServant, "iscream.Filter." + refman.getName());
65 tdb 1.1
66 ajm 1.5 // start the POA off
67     // now we are running, we just need to serve
68     // so we ask the orb to block for us until it has finished
69     refman.activatePOA();
70     refman.getLogger().write(toString, Logger.SYSINIT, "started");
71     refman.getORB().run();
72 tdb 1.1 }
73    
74     /**
75     * A simple method to print the usage of this class.
76     * It never returns, but instead exits to the system
77     * with a value 1, to indicate the system did not start
78     * properly.
79     */
80     public static void usage() {
81 ajm 1.5 System.out.println("USAGE: java FilterMain <name>");
82 tdb 1.1 System.out.println("WHERE <name>:");
83 ajm 1.5 System.out.println(" The unique identifier for the Filter in the system.");
84 tdb 1.1 System.exit(1);
85     }
86    
87     //---CONSTRUCTORS---
88    
89     //---PUBLIC METHODS---
90    
91     //---PRIVATE METHODS---
92    
93     //---ACCESSOR/MUTATOR METHODS---
94    
95     //---ATTRIBUTES---
96    
97     //---STATIC ATTRIBUTES---
98    
99 ajm 1.5 }