diff options
Diffstat (limited to 'OpenSim/Region/OptionalModules/World/AutoBackup/AutoBackupModule.cs')
-rw-r--r-- | OpenSim/Region/OptionalModules/World/AutoBackup/AutoBackupModule.cs | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/OpenSim/Region/OptionalModules/World/AutoBackup/AutoBackupModule.cs b/OpenSim/Region/OptionalModules/World/AutoBackup/AutoBackupModule.cs index f8d9060..7593b95 100644 --- a/OpenSim/Region/OptionalModules/World/AutoBackup/AutoBackupModule.cs +++ b/OpenSim/Region/OptionalModules/World/AutoBackup/AutoBackupModule.cs | |||
@@ -40,6 +40,9 @@ using OpenSim.Region.Framework.Interfaces; | |||
40 | 40 | ||
41 | /* | 41 | /* |
42 | * Config Settings Documentation. | 42 | * Config Settings Documentation. |
43 | * At the TOP LEVEL, e.g. in OpenSim.ini, we have one option: | ||
44 | * In the [Modules] section: | ||
45 | * AutoBackupModule: True/False. Default: False. If True, use the auto backup module. Otherwise it will be disabled regardless of what settings are in Regions.ini! | ||
43 | * EACH REGION in e.g. Regions/Regions.ini can have the following options: | 46 | * EACH REGION in e.g. Regions/Regions.ini can have the following options: |
44 | * AutoBackup: True/False. Default: False. If True, activate auto backup functionality. | 47 | * AutoBackup: True/False. Default: False. If True, activate auto backup functionality. |
45 | * This is the only required option for enabling auto-backup; the other options have sane defaults. | 48 | * This is the only required option for enabling auto-backup; the other options have sane defaults. |
@@ -166,6 +169,7 @@ namespace OpenSim.Region.OptionalModules.World.AutoBackup | |||
166 | readonly Dictionary<IScene, AutoBackupModuleState> states = new Dictionary<IScene, AutoBackupModuleState>(4); | 169 | readonly Dictionary<IScene, AutoBackupModuleState> states = new Dictionary<IScene, AutoBackupModuleState>(4); |
167 | readonly Dictionary<double, Timer> timers = new Dictionary<double, Timer>(1); | 170 | readonly Dictionary<double, Timer> timers = new Dictionary<double, Timer>(1); |
168 | readonly Dictionary<Timer, List<IScene>> timerMap = new Dictionary<Timer, List<IScene>>(1); | 171 | readonly Dictionary<Timer, List<IScene>> timerMap = new Dictionary<Timer, List<IScene>>(1); |
172 | private bool m_Enabled = false; //Whether the shared module should be enabled at all. NOT the same as m_Enabled in AutoBackupModuleState! | ||
169 | 173 | ||
170 | public AutoBackupModule () | 174 | public AutoBackupModule () |
171 | { | 175 | { |
@@ -175,11 +179,24 @@ namespace OpenSim.Region.OptionalModules.World.AutoBackup | |||
175 | #region IRegionModuleBase implementation | 179 | #region IRegionModuleBase implementation |
176 | void IRegionModuleBase.Initialise (Nini.Config.IConfigSource source) | 180 | void IRegionModuleBase.Initialise (Nini.Config.IConfigSource source) |
177 | { | 181 | { |
178 | //I have no overall config settings to care about. | 182 | //Determine if we have been enabled at all in OpenSim.ini -- this is part and parcel of being an optional module |
183 | IConfig moduleConfig = source.Configs["Modules"]; | ||
184 | if (moduleConfig != null) | ||
185 | { | ||
186 | m_Enabled = moduleConfig.GetBoolean("AutoBackupModule", false); | ||
187 | if (m_Enabled) | ||
188 | { | ||
189 | m_log.Info("[AUTO BACKUP MODULE]: AutoBackupModule enabled"); | ||
190 | } | ||
191 | |||
192 | } | ||
179 | } | 193 | } |
180 | 194 | ||
181 | void IRegionModuleBase.Close () | 195 | void IRegionModuleBase.Close () |
182 | { | 196 | { |
197 | if(!m_Enabled) | ||
198 | return; | ||
199 | |||
183 | //We don't want any timers firing while the sim's coming down; strange things may happen. | 200 | //We don't want any timers firing while the sim's coming down; strange things may happen. |
184 | StopAllTimers(); | 201 | StopAllTimers(); |
185 | } | 202 | } |
@@ -191,6 +208,9 @@ namespace OpenSim.Region.OptionalModules.World.AutoBackup | |||
191 | 208 | ||
192 | void IRegionModuleBase.RemoveRegion (Framework.Scenes.Scene scene) | 209 | void IRegionModuleBase.RemoveRegion (Framework.Scenes.Scene scene) |
193 | { | 210 | { |
211 | if(!m_Enabled) | ||
212 | return; | ||
213 | |||
194 | AutoBackupModuleState abms = states[scene]; | 214 | AutoBackupModuleState abms = states[scene]; |
195 | Timer timer = abms.GetTimer(); | 215 | Timer timer = abms.GetTimer(); |
196 | List<IScene> list = timerMap[timer]; | 216 | List<IScene> list = timerMap[timer]; |
@@ -205,6 +225,9 @@ namespace OpenSim.Region.OptionalModules.World.AutoBackup | |||
205 | 225 | ||
206 | void IRegionModuleBase.RegionLoaded (Framework.Scenes.Scene scene) | 226 | void IRegionModuleBase.RegionLoaded (Framework.Scenes.Scene scene) |
207 | { | 227 | { |
228 | if(!m_Enabled) | ||
229 | return; | ||
230 | |||
208 | //This really ought not to happen, but just in case, let's pretend it didn't... | 231 | //This really ought not to happen, but just in case, let's pretend it didn't... |
209 | if(scene == null) | 232 | if(scene == null) |
210 | return; | 233 | return; |