* Committing first version of SVN Backup Module

This is a module which allows you to periodically export a serialised version of your region to a SVN repository and store it there. It is still a work in progress and is currently disabled and incomplete, but some of the functionality is demonstratable.
* Enjoy.
This commit is contained in:
Adam Frisby
2008-04-17 11:42:06 +00:00
parent 4f41988ef7
commit 05708771bb
4 changed files with 208 additions and 6 deletions

View File

@@ -12,19 +12,17 @@ using System.IO;
namespace OpenSim.Region.Environment.Modules.ExportSerialiser
{
public class ExportSerialisationModule : IRegionModule
public class ExportSerialisationModule : IRegionModule, OpenSim.Region.Environment.Modules.ExportSerialiser.IRegionSerialiser
{
private List<Scene> m_regions = new List<Scene>();
private List<IFileSerialiser> m_serialisers = new List<IFileSerialiser>();
private Commander m_commander = new Commander("Export");
private string m_savedir = "exports" + "/";
private List<string> SerialiseRegion(Scene scene)
public List<string> SerialiseRegion(Scene scene, string saveDir)
{
List<string> results = new List<string>();
string saveDir = m_savedir + scene.RegionInfo.RegionID.ToString() + "/";
if (!Directory.Exists(saveDir))
{
Directory.CreateDirectory(saveDir);
@@ -62,6 +60,7 @@ namespace OpenSim.Region.Environment.Modules.ExportSerialiser
{
scene.RegisterModuleCommander("Export", m_commander);
scene.EventManager.OnPluginConsole += EventManager_OnPluginConsole;
scene.RegisterModuleInterface<IRegionSerialiser>(this);
lock (m_regions)
{
@@ -88,7 +87,7 @@ namespace OpenSim.Region.Environment.Modules.ExportSerialiser
{
if (region.RegionInfo.RegionName == (string)args[0])
{
List<string> results = SerialiseRegion(region);
List<string> results = SerialiseRegion(region, m_savedir + region.RegionInfo.RegionID.ToString() + "/");
}
}
}
@@ -97,7 +96,7 @@ namespace OpenSim.Region.Environment.Modules.ExportSerialiser
{
foreach (Scene region in m_regions)
{
List<string> results = SerialiseRegion(region);
List<string> results = SerialiseRegion(region, m_savedir + region.RegionInfo.RegionID.ToString() + "/");
}
}