org.springframework.core.io
Class ResourceEditor
- java.lang.Object
-
- java.beans.PropertyEditorSupport
-
- org.springframework.core.io.ResourceEditor
-
- All Implemented Interfaces:
- PropertyEditor
public class ResourceEditor extends PropertyEditorSupport
Editor
forResource
descriptors, to automatically convertString
locations e.g.file:C:/myfile.txt
orclasspath:myfile.txt
toResource
properties instead of using aString
location property.The path may contain
${...}
placeholders, to be resolved asEnvironment
properties: e.g.${user.dir}
. Unresolvable placeholders are ignored by default.Delegates to a
ResourceLoader
to do the heavy lifting, by default using aDefaultResourceLoader
.- Since:
- 28.12.2003
- Author:
- Juergen Hoeller, Dave Syer, Chris Beams
- See Also:
-
Resource
,ResourceLoader
,DefaultResourceLoader
,PropertyResolver.resolvePlaceholders(java.lang.String)
-
Constructor Summary
Constructors Constructor and Description ResourceEditor()
Create a new instance of theResourceEditor
class using aDefaultResourceLoader
andStandardEnvironment
.ResourceEditor(ResourceLoader resourceLoader)
Deprecated.as of Spring 3.1 in favor ofResourceEditor(ResourceLoader, PropertyResolver)
ResourceEditor(ResourceLoader resourceLoader, boolean ignoreUnresolvablePlaceholders)
Deprecated.as of Spring 3.1 in favor ofResourceEditor(ResourceLoader, PropertyResolver, boolean)
ResourceEditor(ResourceLoader resourceLoader, PropertyResolver propertyResolver)
Create a new instance of theResourceEditor
class using the givenResourceLoader
andPropertyResolver
.ResourceEditor(ResourceLoader resourceLoader, PropertyResolver propertyResolver, boolean ignoreUnresolvablePlaceholders)
Create a new instance of theResourceEditor
class using the givenResourceLoader
.
Method Summary
Methods Modifier and Type Method and Description String
getAsText()
protected String
resolvePath(String path)
Resolve the given path, replacing placeholders with corresponding property values from theenvironment
if necessary.void
setAsText(String text)
Methods inherited from class java.beans.PropertyEditorSupport
addPropertyChangeListener, firePropertyChange, getCustomEditor, getJavaInitializationString, getSource, getTags, getValue, isPaintable, paintValue, removePropertyChangeListener, setSource, setValue, supportsCustomEditor
-
Constructor Detail
ResourceEditor
public ResourceEditor()
Create a new instance of theResourceEditor
class using aDefaultResourceLoader
andStandardEnvironment
.
ResourceEditor
@Deprecated public ResourceEditor(ResourceLoader resourceLoader)
Deprecated. as of Spring 3.1 in favor ofResourceEditor(ResourceLoader, PropertyResolver)
Create a new instance of theResourceEditor
class using the givenResourceLoader
and aStandardEnvironment
.- Parameters:
-
resourceLoader
- theResourceLoader
to use
ResourceEditor
@Deprecated public ResourceEditor(ResourceLoader resourceLoader, boolean ignoreUnresolvablePlaceholders)
Deprecated. as of Spring 3.1 in favor ofResourceEditor(ResourceLoader, PropertyResolver, boolean)
Create a new instance of theResourceEditor
class using the givenResourceLoader
.- Parameters:
-
resourceLoader
- theResourceLoader
to use -
ignoreUnresolvablePlaceholders
- whether to ignore unresolvable placeholders if no corresponding property could be found
ResourceEditor
public ResourceEditor(ResourceLoader resourceLoader, PropertyResolver propertyResolver)
Create a new instance of theResourceEditor
class using the givenResourceLoader
andPropertyResolver
.- Parameters:
-
resourceLoader
- theResourceLoader
to use -
propertyResolver
- thePropertyResolver
to use
ResourceEditor
public ResourceEditor(ResourceLoader resourceLoader, PropertyResolver propertyResolver, boolean ignoreUnresolvablePlaceholders)
Create a new instance of theResourceEditor
class using the givenResourceLoader
.- Parameters:
-
resourceLoader
- theResourceLoader
to use -
propertyResolver
- thePropertyResolver
to use -
ignoreUnresolvablePlaceholders
- whether to ignore unresolvable placeholders if no corresponding property could be found in the givenpropertyResolver
Method Detail
setAsText
public void setAsText(String text)
- Specified by:
-
setAsText
in interfacePropertyEditor
- Overrides:
-
setAsText
in classPropertyEditorSupport
resolvePath
protected String resolvePath(String path)
Resolve the given path, replacing placeholders with corresponding property values from theenvironment
if necessary.- Parameters:
-
path
- the original file path - Returns:
- the resolved file path
- See Also:
-
PropertyResolver.resolvePlaceholders(java.lang.String)
,PropertyResolver.resolveRequiredPlaceholders(java.lang.String)
getAsText
public String getAsText()
- Specified by:
-
getAsText
in interfacePropertyEditor
- Overrides:
-
getAsText
in classPropertyEditorSupport