Package org.springframework.boot.io
Class ApplicationResourceLoader
java.lang.Object
org.springframework.core.io.DefaultResourceLoader
org.springframework.boot.io.ApplicationResourceLoader
- All Implemented Interfaces:
org.springframework.core.io.ResourceLoader
public class ApplicationResourceLoader
extends org.springframework.core.io.DefaultResourceLoader
Class can be used to obtain
ResourceLoaders supporting
additional ProtocolResolvers registered in
spring.factories.
When not delegating to an existing resource loader, plain paths without a qualifier
will resolve to file system resources. This is different from
DefaultResourceLoader, which resolves unqualified paths to classpath resources.
- Since:
- 3.3.0
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfaceStrategy interface registered inspring.factoriesand used byApplicationResourceLoaderto determine the file path of loaded resource when it can also be represented as aFileSystemResource.Nested classes/interfaces inherited from class org.springframework.core.io.DefaultResourceLoader
org.springframework.core.io.DefaultResourceLoader.ClassPathContextResource -
Field Summary
Fields inherited from interface org.springframework.core.io.ResourceLoader
CLASSPATH_URL_PREFIX -
Constructor Summary
ConstructorsConstructorDescriptionDeprecated, for removal: This API element is subject to removal in a future version.ApplicationResourceLoader(ClassLoader classLoader) Deprecated, for removal: This API element is subject to removal in a future version.since 3.4.0 for removal in 4.0.0 in favor ofget(ClassLoader) -
Method Summary
Modifier and TypeMethodDescriptionstatic org.springframework.core.io.ResourceLoaderget()Return aResourceLoadersupporting additionalProtocolResolversregistered inspring.factories.static org.springframework.core.io.ResourceLoaderget(ClassLoader classLoader) Return aResourceLoadersupporting additionalProtocolResolversregistered inspring.factories.static org.springframework.core.io.ResourceLoaderget(ClassLoader classLoader, org.springframework.core.io.support.SpringFactoriesLoader springFactoriesLoader) Return aResourceLoadersupporting additionalProtocolResolversregistered inspring.factories.static org.springframework.core.io.ResourceLoaderget(ClassLoader classLoader, org.springframework.core.io.support.SpringFactoriesLoader springFactoriesLoader, Path workingDirectory) Return aResourceLoadersupporting additionalProtocolResolversregistered inspring.factories.static org.springframework.core.io.ResourceLoaderget(org.springframework.core.io.ResourceLoader resourceLoader) Return aResourceLoaderdelegating to the given resource loader and supporting additionalProtocolResolversregistered inspring.factories.static org.springframework.core.io.ResourceLoaderget(org.springframework.core.io.ResourceLoader resourceLoader, boolean preferFileResolution) Return aResourceLoaderdelegating to the given resource loader and supporting additionalProtocolResolversregistered inspring.factories.static org.springframework.core.io.ResourceLoaderget(org.springframework.core.io.ResourceLoader resourceLoader, org.springframework.core.io.support.SpringFactoriesLoader springFactoriesLoader) Return aResourceLoaderdelegating to the given resource loader and supporting additionalProtocolResolversregistered inspring.factories.protected org.springframework.core.io.ResourcegetResourceByPath(String path) Methods inherited from class org.springframework.core.io.DefaultResourceLoader
addProtocolResolver, clearResourceCaches, getClassLoader, getProtocolResolvers, getResource, getResourceCache, setClassLoader
-
Constructor Details
-
ApplicationResourceLoader
Deprecated, for removal: This API element is subject to removal in a future version.since 3.4.0 for removal in 4.0.0 in favor ofget()Create a newApplicationResourceLoader. -
ApplicationResourceLoader
@Deprecated(since="3.4.0", forRemoval=true) public ApplicationResourceLoader(ClassLoader classLoader) Deprecated, for removal: This API element is subject to removal in a future version.since 3.4.0 for removal in 4.0.0 in favor ofget(ClassLoader)Create a newApplicationResourceLoader.- Parameters:
classLoader- theClassLoaderto load class path resources with, ornullfor using the thread context class loader at the time of actual resource access
-
-
Method Details
-
getResourceByPath
- Overrides:
getResourceByPathin classorg.springframework.core.io.DefaultResourceLoader
-
get
public static org.springframework.core.io.ResourceLoader get()Return aResourceLoadersupporting additionalProtocolResolversregistered inspring.factories. The factories file will be resolved using the default class loader at the time this call is made. Resources will be resolved using the default class loader at the time they are resolved.- Returns:
- a
ResourceLoaderinstance - Since:
- 3.4.0
-
get
Return aResourceLoadersupporting additionalProtocolResolversregistered inspring.factories. The factories files and resources will be resolved using the specified class loader.- Parameters:
classLoader- the class loader to use ornullto use the default class loader- Returns:
- a
ResourceLoaderinstance - Since:
- 3.4.0
-
get
public static org.springframework.core.io.ResourceLoader get(ClassLoader classLoader, org.springframework.core.io.support.SpringFactoriesLoader springFactoriesLoader) Return aResourceLoadersupporting additionalProtocolResolversregistered inspring.factories.- Parameters:
classLoader- the class loader to use ornullto use the default class loaderspringFactoriesLoader- theSpringFactoriesLoaderused to loadProtocolResolvers- Returns:
- a
ResourceLoaderinstance - Since:
- 3.4.0
-
get
public static org.springframework.core.io.ResourceLoader get(ClassLoader classLoader, org.springframework.core.io.support.SpringFactoriesLoader springFactoriesLoader, Path workingDirectory) Return aResourceLoadersupporting additionalProtocolResolversregistered inspring.factories.- Parameters:
classLoader- the class loader to use ornullto use the default class loaderspringFactoriesLoader- theSpringFactoriesLoaderused to loadProtocolResolversworkingDirectory- the working directory- Returns:
- a
ResourceLoaderinstance - Since:
- 3.5.0
-
get
public static org.springframework.core.io.ResourceLoader get(org.springframework.core.io.ResourceLoader resourceLoader) Return aResourceLoaderdelegating to the given resource loader and supporting additionalProtocolResolversregistered inspring.factories. The factories file will be resolved using the default class loader at the time this call is made.- Parameters:
resourceLoader- the delegate resource loader- Returns:
- a
ResourceLoaderinstance - Since:
- 3.4.0
-
get
public static org.springframework.core.io.ResourceLoader get(org.springframework.core.io.ResourceLoader resourceLoader, boolean preferFileResolution) Return aResourceLoaderdelegating to the given resource loader and supporting additionalProtocolResolversregistered inspring.factories. The factories file will be resolved using the default class loader at the time this call is made.- Parameters:
resourceLoader- the delegate resource loaderpreferFileResolution- if file based resolution is preferred when a suitableApplicationResourceLoader.FilePathResolversupport the resource- Returns:
- a
ResourceLoaderinstance - Since:
- 3.4.1
-
get
public static org.springframework.core.io.ResourceLoader get(org.springframework.core.io.ResourceLoader resourceLoader, org.springframework.core.io.support.SpringFactoriesLoader springFactoriesLoader) Return aResourceLoaderdelegating to the given resource loader and supporting additionalProtocolResolversregistered inspring.factories.- Parameters:
resourceLoader- the delegate resource loaderspringFactoriesLoader- theSpringFactoriesLoaderused to loadProtocolResolvers- Returns:
- a
ResourceLoaderinstance - Since:
- 3.4.0
-
get()