public class CompositeResourceAccessor extends AbstractResourceAccessor
ResourceAccessor that contains multiple sub-accessors and combines the results of all of them.
For the "overall" aggregate resource accessor, integrations should generally use SearchPathResourceAccessor instead of this.ResourceAccessor.NotFoundResource| Constructor and Description |
|---|
CompositeResourceAccessor(Collection<ResourceAccessor> resourceAccessors) |
CompositeResourceAccessor(ResourceAccessor... resourceAccessors) |
| Modifier and Type | Method and Description |
|---|---|
CompositeResourceAccessor |
addResourceAccessor(ResourceAccessor resourceAccessor) |
void |
close() |
List<String> |
describeLocations()
Returns a description of the places this classloader will look for paths.
|
List<Resource> |
getAll(String path)
Returns all
Resources at the given path. |
void |
removeResourceAccessor(ResourceAccessor resourceAccessor) |
List<Resource> |
search(String path,
boolean recursive)
Returns the path to all resources contained in the given path.
|
clone, describe, equals, get, get, get, getAttributes, getFieldValue, getObjectMetaData, getValuePath, has, hashCode, set, toStringfinalize, getClass, notify, notifyAll, wait, wait, waitget, getExisting, list, openStream, openStreamspublic CompositeResourceAccessor(ResourceAccessor... resourceAccessors)
public CompositeResourceAccessor(Collection<ResourceAccessor> resourceAccessors)
public CompositeResourceAccessor addResourceAccessor(ResourceAccessor resourceAccessor)
public void removeResourceAccessor(ResourceAccessor resourceAccessor)
public List<Resource> search(String path, boolean recursive) throws IOException
ResourceAccessorpath - The path to lookup resources in.recursive - Set to true and will return paths to contents in subdirectories as well.IOException - if there is an error searching the system.public List<Resource> getAll(String path) throws IOException
ResourceAccessorResources at the given path.
For many resource accessors (such as a file system), only one resource can exist at a given spot,
but some accessors (such as CompositeResourceAccessor or ClassLoaderResourceAccessor) can have multiple resources for a single path.
If the resourceAccessor returns multiple values, the returned List should be considered sorted for that resource accessor.
For example, ClassLoaderResourceAccessor returns them in order based on the configured classloader.
Order is important to pay attention to, because users may set GlobalConfiguration.DUPLICATE_FILE_MODE to pick the "best" file which is defined as
"the first file from this function".
IOException - if there is an unexpected error determining what is at the pathpublic List<String> describeLocations()
ResourceAccessorCopyright © 2022 Liquibase.org. All rights reserved.