aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/GridInterfaces
diff options
context:
space:
mode:
authorMW2007-08-08 17:11:02 +0000
committerMW2007-08-08 17:11:02 +0000
commitcf203cf5ee809d3832daafbed12eb130bd590f5c (patch)
treee34f1266ecd9d1434153156cec76f0dd4b08a368 /OpenSim/Region/GridInterfaces
parent* upgraded Tedd to 'developer' (diff)
downloadopensim-SC_OLD-cf203cf5ee809d3832daafbed12eb130bd590f5c.zip
opensim-SC_OLD-cf203cf5ee809d3832daafbed12eb130bd590f5c.tar.gz
opensim-SC_OLD-cf203cf5ee809d3832daafbed12eb130bd590f5c.tar.bz2
opensim-SC_OLD-cf203cf5ee809d3832daafbed12eb130bd590f5c.tar.xz
The startup set of assets in the local asset server can now be set from a xml file (OpenSimAssetSet.xml). (remember to make changes to the set, you will also need to delete the old asset .yap file, so that it is recreated).
Also the set of items in the OpenSim inventory Library can also now be set from a xml file (OpenSimLibrary.xml).
Diffstat (limited to 'OpenSim/Region/GridInterfaces')
-rw-r--r--OpenSim/Region/GridInterfaces/Local/LocalAssetServer.cs33
1 files changed, 31 insertions, 2 deletions
diff --git a/OpenSim/Region/GridInterfaces/Local/LocalAssetServer.cs b/OpenSim/Region/GridInterfaces/Local/LocalAssetServer.cs
index ea4824b..17d2680 100644
--- a/OpenSim/Region/GridInterfaces/Local/LocalAssetServer.cs
+++ b/OpenSim/Region/GridInterfaces/Local/LocalAssetServer.cs
@@ -31,6 +31,7 @@ using System.Threading;
31using Db4objects.Db4o; 31using Db4objects.Db4o;
32using Db4objects.Db4o.Query; 32using Db4objects.Db4o.Query;
33using libsecondlife; 33using libsecondlife;
34using Nini.Config;
34using OpenSim.Framework.Console; 35using OpenSim.Framework.Console;
35using OpenSim.Framework.Interfaces; 36using OpenSim.Framework.Interfaces;
36using OpenSim.Framework.Types; 37using OpenSim.Framework.Types;
@@ -345,7 +346,7 @@ namespace OpenSim.Region.GridInterfaces.Local
345 db.Set(store); 346 db.Set(store);
346 db.Commit(); 347 db.Commit();
347 348
348 Image = new AssetBase(); 349 /*Image = new AssetBase();
349 Image.FullID = new LLUUID("00000000-0000-2222-3333-000000000001"); 350 Image.FullID = new LLUUID("00000000-0000-2222-3333-000000000001");
350 Image.Name = "WelcomeNote"; 351 Image.Name = "WelcomeNote";
351 Image.Type = 7; 352 Image.Type = 7;
@@ -357,7 +358,35 @@ namespace OpenSim.Region.GridInterfaces.Local
357 store.UUID = Image.FullID; 358 store.UUID = Image.FullID;
358 db.Set(store); 359 db.Set(store);
359 db.Commit(); 360 db.Commit();
360 361 */
362
363 string filePath = Path.Combine(Util.configDir(), "OpenSimAssetSet.xml");
364 XmlConfigSource source = new XmlConfigSource(filePath);
365 ReadAssetDetails(source);
366 }
367
368 protected void ReadAssetDetails(IConfigSource source)
369 {
370 AssetBase newAsset = null;
371 for (int i = 0; i < source.Configs.Count; i++)
372 {
373 newAsset = new AssetBase();
374 newAsset.FullID = new LLUUID(source.Configs[i].GetString("assetID", LLUUID.Random().ToStringHyphenated()));
375 newAsset.Name = source.Configs[i].GetString("name", "");
376 newAsset.Type =(sbyte) source.Configs[i].GetInt("assetType", 0);
377 newAsset.InvType =(sbyte) source.Configs[i].GetInt("inventoryType", 0);
378 string fileName = source.Configs[i].GetString("fileName", "");
379 if (fileName != "")
380 {
381 this.LoadAsset(newAsset, false, fileName);
382 AssetStorage store = new AssetStorage();
383 store.Data = newAsset.Data;
384 store.Name = newAsset.Name;
385 store.UUID = newAsset.FullID;
386 db.Set(store);
387 db.Commit();
388 }
389 }
361 } 390 }
362 391
363 private void LoadAsset(AssetBase info, bool image, string filename) 392 private void LoadAsset(AssetBase info, bool image, string filename)