ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/cms/source/server/uk/org/iscream/cms/server/clientinterface/ClientInterfaceMain.java
Revision: 1.3
Committed: Tue Dec 5 15:59:35 2000 UTC (23 years, 5 months ago) by ajm
Branch: MAIN
Branch point for: SERVER_PACKAGEBUILD
Changes since 1.2: +91 -91 lines
Log Message:
Modified to use the database

File Contents

# Content
1 //---PACKAGE DECLARATION---
2 package uk.ac.ukc.iscream.clientinterface;
3
4 //---IMPORTS---
5 import uk.ac.ukc.iscream.util.*;
6 import uk.ac.ukc.iscream.core.*;
7
8 /**
9 * A ClientInterface startup class
10 *
11 * @author $Author: ajm4 $
12 * @version $Id: ClientInterfaceMain.java,v 1.2 2000/12/04 18:42:19 ajm4 Exp $
13 */
14 class ClientInterfaceMain {
15
16 //---FINAL ATTRIBUTES---
17
18 /**
19 * The current CVS revision of this class
20 */
21 public static final String REVISION = "$Revision: 1.2 $";
22
23 //---STATIC METHODS---
24
25 public static void main(String[] args) {
26 // ***************************************
27 // VERY TEMPORARY - will find a better way
28 System.setProperty("org.omg.CORBA.ORBClass","jacorb.orb.ORB");
29 System.setProperty("org.omg.CORBA.ORBSingletonClass","jacorb.orb.ORBSingleton");
30 // ***************************************
31
32 ReferenceManager refman = ReferenceManager.init(null, null);
33
34 // can't have a real toString() :)
35 String toString = "ClientInterface{" + 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 int listenPort = 0;
42
43 Configuration config = refman.getCM().getConfiguration("ClientInterface");
44 if (config == null) {
45 throw new RuntimeException ("CRITICAL:Unable to obtain configuration" +
46 " Advise you check the i-scream log for more information.");
47 } else {
48 try {
49 ourName = config.getProperty("RootFilter.realtimeInterfaceName");
50 listenPort = Integer.parseInt(config.getProperty("ClientInterface.listenPort"));
51 } catch (org.omg.CORBA.MARSHAL e) {
52 refman.getLogger().write(toString, Logger.FATAL, "required config property not present");
53 throw new RuntimeException ("CRITICAL:Unable to obtain required configuration property" +
54 " Advise you check the i-scream log for more information.");
55
56 }
57 }
58 // now we have the name of the interface we set it
59 refman.setName(ourName);
60 toString = "ClientInterface{" + refman.getName() + "}(" + REVISION.substring(11, REVISION.length() - 2) + ")";
61 refman.getLogger().write(toString, Logger.SYSINIT, "configured");
62
63 // ClientInterfaceServant start (for inbound data)
64 refman.getLogger().write(toString, Logger.DEBUG, "starting servant for inbound data");
65 ClientInterfaceServant ciServant = new ClientInterfaceServant();
66 refman.bindToOrb(ciServant, "iscream.ClientInterface." + refman.getName());
67
68 ClientListener clientListener = new ClientListener(listenPort, ciServant);
69 clientListener.start();
70
71 // start the POA off
72 // now we are running, we just need to serve
73 // so we ask the orb to block for us until it has finished
74 refman.activatePOA();
75 refman.getLogger().write(toString, Logger.SYSINIT, "started");
76 refman.getORB().run();
77 }
78
79 //---CONSTRUCTORS---
80
81 //---PUBLIC METHODS---
82
83 //---PRIVATE METHODS---
84
85 //---ACCESSOR/MUTATOR METHODS---
86
87 //---ATTRIBUTES---
88
89 //---STATIC ATTRIBUTES---
90
91 }