Merge branch '5.3.x'
# Conflicts: # spring-context/src/main/java/org/springframework/scheduling/annotation/Async.java # spring-context/src/testFixtures/java/org/springframework/context/testfixture/jndi/SimpleNamingContextBuilder.java # spring-core/src/main/java/org/springframework/core/BridgeMethodResolver.java # spring-core/src/main/java/org/springframework/util/MimeType.java
This commit is contained in:
@@ -24,7 +24,7 @@ import org.springframework.lang.Nullable;
|
||||
|
||||
/**
|
||||
* An implementation of {@link CachingConfigurer} with empty methods allowing
|
||||
* sub-classes to override only the methods they're interested in.
|
||||
* subclasses to override only the methods they're interested in.
|
||||
*
|
||||
* @author Stephane Nicoll
|
||||
* @since 4.1
|
||||
|
||||
@@ -200,7 +200,7 @@ public class SpringCacheAnnotationParser implements CacheAnnotationParser, Seria
|
||||
/**
|
||||
* Validates the specified {@link CacheOperation}.
|
||||
* <p>Throws an {@link IllegalStateException} if the state of the operation is
|
||||
* invalid. As there might be multiple sources for default values, this ensure
|
||||
* invalid. As there might be multiple sources for default values, this ensures
|
||||
* that the operation is in a proper state before being returned.
|
||||
* @param ae the annotated element of the cache operation
|
||||
* @param operation the {@link CacheOperation} to validate
|
||||
|
||||
@@ -35,7 +35,7 @@ import org.springframework.lang.Nullable;
|
||||
* are present.
|
||||
*
|
||||
* <p>To limit the creation of objects, an ugly constructor is used
|
||||
* (rather then a dedicated 'closure'-like class for deferred execution).
|
||||
* (rather than a dedicated 'closure'-like class for deferred execution).
|
||||
*
|
||||
* @author Costin Leau
|
||||
* @author Stephane Nicoll
|
||||
|
||||
@@ -26,7 +26,7 @@ import org.springframework.lang.Nullable;
|
||||
*
|
||||
* <p>Transparently replaces given {@code null} user values with an internal
|
||||
* {@link NullValue#INSTANCE}, if configured to support {@code null} values
|
||||
* (as indicated by {@link #isAllowNullValues()}.
|
||||
* (as indicated by {@link #isAllowNullValues()}).
|
||||
*
|
||||
* @author Juergen Hoeller
|
||||
* @since 4.2.2
|
||||
|
||||
@@ -94,7 +94,7 @@ public interface ApplicationContext extends EnvironmentCapable, ListableBeanFact
|
||||
/**
|
||||
* Expose AutowireCapableBeanFactory functionality for this context.
|
||||
* <p>This is not typically used by application code, except for the purpose of
|
||||
* initializing bean instances that live outside of the application context,
|
||||
* initializing bean instances that live outside the application context,
|
||||
* applying the Spring bean lifecycle (fully or partly) to them.
|
||||
* <p>Alternatively, the internal BeanFactory exposed by the
|
||||
* {@link ConfigurableApplicationContext} interface offers access to the
|
||||
|
||||
@@ -27,7 +27,7 @@ import org.springframework.jmx.support.RegistrationPolicy;
|
||||
|
||||
/**
|
||||
* Enables default exporting of all standard {@code MBean}s from the Spring context, as
|
||||
* well as well all {@code @ManagedResource} annotated beans.
|
||||
* well as all {@code @ManagedResource} annotated beans.
|
||||
*
|
||||
* <p>The resulting {@link org.springframework.jmx.export.MBeanExporter MBeanExporter}
|
||||
* bean is defined under the name "mbeanExporter". Alternatively, consider defining a
|
||||
|
||||
@@ -37,7 +37,7 @@ import org.springframework.beans.factory.config.BeanDefinition;
|
||||
* <p>If Role is present on a {@link Configuration @Configuration} class,
|
||||
* this indicates the role of the configuration class bean definition and
|
||||
* does not cascade to all @{@code Bean} methods defined within. This behavior
|
||||
* is different than that of the @{@link Lazy} annotation, for example.
|
||||
* is different from the behavior of the @{@link Lazy} annotation, for example.
|
||||
*
|
||||
* @author Chris Beams
|
||||
* @since 3.1
|
||||
|
||||
@@ -295,7 +295,7 @@ public final class LocaleContextHolder {
|
||||
* <p>Note: This method has a fallback to the shared default TimeZone,
|
||||
* either at the framework level or at the JVM-wide system level.
|
||||
* If you'd like to check for the raw LocaleContext content
|
||||
* (which may indicate no specific time zone through {@code null}, use
|
||||
* (which may indicate no specific time zone through {@code null}), use
|
||||
* {@link #getLocaleContext()} and call {@link TimeZoneAwareLocaleContext#getTimeZone()}
|
||||
* after downcasting to {@link TimeZoneAwareLocaleContext}.
|
||||
* @return the current TimeZone, or the system default TimeZone if no
|
||||
|
||||
@@ -64,7 +64,7 @@ import org.springframework.util.StringUtils;
|
||||
* "WEB-INF/messages_en.xml" etc. Note that message definitions in a <i>previous</i>
|
||||
* resource bundle will override ones in a later bundle, due to sequential lookup.
|
||||
|
||||
* <p>This MessageSource can easily be used outside of an
|
||||
* <p>This MessageSource can easily be used outside an
|
||||
* {@link org.springframework.context.ApplicationContext}: it will use a
|
||||
* {@link org.springframework.core.io.DefaultResourceLoader} as default,
|
||||
* simply getting overridden with the ApplicationContext's resource loader
|
||||
@@ -156,7 +156,7 @@ public class ReloadableResourceBundleMessageSource extends AbstractResourceBased
|
||||
* <p>The default is a DefaultResourceLoader. Will get overridden by the
|
||||
* ApplicationContext if running in a context, as it implements the
|
||||
* ResourceLoaderAware interface. Can be manually overridden when
|
||||
* running outside of an ApplicationContext.
|
||||
* running outside an ApplicationContext.
|
||||
* @see org.springframework.core.io.DefaultResourceLoader
|
||||
* @see org.springframework.context.ResourceLoaderAware
|
||||
*/
|
||||
|
||||
@@ -99,7 +99,7 @@ public class DefaultContextLoadTimeWeaver implements LoadTimeWeaver, BeanClassLo
|
||||
}
|
||||
|
||||
/*
|
||||
* This method never fails, allowing to try other possible ways to use an
|
||||
* This method never fails, allowing to try other possible ways to use a
|
||||
* server-agnostic weaver. This non-failure logic is required since
|
||||
* determining a load-time weaver based on the ClassLoader name alone may
|
||||
* legitimately fail due to other mismatches.
|
||||
|
||||
@@ -181,7 +181,7 @@ public class DateFormatter implements Formatter<Date> {
|
||||
}
|
||||
|
||||
/**
|
||||
* Specify whether or not parsing is to be lenient. Default is false.
|
||||
* Specify whether parsing is to be lenient. Default is {@code false}.
|
||||
* <p>With lenient parsing, the parser may allow inputs that do not precisely match the format.
|
||||
* With strict parsing, inputs must match the format exactly.
|
||||
*/
|
||||
|
||||
@@ -37,7 +37,7 @@ public abstract class AbstractNumberFormatter implements Formatter<Number> {
|
||||
|
||||
|
||||
/**
|
||||
* Specify whether or not parsing is to be lenient. Default is false.
|
||||
* Specify whether parsing is to be lenient. Default is {@code false}.
|
||||
* <p>With lenient parsing, the parser may allow inputs that do not precisely match the format.
|
||||
* With strict parsing, inputs must match the format exactly.
|
||||
*/
|
||||
|
||||
@@ -165,10 +165,10 @@ public class MBeanClientInterceptor
|
||||
}
|
||||
|
||||
/**
|
||||
* Allow Map access to the environment to be set for the connector,
|
||||
* Allow {@code Map} access to the environment to be set for the connector,
|
||||
* with the option to add or override specific entries.
|
||||
* <p>Useful for specifying entries directly, for example via
|
||||
* "environment[myKey]". This is particularly useful for
|
||||
* {@code environment[myKey]}. This is particularly useful for
|
||||
* adding or overriding entries in child bean definitions.
|
||||
*/
|
||||
@Nullable
|
||||
@@ -189,9 +189,9 @@ public class MBeanClientInterceptor
|
||||
}
|
||||
|
||||
/**
|
||||
* Set whether or not the proxy should connect to the {@code MBeanServer}
|
||||
* at creation time ("true") or the first time it is invoked ("false").
|
||||
* Default is "true".
|
||||
* Set whether the proxy should connect to the {@code MBeanServer}
|
||||
* at creation time ({@code true}) or the first time it is invoked
|
||||
* ({@code false}). Default is {@code true}.
|
||||
*/
|
||||
public void setConnectOnStartup(boolean connectOnStartup) {
|
||||
this.connectOnStartup = connectOnStartup;
|
||||
@@ -199,7 +199,7 @@ public class MBeanClientInterceptor
|
||||
|
||||
/**
|
||||
* Set whether to refresh the MBeanServer connection on connect failure.
|
||||
* Default is "false".
|
||||
* Default is {@code false}.
|
||||
* <p>Can be turned on to allow for hot restart of the JMX server,
|
||||
* automatically reconnecting and retrying in case of an IOException.
|
||||
*/
|
||||
|
||||
@@ -88,10 +88,10 @@ public class NotificationListenerRegistrar extends NotificationListenerHolder
|
||||
}
|
||||
|
||||
/**
|
||||
* Allow Map access to the environment to be set for the connector,
|
||||
* Allow {@code Map} access to the environment to be set for the connector,
|
||||
* with the option to add or override specific entries.
|
||||
* <p>Useful for specifying entries directly, for example via
|
||||
* "environment[myKey]". This is particularly useful for
|
||||
* {@code environment[myKey]}. This is particularly useful for
|
||||
* adding or overriding entries in child bean definitions.
|
||||
*/
|
||||
@Nullable
|
||||
|
||||
@@ -306,7 +306,7 @@ public class MBeanExporter extends MBeanRegistrationSupport implements MBeanExpo
|
||||
}
|
||||
|
||||
/**
|
||||
* Indicates whether or not the managed resource should be exposed on the
|
||||
* Indicates whether the managed resource should be exposed on the
|
||||
* {@link Thread#getContextClassLoader() thread context ClassLoader} before
|
||||
* allowing any invocations on the MBean to occur.
|
||||
* <p>The default value is {@code true}, exposing a {@link SpringModelMBean}
|
||||
@@ -513,7 +513,7 @@ public class MBeanExporter extends MBeanRegistrationSupport implements MBeanExpo
|
||||
* {@code ModelMBean}. The actual implementation of the
|
||||
* {@code ModelMBean} interface used depends on the implementation of
|
||||
* the {@code ModelMBeanProvider} interface that is configured. By
|
||||
* default the {@code RequiredModelMBean} class that is supplied with
|
||||
* default, the {@code RequiredModelMBean} class that is supplied with
|
||||
* all JMX implementations is used.
|
||||
* <p>The management interface produced for each bean is dependent on the
|
||||
* {@code MBeanInfoAssembler} implementation being used. The
|
||||
@@ -914,7 +914,7 @@ public class MBeanExporter extends MBeanRegistrationSupport implements MBeanExpo
|
||||
}
|
||||
|
||||
/**
|
||||
* Indicates whether or not a particular bean name is present in the excluded beans list.
|
||||
* Indicates whether a particular bean name is present in the excluded beans list.
|
||||
*/
|
||||
private boolean isExcluded(String beanName) {
|
||||
return (this.excludedBeans.contains(beanName) ||
|
||||
@@ -1067,7 +1067,7 @@ public class MBeanExporter extends MBeanRegistrationSupport implements MBeanExpo
|
||||
|
||||
/**
|
||||
* Called during the autodetection process to decide whether
|
||||
* or not a bean should be included.
|
||||
* a bean should be included.
|
||||
* @param beanClass the class of the bean
|
||||
* @param beanName the name of the bean
|
||||
*/
|
||||
|
||||
@@ -39,7 +39,7 @@ public class UnableToRegisterMBeanException extends MBeanExportException {
|
||||
* Create a new {@code UnableToRegisterMBeanException} with the
|
||||
* specified error message and root cause.
|
||||
* @param msg the detail message
|
||||
* @param cause the root caus
|
||||
* @param cause the root cause
|
||||
*/
|
||||
public UnableToRegisterMBeanException(String msg, Throwable cause) {
|
||||
super(msg, cause);
|
||||
|
||||
@@ -43,7 +43,7 @@ import org.springframework.lang.Nullable;
|
||||
*
|
||||
* <p>The logic for creating MBean metadata from the reflective metadata
|
||||
* is contained in this class, but this class makes no decisions as to
|
||||
* which methods and properties are to be exposed. Instead it gives
|
||||
* which methods and properties are to be exposed. Instead, it gives
|
||||
* subclasses a chance to 'vote' on each property or method through
|
||||
* the {@code includeXXX} methods.
|
||||
*
|
||||
@@ -177,7 +177,7 @@ public abstract class AbstractReflectiveMBeanInfoAssembler extends AbstractMBean
|
||||
private Integer defaultCurrencyTimeLimit;
|
||||
|
||||
/**
|
||||
* Indicates whether or not strict casing is being used for attributes.
|
||||
* Indicates whether strict casing is being used for attributes.
|
||||
*/
|
||||
private boolean useStrictCasing = true;
|
||||
|
||||
|
||||
@@ -119,7 +119,7 @@ public class MetadataMBeanInfoAssembler extends AbstractReflectiveMBeanInfoAssem
|
||||
|
||||
/**
|
||||
* Used for autodetection of beans. Checks to see if the bean's class has a
|
||||
* {@code ManagedResource} attribute. If so it will add it list of included beans.
|
||||
* {@code ManagedResource} attribute. If so, it will add it to the list of included beans.
|
||||
* @param beanClass the class of the bean
|
||||
* @param beanName the name of the bean in the bean factory
|
||||
*/
|
||||
@@ -410,7 +410,7 @@ public class MetadataMBeanInfoAssembler extends AbstractReflectiveMBeanInfoAssem
|
||||
/**
|
||||
* Determines which of two {@code int} values should be used as the value
|
||||
* for an attribute descriptor. In general, only the getter or the setter will
|
||||
* be have a non-negative value so we use that value. In the event that both values
|
||||
* have a non-negative value, so we use that value. In the event that both values
|
||||
* are non-negative, we use the greater of the two. This method can be used to
|
||||
* resolve any {@code int} valued descriptor where there are two possible values.
|
||||
* @param getter the int value associated with the getter for this attribute
|
||||
|
||||
@@ -35,7 +35,7 @@ public interface JmxAttributeSource {
|
||||
/**
|
||||
* Implementations should return an instance of {@code ManagedResource}
|
||||
* if the supplied {@code Class} has the appropriate metadata.
|
||||
* Otherwise should return {@code null}.
|
||||
* Otherwise, should return {@code null}.
|
||||
* @param clazz the class to read the attribute data from
|
||||
* @return the attribute, or {@code null} if not found
|
||||
* @throws InvalidMetadataException in case of invalid attributes
|
||||
@@ -46,7 +46,7 @@ public interface JmxAttributeSource {
|
||||
/**
|
||||
* Implementations should return an instance of {@code ManagedAttribute}
|
||||
* if the supplied {@code Method} has the corresponding metadata.
|
||||
* Otherwise should return {@code null}.
|
||||
* Otherwise, should return {@code null}.
|
||||
* @param method the method to read the attribute data from
|
||||
* @return the attribute, or {@code null} if not found
|
||||
* @throws InvalidMetadataException in case of invalid attributes
|
||||
@@ -57,7 +57,7 @@ public interface JmxAttributeSource {
|
||||
/**
|
||||
* Implementations should return an instance of {@code ManagedMetric}
|
||||
* if the supplied {@code Method} has the corresponding metadata.
|
||||
* Otherwise should return {@code null}.
|
||||
* Otherwise, should return {@code null}.
|
||||
* @param method the method to read the attribute data from
|
||||
* @return the metric, or {@code null} if not found
|
||||
* @throws InvalidMetadataException in case of invalid attributes
|
||||
@@ -68,7 +68,7 @@ public interface JmxAttributeSource {
|
||||
/**
|
||||
* Implementations should return an instance of {@code ManagedOperation}
|
||||
* if the supplied {@code Method} has the corresponding metadata.
|
||||
* Otherwise should return {@code null}.
|
||||
* Otherwise, should return {@code null}.
|
||||
* @param method the method to read the attribute data from
|
||||
* @return the attribute, or {@code null} if not found
|
||||
* @throws InvalidMetadataException in case of invalid attributes
|
||||
@@ -78,7 +78,7 @@ public interface JmxAttributeSource {
|
||||
|
||||
/**
|
||||
* Implementations should return an array of {@code ManagedOperationParameter}
|
||||
* if the supplied {@code Method} has the corresponding metadata. Otherwise
|
||||
* if the supplied {@code Method} has the corresponding metadata. Otherwise,
|
||||
* should return an empty array if no metadata is found.
|
||||
* @param method the {@code Method} to read the metadata from
|
||||
* @return the parameter information.
|
||||
@@ -88,7 +88,7 @@ public interface JmxAttributeSource {
|
||||
|
||||
/**
|
||||
* Implementations should return an array of {@link ManagedNotification ManagedNotifications}
|
||||
* if the supplied the {@code Class} has the corresponding metadata. Otherwise
|
||||
* if the supplied {@code Class} has the corresponding metadata. Otherwise,
|
||||
* should return an empty array.
|
||||
* @param clazz the {@code Class} to read the metadata from
|
||||
* @return the notification information
|
||||
|
||||
@@ -32,7 +32,7 @@ import javax.management.Notification;
|
||||
* <p>Each managed resource instance will have a distinct instance of a
|
||||
* {@code NotificationPublisher} implementation. This instance will keep
|
||||
* track of all the {@link javax.management.NotificationListener NotificationListeners}
|
||||
* registered for a particular mananaged resource.
|
||||
* registered for a particular managed resource.
|
||||
*
|
||||
* <p>Any existing, user-defined MBeans should use standard JMX APIs for notification
|
||||
* publication; this interface is intended for use only by Spring-created MBeans.
|
||||
|
||||
@@ -74,7 +74,7 @@ public class MBeanServerFactoryBean implements FactoryBean<MBeanServer>, Initial
|
||||
|
||||
|
||||
/**
|
||||
* Set whether or not the {@code MBeanServerFactoryBean} should attempt
|
||||
* Set whether the {@code MBeanServerFactoryBean} should attempt
|
||||
* to locate a running {@code MBeanServer} before creating one.
|
||||
* <p>Default is {@code false}.
|
||||
*/
|
||||
|
||||
@@ -54,7 +54,7 @@ import org.springframework.util.ClassUtils;
|
||||
* a "proxyInterface" in such a scenario, since the actual JNDI object type is not
|
||||
* known in advance.
|
||||
*
|
||||
* <p>Of course, bean classes in a Spring environment may lookup e.g. a DataSource
|
||||
* <p>Of course, bean classes in a Spring environment may look up e.g. a DataSource
|
||||
* from JNDI themselves. This class simply enables central configuration of the
|
||||
* JNDI name, and easy switching to non-JNDI alternatives. The latter is
|
||||
* particularly convenient for test setups, reuse in standalone clients, etc.
|
||||
|
||||
@@ -47,7 +47,7 @@ import org.springframework.lang.Nullable;
|
||||
* Jakarta EE application's "java:comp/env/" namespace. It caches the resolved
|
||||
* types for all obtained objects, and optionally also caches shareable
|
||||
* objects (if they are explicitly marked as
|
||||
* {@link #addShareableResource shareable resource}.
|
||||
* {@link #addShareableResource shareable resource}).
|
||||
*
|
||||
* <p>The main intent of this factory is usage in combination with Spring's
|
||||
* {@link org.springframework.context.annotation.CommonAnnotationBeanPostProcessor},
|
||||
|
||||
@@ -40,7 +40,7 @@ public class SchedulingException extends NestedRuntimeException {
|
||||
/**
|
||||
* Constructor for SchedulingException.
|
||||
* @param msg the detail message
|
||||
* @param cause the root cause (usually from using a underlying
|
||||
* @param cause the root cause (usually from using an underlying
|
||||
* scheduling API such as Quartz)
|
||||
*/
|
||||
public SchedulingException(String msg, Throwable cause) {
|
||||
|
||||
@@ -48,7 +48,7 @@ public interface SchedulingTaskExecutor extends AsyncTaskExecutor {
|
||||
* individual subtasks which submit a follow-up task afterwards (if feasible).
|
||||
* <p>This should be considered a hint. Of course {@code TaskExecutor} clients
|
||||
* are free to ignore this flag and hence the {@code SchedulingTaskExecutor}
|
||||
* interface overall. However, thread pools will usually indicated a preference
|
||||
* interface overall. However, thread pools will usually indicate a preference
|
||||
* for short-lived tasks, allowing for more fine-grained scheduling.
|
||||
* @return {@code true} if this executor prefers short-lived tasks (the default),
|
||||
* {@code false} otherwise (for treatment like a regular {@code TaskExecutor})
|
||||
|
||||
@@ -25,7 +25,7 @@ import java.lang.annotation.Target;
|
||||
/**
|
||||
* Annotation that marks a method as a candidate for <i>asynchronous</i> execution.
|
||||
*
|
||||
* <p>Can also be used at the type level, in which case all of the type's methods are
|
||||
* <p>Can also be used at the type level, in which case all the type's methods are
|
||||
* considered as asynchronous. Note, however, that {@code @Async} is not supported
|
||||
* on methods declared within a
|
||||
* {@link org.springframework.context.annotation.Configuration @Configuration} class.
|
||||
|
||||
@@ -36,7 +36,7 @@ import org.springframework.util.function.SingletonSupplier;
|
||||
* behavior to any bean that carries the {@link Async} annotation at class or
|
||||
* method-level by adding a corresponding {@link AsyncAnnotationAdvisor} to the
|
||||
* exposed proxy (either an existing AOP proxy or a newly generated proxy that
|
||||
* implements all of the target's interfaces).
|
||||
* implements all the target's interfaces).
|
||||
*
|
||||
* <p>The {@link TaskExecutor} responsible for the asynchronous execution may
|
||||
* be provided as well as the annotation type that indicates a method should be
|
||||
|
||||
@@ -49,7 +49,7 @@ final class BitsCronField extends CronField {
|
||||
}
|
||||
|
||||
/**
|
||||
* Return a {@code BitsCronField} enabled for 0 nano seconds.
|
||||
* Return a {@code BitsCronField} enabled for 0 nanoseconds.
|
||||
*/
|
||||
public static BitsCronField zeroNanos() {
|
||||
if (zeroNanos == null) {
|
||||
@@ -75,7 +75,7 @@ final class BitsCronField extends CronField {
|
||||
}
|
||||
|
||||
/**
|
||||
* Parse the given value into a hours {@code BitsCronField}, the third entry of a cron expression.
|
||||
* Parse the given value into an hours {@code BitsCronField}, the third entry of a cron expression.
|
||||
*/
|
||||
public static BitsCronField parseHours(String value) {
|
||||
return BitsCronField.parseField(value, Type.HOUR);
|
||||
|
||||
@@ -49,7 +49,7 @@ abstract class CronField {
|
||||
}
|
||||
|
||||
/**
|
||||
* Return a {@code CronField} enabled for 0 nano seconds.
|
||||
* Return a {@code CronField} enabled for 0 nanoseconds.
|
||||
*/
|
||||
public static CronField zeroNanos() {
|
||||
return BitsCronField.zeroNanos();
|
||||
@@ -70,7 +70,7 @@ abstract class CronField {
|
||||
}
|
||||
|
||||
/**
|
||||
* Parse the given value into a hours {@code CronField}, the third entry of a cron expression.
|
||||
* Parse the given value into an hours {@code CronField}, the third entry of a cron expression.
|
||||
*/
|
||||
public static CronField parseHours(String value) {
|
||||
return BitsCronField.parseHours(value);
|
||||
@@ -201,7 +201,7 @@ abstract class CronField {
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the general range of this type. For instance, this methods
|
||||
* Return the general range of this type. For instance, this method
|
||||
* will return 0-31 for {@link #MONTH}.
|
||||
* @return the range of this field
|
||||
*/
|
||||
|
||||
@@ -298,7 +298,7 @@ public class CronSequenceGenerator {
|
||||
}
|
||||
|
||||
/**
|
||||
* Replace the values in the comma-separated list (case insensitive)
|
||||
* Replace the values in the comma-separated list (case-insensitive)
|
||||
* with their index in the list.
|
||||
* @return a new String with the values from the list replaced
|
||||
*/
|
||||
|
||||
@@ -139,7 +139,7 @@ public class BshScriptFactory implements ScriptFactory, BeanClassLoaderAware {
|
||||
scriptSource.getScriptAsString(), actualInterfaces, this.beanClassLoader);
|
||||
if (result instanceof Class) {
|
||||
// A Class: We'll cache the Class here and create an instance
|
||||
// outside of the synchronized block.
|
||||
// outside the synchronized block.
|
||||
this.scriptClass = (Class<?>) result;
|
||||
}
|
||||
else {
|
||||
|
||||
@@ -254,7 +254,7 @@ public class GroovyScriptFactory implements ScriptFactory, BeanFactoryAware, Bea
|
||||
}
|
||||
scriptClassToExecute = this.scriptClass;
|
||||
|
||||
// Process re-execution outside of the synchronized block.
|
||||
// Process re-execution outside the synchronized block.
|
||||
return executeScript(scriptSource, scriptClassToExecute);
|
||||
}
|
||||
catch (CompilationFailedException ex) {
|
||||
|
||||
@@ -19,7 +19,7 @@ package org.springframework.ui.context;
|
||||
import org.springframework.context.MessageSource;
|
||||
|
||||
/**
|
||||
* A Theme can resolve theme-specific messages, codes, file paths, etcetera
|
||||
* A Theme can resolve theme-specific messages, codes, file paths, etc.
|
||||
* (e.g. CSS and image files in a web environment).
|
||||
* The exposed {@link org.springframework.context.MessageSource} supports
|
||||
* theme-specific parameterization and internationalization.
|
||||
|
||||
@@ -59,7 +59,7 @@ import org.springframework.util.StringUtils;
|
||||
*
|
||||
* <p><strong>WARNING</strong>: Data binding can lead to security issues by exposing
|
||||
* parts of the object graph that are not meant to be accessed or modified by
|
||||
* external clients. Therefore the design and use of data binding should be considered
|
||||
* external clients. Therefore, the design and use of data binding should be considered
|
||||
* carefully with regard to security. For more details, please refer to the dedicated
|
||||
* sections on data binding for
|
||||
* <a href="https://docs.spring.io/spring-framework/docs/current/reference/html/web.html#mvc-ann-initbinder-model-design">Spring Web MVC</a> and
|
||||
@@ -873,7 +873,7 @@ public class DataBinder implements PropertyEditorRegistry, TypeConverter {
|
||||
|
||||
/**
|
||||
* Apply given property values to the target object.
|
||||
* <p>Default implementation applies all of the supplied property
|
||||
* <p>Default implementation applies all the supplied property
|
||||
* values as bean property values. By default, unknown fields will
|
||||
* be ignored.
|
||||
* @param mpvs the property values to be bound (can be modified)
|
||||
|
||||
Reference in New Issue
Block a user