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/ClientInterfaceServant.java
Revision: 1.2
Committed: Mon Dec 4 18:42:19 2000 UTC (23 years, 6 months ago) by ajm
Branch: MAIN
Branch point for: SERVER_PACKAGEBUILD
Changes since 1.1: +3 -4 lines
Log Message:
fixed Tim's REALLY silly mistake in the TCPClientHandler ;-p

Added support for the ClientListener to the ClientInterface

File Contents

# Content
1 //---PACKAGE DECLARATION---
2 package uk.ac.ukc.iscream.clientinterface;
3
4 //---IMPORTS---
5 import uk.ac.ukc.iscream.core.*;
6 import uk.ac.ukc.iscream.util.*;
7 import java.util.LinkedList;
8 import java.util.Iterator;
9
10 /**
11 * A client interface servant
12 *
13 * @author $Author: ajm4 $
14 * @version $Id: ClientInterfaceServant.java,v 1.1 2000/12/04 18:12:00 ajm4 Exp $
15 */
16 class ClientInterfaceServant extends ClientInterfacePOA {
17
18 //---FINAL ATTRIBUTES---
19
20 /**
21 * The current CVS revision of this class
22 */
23 public final String REVISION = "$Revision: 1.1 $";
24
25 //---STATIC METHODS---
26
27 //---CONSTRUCTORS---
28
29 /**
30 * Creates a new ClientInterfaceServant.
31 *
32 */
33 public ClientInterfaceServant() {
34 // here would be a nice place to pass in local clients
35 _clients = new LinkedList();
36 _logger.write(this.toString(), Logger.SYSINIT, "created");
37 }
38
39 //---PUBLIC METHODS---
40
41 /**
42 * Method to receive a string over corba.
43 *
44 * @param xml the String of XML to print out
45 */
46 public void receiveXML(String xml) {
47 _logger.write(this.toString(), Logger.DEBUG, "got data, passing to clients");
48 Iterator i = _clients.iterator();
49 while(i.hasNext()) {
50 ((ClientHandler) i.next()).receiveXML(xml);
51 }
52 }
53
54 public void register(ClientHandler newClient) {
55 _logger.write(this.toString(), Logger.SYSMSG, "registered client - " + newClient.toString());
56 _clients.add(newClient);
57 }
58
59 /**
60 * Overrides the {@link java.lang.Object#toString() Object.toString()}
61 * method to provide clean logging (every class should have this).
62 *
63 * @return the name of this class and its CVS revision
64 */
65 public String toString() {
66 return this.getClass().getName() + "{" + _name + "}(" + REVISION.substring(11, REVISION.length() - 2) + ")";
67 }
68
69 //---PRIVATE METHODS---
70
71 //---ACCESSOR/MUTATOR METHODS---
72
73 //---ATTRIBUTES---
74
75 /**
76 * Reference to a Logger
77 */
78 private Logger _logger = ReferenceManager.getInstance().getLogger();
79
80 /**
81 * Our name
82 */
83 private String _name = ReferenceManager.getInstance().getName();
84
85 private LinkedList _clients;
86
87 //---STATIC ATTRIBUTES---
88
89 }