ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/cms/source/server/uk/org/iscream/cms/server/filter/plugins/EnforceEssentialData__Plugin.java
Revision: 1.2
Committed: Wed Dec 13 13:37:18 2000 UTC (23 years, 5 months ago) by ajm
Branch: MAIN
Changes since 1.1: +96 -71 lines
Log Message:
tidied up

File Contents

# Content
1 //---PACKAGE DECLARATION---
2 package uk.ac.ukc.iscream.filter.plugins;
3
4 //---IMPORTS---
5 import uk.ac.ukc.iscream.filter.PluginFilter;
6 import uk.ac.ukc.iscream.util.XMLPacket;
7
8 /**
9 * A first plugin! ;-)
10 * this one rejects packets that do not contain all of the 'essential' data.
11 *
12 * @author $Author: tdb1 $
13 * @version $Id: EnforceEssentialData__Plugin.java,v 1.1 2000/12/06 22:59:29 tdb1 Exp $
14 */
15 public class EnforceEssentialData__Plugin implements PluginFilter {
16
17 //---FINAL ATTRIBUTES---
18
19 /**
20 * The current CVS revision of this class
21 */
22 public final String REVISION = "$Revision: 1.1 $";
23
24 public final String DESC = "Rejects packets that do not have an ip, machine_name, seq_no and date specified as attributes of the root packet tag.";
25
26 //---STATIC METHODS---
27
28 //---CONSTRUCTORS---
29
30 //---PUBLIC METHODS---
31
32 // apply the filter and return true if successful.
33 public boolean runFilter(XMLPacket packet){
34
35 // return false if any of the essential data is not present.
36 if (packet.getParam("packet.attributes.machine_name") == null
37 || packet.getParam("packet.attributes.ip") == null
38 || packet.getParam("packet.attributes.seq_no") == null
39 || packet.getParam("packet.attributes.date") == null){
40 return false;
41 }
42
43 // otherwise return true!
44 return true;
45
46 }
47
48 /**
49 * Overrides the {@link java.lang.Object#toString() Object.toString()}
50 * method to provide clean logging (every class should have this).
51 *
52 * This uses the uk.ac.ukc.iscream.util.NameFormat class
53 * to format the toString()
54 *
55 * @return the name of this class and its CVS revision
56 */
57 public String toString() {
58 return FormatName.getName(
59 _name,
60 getClass().getName(),
61 REVISION);
62 }
63
64 /**
65 * return the String representation of what the filter does
66 */
67 public String getDescription(){
68 return DESC;
69 }
70
71 //---PRIVATE METHODS---
72
73 //---ACCESSOR/MUTATOR METHODS---
74
75 //---ATTRIBUTES---
76
77 /**
78 * This is the friendly identifier of the
79 * component this class is running in.
80 * eg, a Filter may be called "filter1",
81 * If this class does not have an owning
82 * component, a name from the configuration
83 * can be placed here. This name could also
84 * be changed to null for utility classes.
85 */
86 private String _name = FilterMain.NAME;
87
88 /**
89 * This holds a reference to the
90 * system logger that is being used.
91 */
92 private Logger _logger = ReferenceManager.getInstance().getLogger();
93
94 //---STATIC ATTRIBUTES---
95
96 }