Class BaseModulesFinder
- java.lang.Object
-
- com.marklogic.client.ext.helper.LoggingObject
-
- com.marklogic.client.ext.modulesloader.impl.BaseModulesFinder
-
- All Implemented Interfaces:
ModulesFinder
- Direct Known Subclasses:
DefaultModulesFinder,TestServerModulesFinder
public abstract class BaseModulesFinder extends LoggingObject implements ModulesFinder
Abstract implementation that provides implementations for loading all the different kinds of modules. Subclasses need to override the findModulesWithResolvedBaseDir method.
-
-
Field Summary
-
Fields inherited from class com.marklogic.client.ext.helper.LoggingObject
logger
-
-
Constructor Summary
Constructors Constructor Description BaseModulesFinder()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected voidaddAssetDirectories(Modules modules, java.lang.String baseDir)protected voidaddNamespaces(Modules modules, java.lang.String baseDir)protected voidaddOptions(Modules modules, java.lang.String baseDir)protected voidaddPropertiesFile(Modules modules, java.lang.String baseDir)Only supports JSON for now.protected voidaddServices(Modules modules, java.lang.String baseDir)protected voidaddTransforms(Modules modules, java.lang.String baseDir)protected java.lang.StringdecodeAssetDirectoryResource(java.lang.String resourceFile)There may be other characters that need decoding, but for now, only %20 is being converted back into a space.ModulesfindModules(java.lang.String baseDir)protected abstract ModulesfindModulesWithResolvedBaseDir(java.lang.String resolvedBaseDir)protected java.util.List<org.springframework.core.io.Resource>findResources(java.lang.String moduleType, java.lang.String basePath, java.lang.String... paths)protected java.util.List<java.lang.String>getRecognizedPaths()booleanisIncludeUnrecognizedPathsAsAssetPaths()voidsetIncludeUnrecognizedPathsAsAssetPaths(boolean includeUnrecognizedPathsAsAssetPaths)voidsetNamespacesPath(java.lang.String namespacesPath)voidsetOptionsPath(java.lang.String optionsPath)voidsetServicesPath(java.lang.String servicesPath)voidsetTransformsPath(java.lang.String transformsPath)-
Methods inherited from class com.marklogic.client.ext.helper.LoggingObject
format
-
-
-
-
Method Detail
-
addPropertiesFile
protected void addPropertiesFile(Modules modules, java.lang.String baseDir)
Only supports JSON for now.- Parameters:
modules-baseDir-
-
addAssetDirectories
protected void addAssetDirectories(Modules modules, java.lang.String baseDir)
-
decodeAssetDirectoryResource
protected java.lang.String decodeAssetDirectoryResource(java.lang.String resourceFile)
There may be other characters that need decoding, but for now, only %20 is being converted back into a space. The reason %20 exists is because a Resource that represents a potential asset directory is accessed as a URL in order to support jar and war files. Accessing the directory as a URL results in spaces being converted to %20. In order to construct a File, these must be converted back into spaces. It may be that performing a full URL decoding on the resourceFile is the correct solution, just don't have enough test cases to know that this is safe for sure.- Parameters:
resourceFile-- Returns:
- decoded resource path
-
getRecognizedPaths
protected java.util.List<java.lang.String> getRecognizedPaths()
-
addNamespaces
protected void addNamespaces(Modules modules, java.lang.String baseDir)
-
addOptions
protected void addOptions(Modules modules, java.lang.String baseDir)
-
addServices
protected void addServices(Modules modules, java.lang.String baseDir)
-
addTransforms
protected void addTransforms(Modules modules, java.lang.String baseDir)
-
findResources
protected java.util.List<org.springframework.core.io.Resource> findResources(java.lang.String moduleType, java.lang.String basePath, java.lang.String... paths)- Parameters:
moduleType- used for a log messagebasePath-paths-- Returns:
- list of resources
-
setServicesPath
public void setServicesPath(java.lang.String servicesPath)
-
setOptionsPath
public void setOptionsPath(java.lang.String optionsPath)
-
setNamespacesPath
public void setNamespacesPath(java.lang.String namespacesPath)
-
setTransformsPath
public void setTransformsPath(java.lang.String transformsPath)
-
isIncludeUnrecognizedPathsAsAssetPaths
public boolean isIncludeUnrecognizedPathsAsAssetPaths()
-
setIncludeUnrecognizedPathsAsAssetPaths
public void setIncludeUnrecognizedPathsAsAssetPaths(boolean includeUnrecognizedPathsAsAssetPaths)
-
findModules
public final Modules findModules(java.lang.String baseDir)
- Specified by:
findModulesin interfaceModulesFinder
-
findModulesWithResolvedBaseDir
protected abstract Modules findModulesWithResolvedBaseDir(java.lang.String resolvedBaseDir)
-
-