T - the concrete type of Configuration objects created by this
        builderpublic class ReloadingFileBasedConfigurationBuilder<T extends FileBasedConfiguration> extends FileBasedConfigurationBuilder<T> implements ReloadingControllerSupport
 A specialized ConfigurationBuilder implementation which can handle
 configurations read from a FileHandler and supports reloading.
 
 This builder class exposes a ReloadingController object controlling
 reload operations on the file-based configuration produced as result object.
 For the FileHandler defining the location of the configuration a
 configurable ReloadingDetector is created and associated with the
 controller. So changes on the source file can be detected. When ever such a
 change occurs, the result object of this builder is reset. This means that
 the next time getConfiguration() is called a new
 Configuration object is created which is loaded from the modified
 file.
 
 Client code interested in notifications can register a listener at this
 builder to receive reset events. When such an event is received the new
 result object can be requested. This way client applications can be sure to
 work with an up-to-date configuration. It is also possible to register a
 listener directly at the ReloadingController.
 
 This builder does not actively trigger the ReloadingController to
 perform a reload check. This has to be done by an external component, e.g. a
 timer.
 
| Constructor and Description | 
|---|
ReloadingFileBasedConfigurationBuilder(Class<? extends T> resCls)
Creates a new instance of  
ReloadingFileBasedConfigurationBuilder
 which produces result objects of the specified class. | 
ReloadingFileBasedConfigurationBuilder(Class<? extends T> resCls,
                                      Map<String,Object> params)
Creates a new instance of  
ReloadingFileBasedConfigurationBuilder
 which produces result objects of the specified class and sets
 initialization parameters. | 
ReloadingFileBasedConfigurationBuilder(Class<? extends T> resCls,
                                      Map<String,Object> params,
                                      boolean allowFailOnInit)
Creates a new instance of  
ReloadingFileBasedConfigurationBuilder
 which produces result objects of the specified class and sets
 initialization parameters and the allowFailOnInit flag. | 
| Modifier and Type | Method and Description | 
|---|---|
ReloadingFileBasedConfigurationBuilder<T> | 
configure(BuilderParameters... params)
Appends the content of the specified  
BuilderParameters objects to
 the current initialization parameters. | 
protected ReloadingDetector | 
createReloadingDetector(FileHandler handler,
                       FileBasedBuilderParametersImpl fbparams)
Creates a  
ReloadingDetector which monitors the passed in
 FileHandler. | 
ReloadingController | 
getReloadingController()
Returns the  
ReloadingController associated with this builder. | 
protected void | 
initFileHandler(FileHandler handler)
Initializes the new current  
FileHandler. | 
getDefaultEncoding, getFileHandler, initResultInstance, isAutoSave, save, setAutoSave, setDefaultEncoding, setParametersaddEventListener, addParameters, connectToReloadingController, copyEventListeners, copyEventListeners, createResult, createResultDeclaration, createResultInstance, fetchBeanHelper, fireBuilderEvent, getConfiguration, getParameters, getResultClass, getResultDeclaration, installEventListener, isAllowFailOnInit, removeEventListener, reset, resetParameters, resetResultpublic ReloadingFileBasedConfigurationBuilder(Class<? extends T> resCls, Map<String,Object> params)
ReloadingFileBasedConfigurationBuilder
 which produces result objects of the specified class and sets
 initialization parameters.resCls - the result class (must not be nullparams - a map with initialization parametersIllegalArgumentException - if the result class is nullpublic ReloadingFileBasedConfigurationBuilder(Class<? extends T> resCls, Map<String,Object> params, boolean allowFailOnInit)
ReloadingFileBasedConfigurationBuilder
 which produces result objects of the specified class and sets
 initialization parameters and the allowFailOnInit flag.resCls - the result class (must not be nullparams - a map with initialization parametersallowFailOnInit - the allowFailOnInit flagIllegalArgumentException - if the result class is nullpublic ReloadingFileBasedConfigurationBuilder(Class<? extends T> resCls)
ReloadingFileBasedConfigurationBuilder
 which produces result objects of the specified class.resCls - the result class (must not be nullIllegalArgumentException - if the result class is nullpublic ReloadingController getReloadingController()
ReloadingController associated with this builder.
 This controller is directly created. However, it becomes active (i.e.
 associated with a meaningful reloading detector) not before a result
 object was created.getReloadingController in interface ReloadingControllerSupportReloadingControllerpublic ReloadingFileBasedConfigurationBuilder<T> configure(BuilderParameters... params)
BuilderParameters objects to
 the current initialization parameters. Calling this method multiple times
 will create a union of the parameters provided. This method is overridden here to change the result type. This method is overridden here to change the result type.configure in class FileBasedConfigurationBuilder<T extends FileBasedConfiguration>params - an arbitrary number of objects with builder parametersprotected ReloadingDetector createReloadingDetector(FileHandler handler, FileBasedBuilderParametersImpl fbparams) throws ConfigurationException
ReloadingDetector which monitors the passed in
 FileHandler. This method is called each time a new result object
 is created with the current FileHandler. This implementation
 checks whether a ReloadingDetectorFactory is specified in the
 current parameters. If this is the case, it is invoked. Otherwise, a
 default factory is used to create a FileHandlerReloadingDetector
 object. Note: This method is called from a synchronized block.handler - the current FileHandlerfbparams - the object with parameters related to file-based buildersReloadingDetector for this FileHandlerConfigurationException - if an error occursprotected void initFileHandler(FileHandler handler) throws ConfigurationException
FileHandler. When a new result object
 is created, a new FileHandler is created, too, and associated
 with the result object. This new handler is passed to this method. If a
 location is defined, the result object is loaded from this location.
 Note: This method is called from a synchronized block. This implementation also takes care that a new
 ReloadingDetector for the new current FileHandler is
 created. Also, the reloading controller's reloading state has to be
 reset; after the creation of a new result object changes in the
 underlying configuration source have to be monitored again.initFileHandler in class FileBasedConfigurationBuilder<T extends FileBasedConfiguration>handler - the new current FileHandlerConfigurationException - if an error occursCopyright © 2001–2020 The Apache Software Foundation. All rights reserved.