diff options
author | John Hurliman | 2010-03-15 14:17:17 -0700 |
---|---|---|
committer | John Hurliman | 2010-03-15 14:17:17 -0700 |
commit | 33f5d0d1e90c3e63e06a200043a01c32768335c1 (patch) | |
tree | 8be352ceace25400a51c3a26ca1c2ce654788e55 | |
parent | Merge branch 'master' of ssh://opensimulator.org/var/git/opensim (diff) | |
download | opensim-SC_OLD-33f5d0d1e90c3e63e06a200043a01c32768335c1.zip opensim-SC_OLD-33f5d0d1e90c3e63e06a200043a01c32768335c1.tar.gz opensim-SC_OLD-33f5d0d1e90c3e63e06a200043a01c32768335c1.tar.bz2 opensim-SC_OLD-33f5d0d1e90c3e63e06a200043a01c32768335c1.tar.xz |
* UuidGatherer now tracks asset types for assets it discovers. The asset types are inferred from context
* OAR saving will attempt to correct unknown asset types before writing broken assets to the OAR file
7 files changed, 47 insertions, 33 deletions
diff --git a/OpenSim/Region/CoreModules/Asset/FlotsamAssetCache.cs b/OpenSim/Region/CoreModules/Asset/FlotsamAssetCache.cs index 967c0a1..37cdaae 100644 --- a/OpenSim/Region/CoreModules/Asset/FlotsamAssetCache.cs +++ b/OpenSim/Region/CoreModules/Asset/FlotsamAssetCache.cs | |||
@@ -642,7 +642,7 @@ namespace Flotsam.RegionModules.AssetCache | |||
642 | { | 642 | { |
643 | UuidGatherer gatherer = new UuidGatherer(m_AssetService); | 643 | UuidGatherer gatherer = new UuidGatherer(m_AssetService); |
644 | 644 | ||
645 | Dictionary<UUID, int> assets = new Dictionary<UUID, int>(); | 645 | Dictionary<UUID, AssetType> assets = new Dictionary<UUID, AssetType>(); |
646 | foreach (Scene s in m_Scenes) | 646 | foreach (Scene s in m_Scenes) |
647 | { | 647 | { |
648 | StampRegionStatusFile(s.RegionInfo.RegionID); | 648 | StampRegionStatusFile(s.RegionInfo.RegionID); |
diff --git a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs index ef10104..cfe3caa 100644 --- a/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs +++ b/OpenSim/Region/CoreModules/Avatar/Inventory/Archiver/InventoryArchiveWriteRequest.cs | |||
@@ -73,7 +73,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver | |||
73 | /// <value> | 73 | /// <value> |
74 | /// Used to collect the uuids of the assets that we need to save into the archive | 74 | /// Used to collect the uuids of the assets that we need to save into the archive |
75 | /// </value> | 75 | /// </value> |
76 | protected Dictionary<UUID, int> m_assetUuids = new Dictionary<UUID, int>(); | 76 | protected Dictionary<UUID, AssetType> m_assetUuids = new Dictionary<UUID, AssetType>(); |
77 | 77 | ||
78 | /// <value> | 78 | /// <value> |
79 | /// Used to collect the uuids of the users that we need to save into the archive | 79 | /// Used to collect the uuids of the users that we need to save into the archive |
@@ -305,7 +305,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver | |||
305 | } | 305 | } |
306 | 306 | ||
307 | new AssetsRequest( | 307 | new AssetsRequest( |
308 | new AssetsArchiver(m_archiveWriter), m_assetUuids.Keys, | 308 | new AssetsArchiver(m_archiveWriter), m_assetUuids, |
309 | m_scene.AssetService, ReceivedAllAssets).Execute(); | 309 | m_scene.AssetService, ReceivedAllAssets).Execute(); |
310 | } | 310 | } |
311 | 311 | ||
diff --git a/OpenSim/Region/CoreModules/Framework/InventoryAccess/HGAssetMapper.cs b/OpenSim/Region/CoreModules/Framework/InventoryAccess/HGAssetMapper.cs index 664f38d..58ce550 100644 --- a/OpenSim/Region/CoreModules/Framework/InventoryAccess/HGAssetMapper.cs +++ b/OpenSim/Region/CoreModules/Framework/InventoryAccess/HGAssetMapper.cs | |||
@@ -150,7 +150,7 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess | |||
150 | if (asset != null) | 150 | if (asset != null) |
151 | { | 151 | { |
152 | // OK, now fetch the inside. | 152 | // OK, now fetch the inside. |
153 | Dictionary<UUID, int> ids = new Dictionary<UUID, int>(); | 153 | Dictionary<UUID, AssetType> ids = new Dictionary<UUID, AssetType>(); |
154 | HGUuidGatherer uuidGatherer = new HGUuidGatherer(this, m_scene.AssetService, userAssetURL); | 154 | HGUuidGatherer uuidGatherer = new HGUuidGatherer(this, m_scene.AssetService, userAssetURL); |
155 | uuidGatherer.GatherAssetUuids(asset.FullID, (AssetType)asset.Type, ids); | 155 | uuidGatherer.GatherAssetUuids(asset.FullID, (AssetType)asset.Type, ids); |
156 | foreach (UUID uuid in ids.Keys) | 156 | foreach (UUID uuid in ids.Keys) |
@@ -173,7 +173,7 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess | |||
173 | AssetBase asset = m_scene.AssetService.Get(assetID.ToString()); | 173 | AssetBase asset = m_scene.AssetService.Get(assetID.ToString()); |
174 | if (asset != null) | 174 | if (asset != null) |
175 | { | 175 | { |
176 | Dictionary<UUID, int> ids = new Dictionary<UUID, int>(); | 176 | Dictionary<UUID, AssetType> ids = new Dictionary<UUID, AssetType>(); |
177 | HGUuidGatherer uuidGatherer = new HGUuidGatherer(this, m_scene.AssetService, string.Empty); | 177 | HGUuidGatherer uuidGatherer = new HGUuidGatherer(this, m_scene.AssetService, string.Empty); |
178 | uuidGatherer.GatherAssetUuids(asset.FullID, (AssetType)asset.Type, ids); | 178 | uuidGatherer.GatherAssetUuids(asset.FullID, (AssetType)asset.Type, ids); |
179 | foreach (UUID uuid in ids.Keys) | 179 | foreach (UUID uuid in ids.Keys) |
diff --git a/OpenSim/Region/CoreModules/World/Archiver/ArchiveWriteRequestPreparation.cs b/OpenSim/Region/CoreModules/World/Archiver/ArchiveWriteRequestPreparation.cs index b61b341..b25636f 100644 --- a/OpenSim/Region/CoreModules/World/Archiver/ArchiveWriteRequestPreparation.cs +++ b/OpenSim/Region/CoreModules/World/Archiver/ArchiveWriteRequestPreparation.cs | |||
@@ -100,7 +100,7 @@ namespace OpenSim.Region.CoreModules.World.Archiver | |||
100 | /// <exception cref="System.IO.IOException">if there was an io problem with creating the file</exception> | 100 | /// <exception cref="System.IO.IOException">if there was an io problem with creating the file</exception> |
101 | public void ArchiveRegion() | 101 | public void ArchiveRegion() |
102 | { | 102 | { |
103 | Dictionary<UUID, int> assetUuids = new Dictionary<UUID, int>(); | 103 | Dictionary<UUID, AssetType> assetUuids = new Dictionary<UUID, AssetType>(); |
104 | 104 | ||
105 | List<EntityBase> entities = m_scene.GetEntities(); | 105 | List<EntityBase> entities = m_scene.GetEntities(); |
106 | List<SceneObjectGroup> sceneObjects = new List<SceneObjectGroup>(); | 106 | List<SceneObjectGroup> sceneObjects = new List<SceneObjectGroup>(); |
@@ -142,18 +142,18 @@ namespace OpenSim.Region.CoreModules.World.Archiver | |||
142 | 142 | ||
143 | // Make sure that we also request terrain texture assets | 143 | // Make sure that we also request terrain texture assets |
144 | RegionSettings regionSettings = m_scene.RegionInfo.RegionSettings; | 144 | RegionSettings regionSettings = m_scene.RegionInfo.RegionSettings; |
145 | 145 | ||
146 | if (regionSettings.TerrainTexture1 != RegionSettings.DEFAULT_TERRAIN_TEXTURE_1) | 146 | if (regionSettings.TerrainTexture1 != RegionSettings.DEFAULT_TERRAIN_TEXTURE_1) |
147 | assetUuids[regionSettings.TerrainTexture1] = 1; | 147 | assetUuids[regionSettings.TerrainTexture1] = AssetType.Texture; |
148 | 148 | ||
149 | if (regionSettings.TerrainTexture2 != RegionSettings.DEFAULT_TERRAIN_TEXTURE_2) | 149 | if (regionSettings.TerrainTexture2 != RegionSettings.DEFAULT_TERRAIN_TEXTURE_2) |
150 | assetUuids[regionSettings.TerrainTexture2] = 1; | 150 | assetUuids[regionSettings.TerrainTexture2] = AssetType.Texture; |
151 | 151 | ||
152 | if (regionSettings.TerrainTexture3 != RegionSettings.DEFAULT_TERRAIN_TEXTURE_3) | 152 | if (regionSettings.TerrainTexture3 != RegionSettings.DEFAULT_TERRAIN_TEXTURE_3) |
153 | assetUuids[regionSettings.TerrainTexture3] = 1; | 153 | assetUuids[regionSettings.TerrainTexture3] = AssetType.Texture; |
154 | 154 | ||
155 | if (regionSettings.TerrainTexture4 != RegionSettings.DEFAULT_TERRAIN_TEXTURE_4) | 155 | if (regionSettings.TerrainTexture4 != RegionSettings.DEFAULT_TERRAIN_TEXTURE_4) |
156 | assetUuids[regionSettings.TerrainTexture4] = 1; | 156 | assetUuids[regionSettings.TerrainTexture4] = AssetType.Texture; |
157 | 157 | ||
158 | TarArchiveWriter archiveWriter = new TarArchiveWriter(m_saveStream); | 158 | TarArchiveWriter archiveWriter = new TarArchiveWriter(m_saveStream); |
159 | 159 | ||
@@ -168,7 +168,7 @@ namespace OpenSim.Region.CoreModules.World.Archiver | |||
168 | m_requestId); | 168 | m_requestId); |
169 | 169 | ||
170 | new AssetsRequest( | 170 | new AssetsRequest( |
171 | new AssetsArchiver(archiveWriter), assetUuids.Keys, | 171 | new AssetsArchiver(archiveWriter), assetUuids, |
172 | m_scene.AssetService, awre.ReceivedAllAssets).Execute(); | 172 | m_scene.AssetService, awre.ReceivedAllAssets).Execute(); |
173 | } | 173 | } |
174 | } | 174 | } |
diff --git a/OpenSim/Region/CoreModules/World/Archiver/AssetsRequest.cs b/OpenSim/Region/CoreModules/World/Archiver/AssetsRequest.cs index c9fce91..4215f97 100644 --- a/OpenSim/Region/CoreModules/World/Archiver/AssetsRequest.cs +++ b/OpenSim/Region/CoreModules/World/Archiver/AssetsRequest.cs | |||
@@ -74,7 +74,7 @@ namespace OpenSim.Region.CoreModules.World.Archiver | |||
74 | /// <value> | 74 | /// <value> |
75 | /// uuids to request | 75 | /// uuids to request |
76 | /// </value> | 76 | /// </value> |
77 | protected ICollection<UUID> m_uuids; | 77 | protected IDictionary<UUID, AssetType> m_uuids; |
78 | 78 | ||
79 | /// <value> | 79 | /// <value> |
80 | /// Callback used when all the assets requested have been received. | 80 | /// Callback used when all the assets requested have been received. |
@@ -104,7 +104,7 @@ namespace OpenSim.Region.CoreModules.World.Archiver | |||
104 | protected AssetsArchiver m_assetsArchiver; | 104 | protected AssetsArchiver m_assetsArchiver; |
105 | 105 | ||
106 | protected internal AssetsRequest( | 106 | protected internal AssetsRequest( |
107 | AssetsArchiver assetsArchiver, ICollection<UUID> uuids, | 107 | AssetsArchiver assetsArchiver, IDictionary<UUID, AssetType> uuids, |
108 | IAssetService assetService, AssetsRequestCallback assetsRequestCallback) | 108 | IAssetService assetService, AssetsRequestCallback assetsRequestCallback) |
109 | { | 109 | { |
110 | m_assetsArchiver = assetsArchiver; | 110 | m_assetsArchiver = assetsArchiver; |
@@ -132,9 +132,9 @@ namespace OpenSim.Region.CoreModules.World.Archiver | |||
132 | return; | 132 | return; |
133 | } | 133 | } |
134 | 134 | ||
135 | foreach (UUID uuid in m_uuids) | 135 | foreach (KeyValuePair<UUID, AssetType> kvp in m_uuids) |
136 | { | 136 | { |
137 | m_assetService.Get(uuid.ToString(), this, AssetRequestCallback); | 137 | m_assetService.Get(kvp.Key.ToString(), kvp.Value, PreAssetRequestCallback); |
138 | } | 138 | } |
139 | 139 | ||
140 | m_requestCallbackTimer.Enabled = true; | 140 | m_requestCallbackTimer.Enabled = true; |
@@ -157,7 +157,7 @@ namespace OpenSim.Region.CoreModules.World.Archiver | |||
157 | // Calculate which uuids were not found. This is an expensive way of doing it, but this is a failure | 157 | // Calculate which uuids were not found. This is an expensive way of doing it, but this is a failure |
158 | // case anyway. | 158 | // case anyway. |
159 | List<UUID> uuids = new List<UUID>(); | 159 | List<UUID> uuids = new List<UUID>(); |
160 | foreach (UUID uuid in m_uuids) | 160 | foreach (UUID uuid in m_uuids.Keys) |
161 | { | 161 | { |
162 | uuids.Add(uuid); | 162 | uuids.Add(uuid); |
163 | } | 163 | } |
@@ -200,6 +200,19 @@ namespace OpenSim.Region.CoreModules.World.Archiver | |||
200 | } | 200 | } |
201 | } | 201 | } |
202 | 202 | ||
203 | protected void PreAssetRequestCallback(string fetchedAssetID, object assetType, AssetBase fetchedAsset) | ||
204 | { | ||
205 | // Check for broken asset types and fix them with the AssetType gleaned by UuidGatherer | ||
206 | if (fetchedAsset != null && fetchedAsset.Type == (sbyte)AssetType.Unknown) | ||
207 | { | ||
208 | AssetType type = (AssetType)assetType; | ||
209 | m_log.InfoFormat("[ARCHIVER]: Rewriting broken asset type for {0} to {1}", fetchedAsset.ID, type); | ||
210 | fetchedAsset.Type = (sbyte)type; | ||
211 | } | ||
212 | |||
213 | AssetRequestCallback(fetchedAssetID, this, fetchedAsset); | ||
214 | } | ||
215 | |||
203 | /// <summary> | 216 | /// <summary> |
204 | /// Called back by the asset cache when it has the asset | 217 | /// Called back by the asset cache when it has the asset |
205 | /// </summary> | 218 | /// </summary> |
diff --git a/OpenSim/Region/Framework/Scenes/Tests/UuidGathererTests.cs b/OpenSim/Region/Framework/Scenes/Tests/UuidGathererTests.cs index 6686264..8b80ebe 100644 --- a/OpenSim/Region/Framework/Scenes/Tests/UuidGathererTests.cs +++ b/OpenSim/Region/Framework/Scenes/Tests/UuidGathererTests.cs | |||
@@ -61,7 +61,7 @@ namespace OpenSim.Region.Framework.Scenes.Tests | |||
61 | AssetBase corruptAsset = AssetHelpers.CreateAsset(corruptAssetUuid, "CORRUPT ASSET", UUID.Zero); | 61 | AssetBase corruptAsset = AssetHelpers.CreateAsset(corruptAssetUuid, "CORRUPT ASSET", UUID.Zero); |
62 | m_assetService.Store(corruptAsset); | 62 | m_assetService.Store(corruptAsset); |
63 | 63 | ||
64 | IDictionary<UUID, int> foundAssetUuids = new Dictionary<UUID, int>(); | 64 | IDictionary<UUID, AssetType> foundAssetUuids = new Dictionary<UUID, AssetType>(); |
65 | m_uuidGatherer.GatherAssetUuids(corruptAssetUuid, AssetType.Object, foundAssetUuids); | 65 | m_uuidGatherer.GatherAssetUuids(corruptAssetUuid, AssetType.Object, foundAssetUuids); |
66 | 66 | ||
67 | // We count the uuid as gathered even if the asset itself is corrupt. | 67 | // We count the uuid as gathered even if the asset itself is corrupt. |
@@ -77,7 +77,7 @@ namespace OpenSim.Region.Framework.Scenes.Tests | |||
77 | TestHelper.InMethod(); | 77 | TestHelper.InMethod(); |
78 | 78 | ||
79 | UUID missingAssetUuid = UUID.Parse("00000000-0000-0000-0000-000000000666"); | 79 | UUID missingAssetUuid = UUID.Parse("00000000-0000-0000-0000-000000000666"); |
80 | IDictionary<UUID, int> foundAssetUuids = new Dictionary<UUID, int>(); | 80 | IDictionary<UUID, AssetType> foundAssetUuids = new Dictionary<UUID, AssetType>(); |
81 | 81 | ||
82 | m_uuidGatherer.GatherAssetUuids(missingAssetUuid, AssetType.Object, foundAssetUuids); | 82 | m_uuidGatherer.GatherAssetUuids(missingAssetUuid, AssetType.Object, foundAssetUuids); |
83 | 83 | ||
diff --git a/OpenSim/Region/Framework/Scenes/UuidGatherer.cs b/OpenSim/Region/Framework/Scenes/UuidGatherer.cs index 3edb677..4a1f648 100644 --- a/OpenSim/Region/Framework/Scenes/UuidGatherer.cs +++ b/OpenSim/Region/Framework/Scenes/UuidGatherer.cs | |||
@@ -84,9 +84,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
84 | /// <param name="assetUuid">The uuid of the asset for which to gather referenced assets</param> | 84 | /// <param name="assetUuid">The uuid of the asset for which to gather referenced assets</param> |
85 | /// <param name="assetType">The type of the asset for the uuid given</param> | 85 | /// <param name="assetType">The type of the asset for the uuid given</param> |
86 | /// <param name="assetUuids">The assets gathered</param> | 86 | /// <param name="assetUuids">The assets gathered</param> |
87 | public void GatherAssetUuids(UUID assetUuid, AssetType assetType, IDictionary<UUID, int> assetUuids) | 87 | public void GatherAssetUuids(UUID assetUuid, AssetType assetType, IDictionary<UUID, AssetType> assetUuids) |
88 | { | 88 | { |
89 | assetUuids[assetUuid] = 1; | 89 | assetUuids[assetUuid] = assetType; |
90 | 90 | ||
91 | if (AssetType.Bodypart == assetType || AssetType.Clothing == assetType) | 91 | if (AssetType.Bodypart == assetType || AssetType.Clothing == assetType) |
92 | { | 92 | { |
@@ -116,7 +116,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
116 | /// | 116 | /// |
117 | /// <param name="sceneObject">The scene object for which to gather assets</param> | 117 | /// <param name="sceneObject">The scene object for which to gather assets</param> |
118 | /// <param name="assetUuids">The assets gathered</param> | 118 | /// <param name="assetUuids">The assets gathered</param> |
119 | public void GatherAssetUuids(SceneObjectGroup sceneObject, IDictionary<UUID, int> assetUuids) | 119 | public void GatherAssetUuids(SceneObjectGroup sceneObject, IDictionary<UUID, AssetType> assetUuids) |
120 | { | 120 | { |
121 | // m_log.DebugFormat( | 121 | // m_log.DebugFormat( |
122 | // "[ASSET GATHERER]: Getting assets for object {0}, {1}", sceneObject.Name, sceneObject.UUID); | 122 | // "[ASSET GATHERER]: Getting assets for object {0}, {1}", sceneObject.Name, sceneObject.UUID); |
@@ -131,7 +131,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
131 | Primitive.TextureEntry textureEntry = part.Shape.Textures; | 131 | Primitive.TextureEntry textureEntry = part.Shape.Textures; |
132 | 132 | ||
133 | // Get the prim's default texture. This will be used for faces which don't have their own texture | 133 | // Get the prim's default texture. This will be used for faces which don't have their own texture |
134 | assetUuids[textureEntry.DefaultTexture.TextureID] = 1; | 134 | assetUuids[textureEntry.DefaultTexture.TextureID] = AssetType.Texture; |
135 | 135 | ||
136 | // XXX: Not a great way to iterate through face textures, but there's no | 136 | // XXX: Not a great way to iterate through face textures, but there's no |
137 | // other method available to tell how many faces there actually are | 137 | // other method available to tell how many faces there actually are |
@@ -141,13 +141,13 @@ namespace OpenSim.Region.Framework.Scenes | |||
141 | if (texture != null) | 141 | if (texture != null) |
142 | { | 142 | { |
143 | //m_log.DebugFormat("[ARCHIVER]: Got face {0}", i++); | 143 | //m_log.DebugFormat("[ARCHIVER]: Got face {0}", i++); |
144 | assetUuids[texture.TextureID] = 1; | 144 | assetUuids[texture.TextureID] = AssetType.Texture; |
145 | } | 145 | } |
146 | } | 146 | } |
147 | 147 | ||
148 | // If the prim is a sculpt then preserve this information too | 148 | // If the prim is a sculpt then preserve this information too |
149 | if (part.Shape.SculptTexture != UUID.Zero) | 149 | if (part.Shape.SculptTexture != UUID.Zero) |
150 | assetUuids[part.Shape.SculptTexture] = 1; | 150 | assetUuids[part.Shape.SculptTexture] = AssetType.Texture; |
151 | 151 | ||
152 | TaskInventoryDictionary taskDictionary = (TaskInventoryDictionary)part.TaskInventory.Clone(); | 152 | TaskInventoryDictionary taskDictionary = (TaskInventoryDictionary)part.TaskInventory.Clone(); |
153 | 153 | ||
@@ -217,7 +217,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
217 | /// </summary> | 217 | /// </summary> |
218 | /// <param name="scriptUuid"></param> | 218 | /// <param name="scriptUuid"></param> |
219 | /// <param name="assetUuids">Dictionary in which to record the references</param> | 219 | /// <param name="assetUuids">Dictionary in which to record the references</param> |
220 | protected void GetScriptAssetUuids(UUID scriptUuid, IDictionary<UUID, int> assetUuids) | 220 | protected void GetScriptAssetUuids(UUID scriptUuid, IDictionary<UUID, AssetType> assetUuids) |
221 | { | 221 | { |
222 | AssetBase scriptAsset = GetAsset(scriptUuid); | 222 | AssetBase scriptAsset = GetAsset(scriptUuid); |
223 | 223 | ||
@@ -232,7 +232,9 @@ namespace OpenSim.Region.Framework.Scenes | |||
232 | { | 232 | { |
233 | UUID uuid = new UUID(uuidMatch.Value); | 233 | UUID uuid = new UUID(uuidMatch.Value); |
234 | //m_log.DebugFormat("[ARCHIVER]: Recording {0} in script", uuid); | 234 | //m_log.DebugFormat("[ARCHIVER]: Recording {0} in script", uuid); |
235 | assetUuids[uuid] = 1; | 235 | |
236 | // Assume AssetIDs embedded in scripts are textures | ||
237 | assetUuids[uuid] = AssetType.Texture; | ||
236 | } | 238 | } |
237 | } | 239 | } |
238 | } | 240 | } |
@@ -242,7 +244,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
242 | /// </summary> | 244 | /// </summary> |
243 | /// <param name="wearableAssetUuid"></param> | 245 | /// <param name="wearableAssetUuid"></param> |
244 | /// <param name="assetUuids">Dictionary in which to record the references</param> | 246 | /// <param name="assetUuids">Dictionary in which to record the references</param> |
245 | protected void GetWearableAssetUuids(UUID wearableAssetUuid, IDictionary<UUID, int> assetUuids) | 247 | protected void GetWearableAssetUuids(UUID wearableAssetUuid, IDictionary<UUID, AssetType> assetUuids) |
246 | { | 248 | { |
247 | AssetBase assetBase = GetAsset(wearableAssetUuid); | 249 | AssetBase assetBase = GetAsset(wearableAssetUuid); |
248 | 250 | ||
@@ -257,8 +259,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
257 | 259 | ||
258 | foreach (UUID uuid in wearableAsset.Textures.Values) | 260 | foreach (UUID uuid in wearableAsset.Textures.Values) |
259 | { | 261 | { |
260 | //m_log.DebugFormat("[ARCHIVER]: Got bodypart uuid {0}", uuid); | 262 | assetUuids[uuid] = AssetType.Texture; |
261 | assetUuids[uuid] = 1; | ||
262 | } | 263 | } |
263 | } | 264 | } |
264 | } | 265 | } |
@@ -270,7 +271,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
270 | /// </summary> | 271 | /// </summary> |
271 | /// <param name="sceneObject"></param> | 272 | /// <param name="sceneObject"></param> |
272 | /// <param name="assetUuids"></param> | 273 | /// <param name="assetUuids"></param> |
273 | protected void GetSceneObjectAssetUuids(UUID sceneObjectUuid, IDictionary<UUID, int> assetUuids) | 274 | protected void GetSceneObjectAssetUuids(UUID sceneObjectUuid, IDictionary<UUID, AssetType> assetUuids) |
274 | { | 275 | { |
275 | AssetBase objectAsset = GetAsset(sceneObjectUuid); | 276 | AssetBase objectAsset = GetAsset(sceneObjectUuid); |
276 | 277 | ||
@@ -284,7 +285,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
284 | } | 285 | } |
285 | } | 286 | } |
286 | 287 | ||
287 | protected void GetGestureAssetUuids(UUID gestureUuid, IDictionary<UUID, int> assetUuids) | 288 | protected void GetGestureAssetUuids(UUID gestureUuid, IDictionary<UUID, AssetType> assetUuids) |
288 | { | 289 | { |
289 | AssetBase assetBase = GetAsset(gestureUuid); | 290 | AssetBase assetBase = GetAsset(gestureUuid); |
290 | 291 | ||
@@ -316,7 +317,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
316 | // If it can be parsed as a UUID, it is an asset ID | 317 | // If it can be parsed as a UUID, it is an asset ID |
317 | UUID uuid; | 318 | UUID uuid; |
318 | if (UUID.TryParse(id, out uuid)) | 319 | if (UUID.TryParse(id, out uuid)) |
319 | assetUuids[uuid] = 1; | 320 | assetUuids[uuid] = AssetType.Animation; |
320 | } | 321 | } |
321 | } | 322 | } |
322 | } | 323 | } |