Package org.apache.velocity.tools.config
Class ConfigurationUtils
- java.lang.Object
-
- org.apache.velocity.tools.config.ConfigurationUtils
-
public class ConfigurationUtils extends Object
Utility methods for handling tool configurations.- Version:
- $Id: ConfigurationUtils.java 511959 2007-02-26 19:24:39Z nbubna $
- Author:
- Nathan Bubna
-
-
Field Summary
Fields Modifier and Type Field Description static StringAUTOLOADED_PROPS_PATHstatic StringAUTOLOADED_XML_PATHstatic StringCONFIG_FACTORY_METHODstatic StringGENERIC_DEFAULTS_PATHstatic ConfigurationUtilsINSTANCEstatic StringSTRUTS_DEFAULTS_PATHstatic StringSYSTEM_PROPERTY_KEYstatic StringVIEW_DEFAULTS_PATH
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static voidclean(Configuration config)Convenience method that automatically creates a newConfigurationCleanerand applies it to the specifiedConfiguration.static ToolboxFactorycreateFactory()Returns a new, standardToolboxFactoryconfigured with the results of bothgetAutoLoaded()andfindFromSystemProperty().static FactoryConfigurationfind(String path)Searches for a configuration file at the specified path and returns it in the form of aFactoryConfiguration.static FactoryConfigurationfindFromSystemProperty()Returns aFactoryConfigurationloaded from the path specified in the "org.apache.velocity.tools" system property (if any).static FactoryConfigurationfindInClasspath(String path)static FactoryConfigurationfindInClasspath(String path, Object caller)Searches the classpath for a configuration file matching the specified path.static FactoryConfigurationfindInFileSystem(String path)Searches the file system for a configuration file matching the specified path.static FactoryConfigurationgetAutoLoaded()Returns aFactoryConfigurationincluding allgetDefaultTools()as well as any tools that can be automatically loaded from "tools.xml" or "tools.properties" found at the root of the classpath or in the current directory.static FactoryConfigurationgetAutoLoaded(boolean includeDefaults)Returns aFactoryConfigurationcomposed, in order of the following configurations:getDefaultTools()(only if includeDefaults istrue) All "tools.xml" configurations found in the classpath root, in the order found All "tools.properties" configurations found in the classpath root, in the order found The "tools.xml" file in the current directory (if any) The "tools.properties" file in the current directory (if any) If the includeDefaults parameter is null and no such files described above can be found, then the configuration returned by this method will be empty, but it should never benull.static FactoryConfigurationgetDefaultTools()Returns the "default"FactoryConfiguration.static FactoryConfigurationgetFromClass(Class factory)static FactoryConfigurationgetFromClass(String classname)static FactoryConfigurationgetGenericTools()Returns aFactoryConfigurationincluding all default "GenericTools" available and no others.ConfigurationUtilsgetInstance()static FactoryConfigurationgetVelocityStruts()Returns aFactoryConfigurationincluding all default "VelocityStruts" tools available as well as the default "VelocityView" tools and "GenericTools".static FactoryConfigurationgetVelocityView()Returns aFactoryConfigurationincluding all default "VelocityView" tools available as well as the default "GenericTools".static FactoryConfigurationload(String path)Returns aFactoryConfigurationloaded from a configuration file at the specified path.static FactoryConfigurationread(URL url)Returns aFactoryConfigurationread from a known configuration file type at the specifiedURL.
-
-
-
Field Detail
-
GENERIC_DEFAULTS_PATH
public static final String GENERIC_DEFAULTS_PATH
- See Also:
- Constant Field Values
-
VIEW_DEFAULTS_PATH
public static final String VIEW_DEFAULTS_PATH
- See Also:
- Constant Field Values
-
STRUTS_DEFAULTS_PATH
public static final String STRUTS_DEFAULTS_PATH
- See Also:
- Constant Field Values
-
AUTOLOADED_XML_PATH
public static final String AUTOLOADED_XML_PATH
- See Also:
- Constant Field Values
-
AUTOLOADED_PROPS_PATH
public static final String AUTOLOADED_PROPS_PATH
- See Also:
- Constant Field Values
-
SYSTEM_PROPERTY_KEY
public static final String SYSTEM_PROPERTY_KEY
- See Also:
- Constant Field Values
-
INSTANCE
public static final ConfigurationUtils INSTANCE
-
CONFIG_FACTORY_METHOD
public static final String CONFIG_FACTORY_METHOD
- See Also:
- Constant Field Values
-
-
Method Detail
-
getInstance
public ConfigurationUtils getInstance()
-
getDefaultTools
public static FactoryConfiguration getDefaultTools()
Returns the "default"FactoryConfiguration. This includes all the standard tools developed by this project and available in the jar being used. In other words, if the velocity-tools-generic-2.x.jar is being used, then only the generic tools will be included. If the velocity-tools-struts-2.x.jar is being used, then all VelocityTools will be available. This also means that subclasses in the larger jars will override their superclasses. So, if you are using the VelocityStruts jar, then your $link reference will be a StrutsLinkTool. If you are using the VelocityView jar, it will be a standard LinkTool.
-
getGenericTools
public static FactoryConfiguration getGenericTools()
Returns aFactoryConfigurationincluding all default "GenericTools" available and no others.
-
getVelocityView
public static FactoryConfiguration getVelocityView()
Returns aFactoryConfigurationincluding all default "VelocityView" tools available as well as the default "GenericTools".
-
getVelocityStruts
public static FactoryConfiguration getVelocityStruts()
Returns aFactoryConfigurationincluding all default "VelocityStruts" tools available as well as the default "VelocityView" tools and "GenericTools".
-
getAutoLoaded
public static FactoryConfiguration getAutoLoaded()
Returns aFactoryConfigurationincluding allgetDefaultTools()as well as any tools that can be automatically loaded from "tools.xml" or "tools.properties" found at the root of the classpath or in the current directory.- See Also:
getAutoLoaded(boolean includeDefaults)
-
getAutoLoaded
public static FactoryConfiguration getAutoLoaded(boolean includeDefaults)
Returns aFactoryConfigurationcomposed, in order of the following configurations:getDefaultTools()(only if includeDefaults istrue)- All "tools.xml" configurations found in the classpath root, in the order found
- All "tools.properties" configurations found in the classpath root, in the order found
- The "tools.xml" file in the current directory (if any)
- The "tools.properties" file in the current directory (if any)
null.
-
findFromSystemProperty
public static FactoryConfiguration findFromSystemProperty()
Returns aFactoryConfigurationloaded from the path specified in the "org.apache.velocity.tools" system property (if any). If no such property has been setnullwill be returned.- Throws:
org.apache.velocity.exception.ResourceNotFoundException- if the system property has a value but no configuration file was found at the specified location
-
createFactory
public static ToolboxFactory createFactory()
Returns a new, standardToolboxFactoryconfigured with the results of bothgetAutoLoaded()andfindFromSystemProperty().
-
clean
public static void clean(Configuration config)
Convenience method that automatically creates a newConfigurationCleanerand applies it to the specifiedConfiguration.
-
load
public static FactoryConfiguration load(String path)
Returns aFactoryConfigurationloaded from a configuration file at the specified path. If no such file is found at that path, this will throw aResourceNotFoundException.- See Also:
find(String path)
-
find
public static FactoryConfiguration find(String path)
Searches for a configuration file at the specified path and returns it in the form of aFactoryConfiguration. This method will look for a matching file in both the classpath and the file system. If perchance a match is found in both, then both are loaded and the configuration loaded from the file system is given precedence (i.e. it is added onto the other). If no match is found in either, then this will returnnull.
-
findInFileSystem
public static FactoryConfiguration findInFileSystem(String path)
Searches the file system for a configuration file matching the specified path. If found, it will read and return it as aFactoryConfiguration. If not found, this will returnnull.- Throws:
IllegalStateException- if the file exists, but its path could not be converted to a URL for reading.
-
findInClasspath
public static FactoryConfiguration findInClasspath(String path)
-
findInClasspath
public static FactoryConfiguration findInClasspath(String path, Object caller)
Searches the classpath for a configuration file matching the specified path. If found, it will read and return it as aFactoryConfiguration. If not found, this will returnnull. If there are multiple matching resources in the classpath, then they will be added together in the order found (i.e. the last one will have precedence).
-
read
public static FactoryConfiguration read(URL url)
Returns aFactoryConfigurationread from a known configuration file type at the specifiedURL. If the file is missing or unreadable, this will simply returnnull(i.e. if an IOException is thrown).- Throws:
UnsupportedOperationException- if the file type (identified via suffix) is neither ".xml" or ".properties"
-
getFromClass
public static FactoryConfiguration getFromClass(String classname)
-
getFromClass
public static FactoryConfiguration getFromClass(Class factory)
-
-