01: /**
02: * JOnAS: Java(TM) Open Application Server
03: * Copyright (C) 1999-2004 Bull S.A.
04: * Contact: jonas-team@objectweb.org
05: *
06: * This library is free software; you can redistribute it and/or
07: *
08: * modify it under the terms of the GNU Lesser General Public
09: * License as published by the Free Software Foundation; either
10: * version 2.1 of the License, or 1any later version.
11: *
12: * This library is distributed in the hope that it will be useful,
13: * but WITHOUT ANY WARRANTY; without even the implied warranty of
14: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15: * Lesser General Public License for more details.
16: *
17: * You should have received a copy of the GNU Lesser General Public
18: * License along with this library; if not, write to the Free Software
19: * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
20: * USA
21: *
22: * --------------------------------------------------------------------------
23: * $Id: JavaXmlTypeMappingRuleSet.java 5766 2004-11-19 09:23:01Z sauthieg $
24: * --------------------------------------------------------------------------
25: */package org.objectweb.jonas_ws.deployment.rules;
26:
27: import org.apache.commons.digester.Digester;
28: import org.objectweb.jonas_lib.deployment.rules.JRuleSetBase;
29:
30: /**
31: * This class defines the rules to analyze the element java-xml-type-mapping
32: *
33: * @author JOnAS team
34: */
35:
36: public class JavaXmlTypeMappingRuleSet extends JRuleSetBase {
37:
38: /**
39: * Construct an object with a specific prefix
40: * @param prefix prefix to use during the parsing
41: */
42: public JavaXmlTypeMappingRuleSet(String prefix) {
43: super (prefix);
44: }
45:
46: /**
47: * Add a set of rules to the digester object
48: * @param digester Digester instance
49: */
50:
51: public void addRuleInstances(Digester digester) {
52: digester
53: .addObjectCreate(prefix + "java-xml-type-mapping",
54: "org.objectweb.jonas_ws.deployment.xml.JavaXmlTypeMapping");
55: digester
56: .addSetNext(prefix + "java-xml-type-mapping",
57: "addJavaXmlTypeMapping",
58: "org.objectweb.jonas_ws.deployment.xml.JavaXmlTypeMapping");
59: digester.addCallMethod(prefix
60: + "java-xml-type-mapping/java-type", "setJavaType", 0);
61: digester.addRuleSet(new RootTypeQnameRuleSet(prefix
62: + "java-xml-type-mapping/"));
63: digester.addRuleSet(new AnonymousTypeQnameRuleSet(prefix
64: + "java-xml-type-mapping/"));
65: digester.addCallMethod(prefix
66: + "java-xml-type-mapping/qname-scope", "setQnameScope",
67: 0);
68: digester.addRuleSet(new VariableMappingRuleSet(prefix
69: + "java-xml-type-mapping/"));
70: }
71: }
|