KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > riotfamily > common > beans > xml > GenericNamespaceHandlerSupport


1 /* ***** BEGIN LICENSE BLOCK *****
2  * Version: MPL 1.1
3  * The contents of this file are subject to the Mozilla Public License Version
4  * 1.1 (the "License"); you may not use this file except in compliance with
5  * the License. You may obtain a copy of the License at
6  * http://www.mozilla.org/MPL/
7  *
8  * Software distributed under the License is distributed on an "AS IS" basis,
9  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
10  * for the specific language governing rights and limitations under the
11  * License.
12  *
13  * The Original Code is Riot.
14  *
15  * The Initial Developer of the Original Code is
16  * Neteye GmbH.
17  * Portions created by the Initial Developer are Copyright (C) 2007
18  * the Initial Developer. All Rights Reserved.
19  *
20  * Contributor(s):
21  * Felix Gnass [fgnass at neteye dot de]
22  *
23  * ***** END LICENSE BLOCK ***** */

24 package org.riotfamily.common.beans.xml;
25
26 import org.springframework.beans.factory.xml.BeanDefinitionDecorator;
27 import org.springframework.beans.factory.xml.BeanDefinitionParser;
28 import org.springframework.beans.factory.xml.NamespaceHandlerSupport;
29
30 /**
31  * @author Felix Gnass [fgnass at neteye dot de]
32  * @since 6.5
33  */

34 public abstract class GenericNamespaceHandlerSupport extends NamespaceHandlerSupport {
35
36     /**
37      * Registers a {@link SpringBeanDefinitionParser} for the given elementName.
38      */

39     protected void registerSpringBeanDefinitionParser(String JavaDoc elementName) {
40         registerBeanDefinitionParser(elementName, new SpringBeanDefinitionParser());
41     }
42
43     /**
44      * Registers a {@link SpringBeanDefinitionParser} and a decorator
45      * for the given elementName.
46      */

47     protected void registerSpringBeanDefinitionParser(String JavaDoc elementName,
48             BeanDefinitionDecorator decorator) {
49
50         registerSpringBeanDefinitionParser(elementName);
51         registerBeanDefinitionDecorator(elementName, decorator);
52     }
53
54     /**
55      * Registers a {@link GenericBeanDefinitionParser} for the given elementName
56      * that creates BeanDefinitions for the specified class.
57      */

58     protected GenericBeanDefinitionParser register(String JavaDoc elementName, Class JavaDoc beanClass) {
59         GenericBeanDefinitionParser parser = new GenericBeanDefinitionParser(beanClass);
60         registerBeanDefinitionParser(elementName, parser);
61         return parser;
62     }
63
64     /**
65      * Registers a {@link GenericBeanDefinitionParser} for the given elementName
66      * that creates BeanDefinitions for the specified class. Additionally a
67      * decorator is registered for the elementName.
68      *
69      */

70     protected GenericBeanDefinitionParser register(String JavaDoc elementName,
71             Class JavaDoc beanClass, BeanDefinitionDecorator decorator) {
72
73         registerBeanDefinitionDecorator(elementName, decorator);
74         return register(elementName, beanClass);
75     }
76
77     /**
78      * Registers a parser and decorator for the given elementName.
79      */

80     protected void register(String JavaDoc elementName, BeanDefinitionParser parser,
81             BeanDefinitionDecorator decorator) {
82
83         registerBeanDefinitionParser(elementName, parser);
84         registerBeanDefinitionDecorator(elementName, decorator);
85     }
86 }
87
Popular Tags