aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules/World/Archiver/ArchiverModule.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/CoreModules/World/Archiver/ArchiverModule.cs')
-rw-r--r--OpenSim/Region/CoreModules/World/Archiver/ArchiverModule.cs25
1 files changed, 16 insertions, 9 deletions
diff --git a/OpenSim/Region/CoreModules/World/Archiver/ArchiverModule.cs b/OpenSim/Region/CoreModules/World/Archiver/ArchiverModule.cs
index bf3b124..abf3713 100644
--- a/OpenSim/Region/CoreModules/World/Archiver/ArchiverModule.cs
+++ b/OpenSim/Region/CoreModules/World/Archiver/ArchiverModule.cs
@@ -32,6 +32,8 @@ using System.Reflection;
32using log4net; 32using log4net;
33using NDesk.Options; 33using NDesk.Options;
34using Nini.Config; 34using Nini.Config;
35using OpenSim.Framework;
36using OpenSim.Framework.Console;
35using OpenSim.Region.Framework.Interfaces; 37using OpenSim.Region.Framework.Interfaces;
36using OpenSim.Region.Framework.Scenes; 38using OpenSim.Region.Framework.Scenes;
37 39
@@ -117,7 +119,7 @@ namespace OpenSim.Region.CoreModules.World.Archiver
117// 119//
118// foreach (string param in mainParams) 120// foreach (string param in mainParams)
119// m_log.DebugFormat("GOT PARAM [{0}]", param); 121// m_log.DebugFormat("GOT PARAM [{0}]", param);
120 122
121 if (mainParams.Count > 2) 123 if (mainParams.Count > 2)
122 { 124 {
123 DearchiveRegion(mainParams[2], mergeOar, skipAssets, Guid.Empty); 125 DearchiveRegion(mainParams[2], mergeOar, skipAssets, Guid.Empty);
@@ -146,17 +148,22 @@ namespace OpenSim.Region.CoreModules.World.Archiver
146 ops.Add("noassets", delegate(string v) { options["noassets"] = v != null; }); 148 ops.Add("noassets", delegate(string v) { options["noassets"] = v != null; });
147 ops.Add("publish", v => options["wipe-owners"] = v != null); 149 ops.Add("publish", v => options["wipe-owners"] = v != null);
148 ops.Add("perm=", delegate(string v) { options["checkPermissions"] = v; }); 150 ops.Add("perm=", delegate(string v) { options["checkPermissions"] = v; });
151 ops.Add("all", delegate(string v) { options["all"] = v != null; });
149 152
150 List<string> mainParams = ops.Parse(cmdparams); 153 List<string> mainParams = ops.Parse(cmdparams);
151 154
155 string path;
152 if (mainParams.Count > 2) 156 if (mainParams.Count > 2)
153 { 157 path = mainParams[2];
154 ArchiveRegion(mainParams[2], options);
155 }
156 else 158 else
157 { 159 path = DEFAULT_OAR_BACKUP_FILENAME;
158 ArchiveRegion(DEFAULT_OAR_BACKUP_FILENAME, options); 160
159 } 161 // Not doing this right now as this causes some problems with auto-backup systems. Maybe a force flag is
162 // needed
163// if (!ConsoleUtil.CheckFileDoesNotExist(MainConsole.Instance, path))
164// return;
165
166 ArchiveRegion(path, options);
160 } 167 }
161 168
162 public void ArchiveRegion(string savePath, Dictionary<string, object> options) 169 public void ArchiveRegion(string savePath, Dictionary<string, object> options)
@@ -169,7 +176,7 @@ namespace OpenSim.Region.CoreModules.World.Archiver
169 m_log.InfoFormat( 176 m_log.InfoFormat(
170 "[ARCHIVER]: Writing archive for region {0} to {1}", Scene.RegionInfo.RegionName, savePath); 177 "[ARCHIVER]: Writing archive for region {0} to {1}", Scene.RegionInfo.RegionName, savePath);
171 178
172 new ArchiveWriteRequestPreparation(this, savePath, requestId).ArchiveRegion(options); 179 new ArchiveWriteRequest(Scene, savePath, requestId).ArchiveRegion(options);
173 } 180 }
174 181
175 public void ArchiveRegion(Stream saveStream) 182 public void ArchiveRegion(Stream saveStream)
@@ -184,7 +191,7 @@ namespace OpenSim.Region.CoreModules.World.Archiver
184 191
185 public void ArchiveRegion(Stream saveStream, Guid requestId, Dictionary<string, object> options) 192 public void ArchiveRegion(Stream saveStream, Guid requestId, Dictionary<string, object> options)
186 { 193 {
187 new ArchiveWriteRequestPreparation(this, saveStream, requestId).ArchiveRegion(options); 194 new ArchiveWriteRequest(Scene, saveStream, requestId).ArchiveRegion(options);
188 } 195 }
189 196
190 public void DearchiveRegion(string loadPath) 197 public void DearchiveRegion(string loadPath)