Browse Source
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@413 50f2f4bb-b051-0410-bef5-90022cba6387pull/1/head
15 changed files with 615 additions and 52 deletions
@ -0,0 +1,94 @@
@@ -0,0 +1,94 @@
|
||||
/* |
||||
* Copyright 2002-2005 the original author or authors. |
||||
* |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
|
||||
package org.springframework.beans.factory; |
||||
|
||||
import java.util.Map; |
||||
import java.util.Properties; |
||||
import java.util.Set; |
||||
|
||||
/** |
||||
* Bean exposing a map. Used for bean factory tests. |
||||
* |
||||
* @author Rod Johnson |
||||
* @since 05.06.2003 |
||||
*/ |
||||
public class HasMap { |
||||
|
||||
private Map map; |
||||
|
||||
private Set set; |
||||
|
||||
private Properties props; |
||||
|
||||
private Object[] objectArray; |
||||
|
||||
private Class[] classArray; |
||||
|
||||
private Integer[] intArray; |
||||
|
||||
private HasMap() { |
||||
} |
||||
|
||||
public Map getMap() { |
||||
return map; |
||||
} |
||||
|
||||
public void setMap(Map map) { |
||||
this.map = map; |
||||
} |
||||
|
||||
public Set getSet() { |
||||
return set; |
||||
} |
||||
|
||||
public void setSet(Set set) { |
||||
this.set = set; |
||||
} |
||||
|
||||
public Properties getProps() { |
||||
return props; |
||||
} |
||||
|
||||
public void setProps(Properties props) { |
||||
this.props = props; |
||||
} |
||||
|
||||
public Object[] getObjectArray() { |
||||
return objectArray; |
||||
} |
||||
|
||||
public void setObjectArray(Object[] objectArray) { |
||||
this.objectArray = objectArray; |
||||
} |
||||
|
||||
public Class[] getClassArray() { |
||||
return classArray; |
||||
} |
||||
|
||||
public void setClassArray(Class[] classArray) { |
||||
this.classArray = classArray; |
||||
} |
||||
|
||||
public Integer[] getIntegerArray() { |
||||
return intArray; |
||||
} |
||||
|
||||
public void setIntegerArray(Integer[] is) { |
||||
intArray = is; |
||||
} |
||||
|
||||
} |
||||
@ -0,0 +1,39 @@
@@ -0,0 +1,39 @@
|
||||
/* |
||||
* Copyright 2002-2006 the original author or authors. |
||||
* |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
package org.springframework.beans.factory.xml; |
||||
|
||||
import java.util.Map; |
||||
import java.util.Set; |
||||
|
||||
/** |
||||
* @author Chris Beams |
||||
*/ |
||||
public class MapAndSet { |
||||
|
||||
private Object obj; |
||||
|
||||
public MapAndSet(Map map) { |
||||
this.obj = map; |
||||
} |
||||
|
||||
public MapAndSet(Set set) { |
||||
this.obj = set; |
||||
} |
||||
|
||||
public Object getObject() { |
||||
return obj; |
||||
} |
||||
} |
||||
@ -0,0 +1,41 @@
@@ -0,0 +1,41 @@
|
||||
/* |
||||
* Copyright 2002-2006 the original author or authors. |
||||
* |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
|
||||
package org.springframework.beans.factory.xml; |
||||
|
||||
import java.util.Collection; |
||||
|
||||
/** |
||||
* Bean that exposes a simple property that can be set |
||||
* to a mix of references and individual values. |
||||
* |
||||
* @author Rod Johnson |
||||
* @since 27.05.2003 |
||||
*/ |
||||
public class MixedCollectionBean { |
||||
|
||||
private Collection jumble; |
||||
|
||||
|
||||
public void setJumble(Collection jumble) { |
||||
this.jumble = jumble; |
||||
} |
||||
|
||||
public Collection getJumble() { |
||||
return jumble; |
||||
} |
||||
|
||||
} |
||||
@ -0,0 +1,374 @@
@@ -0,0 +1,374 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<beans xmlns="http://www.springframework.org/schema/beans" |
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
||||
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> |
||||
|
||||
<bean id="jenny" class="org.springframework.beans.TestBean"> |
||||
<property name="name"><value>Jenny</value></property> |
||||
<property name="age"><value>30</value></property> |
||||
<property name="spouse"> |
||||
<!-- Could use id and href --> |
||||
<ref local="david"/> |
||||
</property> |
||||
</bean> |
||||
|
||||
<bean id="david" class="org.springframework.beans.TestBean"> |
||||
<description> |
||||
Simple bean, without any collections. |
||||
</description> |
||||
<property name="name"> |
||||
<description>The name of the user</description> |
||||
<value>David</value> |
||||
</property> |
||||
<property name="age"><value>27</value></property> |
||||
</bean> |
||||
|
||||
<bean id="rod" class="org.springframework.beans.TestBean"> |
||||
<property name="name"><value>Rod</value></property> |
||||
<property name="age"><value>32</value></property> |
||||
<property name="friends"> |
||||
<description>List of Rod's friends</description> |
||||
<list> |
||||
<ref local="jenny"/> |
||||
<ref local="david"/> |
||||
</list> |
||||
</property> |
||||
</bean> |
||||
|
||||
<bean id="pJenny" class="org.springframework.beans.TestBean" scope="prototype"> |
||||
<property name="name"><value>Jenny</value></property> |
||||
<property name="age"><value>30</value></property> |
||||
<property name="spouse"> |
||||
<!-- Could use id and href --> |
||||
<ref local="david"/> |
||||
</property> |
||||
</bean> |
||||
|
||||
<bean id="pDavid" class="org.springframework.beans.TestBean" scope="prototype"> |
||||
<property name="name"><value>David</value></property> |
||||
<property name="age"><value>27</value></property> |
||||
</bean> |
||||
|
||||
<bean id="pRod" class="org.springframework.beans.TestBean" scope="prototype"> |
||||
<property name="name"><value>Rod</value></property> |
||||
<property name="age"><value>32</value></property> |
||||
<property name="friends"> |
||||
<list> |
||||
<ref local="pJenny"/> |
||||
<ref local="pDavid"/> |
||||
</list> |
||||
</property> |
||||
</bean> |
||||
|
||||
<!-- |
||||
Try setting a collection property to a single value |
||||
--> |
||||
<bean id="loner" class="org.springframework.beans.TestBean"> |
||||
<property name="name"><value>loner</value></property> |
||||
<property name="age"><value>26</value></property> |
||||
<property name="friends"> |
||||
<list> |
||||
<description>My List</description> |
||||
<ref local="david"/> |
||||
</list> |
||||
</property> |
||||
</bean> |
||||
|
||||
<bean id="jumble" class="org.springframework.beans.factory.xml.MixedCollectionBean"> |
||||
<property name="jumble"> |
||||
<list> |
||||
<ref local="david"/> |
||||
<value>literal</value> |
||||
<ref local="jenny"/> |
||||
<idref local="rod"/> |
||||
</list> |
||||
</property> |
||||
</bean> |
||||
|
||||
<bean id="jumble2" class="org.springframework.beans.factory.xml.MixedCollectionBean" lazy-init="true"> |
||||
<property name="jumble"> |
||||
<list> |
||||
<ref local="david"/> |
||||
<value>literal</value> |
||||
<ref local="jenny"/> |
||||
<idref bean="rod"/> |
||||
<idref bean="rod2"/> |
||||
</list> |
||||
</property> |
||||
</bean> |
||||
|
||||
<bean id="verbose" class="org.springframework.beans.TestBean"> |
||||
<property name="name"><value>verbose</value></property> |
||||
</bean> |
||||
|
||||
<bean id="verbose2" class="org.springframework.beans.TestBean"> |
||||
<property name="name"><idref local="verbose"/></property> |
||||
</bean> |
||||
|
||||
<bean id="verbose3" class="org.springframework.beans.TestBean"> |
||||
<property name="name"><idref bean="verbose"/></property> |
||||
</bean> |
||||
|
||||
<bean id="emptyMap" class="org.springframework.beans.factory.HasMap"> |
||||
<property name="map"> |
||||
<map> |
||||
</map> |
||||
</property> |
||||
</bean> |
||||
|
||||
<bean id="literalMap" class="org.springframework.beans.factory.HasMap"> |
||||
<property name="map"> |
||||
<map> |
||||
<entry key="foo" value="bar"/> |
||||
<entry key="fi" value="fum"/> |
||||
<entry key="fa"><null/></entry> |
||||
</map> |
||||
</property> |
||||
</bean> |
||||
|
||||
<bean id="mixedMap" class="org.springframework.beans.factory.HasMap"> |
||||
<property name="map"> |
||||
<map> |
||||
<entry key-ref="fooKey"> |
||||
<value type="java.lang.Integer">10</value> |
||||
</entry> |
||||
<entry> |
||||
<key> |
||||
<ref bean="jennyKey"/> |
||||
</key> |
||||
<ref local="jenny"/> |
||||
</entry> |
||||
<entry> |
||||
<key> |
||||
<bean class="java.lang.Integer"> |
||||
<constructor-arg value="5"/> |
||||
</bean> |
||||
</key> |
||||
<idref bean="david"/> |
||||
</entry> |
||||
</map> |
||||
</property> |
||||
</bean> |
||||
|
||||
<bean id="fooKey" class="java.lang.String"> |
||||
<constructor-arg value="foo"/> |
||||
</bean> |
||||
|
||||
<bean id="jennyKey" class="java.lang.String"> |
||||
<constructor-arg value="jenny"/> |
||||
</bean> |
||||
|
||||
<bean id="pMixedMap" class="org.springframework.beans.factory.HasMap" scope="prototype"> |
||||
<property name="map"> |
||||
<map> |
||||
<entry key="foo" value="bar"/> |
||||
<entry key="jenny" value-ref="pJenny"/> |
||||
</map> |
||||
</property> |
||||
</bean> |
||||
|
||||
<bean id="mixedMapWithList" class="org.springframework.beans.factory.HasMap"> |
||||
<property name="map"> |
||||
<map> |
||||
<entry> |
||||
<key><null/></key> |
||||
<value>bar</value> |
||||
</entry> |
||||
<entry key="jenny"><ref local="jenny"/></entry> |
||||
<entry key="list"> |
||||
<list> |
||||
<value>zero</value> |
||||
<map> |
||||
<entry key="fo"><value>bar</value></entry> |
||||
<entry key="jen"><ref local="jenny"/></entry> |
||||
</map> |
||||
<list> |
||||
<ref local="jenny"/> |
||||
<value>ba</value> |
||||
</list> |
||||
<null/> |
||||
</list> |
||||
</entry> |
||||
<entry key="map"> |
||||
<map> |
||||
<entry key="foo"><value>bar</value></entry> |
||||
<entry key="jenny"><ref local="jenny"/></entry> |
||||
</map> |
||||
</entry> |
||||
</map> |
||||
</property> |
||||
</bean> |
||||
|
||||
<bean id="emptySet" class="org.springframework.beans.factory.HasMap"> |
||||
<property name="set"> |
||||
<set> |
||||
</set> |
||||
</property> |
||||
</bean> |
||||
|
||||
|
||||
<bean id="set" class="org.springframework.beans.factory.HasMap"> |
||||
<property name="set"> |
||||
<set> |
||||
<value>bar</value> |
||||
<ref local="jenny"/> |
||||
<null/> |
||||
</set> |
||||
</property> |
||||
</bean> |
||||
|
||||
<bean id="emptyProps" class="org.springframework.beans.factory.HasMap"> |
||||
<property name="props"> |
||||
<props> |
||||
</props> |
||||
</property> |
||||
</bean> |
||||
|
||||
|
||||
<bean id="props" class="org.springframework.beans.factory.HasMap"> |
||||
<property name="props"> |
||||
<props> |
||||
<prop key="foo">bar</prop> |
||||
<prop key="2">TWO</prop> |
||||
</props> |
||||
</property> |
||||
</bean> |
||||
|
||||
<bean id="propsViaMap" class="org.springframework.beans.factory.HasMap"> |
||||
<property name="props"> |
||||
<map> |
||||
<entry key="foo" value="bar"/> |
||||
<entry key="2" value="TWO"/> |
||||
</map> |
||||
</property> |
||||
</bean> |
||||
|
||||
<bean id="objectArray" class="org.springframework.beans.factory.HasMap"> |
||||
<property name="objectArray"> |
||||
<list> |
||||
<value>one</value> |
||||
<ref local="jenny"/> |
||||
</list> |
||||
</property> |
||||
</bean> |
||||
|
||||
<bean id="classArray" class="org.springframework.beans.factory.HasMap"> |
||||
<property name="classArray"> |
||||
<list> |
||||
<value>java.lang.String</value> |
||||
<value>java.lang.Exception</value> |
||||
</list> |
||||
</property> |
||||
</bean> |
||||
|
||||
<bean id="integerArray" class="org.springframework.beans.factory.HasMap"> |
||||
<property name="integerArray"> |
||||
<list> |
||||
<value>0</value> |
||||
<value>1</value> |
||||
<value>2</value> |
||||
</list> |
||||
</property> |
||||
</bean> |
||||
|
||||
<bean id="listFactory" class="org.springframework.beans.factory.config.ListFactoryBean"> |
||||
<property name="sourceList"> |
||||
<list> |
||||
<value>bar</value> |
||||
<value>jenny</value> |
||||
</list> |
||||
</property> |
||||
<property name="targetListClass"> |
||||
<value>java.util.LinkedList</value> |
||||
</property> |
||||
</bean> |
||||
|
||||
<bean id="pListFactory" class="org.springframework.beans.factory.config.ListFactoryBean"> |
||||
<property name="sourceList"> |
||||
<list> |
||||
<value>bar</value> |
||||
<value>jenny</value> |
||||
</list> |
||||
</property> |
||||
<property name="targetListClass"> |
||||
<value>java.util.LinkedList</value> |
||||
</property> |
||||
<property name="singleton"> |
||||
<value>true</value> |
||||
</property> |
||||
</bean> |
||||
|
||||
<bean id="setFactory" class="org.springframework.beans.factory.config.SetFactoryBean"> |
||||
<property name="sourceSet"> |
||||
<set> |
||||
<value>bar</value> |
||||
<value>jenny</value> |
||||
</set> |
||||
</property> |
||||
<property name="targetSetClass"> |
||||
<value>java.util.TreeSet</value> |
||||
</property> |
||||
</bean> |
||||
|
||||
<bean id="pSetFactory" class="org.springframework.beans.factory.config.SetFactoryBean"> |
||||
<property name="sourceSet"> |
||||
<set> |
||||
<value>bar</value> |
||||
<value>jenny</value> |
||||
</set> |
||||
</property> |
||||
<property name="targetSetClass"> |
||||
<value>java.util.TreeSet</value> |
||||
</property> |
||||
<property name="singleton"> |
||||
<value>true</value> |
||||
</property> |
||||
</bean> |
||||
|
||||
<bean id="mapFactory" class="org.springframework.beans.factory.config.MapFactoryBean"> |
||||
<property name="sourceMap"> |
||||
<map> |
||||
<entry key="foo"><value>bar</value></entry> |
||||
<entry key="jen"><value>jenny</value></entry> |
||||
</map> |
||||
</property> |
||||
<property name="targetMapClass"> |
||||
<value>java.util.TreeMap</value> |
||||
</property> |
||||
</bean> |
||||
|
||||
<bean id="pMapFactory" class="org.springframework.beans.factory.config.MapFactoryBean"> |
||||
<property name="sourceMap"> |
||||
<map> |
||||
<entry key="foo"><value>bar</value></entry> |
||||
<entry key="jen"><value>jenny</value></entry> |
||||
</map> |
||||
</property> |
||||
<property name="targetMapClass"> |
||||
<value>java.util.TreeMap</value> |
||||
</property> |
||||
<property name="singleton"> |
||||
<value>true</value> |
||||
</property> |
||||
</bean> |
||||
|
||||
<bean id="setAndMap" class="org.springframework.beans.factory.xml.MapAndSet"> |
||||
<constructor-arg> |
||||
<map> |
||||
<description>My Map</description> |
||||
<entry key="key1" value="val1"/> |
||||
<entry key="key2" value="val2"/> |
||||
<entry key="key3" value="val3"/> |
||||
</map> |
||||
</constructor-arg> |
||||
</bean> |
||||
|
||||
<bean id="enumSetFactory" class="org.springframework.beans.factory.config.SetFactoryBean"> |
||||
<property name="sourceSet"> |
||||
<set> |
||||
<description>My Set</description> |
||||
</set> |
||||
</property> |
||||
</bean> |
||||
|
||||
</beans> |
||||
@ -0,0 +1,23 @@
@@ -0,0 +1,23 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN" "http://www.springframework.org/dtd/spring-beans-2.0.dtd"> |
||||
|
||||
<beans> |
||||
|
||||
<bean id="inheritedTestBean" class="org.springframework.beans.TestBean" abstract="true"> |
||||
<property name="name"><value>parent</value></property> |
||||
<property name="age"><value>1</value></property> |
||||
</bean> |
||||
|
||||
<bean id="inheritedTestBeanWithoutClass" abstract="true"> |
||||
<property name="name"><value>parent</value></property> |
||||
<property name="age"><value>1</value></property> |
||||
</bean> |
||||
|
||||
<bean id="inheritedTestBeanPrototype" class="org.springframework.beans.TestBean" scope="prototype"> |
||||
<property name="name"><value>parent</value></property> |
||||
<property name="age"><value>2</value></property> |
||||
</bean> |
||||
|
||||
<bean id="inheritedTestBeanSingleton" class="org.springframework.beans.TestBean"/> |
||||
|
||||
</beans> |
||||
Loading…
Reference in new issue