1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.myfaces.shared.test;
20
21 import java.util.List;
22 import java.util.ArrayList;
23
24 import org.xml.sax.Attributes;
25 import org.xml.sax.SAXException;
26 import org.xml.sax.helpers.DefaultHandler;
27
28
29
30
31
32
33 public class ClassElementHandler extends DefaultHandler
34 {
35
36 private boolean clazz ;
37 private List elementName = new ArrayList();
38 private List className = new ArrayList();
39 private StringBuffer buffer ;
40
41 public ClassElementHandler(){
42
43 elementName.add("component-class");
44 elementName.add("tag-class");
45 elementName.add("renderer-class");
46 elementName.add("validator-class");
47 elementName.add("converter-class");
48 elementName.add("action-listener");
49 elementName.add("navigation-handler");
50 elementName.add("variable-resolver");
51 elementName.add("property-resolver");
52 elementName.add("phase-listener");
53
54 }
55
56 public void characters(char[] ch, int start, int length)
57 throws SAXException
58 {
59 if (clazz)
60 {
61 String string = new String(ch, start, length);
62 if(string != null)
63 {
64 buffer.append(string.trim());
65 }
66 }
67 }
68
69 public void startElement(
70 String ns, String local, String qName, Attributes atts)
71 throws SAXException
72 {
73
74 clazz = elementName.contains(qName);
75
76 if(clazz)
77 buffer = new StringBuffer();
78
79 }
80
81 public void endElement(String ns, String local, String qName)
82 throws SAXException
83 {
84
85 if(clazz){
86 className.add(buffer.toString());
87 clazz = false;
88 }
89
90 }
91
92 public List getClassName()
93 {
94 return className;
95 }
96
97 }