diff options
author | lbsa71 | 2007-10-26 14:08:36 +0000 |
---|---|---|
committer | lbsa71 | 2007-10-26 14:08:36 +0000 |
commit | 070047ce1bc74cceebd5e817a0e042a7390c5f24 (patch) | |
tree | 074326d9e948655f5b2c0c378d601d611e1d4f4d /OpenSim/Framework/Communications | |
parent | Region ground texture was not marked as temporary, when being created, and as... (diff) | |
download | opensim-SC-070047ce1bc74cceebd5e817a0e042a7390c5f24.zip opensim-SC-070047ce1bc74cceebd5e817a0e042a7390c5f24.tar.gz opensim-SC-070047ce1bc74cceebd5e817a0e042a7390c5f24.tar.bz2 opensim-SC-070047ce1bc74cceebd5e817a0e042a7390c5f24.tar.xz |
* Added prototypical AvatarFactory module interface to load avatar parameters
* Added dump_assets_to_file option to enable asset dumping for debug
* normalized some namespaces
* InventoryFolder renamed to InventoryFolderImpl to
Diffstat (limited to '')
11 files changed, 87 insertions, 101 deletions
diff --git a/OpenSim/Framework/Communications/CAPSService.cs b/OpenSim/Framework/Communications/CAPSService.cs index 6f65551..b60ef02 100644 --- a/OpenSim/Framework/Communications/CAPSService.cs +++ b/OpenSim/Framework/Communications/CAPSService.cs | |||
@@ -26,21 +26,9 @@ | |||
26 | * | 26 | * |
27 | */ | 27 | */ |
28 | 28 | ||
29 | using System; | ||
30 | using System.Collections; | ||
31 | using System.Collections.Generic; | ||
32 | using System.Reflection; | ||
33 | using System.Security.Cryptography; | ||
34 | using libsecondlife; | ||
35 | using Nwc.XmlRpc; | ||
36 | using OpenSim.Framework.Console; | ||
37 | using OpenSim.Framework.Data; | ||
38 | using OpenSim.Framework.Interfaces; | ||
39 | using OpenSim.Framework.Inventory; | ||
40 | using OpenSim.Framework.Utilities; | ||
41 | using OpenSim.Framework.Servers; | 29 | using OpenSim.Framework.Servers; |
42 | 30 | ||
43 | namespace OpenSim.Framework.UserManagement | 31 | namespace OpenSim.Framework.Communications |
44 | { | 32 | { |
45 | public class CAPSService | 33 | public class CAPSService |
46 | { | 34 | { |
@@ -63,4 +51,4 @@ namespace OpenSim.Framework.UserManagement | |||
63 | return ""; | 51 | return ""; |
64 | } | 52 | } |
65 | } | 53 | } |
66 | } | 54 | } \ No newline at end of file |
diff --git a/OpenSim/Framework/Communications/Cache/AssetTransactionManager.cs b/OpenSim/Framework/Communications/Cache/AssetTransactionManager.cs index 42c0a8e..2c1e5c8 100644 --- a/OpenSim/Framework/Communications/Cache/AssetTransactionManager.cs +++ b/OpenSim/Framework/Communications/Cache/AssetTransactionManager.cs | |||
@@ -36,17 +36,19 @@ using OpenSim.Framework.Types; | |||
36 | using OpenSim.Framework.Utilities; | 36 | using OpenSim.Framework.Utilities; |
37 | using OpenSim.Framework.Data; | 37 | using OpenSim.Framework.Data; |
38 | 38 | ||
39 | namespace OpenSim.Framework.Communications.Caches | 39 | namespace OpenSim.Framework.Communications.Cache |
40 | { | 40 | { |
41 | public class AssetTransactionManager | 41 | public class AssetTransactionManager |
42 | { | 42 | { |
43 | // Fields | 43 | // Fields |
44 | public CommunicationsManager CommsManager; | 44 | public CommunicationsManager CommsManager; |
45 | public Dictionary<LLUUID, AgentAssetTransactions> AgentTransactions = new Dictionary<LLUUID, AgentAssetTransactions>(); | 45 | public Dictionary<LLUUID, AgentAssetTransactions> AgentTransactions = new Dictionary<LLUUID, AgentAssetTransactions>(); |
46 | private bool m_dumpAssetsToFile; | ||
46 | 47 | ||
47 | public AssetTransactionManager(CommunicationsManager commsManager) | 48 | public AssetTransactionManager(CommunicationsManager commsManager, bool dumpAssetsToFile) |
48 | { | 49 | { |
49 | CommsManager = commsManager; | 50 | CommsManager = commsManager; |
51 | m_dumpAssetsToFile = dumpAssetsToFile; | ||
50 | } | 52 | } |
51 | 53 | ||
52 | // Methods | 54 | // Methods |
@@ -54,7 +56,7 @@ namespace OpenSim.Framework.Communications.Caches | |||
54 | { | 56 | { |
55 | if (!this.AgentTransactions.ContainsKey(userID)) | 57 | if (!this.AgentTransactions.ContainsKey(userID)) |
56 | { | 58 | { |
57 | AgentAssetTransactions transactions = new AgentAssetTransactions(userID, this); | 59 | AgentAssetTransactions transactions = new AgentAssetTransactions(userID, this, m_dumpAssetsToFile); |
58 | this.AgentTransactions.Add(userID, transactions); | 60 | this.AgentTransactions.Add(userID, transactions); |
59 | return transactions; | 61 | return transactions; |
60 | } | 62 | } |
@@ -82,7 +84,7 @@ namespace OpenSim.Framework.Communications.Caches | |||
82 | 84 | ||
83 | public void HandleUDPUploadRequest(IClientAPI remoteClient, LLUUID assetID, LLUUID transaction, sbyte type, byte[] data, bool storeLocal) | 85 | public void HandleUDPUploadRequest(IClientAPI remoteClient, LLUUID assetID, LLUUID transaction, sbyte type, byte[] data, bool storeLocal) |
84 | { | 86 | { |
85 | // Console.WriteLine("asset upload of " + assetID); | 87 | // Console.WriteLine("asset upload of " + assetID); |
86 | AgentAssetTransactions transactions = this.GetUserTransActions(remoteClient.AgentId); | 88 | AgentAssetTransactions transactions = this.GetUserTransActions(remoteClient.AgentId); |
87 | if (transactions != null) | 89 | if (transactions != null) |
88 | { | 90 | { |
@@ -103,6 +105,4 @@ namespace OpenSim.Framework.Communications.Caches | |||
103 | } | 105 | } |
104 | } | 106 | } |
105 | } | 107 | } |
106 | } | 108 | } \ No newline at end of file |
107 | |||
108 | |||
diff --git a/OpenSim/Framework/Communications/Cache/AssetTransactions.cs b/OpenSim/Framework/Communications/Cache/AssetTransactions.cs index 51fc462..581e300 100644 --- a/OpenSim/Framework/Communications/Cache/AssetTransactions.cs +++ b/OpenSim/Framework/Communications/Cache/AssetTransactions.cs | |||
@@ -39,7 +39,7 @@ using OpenSim.Framework.Utilities; | |||
39 | using OpenSim.Region.Capabilities; | 39 | using OpenSim.Region.Capabilities; |
40 | using OpenSim.Framework.Servers; | 40 | using OpenSim.Framework.Servers; |
41 | 41 | ||
42 | namespace OpenSim.Framework.Communications.Caches | 42 | namespace OpenSim.Framework.Communications.Cache |
43 | { | 43 | { |
44 | public class AgentAssetTransactions | 44 | public class AgentAssetTransactions |
45 | { | 45 | { |
@@ -49,12 +49,14 @@ namespace OpenSim.Framework.Communications.Caches | |||
49 | public LLUUID UserID; | 49 | public LLUUID UserID; |
50 | public Dictionary<LLUUID, AssetXferUploader> XferUploaders = new Dictionary<LLUUID, AssetXferUploader>(); | 50 | public Dictionary<LLUUID, AssetXferUploader> XferUploaders = new Dictionary<LLUUID, AssetXferUploader>(); |
51 | public AssetTransactionManager Manager; | 51 | public AssetTransactionManager Manager; |
52 | private bool m_dumpAssetsToFile; | ||
52 | 53 | ||
53 | // Methods | 54 | // Methods |
54 | public AgentAssetTransactions(LLUUID agentID, AssetTransactionManager manager) | 55 | public AgentAssetTransactions(LLUUID agentID, AssetTransactionManager manager, bool dumpAssetsToFile) |
55 | { | 56 | { |
56 | this.UserID = agentID; | 57 | this.UserID = agentID; |
57 | Manager = manager; | 58 | Manager = manager; |
59 | m_dumpAssetsToFile = dumpAssetsToFile; | ||
58 | } | 60 | } |
59 | 61 | ||
60 | public AssetCapsUploader RequestCapsUploader() | 62 | public AssetCapsUploader RequestCapsUploader() |
@@ -75,7 +77,7 @@ namespace OpenSim.Framework.Communications.Caches | |||
75 | { | 77 | { |
76 | if (!this.XferUploaders.ContainsKey(transactionID)) | 78 | if (!this.XferUploaders.ContainsKey(transactionID)) |
77 | { | 79 | { |
78 | AssetXferUploader uploader = new AssetXferUploader(this); | 80 | AssetXferUploader uploader = new AssetXferUploader(this, m_dumpAssetsToFile); |
79 | 81 | ||
80 | this.XferUploaders.Add(transactionID, uploader); | 82 | this.XferUploaders.Add(transactionID, uploader); |
81 | return uploader; | 83 | return uploader; |
@@ -122,14 +124,14 @@ namespace OpenSim.Framework.Communications.Caches | |||
122 | private string m_assetName = ""; | 124 | private string m_assetName = ""; |
123 | private LLUUID m_folderID; | 125 | private LLUUID m_folderID; |
124 | private LLUUID newAssetID; | 126 | private LLUUID newAssetID; |
125 | private bool SaveImages = false; | 127 | private bool m_dumpImageToFile; |
126 | private string uploaderPath = ""; | 128 | private string uploaderPath = ""; |
127 | 129 | ||
128 | // Events | 130 | // Events |
129 | public event UpLoadedAsset OnUpLoad; | 131 | public event UpLoadedAsset OnUpLoad; |
130 | 132 | ||
131 | // Methods | 133 | // Methods |
132 | public void Initialise(string assetName, string assetDescription, LLUUID assetID, LLUUID inventoryItem, LLUUID folderID, string path, BaseHttpServer httpServer) | 134 | public void Initialise(string assetName, string assetDescription, LLUUID assetID, LLUUID inventoryItem, LLUUID folderID, string path, BaseHttpServer httpServer, bool dumpImageToFile) |
133 | { | 135 | { |
134 | this.m_assetName = assetName; | 136 | this.m_assetName = assetName; |
135 | this.m_assetDescription = assetDescription; | 137 | this.m_assetDescription = assetDescription; |
@@ -138,6 +140,7 @@ namespace OpenSim.Framework.Communications.Caches | |||
138 | this.inventoryItemID = inventoryItem; | 140 | this.inventoryItemID = inventoryItem; |
139 | this.uploaderPath = path; | 141 | this.uploaderPath = path; |
140 | this.httpListener = httpServer; | 142 | this.httpListener = httpServer; |
143 | m_dumpImageToFile = dumpImageToFile; | ||
141 | } | 144 | } |
142 | 145 | ||
143 | private void SaveImageToFile(string filename, byte[] data) | 146 | private void SaveImageToFile(string filename, byte[] data) |
@@ -159,7 +162,7 @@ namespace OpenSim.Framework.Communications.Caches | |||
159 | complete.state = "complete"; | 162 | complete.state = "complete"; |
160 | text = LLSDHelpers.SerialiseLLSDReply(complete); | 163 | text = LLSDHelpers.SerialiseLLSDReply(complete); |
161 | this.httpListener.RemoveStreamHandler("POST", this.uploaderPath); | 164 | this.httpListener.RemoveStreamHandler("POST", this.uploaderPath); |
162 | if (this.SaveImages) | 165 | if (this.m_dumpImageToFile) |
163 | { | 166 | { |
164 | this.SaveImageToFile(this.m_assetName + ".jp2", data); | 167 | this.SaveImageToFile(this.m_assetName + ".jp2", data); |
165 | } | 168 | } |
@@ -190,10 +193,12 @@ namespace OpenSim.Framework.Communications.Caches | |||
190 | private bool m_createItem = false; | 193 | private bool m_createItem = false; |
191 | private AgentAssetTransactions m_userTransactions; | 194 | private AgentAssetTransactions m_userTransactions; |
192 | private bool m_storeLocal; | 195 | private bool m_storeLocal; |
196 | private bool m_dumpAssetToFile; | ||
193 | 197 | ||
194 | public AssetXferUploader(AgentAssetTransactions transactions) | 198 | public AssetXferUploader(AgentAssetTransactions transactions, bool dumpAssetToFile) |
195 | { | 199 | { |
196 | this.m_userTransactions = transactions; | 200 | this.m_userTransactions = transactions; |
201 | m_dumpAssetToFile = dumpAssetToFile; | ||
197 | } | 202 | } |
198 | 203 | ||
199 | // Methods | 204 | // Methods |
@@ -278,9 +283,14 @@ namespace OpenSim.Framework.Communications.Caches | |||
278 | this.m_userTransactions.Manager.CommsManager.AssetCache.AddAsset(this.Asset); | 283 | this.m_userTransactions.Manager.CommsManager.AssetCache.AddAsset(this.Asset); |
279 | } | 284 | } |
280 | 285 | ||
281 | // Console.WriteLine("upload complete "+ this.TransactionID); | 286 | // Console.WriteLine("upload complete "+ this.TransactionID); |
282 | //SaveAssetToFile("testudpupload" + Util.RandomClass.Next(1, 1000) + ".dat", this.Asset.Data); | 287 | |
288 | if (m_dumpAssetToFile) | ||
289 | { | ||
290 | SaveAssetToFile("testudpupload" + Util.RandomClass.Next(1, 1000) + ".dat", this.Asset.Data); | ||
291 | } | ||
283 | } | 292 | } |
293 | |||
284 | private void SaveAssetToFile(string filename, byte[] data) | 294 | private void SaveAssetToFile(string filename, byte[] data) |
285 | { | 295 | { |
286 | FileStream fs = File.Create(filename); | 296 | FileStream fs = File.Create(filename); |
diff --git a/OpenSim/Framework/Communications/Cache/CachedUserInfo.cs b/OpenSim/Framework/Communications/Cache/CachedUserInfo.cs index b1432ff..92b21a8 100644 --- a/OpenSim/Framework/Communications/Cache/CachedUserInfo.cs +++ b/OpenSim/Framework/Communications/Cache/CachedUserInfo.cs | |||
@@ -27,7 +27,6 @@ | |||
27 | */ | 27 | */ |
28 | using libsecondlife; | 28 | using libsecondlife; |
29 | using OpenSim.Framework.Types; | 29 | using OpenSim.Framework.Types; |
30 | using InventoryFolder=OpenSim.Framework.Communications.Caches.InventoryFolder; | ||
31 | 30 | ||
32 | namespace OpenSim.Framework.Communications.Cache | 31 | namespace OpenSim.Framework.Communications.Cache |
33 | { | 32 | { |
@@ -35,7 +34,7 @@ namespace OpenSim.Framework.Communications.Cache | |||
35 | { | 34 | { |
36 | private readonly CommunicationsManager m_parentCommsManager; | 35 | private readonly CommunicationsManager m_parentCommsManager; |
37 | // Fields | 36 | // Fields |
38 | public InventoryFolder RootFolder = null; | 37 | public InventoryFolderImpl RootFolder = null; |
39 | public UserProfileData UserProfile = null; | 38 | public UserProfileData UserProfile = null; |
40 | 39 | ||
41 | public CachedUserInfo(CommunicationsManager commsManager) | 40 | public CachedUserInfo(CommunicationsManager commsManager) |
@@ -44,7 +43,7 @@ namespace OpenSim.Framework.Communications.Cache | |||
44 | } | 43 | } |
45 | 44 | ||
46 | // Methods | 45 | // Methods |
47 | public void FolderReceive(LLUUID userID, InventoryFolder folderInfo) | 46 | public void FolderReceive(LLUUID userID, InventoryFolderImpl folderInfo) |
48 | { | 47 | { |
49 | if (userID == this.UserProfile.UUID) | 48 | if (userID == this.UserProfile.UUID) |
50 | { | 49 | { |
@@ -61,7 +60,7 @@ namespace OpenSim.Framework.Communications.Cache | |||
61 | } | 60 | } |
62 | else | 61 | else |
63 | { | 62 | { |
64 | InventoryFolder folder = this.RootFolder.HasSubFolder(folderInfo.parentID); | 63 | InventoryFolderImpl folder = this.RootFolder.HasSubFolder(folderInfo.parentID); |
65 | if (folder != null) | 64 | if (folder != null) |
66 | { | 65 | { |
67 | folder.SubFolders.Add(folderInfo.folderID, folderInfo); | 66 | folder.SubFolders.Add(folderInfo.folderID, folderInfo); |
@@ -80,7 +79,7 @@ namespace OpenSim.Framework.Communications.Cache | |||
80 | } | 79 | } |
81 | else | 80 | else |
82 | { | 81 | { |
83 | InventoryFolder folder = this.RootFolder.HasSubFolder(itemInfo.parentFolderID); | 82 | InventoryFolderImpl folder = this.RootFolder.HasSubFolder(itemInfo.parentFolderID); |
84 | if (folder != null) | 83 | if (folder != null) |
85 | { | 84 | { |
86 | folder.Items.Add(itemInfo.inventoryID, itemInfo); | 85 | folder.Items.Add(itemInfo.inventoryID, itemInfo); |
diff --git a/OpenSim/Framework/Communications/Cache/InventoryFolder.cs b/OpenSim/Framework/Communications/Cache/InventoryFolder.cs index fbe1bd0..af3346f 100644 --- a/OpenSim/Framework/Communications/Cache/InventoryFolder.cs +++ b/OpenSim/Framework/Communications/Cache/InventoryFolder.cs | |||
@@ -35,15 +35,15 @@ using OpenSim.Framework.Interfaces; | |||
35 | using OpenSim.Framework.Types; | 35 | using OpenSim.Framework.Types; |
36 | using OpenSim.Framework.Utilities; | 36 | using OpenSim.Framework.Utilities; |
37 | 37 | ||
38 | namespace OpenSim.Framework.Communications.Caches | 38 | namespace OpenSim.Framework.Communications.Cache |
39 | { | 39 | { |
40 | public class InventoryFolder : InventoryFolderBase | 40 | public class InventoryFolderImpl : InventoryFolderBase |
41 | { | 41 | { |
42 | // Fields | 42 | // Fields |
43 | public Dictionary<LLUUID, InventoryItemBase> Items = new Dictionary<LLUUID, InventoryItemBase>(); | 43 | public Dictionary<LLUUID, InventoryItemBase> Items = new Dictionary<LLUUID, InventoryItemBase>(); |
44 | public Dictionary<LLUUID, InventoryFolder> SubFolders = new Dictionary<LLUUID, InventoryFolder>(); | 44 | public Dictionary<LLUUID, InventoryFolderImpl> SubFolders = new Dictionary<LLUUID, InventoryFolderImpl>(); |
45 | 45 | ||
46 | public InventoryFolder(InventoryFolderBase folderbase) | 46 | public InventoryFolderImpl(InventoryFolderBase folderbase) |
47 | { | 47 | { |
48 | this.agentID = folderbase.agentID; | 48 | this.agentID = folderbase.agentID; |
49 | this.folderID = folderbase.folderID; | 49 | this.folderID = folderbase.folderID; |
@@ -53,15 +53,15 @@ namespace OpenSim.Framework.Communications.Caches | |||
53 | this.version = folderbase.version; | 53 | this.version = folderbase.version; |
54 | } | 54 | } |
55 | 55 | ||
56 | public InventoryFolder() | 56 | public InventoryFolderImpl() |
57 | { | 57 | { |
58 | 58 | ||
59 | } | 59 | } |
60 | 60 | ||
61 | // Methods | 61 | // Methods |
62 | public InventoryFolder CreateNewSubFolder(LLUUID folderID, string folderName, ushort type) | 62 | public InventoryFolderImpl CreateNewSubFolder(LLUUID folderID, string folderName, ushort type) |
63 | { | 63 | { |
64 | InventoryFolder subFold = new InventoryFolder(); | 64 | InventoryFolderImpl subFold = new InventoryFolderImpl(); |
65 | subFold.name = folderName; | 65 | subFold.name = folderName; |
66 | subFold.folderID = folderID; | 66 | subFold.folderID = folderID; |
67 | subFold.type = (short) type; | 67 | subFold.type = (short) type; |
@@ -78,7 +78,7 @@ namespace OpenSim.Framework.Communications.Caches | |||
78 | { | 78 | { |
79 | return this.Items[itemID]; | 79 | return this.Items[itemID]; |
80 | } | 80 | } |
81 | foreach (InventoryFolder folder in this.SubFolders.Values) | 81 | foreach (InventoryFolderImpl folder in this.SubFolders.Values) |
82 | { | 82 | { |
83 | base2 = folder.HasItem(itemID); | 83 | base2 = folder.HasItem(itemID); |
84 | if (base2 != null) | 84 | if (base2 != null) |
@@ -97,7 +97,7 @@ namespace OpenSim.Framework.Communications.Caches | |||
97 | Items.Remove(itemID); | 97 | Items.Remove(itemID); |
98 | return true; | 98 | return true; |
99 | } | 99 | } |
100 | foreach (InventoryFolder folder in this.SubFolders.Values) | 100 | foreach (InventoryFolderImpl folder in this.SubFolders.Values) |
101 | { | 101 | { |
102 | found = folder.DeleteItem(itemID); | 102 | found = folder.DeleteItem(itemID); |
103 | if (found == true) | 103 | if (found == true) |
@@ -109,16 +109,16 @@ namespace OpenSim.Framework.Communications.Caches | |||
109 | } | 109 | } |
110 | 110 | ||
111 | 111 | ||
112 | public InventoryFolder HasSubFolder(LLUUID folderID) | 112 | public InventoryFolderImpl HasSubFolder(LLUUID folderID) |
113 | { | 113 | { |
114 | InventoryFolder returnFolder = null; | 114 | InventoryFolderImpl returnFolder = null; |
115 | if (this.SubFolders.ContainsKey(folderID)) | 115 | if (this.SubFolders.ContainsKey(folderID)) |
116 | { | 116 | { |
117 | returnFolder = this.SubFolders[folderID]; | 117 | returnFolder = this.SubFolders[folderID]; |
118 | } | 118 | } |
119 | else | 119 | else |
120 | { | 120 | { |
121 | foreach (InventoryFolder folder in this.SubFolders.Values) | 121 | foreach (InventoryFolderImpl folder in this.SubFolders.Values) |
122 | { | 122 | { |
123 | returnFolder = folder.HasSubFolder(folderID); | 123 | returnFolder = folder.HasSubFolder(folderID); |
124 | if (returnFolder != null) | 124 | if (returnFolder != null) |
@@ -140,4 +140,4 @@ namespace OpenSim.Framework.Communications.Caches | |||
140 | return itemList; | 140 | return itemList; |
141 | } | 141 | } |
142 | } | 142 | } |
143 | } | 143 | } \ No newline at end of file |
diff --git a/OpenSim/Framework/Communications/Cache/LibraryRootFolder.cs b/OpenSim/Framework/Communications/Cache/LibraryRootFolder.cs index 13ce39e..86e26f0 100644 --- a/OpenSim/Framework/Communications/Cache/LibraryRootFolder.cs +++ b/OpenSim/Framework/Communications/Cache/LibraryRootFolder.cs | |||
@@ -35,16 +35,16 @@ using OpenSim.Framework.Types; | |||
35 | using OpenSim.Framework.Utilities; | 35 | using OpenSim.Framework.Utilities; |
36 | using Nini.Config; | 36 | using Nini.Config; |
37 | 37 | ||
38 | namespace OpenSim.Framework.Communications.Caches | 38 | namespace OpenSim.Framework.Communications.Cache |
39 | { | 39 | { |
40 | /// <summary> | 40 | /// <summary> |
41 | /// Basically a hack to give us a Inventory library while we don't have a inventory server | 41 | /// Basically a hack to give us a Inventory library while we don't have a inventory server |
42 | /// once the server is fully implemented then should read the data from that | 42 | /// once the server is fully implemented then should read the data from that |
43 | /// </summary> | 43 | /// </summary> |
44 | public class LibraryRootFolder : InventoryFolder | 44 | public class LibraryRootFolder : Cache.InventoryFolderImpl |
45 | { | 45 | { |
46 | private LLUUID libOwner = new LLUUID("11111111-1111-0000-0000-000100bba000"); | 46 | private LLUUID libOwner = new LLUUID("11111111-1111-0000-0000-000100bba000"); |
47 | private InventoryFolder m_textureFolder; | 47 | private Cache.InventoryFolderImpl m_textureFolder; |
48 | 48 | ||
49 | public LibraryRootFolder() | 49 | public LibraryRootFolder() |
50 | { | 50 | { |
@@ -55,7 +55,7 @@ namespace OpenSim.Framework.Communications.Caches | |||
55 | this.type = (short)-1; | 55 | this.type = (short)-1; |
56 | this.version = (ushort)1; | 56 | this.version = (ushort)1; |
57 | 57 | ||
58 | InventoryFolder folderInfo = new InventoryFolder(); | 58 | Cache.InventoryFolderImpl folderInfo = new InventoryFolderImpl(); |
59 | folderInfo.agentID = libOwner; | 59 | folderInfo.agentID = libOwner; |
60 | folderInfo.folderID = new LLUUID("00000112-000f-0000-0000-000100bba001"); | 60 | folderInfo.folderID = new LLUUID("00000112-000f-0000-0000-000100bba001"); |
61 | folderInfo.name = "Texture Library"; | 61 | folderInfo.name = "Texture Library"; |
@@ -242,4 +242,4 @@ namespace OpenSim.Framework.Communications.Caches | |||
242 | } | 242 | } |
243 | 243 | ||
244 | } | 244 | } |
245 | } | 245 | } \ No newline at end of file |
diff --git a/OpenSim/Framework/Communications/Cache/UserProfileCache.cs b/OpenSim/Framework/Communications/Cache/UserProfileCache.cs index 362ab17..bd7aeef 100644 --- a/OpenSim/Framework/Communications/Cache/UserProfileCache.cs +++ b/OpenSim/Framework/Communications/Cache/UserProfileCache.cs | |||
@@ -36,7 +36,7 @@ using OpenSim.Framework.Interfaces; | |||
36 | using OpenSim.Framework.Types; | 36 | using OpenSim.Framework.Types; |
37 | using OpenSim.Framework.Utilities; | 37 | using OpenSim.Framework.Utilities; |
38 | 38 | ||
39 | namespace OpenSim.Framework.Communications.Caches | 39 | namespace OpenSim.Framework.Communications.Cache |
40 | { | 40 | { |
41 | public class UserProfileCache | 41 | public class UserProfileCache |
42 | { | 42 | { |
@@ -107,15 +107,15 @@ namespace OpenSim.Framework.Communications.Caches | |||
107 | CachedUserInfo info = this.UserProfiles[remoteClient.AgentId]; | 107 | CachedUserInfo info = this.UserProfiles[remoteClient.AgentId]; |
108 | if (info.RootFolder.folderID == parentID) | 108 | if (info.RootFolder.folderID == parentID) |
109 | { | 109 | { |
110 | InventoryFolder createdFolder = info.RootFolder.CreateNewSubFolder(folderID, folderName, folderType); | 110 | InventoryFolderImpl createdFolder = info.RootFolder.CreateNewSubFolder(folderID, folderName, folderType); |
111 | if (createdFolder != null) | 111 | if (createdFolder != null) |
112 | { | 112 | { |
113 | this.m_parent.InventoryService.AddNewInventoryFolder(remoteClient.AgentId, createdFolder); | 113 | this.m_parent.InventoryService.AddNewInventoryFolder(remoteClient.AgentId, createdFolder); |
114 | } | 114 | } |
115 | } | 115 | } |
116 | else | 116 | else |
117 | { | 117 | { |
118 | InventoryFolder folder = info.RootFolder.HasSubFolder(parentID); | 118 | InventoryFolderImpl folder = info.RootFolder.HasSubFolder(parentID); |
119 | if (folder != null) | 119 | if (folder != null) |
120 | { | 120 | { |
121 | folder.CreateNewSubFolder(folderID, folderName, folderType); | 121 | folder.CreateNewSubFolder(folderID, folderName, folderType); |
@@ -127,7 +127,7 @@ namespace OpenSim.Framework.Communications.Caches | |||
127 | 127 | ||
128 | public void HandleFecthInventoryDescendents(IClientAPI remoteClient, LLUUID folderID, LLUUID ownerID, bool fetchFolders, bool fetchItems, int sortOrder) | 128 | public void HandleFecthInventoryDescendents(IClientAPI remoteClient, LLUUID folderID, LLUUID ownerID, bool fetchFolders, bool fetchItems, int sortOrder) |
129 | { | 129 | { |
130 | InventoryFolder fold = null; | 130 | InventoryFolderImpl fold = null; |
131 | if (folderID == libraryRoot.folderID ) | 131 | if (folderID == libraryRoot.folderID ) |
132 | { | 132 | { |
133 | remoteClient.SendInventoryFolderDetails(libraryRoot.agentID, libraryRoot.folderID, libraryRoot.RequestListOfItems()); | 133 | remoteClient.SendInventoryFolderDetails(libraryRoot.agentID, libraryRoot.folderID, libraryRoot.RequestListOfItems()); |
@@ -150,7 +150,7 @@ namespace OpenSim.Framework.Communications.Caches | |||
150 | } | 150 | } |
151 | else | 151 | else |
152 | { | 152 | { |
153 | InventoryFolder folder = info.RootFolder.HasSubFolder(folderID); | 153 | InventoryFolderImpl folder = info.RootFolder.HasSubFolder(folderID); |
154 | if ((folder != null) && fetchItems) | 154 | if ((folder != null) && fetchItems) |
155 | { | 155 | { |
156 | remoteClient.SendInventoryFolderDetails(remoteClient.AgentId, folderID, folder.RequestListOfItems()); | 156 | remoteClient.SendInventoryFolderDetails(remoteClient.AgentId, folderID, folder.RequestListOfItems()); |
@@ -185,7 +185,7 @@ namespace OpenSim.Framework.Communications.Caches | |||
185 | /// <param name="userID"></param> | 185 | /// <param name="userID"></param> |
186 | private void RequestInventoryForUser(LLUUID userID, CachedUserInfo userInfo) | 186 | private void RequestInventoryForUser(LLUUID userID, CachedUserInfo userInfo) |
187 | { | 187 | { |
188 | this.m_parent.InventoryService.RequestInventoryForUser(userID, userInfo.FolderReceive, userInfo.ItemReceive); | 188 | this.m_parent.InventoryService.RequestInventoryForUser(userID, userInfo.FolderReceive, userInfo.ItemReceive); |
189 | } | 189 | } |
190 | 190 | ||
191 | /// <summary> | 191 | /// <summary> |
@@ -223,5 +223,4 @@ namespace OpenSim.Framework.Communications.Caches | |||
223 | { | 223 | { |
224 | } | 224 | } |
225 | } | 225 | } |
226 | } | 226 | } \ No newline at end of file |
227 | |||
diff --git a/OpenSim/Framework/Communications/Capabilities/Caps.cs b/OpenSim/Framework/Communications/Capabilities/Caps.cs index 899fb61..095a5b1 100644 --- a/OpenSim/Framework/Communications/Capabilities/Caps.cs +++ b/OpenSim/Framework/Communications/Capabilities/Caps.cs | |||
@@ -61,8 +61,9 @@ namespace OpenSim.Region.Capabilities | |||
61 | private Queue<string> CapsEventQueue = new Queue<string>(); | 61 | private Queue<string> CapsEventQueue = new Queue<string>(); |
62 | public NewInventoryItem AddNewInventoryItem = null; | 62 | public NewInventoryItem AddNewInventoryItem = null; |
63 | public ItemUpdatedCallback ItemUpdatedCall = null; | 63 | public ItemUpdatedCallback ItemUpdatedCall = null; |
64 | private bool m_dumpAssetsToFile; | ||
64 | 65 | ||
65 | public Caps(AssetCache assetCach, BaseHttpServer httpServer, string httpListen, int httpPort, string capsPath, LLUUID agent) | 66 | public Caps(AssetCache assetCach, BaseHttpServer httpServer, string httpListen, int httpPort, string capsPath, LLUUID agent, bool dumpAssetsToFile) |
66 | { | 67 | { |
67 | assetCache = assetCach; | 68 | assetCache = assetCach; |
68 | m_capsObjectPath = capsPath; | 69 | m_capsObjectPath = capsPath; |
@@ -70,6 +71,7 @@ namespace OpenSim.Region.Capabilities | |||
70 | m_httpListenerHostName = httpListen; | 71 | m_httpListenerHostName = httpListen; |
71 | m_httpListenPort = httpPort; | 72 | m_httpListenPort = httpPort; |
72 | agentID = agent; | 73 | agentID = agent; |
74 | m_dumpAssetsToFile = dumpAssetsToFile; | ||
73 | } | 75 | } |
74 | 76 | ||
75 | /// <summary> | 77 | /// <summary> |
@@ -250,7 +252,7 @@ namespace OpenSim.Region.Capabilities | |||
250 | LLUUID newInvItem = llsdRequest.item_id; | 252 | LLUUID newInvItem = llsdRequest.item_id; |
251 | string uploaderPath = Util.RandomClass.Next(5000, 8000).ToString("0000"); | 253 | string uploaderPath = Util.RandomClass.Next(5000, 8000).ToString("0000"); |
252 | 254 | ||
253 | ItemUpdater uploader = new ItemUpdater(newInvItem, capsBase + uploaderPath, this.httpListener); | 255 | ItemUpdater uploader = new ItemUpdater(newInvItem, capsBase + uploaderPath, this.httpListener, m_dumpAssetsToFile ); |
254 | uploader.OnUpLoad += this.ItemUpdated; | 256 | uploader.OnUpLoad += this.ItemUpdated; |
255 | 257 | ||
256 | httpListener.AddStreamHandler(new BinaryStreamHandler("POST", capsBase + uploaderPath, uploader.uploaderCaps)); | 258 | httpListener.AddStreamHandler(new BinaryStreamHandler("POST", capsBase + uploaderPath, uploader.uploaderCaps)); |
@@ -280,7 +282,7 @@ namespace OpenSim.Region.Capabilities | |||
280 | LLUUID parentFolder = llsdRequest.folder_id; | 282 | LLUUID parentFolder = llsdRequest.folder_id; |
281 | string uploaderPath = Util.RandomClass.Next(5000, 8000).ToString("0000"); | 283 | string uploaderPath = Util.RandomClass.Next(5000, 8000).ToString("0000"); |
282 | 284 | ||
283 | AssetUploader uploader = new AssetUploader(assetName, assetDes, newAsset, newInvItem, parentFolder, llsdRequest.inventory_type, llsdRequest.asset_type, capsBase + uploaderPath, this.httpListener); | 285 | AssetUploader uploader = new AssetUploader(assetName, assetDes, newAsset, newInvItem, parentFolder, llsdRequest.inventory_type, llsdRequest.asset_type, capsBase + uploaderPath, this.httpListener, m_dumpAssetsToFile); |
284 | httpListener.AddStreamHandler(new BinaryStreamHandler("POST", capsBase + uploaderPath, uploader.uploaderCaps)); | 286 | httpListener.AddStreamHandler(new BinaryStreamHandler("POST", capsBase + uploaderPath, uploader.uploaderCaps)); |
285 | string uploaderURL = "http://" + m_httpListenerHostName + ":" + m_httpListenPort.ToString() + capsBase + uploaderPath; | 287 | string uploaderURL = "http://" + m_httpListenerHostName + ":" + m_httpListenPort.ToString() + capsBase + uploaderPath; |
286 | 288 | ||
@@ -360,21 +362,14 @@ namespace OpenSim.Region.Capabilities | |||
360 | private LLUUID inventoryItemID; | 362 | private LLUUID inventoryItemID; |
361 | private LLUUID parentFolder; | 363 | private LLUUID parentFolder; |
362 | private BaseHttpServer httpListener; | 364 | private BaseHttpServer httpListener; |
363 | private bool SaveAssets = false; | 365 | private bool m_dumpAssetsToFile; |
364 | private string m_assetName = ""; | 366 | private string m_assetName = ""; |
365 | private string m_assetDes = ""; | 367 | private string m_assetDes = ""; |
366 | 368 | ||
367 | private string m_invType = ""; | 369 | private string m_invType = ""; |
368 | private string m_assetType = ""; | 370 | private string m_assetType = ""; |
369 | 371 | ||
370 | /// <summary> | 372 | public AssetUploader(string assetName, string description, LLUUID assetID, LLUUID inventoryItem, LLUUID parentFolderID, string invType, string assetType, string path, BaseHttpServer httpServer, bool dumpAssetsToFile) |
371 | /// | ||
372 | /// </summary> | ||
373 | /// <param name="assetID"></param> | ||
374 | /// <param name="inventoryItem"></param> | ||
375 | /// <param name="path"></param> | ||
376 | /// <param name="httpServer"></param> | ||
377 | public AssetUploader(string assetName, string description, LLUUID assetID, LLUUID inventoryItem, LLUUID parentFolderID, string invType, string assetType, string path, BaseHttpServer httpServer) | ||
378 | { | 373 | { |
379 | m_assetName = assetName; | 374 | m_assetName = assetName; |
380 | m_assetDes = description; | 375 | m_assetDes = description; |
@@ -385,7 +380,7 @@ namespace OpenSim.Region.Capabilities | |||
385 | parentFolder = parentFolderID; | 380 | parentFolder = parentFolderID; |
386 | m_assetType = assetType; | 381 | m_assetType = assetType; |
387 | m_invType = invType; | 382 | m_invType = invType; |
388 | 383 | m_dumpAssetsToFile = dumpAssetsToFile; | |
389 | } | 384 | } |
390 | 385 | ||
391 | /// <summary> | 386 | /// <summary> |
@@ -408,8 +403,10 @@ namespace OpenSim.Region.Capabilities | |||
408 | 403 | ||
409 | httpListener.RemoveStreamHandler("POST", uploaderPath); | 404 | httpListener.RemoveStreamHandler("POST", uploaderPath); |
410 | 405 | ||
411 | if(this.SaveAssets) | 406 | if (this.m_dumpAssetsToFile) |
407 | { | ||
412 | this.SaveAssetToFile(m_assetName + ".jp2", data); | 408 | this.SaveAssetToFile(m_assetName + ".jp2", data); |
409 | } | ||
413 | 410 | ||
414 | if (OnUpLoad != null) | 411 | if (OnUpLoad != null) |
415 | { | 412 | { |
@@ -436,19 +433,12 @@ namespace OpenSim.Region.Capabilities | |||
436 | private string uploaderPath = ""; | 433 | private string uploaderPath = ""; |
437 | private LLUUID inventoryItemID; | 434 | private LLUUID inventoryItemID; |
438 | private BaseHttpServer httpListener; | 435 | private BaseHttpServer httpListener; |
439 | private bool SaveAssets = false; | 436 | private bool m_dumpAssetToFile; |
440 | |||
441 | 437 | ||
442 | /// <summary> | 438 | public ItemUpdater( LLUUID inventoryItem, string path, BaseHttpServer httpServer, bool dumpAssetToFile) |
443 | /// | ||
444 | /// </summary> | ||
445 | /// <param name="assetID"></param> | ||
446 | /// <param name="inventoryItem"></param> | ||
447 | /// <param name="path"></param> | ||
448 | /// <param name="httpServer"></param> | ||
449 | public ItemUpdater( LLUUID inventoryItem, string path, BaseHttpServer httpServer) | ||
450 | { | 439 | { |
451 | 440 | m_dumpAssetToFile = dumpAssetToFile; | |
441 | |||
452 | inventoryItemID = inventoryItem; | 442 | inventoryItemID = inventoryItem; |
453 | uploaderPath = path; | 443 | uploaderPath = path; |
454 | httpListener = httpServer; | 444 | httpListener = httpServer; |
@@ -481,8 +471,10 @@ namespace OpenSim.Region.Capabilities | |||
481 | 471 | ||
482 | httpListener.RemoveStreamHandler("POST", uploaderPath); | 472 | httpListener.RemoveStreamHandler("POST", uploaderPath); |
483 | 473 | ||
484 | if (this.SaveAssets) | 474 | if (this.m_dumpAssetToFile) |
485 | this.SaveAssetToFile("updateditem"+Util.RandomClass.Next(1,1000) + ".dat", data); | 475 | { |
476 | this.SaveAssetToFile("updateditem" + Util.RandomClass.Next(1, 1000) + ".dat", data); | ||
477 | } | ||
486 | 478 | ||
487 | return res; | 479 | return res; |
488 | } | 480 | } |
diff --git a/OpenSim/Framework/Communications/CommunicationsManager.cs b/OpenSim/Framework/Communications/CommunicationsManager.cs index 5af07f7..7a157be 100644 --- a/OpenSim/Framework/Communications/CommunicationsManager.cs +++ b/OpenSim/Framework/Communications/CommunicationsManager.cs | |||
@@ -28,7 +28,6 @@ | |||
28 | using System; | 28 | using System; |
29 | using libsecondlife; | 29 | using libsecondlife; |
30 | using OpenSim.Framework.Communications.Cache; | 30 | using OpenSim.Framework.Communications.Cache; |
31 | using OpenSim.Framework.Communications.Caches; | ||
32 | using OpenSim.Framework.Interfaces; | 31 | using OpenSim.Framework.Interfaces; |
33 | using OpenSim.Framework.Servers; | 32 | using OpenSim.Framework.Servers; |
34 | using OpenSim.Framework.Types; | 33 | using OpenSim.Framework.Types; |
@@ -87,12 +86,12 @@ namespace OpenSim.Framework.Communications | |||
87 | get { return m_networkServersInfo; } | 86 | get { return m_networkServersInfo; } |
88 | } | 87 | } |
89 | 88 | ||
90 | public CommunicationsManager(NetworkServersInfo serversInfo, BaseHttpServer httpServer, AssetCache assetCache) | 89 | public CommunicationsManager(NetworkServersInfo serversInfo, BaseHttpServer httpServer, AssetCache assetCache, bool dumpAssetsToFile) |
91 | { | 90 | { |
92 | m_networkServersInfo = serversInfo; | 91 | m_networkServersInfo = serversInfo; |
93 | m_assetCache = assetCache; | 92 | m_assetCache = assetCache; |
94 | m_userProfileCache = new UserProfileCache(this); | 93 | m_userProfileCache = new UserProfileCache(this); |
95 | m_transactionsManager = new AssetTransactionManager(this); | 94 | m_transactionsManager = new AssetTransactionManager(this, dumpAssetsToFile ); |
96 | } | 95 | } |
97 | 96 | ||
98 | public void doCreate(string[] cmmdParams) | 97 | public void doCreate(string[] cmmdParams) |
diff --git a/OpenSim/Framework/Communications/IInventoryServices.cs b/OpenSim/Framework/Communications/IInventoryServices.cs index bfc3ee7..5643d78 100644 --- a/OpenSim/Framework/Communications/IInventoryServices.cs +++ b/OpenSim/Framework/Communications/IInventoryServices.cs | |||
@@ -30,19 +30,18 @@ using System; | |||
30 | using System.Collections.Generic; | 30 | using System.Collections.Generic; |
31 | using System.Text; | 31 | using System.Text; |
32 | using libsecondlife; | 32 | using libsecondlife; |
33 | using OpenSim.Framework.Communications.Caches; | 33 | using OpenSim.Framework.Communications.Cache; |
34 | using OpenSim.Framework.Types; | 34 | using OpenSim.Framework.Types; |
35 | using InventoryFolder = OpenSim.Framework.Communications.Caches.InventoryFolder; | ||
36 | 35 | ||
37 | namespace OpenSim.Framework.Communications | 36 | namespace OpenSim.Framework.Communications |
38 | { | 37 | { |
39 | public delegate void InventoryFolderInfo(LLUUID userID, InventoryFolder folderInfo); | 38 | public delegate void InventoryFolderInfo(LLUUID userID, InventoryFolderImpl folderInfo); |
40 | public delegate void InventoryItemInfo(LLUUID userID, InventoryItemBase itemInfo); | 39 | public delegate void InventoryItemInfo(LLUUID userID, InventoryItemBase itemInfo); |
41 | 40 | ||
42 | public interface IInventoryServices | 41 | public interface IInventoryServices |
43 | { | 42 | { |
44 | void RequestInventoryForUser(LLUUID userID, InventoryFolderInfo folderCallBack, InventoryItemInfo itemCallBack); | 43 | void RequestInventoryForUser(LLUUID userID, InventoryFolderInfo folderCallBack, InventoryItemInfo itemCallBack); |
45 | void AddNewInventoryFolder(LLUUID userID, InventoryFolder folder); | 44 | void AddNewInventoryFolder(LLUUID userID, InventoryFolderImpl folder); |
46 | void AddNewInventoryItem(LLUUID userID, InventoryItemBase item); | 45 | void AddNewInventoryItem(LLUUID userID, InventoryItemBase item); |
47 | void DeleteInventoryItem(LLUUID userID, InventoryItemBase item); | 46 | void DeleteInventoryItem(LLUUID userID, InventoryItemBase item); |
48 | void CreateNewUserInventory(LLUUID user); | 47 | void CreateNewUserInventory(LLUUID user); |
diff --git a/OpenSim/Framework/Communications/InventoryServiceBase.cs b/OpenSim/Framework/Communications/InventoryServiceBase.cs index 06a1ca8..6549966 100644 --- a/OpenSim/Framework/Communications/InventoryServiceBase.cs +++ b/OpenSim/Framework/Communications/InventoryServiceBase.cs | |||
@@ -31,9 +31,9 @@ using System.Collections.Generic; | |||
31 | using System.Reflection; | 31 | using System.Reflection; |
32 | using libsecondlife; | 32 | using libsecondlife; |
33 | using OpenSim.Framework.Communications; | 33 | using OpenSim.Framework.Communications; |
34 | using OpenSim.Framework.Communications.Cache; | ||
34 | using OpenSim.Framework.Console; | 35 | using OpenSim.Framework.Console; |
35 | using OpenSim.Framework.Types; | 36 | using OpenSim.Framework.Types; |
36 | using InventoryFolder=OpenSim.Framework.Communications.Caches.InventoryFolder; | ||
37 | 37 | ||
38 | namespace OpenSim.Framework.Communications | 38 | namespace OpenSim.Framework.Communications |
39 | { | 39 | { |
@@ -232,7 +232,7 @@ namespace OpenSim.Framework.Communications | |||
232 | } | 232 | } |
233 | 233 | ||
234 | public abstract void RequestInventoryForUser(LLUUID userID, InventoryFolderInfo folderCallBack, InventoryItemInfo itemCallBack); | 234 | public abstract void RequestInventoryForUser(LLUUID userID, InventoryFolderInfo folderCallBack, InventoryItemInfo itemCallBack); |
235 | public abstract void AddNewInventoryFolder(LLUUID userID, InventoryFolder folder); | 235 | public abstract void AddNewInventoryFolder(LLUUID userID, InventoryFolderImpl folder); |
236 | public abstract void AddNewInventoryItem(LLUUID userID, InventoryItemBase item); | 236 | public abstract void AddNewInventoryItem(LLUUID userID, InventoryItemBase item); |
237 | public abstract void DeleteInventoryItem(LLUUID userID, InventoryItemBase item); | 237 | public abstract void DeleteInventoryItem(LLUUID userID, InventoryItemBase item); |
238 | } | 238 | } |