Class PluginConfigSourceImpl
java.lang.Object
com.biglybt.pifimpl.local.config.PluginConfigSourceImpl
- All Implemented Interfaces:
COConfigurationListener, ParameterListener, PluginConfigSource
public class PluginConfigSourceImpl
extends Object
implements COConfigurationListener, ParameterListener, PluginConfigSource
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Mapprivate booleanprivate booleanprivate Stringprivate booleanprivate LightHashSetprivate PluginConfigprivate File -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidvoidIf your plugin previously used to store data in the main configuration file, you can call this method (which needs to be done soon after initialization) which will move all monitored parameters over to this object.Returns a file object which represents the location of the configuration file that this object interacts with.voidThis initializes this configuration object and gets the external configuration file integrated with the client.voidparameterChanged(String full_param) Called, when a parameter has changed.voidregisterParameter(String full_param) voidsave(boolean force) Manually saves the configuration settings recorded by this object to disk.voidsetConfigFilename(String filename) This method sets the filename for the configuration file that this object links to - this must be done before thePluginConfigSource.initialize()method is called.private voidshouldBeInitialised(boolean yes) private StringtoPluginName(String name)
-
Field Details
-
plugin_config
-
source_file
-
initialised
private boolean initialised -
data_map
-
key_prefix
-
dirty
private boolean dirty -
migrate_settings
private boolean migrate_settings -
params_monitored
-
-
Constructor Details
-
PluginConfigSourceImpl
-
-
Method Details
-
initialize
public void initialize()Description copied from interface:PluginConfigSourceThis initializes this configuration object and gets the external configuration file integrated with the client.It performs the following steps:
- Loads the data of any existing config file into the client.
- Registers all parameters in the file to be stored inside this configuration file (so all changes will be stored here).
- Adds a hook to allow it to be automatically saved when the client autosaves its own internal configuration files.
- Adds a hook to intercept any configuration settings created and used by the plugin and stores it internally (rather than being saved in the main the client config file).
- Specified by:
initializein interfacePluginConfigSource
-
getConfigFile
Description copied from interface:PluginConfigSourceReturns a file object which represents the location of the configuration file that this object interacts with.- Specified by:
getConfigFilein interfacePluginConfigSource
-
setConfigFilename
Description copied from interface:PluginConfigSourceThis method sets the filename for the configuration file that this object links to - this must be done before thePluginConfigSource.initialize()method is called.- Specified by:
setConfigFilenamein interfacePluginConfigSource- Parameters:
filename- The filename to use.
-
save
public void save(boolean force) Description copied from interface:PluginConfigSourceManually saves the configuration settings recorded by this object to disk. This isn't normally required, as the client will automatically save the configuration file when the main configuration file is saved, but you can choose to save on demand if you wish.- Specified by:
savein interfacePluginConfigSource- Parameters:
force- true if you want the file to be written to regardless of whether there are any changes, false if you only want to save the file if there are unsaved changes.
-
configurationSaved
public void configurationSaved()- Specified by:
configurationSavedin interfaceCOConfigurationListener
-
parameterChanged
Description copied from interface:ParameterListenerCalled, when a parameter has changed. The listener could only react if the parameter name is relevant. Or the listener can just read all parameters again.- Specified by:
parameterChangedin interfaceParameterListener- Parameters:
full_param- the name of the parameter that has changed
-
registerParameter
-
getUsedKeyPrefix
-
toPluginName
-
shouldBeInitialised
private void shouldBeInitialised(boolean yes) -
forceSettingsMigration
public void forceSettingsMigration()Description copied from interface:PluginConfigSourceIf your plugin previously used to store data in the main configuration file, you can call this method (which needs to be done soon after initialization) which will move all monitored parameters over to this object.You have to call this method before you initialize the object. It's also recommended that if you call this method, that you call
PluginConfigSource.save(boolean)to save any settings copied across - probably best to be done as the last thing of thePlugin.initialize(PluginInterface)method.- Specified by:
forceSettingsMigrationin interfacePluginConfigSource
-