public class ResourceScriptSource extends Object implements ScriptSource
ScriptSource implementation
 based on Spring's Resource
 abstraction. Loads the script text from the underlying Resource's
 File or
 InputStream,
 and tracks the last-modified timestamp of the file (if possible).InputStreamSource.getInputStream(), 
Resource.getFile(), 
ResourceLoader| Modifier and Type | Field and Description | 
|---|---|
protected Log | 
logger
Logger available to subclasses. 
 | 
| Constructor and Description | 
|---|
ResourceScriptSource(EncodedResource resource)
Create a new ResourceScriptSource for the given resource. 
 | 
ResourceScriptSource(Resource resource)
Create a new ResourceScriptSource for the given resource. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
Resource | 
getResource()
Return the  
Resource to load the
 script from. | 
String | 
getScriptAsString()
Retrieve the current script source text as String. 
 | 
boolean | 
isModified()
Indicate whether the underlying script data has been modified since
 the last time  
ScriptSource.getScriptAsString() was called. | 
protected long | 
retrieveLastModifiedTime()
Retrieve the current last-modified timestamp of the underlying resource. 
 | 
void | 
setEncoding(String encoding)
Set the encoding used for reading the script resource. 
 | 
String | 
suggestedClassName()
Determine a class name for the underlying script. 
 | 
String | 
toString()  | 
protected final Log logger
public ResourceScriptSource(EncodedResource resource)
resource - the EncodedResource to load the script frompublic ResourceScriptSource(Resource resource)
resource - the Resource to load the script from (using UTF-8 encoding)public void setEncoding(@Nullable String encoding)
The default value for regular Resources is "UTF-8".
 A null value implies the platform default.
public String getScriptAsString() throws IOException
ScriptSourcegetScriptAsString in interface ScriptSourceIOException - if script retrieval failedpublic boolean isModified()
ScriptSourceScriptSource.getScriptAsString() was called.
 Returns true if the script has not been read yet.isModified in interface ScriptSourceprotected long retrieveLastModifiedTime()
@Nullable public String suggestedClassName()
ScriptSourcesuggestedClassName in interface ScriptSourcenull if none available