Remove trailing whitespace in source files
find . -type f -name "*.java" -or -name "*.aj" | \
xargs perl -p -i -e "s/[ \t]*$//g" {} \;
Issue: SPR-10127
This commit is contained in:
committed by
Chris Beams
parent
44a474a014
commit
1762157ad1
@@ -559,7 +559,7 @@ public class BeanWrapperImpl extends AbstractPropertyAccessor implements BeanWra
|
||||
propertyValue = setDefaultValue(tokens);
|
||||
}
|
||||
else {
|
||||
throw new NullValueInNestedPathException(getRootClass(), this.nestedPath + canonicalName);
|
||||
throw new NullValueInNestedPathException(getRootClass(), this.nestedPath + canonicalName);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -723,7 +723,7 @@ public class BeanWrapperImpl extends AbstractPropertyAccessor implements BeanWra
|
||||
readMethod.setAccessible(true);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Object value;
|
||||
if (System.getSecurityManager() != null) {
|
||||
try {
|
||||
@@ -740,8 +740,8 @@ public class BeanWrapperImpl extends AbstractPropertyAccessor implements BeanWra
|
||||
else {
|
||||
value = readMethod.invoke(object, (Object[]) null);
|
||||
}
|
||||
|
||||
if (tokens.keys != null) {
|
||||
|
||||
if (tokens.keys != null) {
|
||||
if (value == null) {
|
||||
if (this.autoGrowNestedPaths) {
|
||||
value = setDefaultValue(tokens.actualName);
|
||||
@@ -749,9 +749,9 @@ public class BeanWrapperImpl extends AbstractPropertyAccessor implements BeanWra
|
||||
else {
|
||||
throw new NullValueInNestedPathException(getRootClass(), this.nestedPath + propertyName,
|
||||
"Cannot access indexed value of property referenced in indexed " +
|
||||
"property path '" + propertyName + "': returned null");
|
||||
"property path '" + propertyName + "': returned null");
|
||||
}
|
||||
}
|
||||
}
|
||||
String indexedPropertyName = tokens.actualName;
|
||||
// apply indexes and map keys
|
||||
for (int i = 0; i < tokens.keys.length; i++) {
|
||||
@@ -759,7 +759,7 @@ public class BeanWrapperImpl extends AbstractPropertyAccessor implements BeanWra
|
||||
if (value == null) {
|
||||
throw new NullValueInNestedPathException(getRootClass(), this.nestedPath + propertyName,
|
||||
"Cannot access indexed value of property referenced in indexed " +
|
||||
"property path '" + propertyName + "': returned null");
|
||||
"property path '" + propertyName + "': returned null");
|
||||
}
|
||||
else if (value.getClass().isArray()) {
|
||||
int index = Integer.parseInt(key);
|
||||
@@ -767,9 +767,9 @@ public class BeanWrapperImpl extends AbstractPropertyAccessor implements BeanWra
|
||||
value = Array.get(value, index);
|
||||
}
|
||||
else if (value instanceof List) {
|
||||
int index = Integer.parseInt(key);
|
||||
int index = Integer.parseInt(key);
|
||||
List list = (List) value;
|
||||
growCollectionIfNecessary(list, index, indexedPropertyName, pd, i + 1);
|
||||
growCollectionIfNecessary(list, index, indexedPropertyName, pd, i + 1);
|
||||
value = list.get(index);
|
||||
}
|
||||
else if (value instanceof Set) {
|
||||
@@ -804,7 +804,7 @@ public class BeanWrapperImpl extends AbstractPropertyAccessor implements BeanWra
|
||||
"Property referenced in indexed property path '" + propertyName +
|
||||
"' is neither an array nor a List nor a Set nor a Map; returned value was [" + value + "]");
|
||||
}
|
||||
indexedPropertyName += PROPERTY_KEY_PREFIX + key + PROPERTY_KEY_SUFFIX;
|
||||
indexedPropertyName += PROPERTY_KEY_PREFIX + key + PROPERTY_KEY_SUFFIX;
|
||||
}
|
||||
}
|
||||
return value;
|
||||
|
||||
@@ -95,7 +95,7 @@ class GenericTypeAwarePropertyDescriptor extends PropertyDescriptor {
|
||||
public Class<?> getBeanClass() {
|
||||
return this.beanClass;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public Method getReadMethod() {
|
||||
return this.readMethod;
|
||||
|
||||
@@ -30,7 +30,7 @@ public class MethodInvocationException extends PropertyAccessException {
|
||||
* Error code that a method invocation error will be registered with.
|
||||
*/
|
||||
public static final String ERROR_CODE = "methodInvocation";
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Create a new MethodInvocationException.
|
||||
|
||||
@@ -30,7 +30,7 @@ import org.springframework.core.ErrorCoded;
|
||||
public abstract class PropertyAccessException extends BeansException implements ErrorCoded {
|
||||
|
||||
private transient PropertyChangeEvent propertyChangeEvent;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Create a new PropertyAccessException.
|
||||
|
||||
@@ -31,7 +31,7 @@ package org.springframework.beans;
|
||||
* @see java.beans.PropertyEditor
|
||||
*/
|
||||
public interface PropertyEditorRegistrar {
|
||||
|
||||
|
||||
/**
|
||||
* Register custom {@link java.beans.PropertyEditor PropertyEditors} with
|
||||
* the given <code>PropertyEditorRegistry</code>.
|
||||
|
||||
@@ -26,12 +26,12 @@ package org.springframework.beans;
|
||||
* @see PropertyValue
|
||||
*/
|
||||
public interface PropertyValues {
|
||||
|
||||
/**
|
||||
|
||||
/**
|
||||
* Return an array of the PropertyValue objects held in this object.
|
||||
*/
|
||||
PropertyValue[] getPropertyValues();
|
||||
|
||||
PropertyValue[] getPropertyValues();
|
||||
|
||||
/**
|
||||
* Return the property value with the given name, if any.
|
||||
* @param propertyName the name to search for
|
||||
|
||||
@@ -115,7 +115,7 @@ public abstract class BeanFactoryUtils {
|
||||
public static int countBeansIncludingAncestors(ListableBeanFactory lbf) {
|
||||
return beanNamesIncludingAncestors(lbf).length;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Return all bean names in the factory, including ancestor factories.
|
||||
* @param lbf the bean factory
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
/*
|
||||
* 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.
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
/*
|
||||
* 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.
|
||||
|
||||
@@ -30,7 +30,7 @@ package org.springframework.beans.factory;
|
||||
* @see org.springframework.beans.factory.config.ConfigurableBeanFactory#setParentBeanFactory
|
||||
*/
|
||||
public interface HierarchicalBeanFactory extends BeanFactory {
|
||||
|
||||
|
||||
/**
|
||||
* Return the parent bean factory, or <code>null</code> if there is none.
|
||||
*/
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
/*
|
||||
* 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.
|
||||
@@ -20,7 +20,7 @@ package org.springframework.beans.factory;
|
||||
* Interface to be implemented by beans that need to react once all their
|
||||
* properties have been set by a BeanFactory: for example, to perform custom
|
||||
* initialization, or merely to check that all mandatory properties have been set.
|
||||
*
|
||||
*
|
||||
* <p>An alternative to implementing InitializingBean is specifying a custom
|
||||
* init-method, for example in an XML bean definition.
|
||||
* For a list of all bean lifecycle methods, see the BeanFactory javadocs.
|
||||
@@ -33,7 +33,7 @@ package org.springframework.beans.factory;
|
||||
* @see org.springframework.context.ApplicationContextAware
|
||||
*/
|
||||
public interface InitializingBean {
|
||||
|
||||
|
||||
/**
|
||||
* Invoked by a BeanFactory after it has set all bean properties supplied
|
||||
* (and satisfied BeanFactoryAware and ApplicationContextAware).
|
||||
|
||||
@@ -84,7 +84,7 @@ public interface ListableBeanFactory extends BeanFactory {
|
||||
* or an empty array if none defined
|
||||
*/
|
||||
String[] getBeanDefinitionNames();
|
||||
|
||||
|
||||
/**
|
||||
* Return the names of beans matching the given type (including subclasses),
|
||||
* judging from either bean definitions or the value of <code>getObjectType</code>
|
||||
|
||||
@@ -73,7 +73,7 @@ public class NoSuchBeanDefinitionException extends BeansException {
|
||||
super("No unique bean of type [" + type.getName() + "] is defined: " + message);
|
||||
this.beanType = type;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Create a new {@code NoSuchBeanDefinitionException}.
|
||||
* @param type required type of the missing bean
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
/*
|
||||
* 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.
|
||||
|
||||
@@ -40,7 +40,7 @@ import org.springframework.core.io.support.ResourcePatternUtils;
|
||||
* which accesses shared Spring {@link BeanFactory} instances.</p>
|
||||
*
|
||||
* <p>Please see the warning in BeanFactoryLocator's javadoc about appropriate usage
|
||||
* of singleton style BeanFactoryLocator implementations. It is the opinion of the
|
||||
* of singleton style BeanFactoryLocator implementations. It is the opinion of the
|
||||
* Spring team that the use of this class and similar classes is unnecessary except
|
||||
* (sometimes) for a small amount of glue code. Excessive usage will lead to code
|
||||
* that is more tightly coupled, and harder to modify or test.</p>
|
||||
@@ -50,11 +50,11 @@ import org.springframework.core.io.support.ResourcePatternUtils;
|
||||
* searched for is 'classpath*:beanRefFactory.xml', with the Spring-standard
|
||||
* 'classpath*:' prefix ensuring that if the classpath contains multiple copies
|
||||
* of this file (perhaps one in each component jar) they will be combined. To
|
||||
* override the default resource name, instead of using the no-arg
|
||||
* override the default resource name, instead of using the no-arg
|
||||
* {@link #getInstance()} method, use the {@link #getInstance(String selector)}
|
||||
* variant, which will treat the 'selector' argument as the resource name to
|
||||
* search for.</p>
|
||||
*
|
||||
*
|
||||
* <p>The purpose of this 'outer' BeanFactory is to create and hold a copy of one
|
||||
* or more 'inner' BeanFactory or ApplicationContext instances, and allow those
|
||||
* to be obtained either directly or via an alias. As such, this class provides
|
||||
@@ -80,10 +80,10 @@ import org.springframework.core.io.support.ResourcePatternUtils;
|
||||
* or created as three hierarchical ApplicationContexts, by one piece of code
|
||||
* somewhere at application startup (perhaps a Servlet filter), from which all other
|
||||
* code in the application would flow, obtained as beans from the context(s). However
|
||||
* when third party code enters into the picture, things can get problematic. If the
|
||||
* when third party code enters into the picture, things can get problematic. If the
|
||||
* third party code needs to create user classes, which should normally be obtained
|
||||
* from a Spring BeanFactory/ApplicationContext, but can handle only newInstance()
|
||||
* style object creation, then some extra work is required to actually access and
|
||||
* style object creation, then some extra work is required to actually access and
|
||||
* use object from a BeanFactory/ApplicationContext. One solutions is to make the
|
||||
* class created by the third party code be just a stub or proxy, which gets the
|
||||
* real object from a BeanFactory/ApplicationContext, and delegates to it. However,
|
||||
@@ -101,7 +101,7 @@ import org.springframework.core.io.support.ResourcePatternUtils;
|
||||
*
|
||||
* <p>Another use of SingletonBeanFactoryLocator, is to demand-load/use one or more
|
||||
* BeanFactories/ApplicationContexts. Because the definition can contain one of more
|
||||
* BeanFactories/ApplicationContexts, which can be independent or in a hierarchy, if
|
||||
* BeanFactories/ApplicationContexts, which can be independent or in a hierarchy, if
|
||||
* they are set to lazy-initialize, they will only be created when actually requested
|
||||
* for use.
|
||||
*
|
||||
@@ -111,9 +111,9 @@ import org.springframework.core.io.support.ResourcePatternUtils;
|
||||
*
|
||||
* <pre class="code"><?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="com.mycompany.myapp"
|
||||
* class="org.springframework.context.support.ClassPathXmlApplicationContext">
|
||||
* <constructor-arg>
|
||||
@@ -124,7 +124,7 @@ import org.springframework.core.io.support.ResourcePatternUtils;
|
||||
* </list>
|
||||
* </constructor-arg>
|
||||
* </bean>
|
||||
*
|
||||
*
|
||||
* </beans>
|
||||
* </pre>
|
||||
*
|
||||
@@ -133,7 +133,7 @@ import org.springframework.core.io.support.ResourcePatternUtils;
|
||||
* <pre class="code">
|
||||
* BeanFactoryLocator bfl = SingletonBeanFactoryLocator.getInstance();
|
||||
* BeanFactoryReference bf = bfl.useBeanFactory("com.mycompany.myapp");
|
||||
* // now use some bean from factory
|
||||
* // now use some bean from factory
|
||||
* MyClass zed = bf.getFactory().getBean("mybean");
|
||||
* </pre>
|
||||
*
|
||||
@@ -141,16 +141,16 @@ import org.springframework.core.io.support.ResourcePatternUtils;
|
||||
*
|
||||
* <pre class="code"><?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="com.mycompany.myapp.util" lazy-init="true"
|
||||
* class="org.springframework.context.support.ClassPathXmlApplicationContext">
|
||||
* <constructor-arg>
|
||||
* <value>com/mycompany/myapp/util/applicationContext.xml</value>
|
||||
* </constructor-arg>
|
||||
* </bean>
|
||||
*
|
||||
*
|
||||
* <!-- child of above -->
|
||||
* <bean id="com.mycompany.myapp.dataaccess" lazy-init="true"
|
||||
* class="org.springframework.context.support.ClassPathXmlApplicationContext">
|
||||
@@ -161,7 +161,7 @@ import org.springframework.core.io.support.ResourcePatternUtils;
|
||||
* <ref bean="com.mycompany.myapp.util"/>
|
||||
* </constructor-arg>
|
||||
* </bean>
|
||||
*
|
||||
*
|
||||
* <!-- child of above -->
|
||||
* <bean id="com.mycompany.myapp.services" lazy-init="true"
|
||||
* class="org.springframework.context.support.ClassPathXmlApplicationContext">
|
||||
@@ -172,7 +172,7 @@ import org.springframework.core.io.support.ResourcePatternUtils;
|
||||
* <ref bean="com.mycompany.myapp.dataaccess"/>
|
||||
* </constructor-arg>
|
||||
* </bean>
|
||||
*
|
||||
*
|
||||
* <!-- define an alias -->
|
||||
* <bean id="com.mycompany.myapp.mypackage"
|
||||
* class="java.lang.String">
|
||||
@@ -180,7 +180,7 @@ import org.springframework.core.io.support.ResourcePatternUtils;
|
||||
* <value>com.mycompany.myapp.services</value>
|
||||
* </constructor-arg>
|
||||
* </bean>
|
||||
*
|
||||
*
|
||||
* </beans>
|
||||
* </pre>
|
||||
*
|
||||
@@ -200,7 +200,7 @@ import org.springframework.core.io.support.ResourcePatternUtils;
|
||||
*
|
||||
* <pre class="code"><?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="com.mycompany.myapp.util" lazy-init="true"
|
||||
* class="org.springframework.context.support.ClassPathXmlApplicationContext">
|
||||
@@ -210,12 +210,12 @@ import org.springframework.core.io.support.ResourcePatternUtils;
|
||||
* </bean>
|
||||
* </beans>
|
||||
* </pre>
|
||||
*
|
||||
*
|
||||
* <code>beanRefFactory.xml</code> file inside jar for data-access module:<br>
|
||||
*
|
||||
* <pre class="code"><?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>
|
||||
* <!-- child of util -->
|
||||
* <bean id="com.mycompany.myapp.dataaccess" lazy-init="true"
|
||||
@@ -229,12 +229,12 @@ import org.springframework.core.io.support.ResourcePatternUtils;
|
||||
* </bean>
|
||||
* </beans>
|
||||
* </pre>
|
||||
*
|
||||
*
|
||||
* <code>beanRefFactory.xml</code> file inside jar for services module:
|
||||
*
|
||||
* <pre class="code"><?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>
|
||||
* <!-- child of data-access -->
|
||||
* <bean id="com.mycompany.myapp.services" lazy-init="true"
|
||||
@@ -248,20 +248,20 @@ import org.springframework.core.io.support.ResourcePatternUtils;
|
||||
* </bean>
|
||||
* </beans>
|
||||
* </pre>
|
||||
*
|
||||
*
|
||||
* <code>beanRefFactory.xml</code> file inside jar for mypackage module. This doesn't
|
||||
* create any of its own contexts, but allows the other ones to be referred to be
|
||||
* a name known to this module:
|
||||
*
|
||||
* <pre class="code"><?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>
|
||||
* <!-- define an alias for "com.mycompany.myapp.services" -->
|
||||
* <alias name="com.mycompany.myapp.services" alias="com.mycompany.myapp.mypackage"/>
|
||||
* </beans>
|
||||
* </pre>
|
||||
*
|
||||
*
|
||||
* @author Colin Sampaleanu
|
||||
* @author Juergen Hoeller
|
||||
* @see org.springframework.context.access.ContextSingletonBeanFactoryLocator
|
||||
@@ -362,7 +362,7 @@ public class SingletonBeanFactoryLocator implements BeanFactoryLocator {
|
||||
logger.trace("Factory group with resource name [" + this.resourceLocation +
|
||||
"] requested. Creating new instance.");
|
||||
}
|
||||
|
||||
|
||||
// Create the BeanFactory but don't initialize it.
|
||||
BeanFactory groupContext = createDefinition(this.resourceLocation, factoryKey);
|
||||
|
||||
@@ -446,7 +446,7 @@ public class SingletonBeanFactoryLocator implements BeanFactoryLocator {
|
||||
|
||||
return factory;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Instantiate singletons and do any other normal initialization of the factory.
|
||||
* Subclasses that override {@link #createDefinition createDefinition()} should
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
/**
|
||||
*
|
||||
* Helper infrastructure to locate and access bean factories.
|
||||
*
|
||||
*
|
||||
* <p><b>Note: This package is only relevant for special sharing of bean
|
||||
* factories, for example behind EJB facades. It is <i>not</i> used in a
|
||||
* typical web application or standalone application.</b>
|
||||
|
||||
@@ -70,10 +70,10 @@ import org.springframework.util.ReflectionUtils;
|
||||
* if available, as a direct alternative to Spring's own <code>@Autowired</code>.
|
||||
*
|
||||
* <p>Only one constructor (at max) of any given bean class may carry this
|
||||
* annotation with the 'required' parameter set to <code>true</code>,
|
||||
* indicating <i>the</i> constructor to autowire when used as a Spring bean.
|
||||
* If multiple <i>non-required</i> constructors carry the annotation, they
|
||||
* will be considered as candidates for autowiring. The constructor with
|
||||
* annotation with the 'required' parameter set to <code>true</code>,
|
||||
* indicating <i>the</i> constructor to autowire when used as a Spring bean.
|
||||
* If multiple <i>non-required</i> constructors carry the annotation, they
|
||||
* will be considered as candidates for autowiring. The constructor with
|
||||
* the greatest number of dependencies that can be satisfied by matching
|
||||
* beans in the Spring container will be chosen. If none of the candidates
|
||||
* can be satisfied, then a default constructor (if present) will be used.
|
||||
@@ -109,9 +109,9 @@ public class AutowiredAnnotationBeanPostProcessor extends InstantiationAwareBean
|
||||
|
||||
private final Set<Class<? extends Annotation>> autowiredAnnotationTypes =
|
||||
new LinkedHashSet<Class<? extends Annotation>>();
|
||||
|
||||
|
||||
private String requiredParameterName = "required";
|
||||
|
||||
|
||||
private boolean requiredParameterValue = true;
|
||||
|
||||
private int order = Ordered.LOWEST_PRECEDENCE - 2;
|
||||
@@ -185,9 +185,9 @@ public class AutowiredAnnotationBeanPostProcessor extends InstantiationAwareBean
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the boolean value that marks a dependency as required
|
||||
* <p>For example if using 'required=true' (the default),
|
||||
* this value should be <code>true</code>; but if using
|
||||
* Set the boolean value that marks a dependency as required
|
||||
* <p>For example if using 'required=true' (the default),
|
||||
* this value should be <code>true</code>; but if using
|
||||
* 'optional=false', this value should be <code>false</code>.
|
||||
* @see #setRequiredParameterName(String)
|
||||
*/
|
||||
|
||||
@@ -25,7 +25,7 @@ import java.lang.annotation.Target;
|
||||
|
||||
/**
|
||||
* Marks a class as being eligible for Spring-driven configuration.
|
||||
*
|
||||
*
|
||||
* <p>Typically used with the AspectJ <code>AnnotationBeanConfigurerAspect</code>.
|
||||
*
|
||||
* @author Rod Johnson
|
||||
@@ -54,7 +54,7 @@ public @interface Configurable {
|
||||
* Is dependency checking to be performed for configured objects?
|
||||
*/
|
||||
boolean dependencyCheck() default false;
|
||||
|
||||
|
||||
/**
|
||||
* Are dependencies to be injected prior to the construction of an object?
|
||||
*/
|
||||
|
||||
@@ -24,7 +24,7 @@ import java.lang.annotation.Target;
|
||||
/**
|
||||
* Marks a method (typically a JavaBean setter method) as being 'required': that is,
|
||||
* the setter method must be configured to be dependency-injected with a value.
|
||||
*
|
||||
*
|
||||
* <p>Please do consult the javadoc for the {@link RequiredAnnotationBeanPostProcessor}
|
||||
* class (which, by default, checks for the presence of this annotation).
|
||||
*
|
||||
|
||||
@@ -45,7 +45,7 @@ import org.springframework.util.ReflectionUtils;
|
||||
* this class will create the object that it creates exactly once
|
||||
* on initialization and subsequently return said singleton instance
|
||||
* on all calls to the {@link #getObject()} method.
|
||||
*
|
||||
*
|
||||
* <p>Else, this class will create a new instance every time the
|
||||
* {@link #getObject()} method is invoked. Subclasses are responsible
|
||||
* for implementing the abstract {@link #createInstance()} template
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
/*
|
||||
* 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.
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
/*
|
||||
* Copyright 2002-2008 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.
|
||||
|
||||
@@ -35,7 +35,7 @@ import org.springframework.util.ClassUtils;
|
||||
/**
|
||||
* {@link BeanFactoryPostProcessor} implementation that allows for convenient
|
||||
* registration of custom {@link PropertyEditor property editors}.
|
||||
*
|
||||
*
|
||||
* <p>
|
||||
* In case you want to register {@link PropertyEditor} instances, the
|
||||
* recommended usage as of Spring 2.0 is to use custom
|
||||
@@ -43,7 +43,7 @@ import org.springframework.util.ClassUtils;
|
||||
* desired editor instances on a given
|
||||
* {@link org.springframework.beans.PropertyEditorRegistry registry}. Each
|
||||
* PropertyEditorRegistrar can register any number of custom editors.
|
||||
*
|
||||
*
|
||||
* <pre class="code">
|
||||
* <bean id="customEditorConfigurer" class="org.springframework.beans.factory.config.CustomEditorConfigurer">
|
||||
* <property name="propertyEditorRegistrars">
|
||||
@@ -54,12 +54,12 @@ import org.springframework.util.ClassUtils;
|
||||
* </property>
|
||||
* </bean>
|
||||
* </pre>
|
||||
*
|
||||
*
|
||||
* <p>
|
||||
* It's perfectly fine to register {@link PropertyEditor} <em>classes</em> via
|
||||
* the {@code customEditors} property. Spring will create fresh instances of
|
||||
* them for each editing attempt then:
|
||||
*
|
||||
*
|
||||
* <pre class="code">
|
||||
* <bean id="customEditorConfigurer" class="org.springframework.beans.factory.config.CustomEditorConfigurer">
|
||||
* <property name="customEditors">
|
||||
@@ -70,7 +70,7 @@ import org.springframework.util.ClassUtils;
|
||||
* </property>
|
||||
* </bean>
|
||||
* </pre>
|
||||
*
|
||||
*
|
||||
* <p>
|
||||
* Note, that you shouldn't register {@link PropertyEditor} bean instances via
|
||||
* the {@code customEditors} property as {@link PropertyEditor}s are stateful
|
||||
@@ -78,7 +78,7 @@ import org.springframework.util.ClassUtils;
|
||||
* attempt. In case you need control over the instantiation process of
|
||||
* {@link PropertyEditor}s, use a {@link PropertyEditorRegistrar} to register
|
||||
* them.
|
||||
*
|
||||
*
|
||||
* <p>
|
||||
* Also supports "java.lang.String[]"-style array class names and primitive
|
||||
* class names (e.g. "boolean"). Delegates to {@link ClassUtils} for actual
|
||||
|
||||
@@ -30,7 +30,7 @@ import org.springframework.util.StringUtils;
|
||||
|
||||
/**
|
||||
* {@link FactoryBean} which retrieves a static or non-static field value.
|
||||
*
|
||||
*
|
||||
* <p>Typically used for retrieving public static final constants. Usage example:
|
||||
*
|
||||
* <pre class="code">// standard definition for exposing a static field, specifying the "staticField" property
|
||||
@@ -42,10 +42,10 @@ import org.springframework.util.StringUtils;
|
||||
* <bean id="java.sql.Connection.TRANSACTION_SERIALIZABLE"
|
||||
* class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean"/></pre>
|
||||
* </pre>
|
||||
*
|
||||
*
|
||||
* <p>If you are using Spring 2.0, you can also use the following style of configuration for
|
||||
* public static fields.
|
||||
*
|
||||
*
|
||||
* <pre class="code"><util:constant static-field="java.sql.Connection.TRANSACTION_SERIALIZABLE"/></pre>
|
||||
*
|
||||
* @author Juergen Hoeller
|
||||
|
||||
@@ -30,7 +30,7 @@ import org.springframework.util.ClassUtils;
|
||||
|
||||
/**
|
||||
* {@link FactoryBean} which returns a value which is the result of a static or instance
|
||||
* method invocation. For most use cases it is better to just use the container's
|
||||
* method invocation. For most use cases it is better to just use the container's
|
||||
* built-in factory method support for the same purpose, since that is smarter at
|
||||
* converting arguments. This factory bean is still useful though when you need to
|
||||
* call a method which doesn't return any value (for example, a static class method
|
||||
@@ -55,7 +55,7 @@ import org.springframework.util.ClassUtils;
|
||||
*
|
||||
* <p>This class depends on {@link #afterPropertiesSet()} being called once
|
||||
* all properties have been set, as per the InitializingBean contract.
|
||||
*
|
||||
*
|
||||
* <p>An example (in an XML based bean factory definition) of a bean definition
|
||||
* which uses this class to call a static factory method:
|
||||
*
|
||||
@@ -82,7 +82,7 @@ import org.springframework.util.ClassUtils;
|
||||
* </list>
|
||||
* </property>
|
||||
* </bean></pre>
|
||||
*
|
||||
*
|
||||
* @author Colin Sampaleanu
|
||||
* @author Juergen Hoeller
|
||||
* @since 21.11.2003
|
||||
|
||||
@@ -31,7 +31,7 @@ import org.springframework.util.StringUtils;
|
||||
|
||||
/**
|
||||
* {@link FactoryBean} that evaluates a property path on a given target object.
|
||||
*
|
||||
*
|
||||
* <p>The target object can be specified directly or via a bean name.
|
||||
*
|
||||
* <p>Usage examples:
|
||||
@@ -64,12 +64,12 @@ import org.springframework.util.StringUtils;
|
||||
*
|
||||
* <!-- will result in 10, which is the value of property 'age' of bean 'tb' -->
|
||||
* <bean id="tb.age" class="org.springframework.beans.factory.config.PropertyPathFactoryBean"/></pre>
|
||||
*
|
||||
*
|
||||
* <p>If you are using Spring 2.0 and XML Schema support in your configuration file(s),
|
||||
* you can also use the following style of configuration for property path access.
|
||||
* (See also the appendix entitled 'XML Schema-based configuration' in the Spring
|
||||
* reference manual for more examples.)
|
||||
*
|
||||
*
|
||||
* <pre class="code"> <!-- will result in 10, which is the value of property 'age' of bean 'tb' -->
|
||||
* <util:property-path id="name" path="testBean.age"/></pre>
|
||||
*
|
||||
|
||||
@@ -18,7 +18,7 @@ package org.springframework.beans.factory.config;
|
||||
|
||||
import org.springframework.util.Assert;
|
||||
|
||||
/**
|
||||
/**
|
||||
* Immutable placeholder class used for a property value object when it's a
|
||||
* reference to another bean name in the factory, to be resolved at runtime.
|
||||
*
|
||||
@@ -29,7 +29,7 @@ import org.springframework.util.Assert;
|
||||
* @see org.springframework.beans.factory.BeanFactory#getBean
|
||||
*/
|
||||
public class RuntimeBeanNameReference implements BeanReference {
|
||||
|
||||
|
||||
private final String beanName;
|
||||
|
||||
private Object source;
|
||||
|
||||
@@ -18,7 +18,7 @@ package org.springframework.beans.factory.config;
|
||||
|
||||
import org.springframework.util.Assert;
|
||||
|
||||
/**
|
||||
/**
|
||||
* Immutable placeholder class used for a property value object when it's
|
||||
* a reference to another bean in the factory, to be resolved at runtime.
|
||||
*
|
||||
@@ -28,7 +28,7 @@ import org.springframework.util.Assert;
|
||||
* @see org.springframework.beans.factory.BeanFactory#getBean
|
||||
*/
|
||||
public class RuntimeBeanReference implements BeanReference {
|
||||
|
||||
|
||||
private final String beanName;
|
||||
|
||||
private final boolean toParent;
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
* Provides an alternative to the Singleton and Prototype design
|
||||
* patterns, including a consistent approach to configuration management.
|
||||
* Builds on the org.springframework.beans package.
|
||||
*
|
||||
*
|
||||
* <p>This package and related packages are discussed in Chapter 11 of
|
||||
* <a href="http://www.amazon.com/exec/obidos/tg/detail/-/0764543857/">Expert One-On-One J2EE Design and Development</a>
|
||||
* by Rod Johnson (Wrox, 2002).
|
||||
|
||||
@@ -22,7 +22,7 @@ import org.apache.commons.logging.LogFactory;
|
||||
/**
|
||||
* Simple {@link ProblemReporter} implementation that exhibits fail-fast
|
||||
* behavior when errors are encountered.
|
||||
*
|
||||
*
|
||||
* <p>The first error encountered results in a {@link BeanDefinitionParsingException}
|
||||
* being thrown.
|
||||
*
|
||||
|
||||
@@ -33,7 +33,7 @@ public class PropertyEntry implements ParseState.Entry {
|
||||
* Creates a new instance of the {@link PropertyEntry} class.
|
||||
* @param name the name of the JavaBean property represented by this instance
|
||||
* @throws IllegalArgumentException if the supplied <code>name</code> is <code>null</code>
|
||||
* or consists wholly of whitespace
|
||||
* or consists wholly of whitespace
|
||||
*/
|
||||
public PropertyEntry(String name) {
|
||||
if (!StringUtils.hasText(name)) {
|
||||
|
||||
@@ -20,7 +20,7 @@ import org.springframework.util.StringUtils;
|
||||
|
||||
/**
|
||||
* {@link ParseState} entry representing an autowire candidate qualifier.
|
||||
*
|
||||
*
|
||||
* @author Mark Fisher
|
||||
* @since 2.5
|
||||
*/
|
||||
|
||||
@@ -346,10 +346,10 @@ public abstract class AbstractAutowireCapableBeanFactory extends AbstractBeanFac
|
||||
else {
|
||||
Object bean;
|
||||
final BeanFactory parent = this;
|
||||
|
||||
|
||||
if (System.getSecurityManager() != null) {
|
||||
bean = AccessController.doPrivileged(new PrivilegedAction<Object>() {
|
||||
|
||||
|
||||
public Object run() {
|
||||
return getInstantiationStrategy().instantiate(bd, null, parent);
|
||||
}
|
||||
@@ -358,7 +358,7 @@ public abstract class AbstractAutowireCapableBeanFactory extends AbstractBeanFac
|
||||
else {
|
||||
bean = getInstantiationStrategy().instantiate(bd, null, parent);
|
||||
}
|
||||
|
||||
|
||||
populateBean(beanClass.getName(), bd, new BeanWrapperImpl(bean));
|
||||
return bean;
|
||||
}
|
||||
@@ -1346,7 +1346,7 @@ public abstract class AbstractAutowireCapableBeanFactory extends AbstractBeanFac
|
||||
|
||||
MutablePropertyValues mpvs = null;
|
||||
List<PropertyValue> original;
|
||||
|
||||
|
||||
if (System.getSecurityManager()!= null) {
|
||||
if (bw instanceof BeanWrapperImpl) {
|
||||
((BeanWrapperImpl) bw).setSecurityContext(getAccessControlContext());
|
||||
@@ -1473,7 +1473,7 @@ public abstract class AbstractAutowireCapableBeanFactory extends AbstractBeanFac
|
||||
else {
|
||||
invokeAwareMethods(beanName, bean);
|
||||
}
|
||||
|
||||
|
||||
Object wrappedBean = bean;
|
||||
if (mbd == null || !mbd.isSynthetic()) {
|
||||
wrappedBean = applyBeanPostProcessorsBeforeInitialization(wrappedBean, beanName);
|
||||
@@ -1540,7 +1540,7 @@ public abstract class AbstractAutowireCapableBeanFactory extends AbstractBeanFac
|
||||
catch (PrivilegedActionException pae) {
|
||||
throw pae.getException();
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
((InitializingBean) bean).afterPropertiesSet();
|
||||
}
|
||||
@@ -1585,7 +1585,7 @@ public abstract class AbstractAutowireCapableBeanFactory extends AbstractBeanFac
|
||||
if (logger.isDebugEnabled()) {
|
||||
logger.debug("Invoking init method '" + initMethodName + "' on bean with name '" + beanName + "'");
|
||||
}
|
||||
|
||||
|
||||
if (System.getSecurityManager() != null) {
|
||||
AccessController.doPrivileged(new PrivilegedExceptionAction<Object>() {
|
||||
public Object run() throws Exception {
|
||||
@@ -1610,7 +1610,7 @@ public abstract class AbstractAutowireCapableBeanFactory extends AbstractBeanFac
|
||||
try {
|
||||
ReflectionUtils.makeAccessible(initMethod);
|
||||
initMethod.invoke(bean);
|
||||
}
|
||||
}
|
||||
catch (InvocationTargetException ex) {
|
||||
throw ex.getTargetException();
|
||||
}
|
||||
|
||||
@@ -20,7 +20,7 @@ import org.springframework.util.StringUtils;
|
||||
|
||||
/**
|
||||
* A simple holder for <code>BeanDefinition</code> property defaults.
|
||||
*
|
||||
*
|
||||
* @author Mark Fisher
|
||||
* @since 2.5
|
||||
*/
|
||||
|
||||
@@ -53,7 +53,7 @@ public class CglibSubclassingInstantiationStrategy extends SimpleInstantiationSt
|
||||
* be overridden to provide method lookup.
|
||||
*/
|
||||
private static final int LOOKUP_OVERRIDE = 1;
|
||||
|
||||
|
||||
/**
|
||||
* Index in the CGLIB callback array for a method that should
|
||||
* be overridden using generic Methodreplacer functionality.
|
||||
@@ -114,8 +114,8 @@ public class CglibSubclassingInstantiationStrategy extends SimpleInstantiationSt
|
||||
new ReplaceOverrideMethodInterceptor()
|
||||
});
|
||||
|
||||
return (ctor == null) ?
|
||||
enhancer.create() :
|
||||
return (ctor == null) ?
|
||||
enhancer.create() :
|
||||
enhancer.create(ctor.getParameterTypes(), args);
|
||||
}
|
||||
|
||||
@@ -123,7 +123,7 @@ public class CglibSubclassingInstantiationStrategy extends SimpleInstantiationSt
|
||||
/**
|
||||
* Class providing hashCode and equals methods required by CGLIB to
|
||||
* ensure that CGLIB doesn't generate a distinct class per bean.
|
||||
* Identity is based on class and bean definition.
|
||||
* Identity is based on class and bean definition.
|
||||
*/
|
||||
private class CglibIdentitySupport {
|
||||
|
||||
@@ -157,7 +157,7 @@ public class CglibSubclassingInstantiationStrategy extends SimpleInstantiationSt
|
||||
// Cast is safe, as CallbackFilter filters are used selectively.
|
||||
LookupOverride lo = (LookupOverride) beanDefinition.getMethodOverrides().getOverride(method);
|
||||
return owner.getBean(lo.getBeanName());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -180,7 +180,7 @@ public class CglibSubclassingInstantiationStrategy extends SimpleInstantiationSt
|
||||
* CGLIB object to filter method interception behavior.
|
||||
*/
|
||||
private class CallbackFilterImpl extends CglibIdentitySupport implements CallbackFilter {
|
||||
|
||||
|
||||
public int accept(Method method) {
|
||||
MethodOverride methodOverride = beanDefinition.getMethodOverrides().getOverride(method);
|
||||
if (logger.isTraceEnabled()) {
|
||||
|
||||
@@ -280,7 +280,7 @@ class ConstructorResolver {
|
||||
beanInstance = this.beanFactory.getInstantiationStrategy().instantiate(
|
||||
mbd, beanName, this.beanFactory, constructorToUse, argsToUse);
|
||||
}
|
||||
|
||||
|
||||
bw.setWrappedInstance(beanInstance);
|
||||
return bw;
|
||||
}
|
||||
@@ -412,7 +412,7 @@ class ConstructorResolver {
|
||||
rawCandidates = (mbd.isNonPublicAccessAllowed() ?
|
||||
ReflectionUtils.getAllDeclaredMethods(factoryClazz) : factoryClazz.getMethods());
|
||||
}
|
||||
|
||||
|
||||
List<Method> candidateSet = new ArrayList<Method>();
|
||||
for (Method candidate : rawCandidates) {
|
||||
if (Modifier.isStatic(candidate.getModifiers()) == isStatic &&
|
||||
@@ -570,7 +570,7 @@ class ConstructorResolver {
|
||||
beanInstance = beanFactory.getInstantiationStrategy().instantiate(
|
||||
mbd, beanName, beanFactory, factoryBean, factoryMethodToUse, argsToUse);
|
||||
}
|
||||
|
||||
|
||||
if (beanInstance == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -149,7 +149,7 @@ public abstract class FactoryBeanRegistrySupport extends DefaultSingletonBeanReg
|
||||
throw new BeanCreationException(beanName, "FactoryBean threw exception on object creation", ex);
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Do not accept a null value for a FactoryBean that's not fully
|
||||
// initialized yet: Many FactoryBeans just return null then.
|
||||
if (object == null && isSingletonCurrentlyInCreation(beanName)) {
|
||||
@@ -206,7 +206,7 @@ public abstract class FactoryBeanRegistrySupport extends DefaultSingletonBeanReg
|
||||
super.removeSingleton(beanName);
|
||||
this.factoryBeanObjectCache.remove(beanName);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Returns the security context for this bean factory. If a security manager
|
||||
* is set, interaction with the user code will be executed using the privileged
|
||||
|
||||
@@ -31,7 +31,7 @@ import org.springframework.util.ObjectUtils;
|
||||
* @since 1.1
|
||||
*/
|
||||
public class LookupOverride extends MethodOverride {
|
||||
|
||||
|
||||
private final String beanName;
|
||||
|
||||
|
||||
|
||||
@@ -34,7 +34,7 @@ import org.springframework.util.ObjectUtils;
|
||||
* @since 1.1
|
||||
*/
|
||||
public abstract class MethodOverride implements BeanMetadataElement {
|
||||
|
||||
|
||||
private final String methodName;
|
||||
|
||||
private boolean overloaded = true;
|
||||
|
||||
@@ -82,7 +82,7 @@ public class MethodOverrides {
|
||||
public boolean isEmpty() {
|
||||
return this.overrides.isEmpty();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Return the override for the given method, if any.
|
||||
* @param method method to check for overrides for
|
||||
|
||||
@@ -30,7 +30,7 @@ import java.lang.reflect.Method;
|
||||
* @since 1.1
|
||||
*/
|
||||
public interface MethodReplacer {
|
||||
|
||||
|
||||
/**
|
||||
* Reimplement the given method.
|
||||
* @param obj the instance we're reimplementing the method for
|
||||
|
||||
@@ -66,7 +66,7 @@ import org.springframework.util.StringUtils;
|
||||
* ceo.$0(ref)=secretary // inject 'secretary' bean as 0th constructor arg
|
||||
* ceo.$1=1000000 // inject value '1000000' at 1st constructor arg
|
||||
* </pre>
|
||||
*
|
||||
*
|
||||
* @author Rod Johnson
|
||||
* @author Juergen Hoeller
|
||||
* @author Rob Harrop
|
||||
|
||||
@@ -76,12 +76,12 @@ public class ReplaceOverride extends MethodOverride {
|
||||
// It can't match.
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
if (!isOverloaded()) {
|
||||
// No overloaded: don't worry about arg type matching.
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
// If we get to here, we need to insist on precise argument matching.
|
||||
if (this.typeIdentifiers.size() != method.getParameterTypes().length) {
|
||||
return false;
|
||||
@@ -93,7 +93,7 @@ public class ReplaceOverride extends MethodOverride {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
/*
|
||||
* Copyright 2002-2009 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.
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
/*
|
||||
* Copyright 2002-2009 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.
|
||||
@@ -21,7 +21,7 @@ import java.security.AccessController;
|
||||
|
||||
/**
|
||||
* Simple {@link SecurityContextProvider} implementation.
|
||||
*
|
||||
*
|
||||
* @author Costin Leau
|
||||
* @since 3.0
|
||||
*/
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
*
|
||||
* Classes supporting the <code>org.springframework.beans.factory</code> package.
|
||||
* Contains abstract base classes for <code>BeanFactory</code> implementations.
|
||||
*
|
||||
*
|
||||
*
|
||||
*/
|
||||
package org.springframework.beans.factory.support;
|
||||
|
||||
@@ -125,7 +125,7 @@ public abstract class AbstractBeanDefinitionParser implements BeanDefinitionPars
|
||||
* parameter is <code>false</code>, because one typically does not want inner beans
|
||||
* to be registered as top level beans.
|
||||
* @param definition the bean definition to be registered
|
||||
* @param registry the registry that the bean is to be registered with
|
||||
* @param registry the registry that the bean is to be registered with
|
||||
* @see BeanDefinitionReaderUtils#registerBeanDefinition(BeanDefinitionHolder, BeanDefinitionRegistry)
|
||||
*/
|
||||
protected void registerBeanDefinition(BeanDefinitionHolder definition, BeanDefinitionRegistry registry) {
|
||||
|
||||
@@ -40,11 +40,11 @@ import org.springframework.util.StringUtils;
|
||||
* class immediately clear. Consider the following class definition:
|
||||
*
|
||||
* <pre class="code">public class SimpleCache implements Cache {
|
||||
*
|
||||
*
|
||||
* public void setName(String name) {...}
|
||||
* public void setTimeout(int timeout) {...}
|
||||
* public void setEvictionPolicy(EvictionPolicy policy) {...}
|
||||
*
|
||||
*
|
||||
* // remaining class definition elided for clarity...
|
||||
* }</pre>
|
||||
*
|
||||
@@ -62,7 +62,7 @@ import org.springframework.util.StringUtils;
|
||||
* protected Class getBeanClass(Element element) {
|
||||
* return SimpleCache.class;
|
||||
* }
|
||||
* }</pre>
|
||||
* }</pre>
|
||||
*
|
||||
* <p>Please note that the <code>AbstractSimpleBeanDefinitionParser</code>
|
||||
* is limited to populating the created bean definition with property values.
|
||||
@@ -121,7 +121,7 @@ public abstract class AbstractSimpleBeanDefinitionParser extends AbstractSingleB
|
||||
* property.
|
||||
* @param element the XML element being parsed
|
||||
* @param builder used to define the <code>BeanDefinition</code>
|
||||
* @see #extractPropertyName(String)
|
||||
* @see #extractPropertyName(String)
|
||||
*/
|
||||
@Override
|
||||
protected void doParse(Element element, ParserContext parserContext, BeanDefinitionBuilder builder) {
|
||||
|
||||
@@ -42,7 +42,7 @@ import org.springframework.core.io.Resource;
|
||||
* @see ResourceEntityResolver
|
||||
*/
|
||||
public class BeansDtdResolver implements EntityResolver {
|
||||
|
||||
|
||||
private static final String DTD_EXTENSION = ".dtd";
|
||||
|
||||
private static final String[] DTD_NAMES = {"spring-beans-2.0", "spring-beans"};
|
||||
|
||||
@@ -223,7 +223,7 @@ public class DefaultBeanDefinitionDocumentReader implements BeanDefinitionDocume
|
||||
|
||||
Set<Resource> actualResources = new LinkedHashSet<Resource>(4);
|
||||
|
||||
// Discover whether the location is an absolute or relative URI
|
||||
// Discover whether the location is an absolute or relative URI
|
||||
boolean absoluteLocation = false;
|
||||
try {
|
||||
absoluteLocation = ResourcePatternUtils.isUrl(location) || ResourceUtils.toURI(location).isAbsolute();
|
||||
|
||||
@@ -50,7 +50,7 @@ public interface NamespaceHandler {
|
||||
/**
|
||||
* Invoked by the {@link DefaultBeanDefinitionDocumentReader} after
|
||||
* construction but before any custom elements are parsed.
|
||||
* @see NamespaceHandlerSupport#registerBeanDefinitionParser(String, BeanDefinitionParser)
|
||||
* @see NamespaceHandlerSupport#registerBeanDefinitionParser(String, BeanDefinitionParser)
|
||||
*/
|
||||
void init();
|
||||
|
||||
@@ -66,7 +66,7 @@ public interface NamespaceHandler {
|
||||
* <strong>not</strong> be used in a nested scenario.
|
||||
* @param element the element that is to be parsed into one or more <code>BeanDefinitions</code>
|
||||
* @param parserContext the object encapsulating the current state of the parsing process
|
||||
* @return the primary <code>BeanDefinition</code> (can be <code>null</code> as explained above)
|
||||
* @return the primary <code>BeanDefinition</code> (can be <code>null</code> as explained above)
|
||||
*/
|
||||
BeanDefinition parse(Element element, ParserContext parserContext);
|
||||
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
/*
|
||||
* Copyright 2010 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.
|
||||
@@ -33,24 +33,24 @@ import org.w3c.dom.Node;
|
||||
* attributes directly through to bean properties. An important point to note is
|
||||
* that this <code>NamespaceHandler</code> does not have a corresponding schema
|
||||
* since there is no way to know in advance all possible attribute names.
|
||||
*
|
||||
*
|
||||
* <p>
|
||||
* An example of the usage of this <code>NamespaceHandler</code> is shown below:
|
||||
*
|
||||
*
|
||||
* <pre class="code">
|
||||
* <bean id="author" class="..TestBean" c:name="Enescu" c:work-ref="compositions"/>
|
||||
* </pre>
|
||||
*
|
||||
*
|
||||
* Here the '<code>c:name</code>' corresponds directly to the '<code>name</code>
|
||||
* ' argument declared on the constructor of class '<code>TestBean</code>'. The
|
||||
* '<code>c:work-ref</code>' attributes corresponds to the '<code>work</code>'
|
||||
* argument and, rather than being the concrete value, it contains the name of
|
||||
* the bean that will be considered as a parameter.
|
||||
*
|
||||
*
|
||||
* <b>Note</b>: This implementation supports only named parameters - there is no
|
||||
* support for indexes or types. Further more, the names are used as hints by
|
||||
* the container which, by default, does type introspection.
|
||||
*
|
||||
*
|
||||
* @see SimplePropertyNamespaceHandler
|
||||
* @author Costin Leau
|
||||
*/
|
||||
@@ -90,7 +90,7 @@ public class SimpleConstructorNamespaceHandler implements NamespaceHandler {
|
||||
if (argName.startsWith(DELIMITER_PREFIX)) {
|
||||
String arg = argName.substring(1).trim();
|
||||
|
||||
// fast default check
|
||||
// fast default check
|
||||
if (!StringUtils.hasText(arg)) {
|
||||
cvs.addGenericArgumentValue(valueHolder);
|
||||
}
|
||||
@@ -107,13 +107,13 @@ public class SimpleConstructorNamespaceHandler implements NamespaceHandler {
|
||||
parserContext.getReaderContext().error(
|
||||
"Constructor argument '" + argName + "' specifies a negative index", attr);
|
||||
}
|
||||
|
||||
|
||||
if (cvs.hasIndexedArgumentValue(index)){
|
||||
parserContext.getReaderContext().error(
|
||||
"Constructor argument '" + argName + "' with index "+ index+" already defined using <constructor-arg>." +
|
||||
" Only one approach may be used per argument.", attr);
|
||||
}
|
||||
|
||||
|
||||
cvs.addIndexedArgumentValue(index, valueHolder);
|
||||
}
|
||||
}
|
||||
@@ -139,7 +139,7 @@ public class SimpleConstructorNamespaceHandler implements NamespaceHandler {
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
private boolean checkName(String name, Collection<ValueHolder> values) {
|
||||
for (ValueHolder holder : values) {
|
||||
if (name.equals(holder.getName())) {
|
||||
|
||||
@@ -3,10 +3,10 @@
|
||||
*
|
||||
* This package contains interfaces and classes for manipulating Java beans.
|
||||
* It is used by most other Spring packages.
|
||||
*
|
||||
*
|
||||
* <p>A BeanWrapper object may be used to set and get bean properties,
|
||||
* singly or in bulk.
|
||||
*
|
||||
*
|
||||
* <p>The classes in this package are discussed in Chapter 11 of
|
||||
* <a href="http://www.amazon.com/exec/obidos/tg/detail/-/0764543857/">Expert One-On-One J2EE Design and Development</a>
|
||||
* by Rod Johnson (Wrox, 2002).
|
||||
|
||||
@@ -28,7 +28,7 @@ import org.springframework.util.StringUtils;
|
||||
* {@link java.beans.PropertyEditor property editor} for <code>char</code>!
|
||||
* {@link org.springframework.beans.BeanWrapperImpl} will register this
|
||||
* editor by default.
|
||||
*
|
||||
*
|
||||
* <p>Also supports conversion from a Unicode character sequence; e.g.
|
||||
* <code>u0041</code> ('A').
|
||||
*
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
/*
|
||||
* 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.
|
||||
|
||||
@@ -26,13 +26,13 @@ import java.util.ResourceBundle;
|
||||
/**
|
||||
* {@link java.beans.PropertyEditor} implementation for
|
||||
* {@link java.util.ResourceBundle ResourceBundles}.
|
||||
*
|
||||
*
|
||||
* <p>Only supports conversion <i>from</i> a String, but not
|
||||
* <i>to</i> a String.
|
||||
*
|
||||
* Find below some examples of using this class in a
|
||||
*
|
||||
* Find below some examples of using this class in a
|
||||
* (properly configured) Spring container using XML-based metadata:
|
||||
*
|
||||
*
|
||||
* <pre class="code"> <bean id="errorDialog" class="...">
|
||||
* <!--
|
||||
* the 'messages' property is of type java.util.ResourceBundle.
|
||||
@@ -40,18 +40,18 @@ import java.util.ResourceBundle;
|
||||
* -->
|
||||
* <property name="messages" value="DialogMessages"/>
|
||||
* </bean></pre>
|
||||
*
|
||||
*
|
||||
* <pre class="code"> <bean id="errorDialog" class="...">
|
||||
* <!--
|
||||
* the 'DialogMessages.properties' file exists in the 'com/messages' package
|
||||
* -->
|
||||
* <property name="messages" value="com/messages/DialogMessages"/>
|
||||
* </bean></pre>
|
||||
*
|
||||
*
|
||||
* <p>A 'properly configured' Spring {@link org.springframework.context.ApplicationContext container}
|
||||
* might contain a {@link org.springframework.beans.factory.config.CustomEditorConfigurer}
|
||||
* definition such that the conversion can be effected transparently:
|
||||
*
|
||||
*
|
||||
* <pre class="code"> <bean class="org.springframework.beans.factory.config.CustomEditorConfigurer">
|
||||
* <property name="customEditors">
|
||||
* <map>
|
||||
@@ -61,10 +61,10 @@ import java.util.ResourceBundle;
|
||||
* </map>
|
||||
* </property>
|
||||
* </bean></pre>
|
||||
*
|
||||
*
|
||||
* <p>Please note that this {@link java.beans.PropertyEditor} is
|
||||
* <b>not</b> registered by default with any of the Spring infrastructure.
|
||||
*
|
||||
*
|
||||
* <p>Thanks to David Leal Valmana for the suggestion and initial prototype.
|
||||
*
|
||||
* @author Rick Evans
|
||||
|
||||
@@ -46,7 +46,7 @@ public class StringArrayPropertyEditor extends PropertyEditorSupport {
|
||||
private final String charsToDelete;
|
||||
|
||||
private final boolean emptyArrayAsNull;
|
||||
|
||||
|
||||
private final boolean trimValues;
|
||||
|
||||
|
||||
@@ -83,7 +83,7 @@ public class StringArrayPropertyEditor extends PropertyEditorSupport {
|
||||
* @param separator the separator to use for splitting a {@link String}
|
||||
* @param emptyArrayAsNull <code>true</code> if an empty String array
|
||||
* is to be transformed into <code>null</code>
|
||||
* @param trimValues <code>true</code> if the values in the parsed arrays
|
||||
* @param trimValues <code>true</code> if the values in the parsed arrays
|
||||
* are to be be trimmed of whitespace (default is true).
|
||||
*/
|
||||
public StringArrayPropertyEditor(String separator, boolean emptyArrayAsNull, boolean trimValues) {
|
||||
@@ -111,7 +111,7 @@ public class StringArrayPropertyEditor extends PropertyEditorSupport {
|
||||
* e.g. "\r\n\f" will delete all new lines and line feeds in a String.
|
||||
* @param emptyArrayAsNull <code>true</code> if an empty String array
|
||||
* is to be transformed into <code>null</code>
|
||||
* @param trimValues <code>true</code> if the values in the parsed arrays
|
||||
* @param trimValues <code>true</code> if the values in the parsed arrays
|
||||
* are to be be trimmed of whitespace (default is true).
|
||||
*/
|
||||
public StringArrayPropertyEditor(String separator, String charsToDelete, boolean emptyArrayAsNull, boolean trimValues) {
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
*
|
||||
* Properties editors used to convert from String values to object
|
||||
* types such as java.util.Properties.
|
||||
*
|
||||
*
|
||||
* <p>Some of these editors are registered automatically by BeanWrapperImpl.
|
||||
* "CustomXxxEditor" classes are intended for manual registration in
|
||||
* specific binding processes, as they are localized or the like.
|
||||
|
||||
@@ -81,7 +81,7 @@ public class PropertyComparator implements Comparator {
|
||||
}
|
||||
|
||||
int result;
|
||||
|
||||
|
||||
// Put an object with null property at the end of the sort result.
|
||||
try {
|
||||
if (v1 != null) {
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
/*
|
||||
* 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.
|
||||
|
||||
Reference in New Issue
Block a user