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/RootFilterServant.java
Revision: 1.17
Committed: Fri Mar 22 10:43:06 2002 UTC (22 years, 1 month ago) by tdb
Branch: MAIN
Changes since 1.16: +3 -39 lines
Log Message:
Split the CORBA side of the filter in two. The Filter interface still does
the receiving of data, just like it used to. This can optionally be turned
off in the configuration if required. The new interface, FilterInfo, is
used to provide information (host and ports) to other parts of the server
about the Filter - namely the FilterManager. This split has been done so
that the data receiving part of the Filter can be turned off, without
breaking the FilterManager.

File Contents

# Content
1 //---PACKAGE DECLARATION---
2 package uk.org.iscream.cms.server.rootfilter;
3
4 //---IMPORTS---
5 import uk.org.iscream.cms.server.core.*;
6 import uk.org.iscream.cms.server.componentmanager.*;
7 import uk.org.iscream.cms.server.filter.*;
8 import uk.org.iscream.cms.server.clientinterface.*;
9 import uk.org.iscream.cms.server.util.*;
10
11 /**
12 * A root filter servant has an array
13 * of client interfaces where data should be
14 * piped.
15 *
16 * @author $Author: tdb $
17 * @version $Id: RootFilterServant.java,v 1.16 2001/05/29 17:02:35 tdb Exp $
18 */
19 class RootFilterServant extends FilterPOA {
20
21 //---FINAL ATTRIBUTES---
22
23 /**
24 * The current CVS revision of this class
25 */
26 public final String REVISION = "$Revision: 1.16 $";
27
28 //---STATIC METHODS---
29
30 //---CONSTRUCTORS---
31
32 /**
33 * Creates a new RootFilter.
34 *
35 * @param queue a Queue to use
36 */
37 public RootFilterServant(Queue queue) {
38 _queue = queue;
39 _logger.write(toString(), Logger.SYSINIT, "created");
40 }
41
42 //---PUBLIC METHODS---
43
44 /**
45 * Method to receive a string over corba.
46 *
47 * @param xml the String of XML to send on
48 */
49 public void receiveXML(String xml) {
50 _queue.add(xml);
51 }
52
53 /**
54 * Overrides the {@link java.lang.Object#toString() Object.toString()}
55 * method to provide clean logging (every class should have this).
56 *
57 * This uses the uk.org.iscream.cms.server.util.NameFormat class
58 * to format the toString()
59 *
60 * @return the name of this class and its CVS revision
61 */
62 public String toString() {
63 return FormatName.getName(
64 _name,
65 getClass().getName(),
66 REVISION);
67 }
68
69 //---PRIVATE METHODS---
70
71 //---ACCESSOR/MUTATOR METHODS---
72
73 //---ATTRIBUTES---
74
75 /**
76 * This is the friendly identifier of the
77 * component this class is running in.
78 * eg, a Filter may be called "filter1",
79 * If this class does not have an owning
80 * component, a name from the configuration
81 * can be placed here. This name could also
82 * be changed to null for utility classes.
83 */
84 private String _name = RootFilter.NAME;
85
86 /**
87 * This holds a reference to the
88 * system logger that is being used.
89 */
90 private Logger _logger = ReferenceManager.getInstance().getLogger();
91
92 /**
93 * A reference to the Queue being used.
94 */
95 private Queue _queue;
96
97 //---STATIC ATTRIBUTES---
98
99 }