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/CorbaClientListenerServant.java
Revision: 1.14
Committed: Sun Aug 1 10:40:48 2004 UTC (19 years, 9 months ago) by tdb
Branch: MAIN
CVS Tags: HEAD
Changes since 1.13: +3 -3 lines
Log Message:
Catch a lot of old URL's and update them. Also remove a couple of old files
that aren't used.

File Contents

# User Rev Content
1 tdb 1.10 /*
2     * i-scream central monitoring system
3 tdb 1.14 * http://www.i-scream.org
4 tdb 1.10 * 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 tdb 1.1 //---PACKAGE DECLARATION---
22 tdb 1.9 package uk.org.iscream.cms.server.clientinterface;
23 tdb 1.1
24     //---IMPORTS---
25 tdb 1.9 import uk.org.iscream.cms.server.core.*;
26 tdb 1.12 import uk.org.iscream.cms.util.*;
27 tdb 1.9 import uk.org.iscream.cms.server.componentmanager.*;
28 tdb 1.1
29     /**
30     * This class, a servant, listens for incoming connections from CORBA based
31 tdb 1.4 * clients. Once it receives a connection it creates and assigns a CorbaControlHandler
32     * object to it. The CorbaControlHandler will then handle all requests on behalf of the
33 tdb 1.1 * client, and will send the client data.
34     *
35 tdb 1.10 * @author $Author: tdb $
36 tdb 1.14 * @version $Id: CorbaClientListenerServant.java,v 1.13 2003/05/05 22:05:06 tdb Exp $
37 tdb 1.1 */
38     class CorbaClientListenerServant extends CorbaClientListenerPOA {
39    
40     //---FINAL ATTRIBUTES---
41    
42     /**
43     * The current CVS revision of this class
44     */
45 tdb 1.14 public final String REVISION = "$Revision: 1.13 $";
46 tdb 1.1
47     //---STATIC METHODS---
48    
49     //---CONSTRUCTORS---
50    
51     /**
52     * Creates a new CorbaClientListenerServant.
53     *
54     * @param packetSorter a reference to the PacketSorter object being used
55     */
56 tdb 1.7 public CorbaClientListenerServant(PacketSorter packetSorter) {
57 tdb 1.1 _packetSorter = packetSorter;
58     _logger.write(toString(), Logger.SYSINIT, "created");
59     }
60    
61     //---PUBLIC METHODS---
62    
63     /**
64     * Allows a CORBA client to connect to the server.
65     *
66     * @param client a reference to the "servant" part of the connecting client.
67 tdb 1.6 * @param name a name to identify the client.
68 tdb 1.4 * @return a CorbaControlHandler reference.
69 tdb 1.1 */
70 tdb 1.6 public CorbaControlHandler connect(Client client, String name) {
71 tdb 1.7 CorbaControlHandlerServant cchServant = new CorbaControlHandlerServant(_packetSorter, client, name);
72 tdb 1.1 org.omg.CORBA.Object objRef;
73     try {
74 tdb 1.4 objRef = _refman.getRootPOA().servant_to_reference(cchServant);
75 tdb 1.1 } catch (Exception e) {
76     objRef = null;
77 tdb 1.4 _logger.write(toString(), Logger.ERROR, "Error creating CorbaControlHandler: "+e);
78 tdb 1.1 }
79 tdb 1.4 CorbaControlHandler corbaHandler = CorbaControlHandlerHelper.narrow(objRef);
80 tdb 1.1 return corbaHandler;
81     }
82    
83     /**
84     * Overrides the {@link java.lang.Object#toString() Object.toString()}
85     * method to provide clean logging (every class should have this).
86     *
87 tdb 1.12 * This uses the uk.org.iscream.cms.util.NameFormat class
88 tdb 1.1 * to format the toString()
89     *
90     * @return the name of this class and its CVS revision
91     */
92     public String toString() {
93     return FormatName.getName(
94     _name,
95     getClass().getName(),
96     REVISION);
97     }
98    
99     //---PRIVATE METHODS---
100    
101     //---ACCESSOR/MUTATOR METHODS---
102    
103     //---ATTRIBUTES---
104    
105     /**
106     * This is the friendly identifier of the
107     * component this class is running in.
108     * eg, a Filter may be called "filter1",
109     * If this class does not have an owning
110     * component, a name from the configuration
111     * can be placed here. This name could also
112     * be changed to null for utility classes.
113     */
114     private String _name = ClientInterfaceMain.NAME;
115    
116     /**
117     * This holds a reference to the
118     * system logger that is being used.
119     */
120     private Logger _logger = ReferenceManager.getInstance().getLogger();
121    
122     /**
123     * A reference to the reference manager in use
124     */
125     private ReferenceManager _refman = ReferenceManager.getInstance();
126    
127     /**
128     * A reference to the PacketSorter.
129     */
130     private PacketSorter _packetSorter;
131    
132     //---STATIC ATTRIBUTES---
133    
134     }