diff options
author | lbsa71 | 2007-09-24 05:15:13 +0000 |
---|---|---|
committer | lbsa71 | 2007-09-24 05:15:13 +0000 |
commit | 40468f18a493d6bad5b512b1cb13c1091ab7f17f (patch) | |
tree | ccc6f155d0414c1e8c6f58cbb1f2a8fe7dd372c2 | |
parent | * Added TryGetAvatarByName (diff) | |
download | opensim-SC-40468f18a493d6bad5b512b1cb13c1091ab7f17f.zip opensim-SC-40468f18a493d6bad5b512b1cb13c1091ab7f17f.tar.gz opensim-SC-40468f18a493d6bad5b512b1cb13c1091ab7f17f.tar.bz2 opensim-SC-40468f18a493d6bad5b512b1cb13c1091ab7f17f.tar.xz |
* Encapsulated all CommunicationsManager services
18 files changed, 225 insertions, 178 deletions
diff --git a/OpenSim/Framework/Communications/Cache/AssetCache.cs b/OpenSim/Framework/Communications/Cache/AssetCache.cs index 0fadb85..4ae8595 100644 --- a/OpenSim/Framework/Communications/Cache/AssetCache.cs +++ b/OpenSim/Framework/Communications/Cache/AssetCache.cs | |||
@@ -37,7 +37,7 @@ using OpenSim.Framework.Interfaces; | |||
37 | using OpenSim.Framework.Types; | 37 | using OpenSim.Framework.Types; |
38 | using OpenSim.Framework.Utilities; | 38 | using OpenSim.Framework.Utilities; |
39 | 39 | ||
40 | namespace OpenSim.Framework.Communications.Caches | 40 | namespace OpenSim.Framework.Communications.Cache |
41 | { | 41 | { |
42 | public delegate void DownloadComplete(AssetCache.TextureSender sender); | 42 | public delegate void DownloadComplete(AssetCache.TextureSender sender); |
43 | 43 | ||
@@ -180,7 +180,7 @@ namespace OpenSim.Framework.Communications.Caches | |||
180 | 180 | ||
181 | public void DeleteAsset(LLUUID assetID) | 181 | public void DeleteAsset(LLUUID assetID) |
182 | { | 182 | { |
183 | // this._assetServer.DeleteAsset(assetID); | 183 | // this._assetServer.DeleteAsset(assetID); |
184 | 184 | ||
185 | //Todo should delete it from memory too | 185 | //Todo should delete it from memory too |
186 | } | 186 | } |
@@ -268,7 +268,7 @@ namespace OpenSim.Framework.Communications.Caches | |||
268 | if (this.SendingTextures.ContainsKey(sender.request.ImageInfo.FullID)) | 268 | if (this.SendingTextures.ContainsKey(sender.request.ImageInfo.FullID)) |
269 | { | 269 | { |
270 | this.SendingTextures.Remove(sender.request.ImageInfo.FullID); | 270 | this.SendingTextures.Remove(sender.request.ImageInfo.FullID); |
271 | // this.AvatarRecievedTextures[sender.request.RequestUser.AgentId].Add(sender.request.ImageInfo.FullID); | 271 | // this.AvatarRecievedTextures[sender.request.RequestUser.AgentId].Add(sender.request.ImageInfo.FullID); |
272 | } | 272 | } |
273 | } | 273 | } |
274 | 274 | ||
@@ -791,5 +791,4 @@ namespace OpenSim.Framework.Communications.Caches | |||
791 | } | 791 | } |
792 | } | 792 | } |
793 | } | 793 | } |
794 | } | 794 | } \ No newline at end of file |
795 | |||
diff --git a/OpenSim/Framework/Communications/Capabilities/Caps.cs b/OpenSim/Framework/Communications/Capabilities/Caps.cs index f9c8b47..59c6d7c 100644 --- a/OpenSim/Framework/Communications/Capabilities/Caps.cs +++ b/OpenSim/Framework/Communications/Capabilities/Caps.cs | |||
@@ -31,10 +31,10 @@ using System.Collections.Generic; | |||
31 | using System.Text; | 31 | using System.Text; |
32 | using System.IO; | 32 | using System.IO; |
33 | using libsecondlife; | 33 | using libsecondlife; |
34 | using OpenSim.Framework.Communications.Cache; | ||
34 | using OpenSim.Framework.Servers; | 35 | using OpenSim.Framework.Servers; |
35 | using OpenSim.Framework.Types; | 36 | using OpenSim.Framework.Types; |
36 | using OpenSim.Framework.Utilities; | 37 | using OpenSim.Framework.Utilities; |
37 | using OpenSim.Framework.Communications.Caches; | ||
38 | using OpenSim.Framework.Data; | 38 | using OpenSim.Framework.Data; |
39 | 39 | ||
40 | namespace OpenSim.Region.Capabilities | 40 | namespace OpenSim.Region.Capabilities |
diff --git a/OpenSim/Framework/Communications/CommunicationsManager.cs b/OpenSim/Framework/Communications/CommunicationsManager.cs index 6d73af8..d6a577f 100644 --- a/OpenSim/Framework/Communications/CommunicationsManager.cs +++ b/OpenSim/Framework/Communications/CommunicationsManager.cs | |||
@@ -28,6 +28,7 @@ | |||
28 | using System.Text; | 28 | using System.Text; |
29 | using libsecondlife; | 29 | using libsecondlife; |
30 | using libsecondlife.Packets; | 30 | using libsecondlife.Packets; |
31 | using OpenSim.Framework.Communications.Cache; | ||
31 | using OpenSim.Framework.Data; | 32 | using OpenSim.Framework.Data; |
32 | using OpenSim.Framework.Interfaces; | 33 | using OpenSim.Framework.Interfaces; |
33 | using OpenSim.Framework.Types; | 34 | using OpenSim.Framework.Types; |
@@ -40,33 +41,80 @@ namespace OpenSim.Framework.Communications | |||
40 | 41 | ||
41 | public class CommunicationsManager | 42 | public class CommunicationsManager |
42 | { | 43 | { |
43 | public IUserServices UserServer; | ||
44 | public IGridServices GridServer; | ||
45 | public IInventoryServices InventoryServer; | ||
46 | public IInterRegionCommunications InterRegion; | ||
47 | public UserProfileCache UserProfiles; | ||
48 | public AssetTransactionManager TransactionsManager; | ||
49 | public AssetCache AssetCache; | ||
50 | |||
51 | public NetworkServersInfo ServersInfo; | ||
52 | public CommunicationsManager(NetworkServersInfo serversInfo, BaseHttpServer httpServer, AssetCache assetCache) | 44 | public CommunicationsManager(NetworkServersInfo serversInfo, BaseHttpServer httpServer, AssetCache assetCache) |
53 | { | 45 | { |
54 | ServersInfo = serversInfo; | 46 | this.serversInfo = serversInfo; |
55 | this.AssetCache = assetCache; | 47 | this.m_assetCache = assetCache; |
56 | UserProfiles = new UserProfileCache(this); | 48 | m_userProfiles = new UserProfileCache(this); |
57 | TransactionsManager = new AssetTransactionManager(this); | 49 | m_transactionsManager = new AssetTransactionManager(this); |
50 | } | ||
51 | |||
52 | private IUserServices m_userServer; | ||
53 | public IUserServices UserServer | ||
54 | { | ||
55 | get { return m_userServer; } | ||
56 | set { m_userServer = value; } | ||
57 | } | ||
58 | |||
59 | private IGridServices m_gridServer; | ||
60 | public IGridServices GridServer | ||
61 | { | ||
62 | get { return m_gridServer; } | ||
63 | set { m_gridServer = value; } | ||
64 | } | ||
65 | |||
66 | private IInventoryServices m_inventoryServer; | ||
67 | public IInventoryServices InventoryServer | ||
68 | { | ||
69 | get { return m_inventoryServer; } | ||
70 | set { m_inventoryServer = value; } | ||
71 | } | ||
72 | |||
73 | private IInterRegionCommunications m_interRegion; | ||
74 | public IInterRegionCommunications InterRegion | ||
75 | { | ||
76 | get { return m_interRegion; } | ||
77 | set { m_interRegion = value; } | ||
78 | } | ||
79 | |||
80 | private UserProfileCache m_userProfiles; | ||
81 | public UserProfileCache UserProfiles | ||
82 | { | ||
83 | get { return m_userProfiles; } | ||
84 | set { m_userProfiles = value; } | ||
85 | } | ||
86 | |||
87 | private AssetTransactionManager m_transactionsManager; | ||
88 | public AssetTransactionManager TransactionsManager | ||
89 | { | ||
90 | get { return m_transactionsManager; } | ||
91 | set { m_transactionsManager = value; } | ||
92 | } | ||
93 | |||
94 | private AssetCache m_assetCache; | ||
95 | public AssetCache AssetCache | ||
96 | { | ||
97 | get { return m_assetCache; } | ||
98 | set { m_assetCache = value; } | ||
99 | } | ||
100 | |||
101 | private NetworkServersInfo serversInfo; | ||
102 | public NetworkServersInfo ServersInfo | ||
103 | { | ||
104 | get { return serversInfo; } | ||
105 | set { serversInfo = value; } | ||
58 | } | 106 | } |
59 | 107 | ||
60 | #region Packet Handlers | 108 | #region Packet Handlers |
61 | public void HandleUUIDNameRequest(LLUUID uuid, IClientAPI remote_client) | 109 | public void HandleUUIDNameRequest(LLUUID uuid, IClientAPI remote_client) |
62 | { | 110 | { |
63 | if (uuid == UserProfiles.libraryRoot.agentID) | 111 | if (uuid == m_userProfiles.libraryRoot.agentID) |
64 | { | 112 | { |
65 | remote_client.SendNameReply(uuid , "Mr" , "OpenSim"); | 113 | remote_client.SendNameReply(uuid , "Mr" , "OpenSim"); |
66 | } | 114 | } |
67 | else | 115 | else |
68 | { | 116 | { |
69 | UserProfileData profileData = this.UserServer.GetUserProfile(uuid); | 117 | UserProfileData profileData = this.m_userServer.GetUserProfile(uuid); |
70 | if (profileData != null) | 118 | if (profileData != null) |
71 | { | 119 | { |
72 | LLUUID profileId = profileData.UUID; | 120 | LLUUID profileId = profileData.UUID; |
diff --git a/OpenSim/Region/Application/OpenSimMain.cs b/OpenSim/Region/Application/OpenSimMain.cs index c28025b..d3b4e49 100644 --- a/OpenSim/Region/Application/OpenSimMain.cs +++ b/OpenSim/Region/Application/OpenSimMain.cs | |||
@@ -31,6 +31,7 @@ using System.Collections.Generic; | |||
31 | using System.IO; | 31 | using System.IO; |
32 | using System.Text; | 32 | using System.Text; |
33 | using Nini.Config; | 33 | using Nini.Config; |
34 | using OpenSim.Framework.Communications.Cache; | ||
34 | using OpenSim.Framework.Communications.Caches; | 35 | using OpenSim.Framework.Communications.Caches; |
35 | using OpenSim.Framework.Console; | 36 | using OpenSim.Framework.Console; |
36 | using OpenSim.Framework.Interfaces; | 37 | using OpenSim.Framework.Interfaces; |
@@ -270,7 +271,7 @@ namespace OpenSim | |||
270 | } | 271 | } |
271 | assetServer.SetServerInfo(m_networkServersInfo.AssetURL, m_networkServersInfo.AssetSendKey); | 272 | assetServer.SetServerInfo(m_networkServersInfo.AssetURL, m_networkServersInfo.AssetSendKey); |
272 | m_assetCache = new AssetCache(assetServer); | 273 | m_assetCache = new AssetCache(assetServer); |
273 | // m_assetCache = new AssetCache("OpenSim.Region.GridInterfaces.Local.dll", m_networkServersInfo.AssetURL, m_networkServersInfo.AssetSendKey); | 274 | // m_assetCache = new assetCache("OpenSim.Region.GridInterfaces.Local.dll", m_networkServersInfo.AssetURL, m_networkServersInfo.AssetSendKey); |
274 | } | 275 | } |
275 | 276 | ||
276 | protected override LogBase CreateLog() | 277 | protected override LogBase CreateLog() |
diff --git a/OpenSim/Region/ClientStack/ClientView.cs b/OpenSim/Region/ClientStack/ClientView.cs index 3b4c0f8..2489739 100644 --- a/OpenSim/Region/ClientStack/ClientView.cs +++ b/OpenSim/Region/ClientStack/ClientView.cs | |||
@@ -34,13 +34,12 @@ using System.Timers; | |||
34 | using libsecondlife; | 34 | using libsecondlife; |
35 | using libsecondlife.Packets; | 35 | using libsecondlife.Packets; |
36 | using OpenSim.Framework; | 36 | using OpenSim.Framework; |
37 | using OpenSim.Framework.Communications.Cache; | ||
37 | using OpenSim.Framework.Console; | 38 | using OpenSim.Framework.Console; |
38 | using OpenSim.Framework.Interfaces; | 39 | using OpenSim.Framework.Interfaces; |
39 | using OpenSim.Framework.Inventory; | 40 | using OpenSim.Framework.Inventory; |
40 | using OpenSim.Framework.Types; | 41 | using OpenSim.Framework.Types; |
41 | using OpenSim.Framework.Utilities; | 42 | using OpenSim.Framework.Utilities; |
42 | using OpenSim.Framework.Communications.Caches; | ||
43 | |||
44 | using Timer = System.Timers.Timer; | 43 | using Timer = System.Timers.Timer; |
45 | 44 | ||
46 | namespace OpenSim.Region.ClientStack | 45 | namespace OpenSim.Region.ClientStack |
diff --git a/OpenSim/Region/ClientStack/PacketServer.cs b/OpenSim/Region/ClientStack/PacketServer.cs index f02f105..7134ad3 100644 --- a/OpenSim/Region/ClientStack/PacketServer.cs +++ b/OpenSim/Region/ClientStack/PacketServer.cs | |||
@@ -30,9 +30,9 @@ using System.Net; | |||
30 | using System.Net.Sockets; | 30 | using System.Net.Sockets; |
31 | using libsecondlife.Packets; | 31 | using libsecondlife.Packets; |
32 | using OpenSim.Framework; | 32 | using OpenSim.Framework; |
33 | using OpenSim.Framework.Communications.Cache; | ||
33 | using OpenSim.Framework.Types; | 34 | using OpenSim.Framework.Types; |
34 | using OpenSim.Framework.Interfaces; | 35 | using OpenSim.Framework.Interfaces; |
35 | using OpenSim.Framework.Communications.Caches; | ||
36 | using libsecondlife; | 36 | using libsecondlife; |
37 | 37 | ||
38 | namespace OpenSim.Region.ClientStack | 38 | namespace OpenSim.Region.ClientStack |
diff --git a/OpenSim/Region/ClientStack/RegionApplicationBase.cs b/OpenSim/Region/ClientStack/RegionApplicationBase.cs index a1ec4e3..f5253ba 100644 --- a/OpenSim/Region/ClientStack/RegionApplicationBase.cs +++ b/OpenSim/Region/ClientStack/RegionApplicationBase.cs | |||
@@ -29,6 +29,7 @@ using System; | |||
29 | using System.Collections.Generic; | 29 | using System.Collections.Generic; |
30 | using System.Net; | 30 | using System.Net; |
31 | using OpenSim.Framework; | 31 | using OpenSim.Framework; |
32 | using OpenSim.Framework.Communications.Cache; | ||
32 | using OpenSim.Framework.Console; | 33 | using OpenSim.Framework.Console; |
33 | using OpenSim.Framework.Data; | 34 | using OpenSim.Framework.Data; |
34 | using OpenSim.Framework.Interfaces; | 35 | using OpenSim.Framework.Interfaces; |
@@ -39,7 +40,6 @@ using OpenSim.Region.Environment; | |||
39 | using libsecondlife; | 40 | using libsecondlife; |
40 | using OpenSim.Region.Environment.Scenes; | 41 | using OpenSim.Region.Environment.Scenes; |
41 | using OpenSim.Framework.Communications; | 42 | using OpenSim.Framework.Communications; |
42 | using OpenSim.Framework.Communications.Caches; | ||
43 | 43 | ||
44 | namespace OpenSim.Region.ClientStack | 44 | namespace OpenSim.Region.ClientStack |
45 | { | 45 | { |
diff --git a/OpenSim/Region/ClientStack/UDPServer.cs b/OpenSim/Region/ClientStack/UDPServer.cs index 9a3d01a..c7a3524 100644 --- a/OpenSim/Region/ClientStack/UDPServer.cs +++ b/OpenSim/Region/ClientStack/UDPServer.cs | |||
@@ -31,10 +31,10 @@ using System.Net; | |||
31 | using System.Net.Sockets; | 31 | using System.Net.Sockets; |
32 | using libsecondlife.Packets; | 32 | using libsecondlife.Packets; |
33 | using OpenSim.Framework; | 33 | using OpenSim.Framework; |
34 | using OpenSim.Framework.Communications.Cache; | ||
34 | using OpenSim.Framework.Types; | 35 | using OpenSim.Framework.Types; |
35 | using OpenSim.Framework.Console; | 36 | using OpenSim.Framework.Console; |
36 | using OpenSim.Framework.Interfaces; | 37 | using OpenSim.Framework.Interfaces; |
37 | using OpenSim.Framework.Communications.Caches; | ||
38 | 38 | ||
39 | namespace OpenSim.Region.ClientStack | 39 | namespace OpenSim.Region.ClientStack |
40 | { | 40 | { |
diff --git a/OpenSim/Region/Communications/Local/CommunicationsLocal.cs b/OpenSim/Region/Communications/Local/CommunicationsLocal.cs index 3031b8a..aa0105c 100644 --- a/OpenSim/Region/Communications/Local/CommunicationsLocal.cs +++ b/OpenSim/Region/Communications/Local/CommunicationsLocal.cs | |||
@@ -27,9 +27,9 @@ | |||
27 | */ | 27 | */ |
28 | using System; | 28 | using System; |
29 | using OpenSim.Framework.Communications; | 29 | using OpenSim.Framework.Communications; |
30 | using OpenSim.Framework.Communications.Cache; | ||
30 | using OpenSim.Framework.Types; | 31 | using OpenSim.Framework.Types; |
31 | using OpenSim.Framework.Servers; | 32 | using OpenSim.Framework.Servers; |
32 | using OpenSim.Framework.Communications.Caches; | ||
33 | using OpenSim.Framework.Console; | 33 | using OpenSim.Framework.Console; |
34 | using OpenSim.Framework.Utilities; | 34 | using OpenSim.Framework.Utilities; |
35 | using OpenSim.Framework.Data; | 35 | using OpenSim.Framework.Data; |
diff --git a/OpenSim/Region/Communications/OGS1/CommunicationsOGS1.cs b/OpenSim/Region/Communications/OGS1/CommunicationsOGS1.cs index af239f7..dd85d54 100644 --- a/OpenSim/Region/Communications/OGS1/CommunicationsOGS1.cs +++ b/OpenSim/Region/Communications/OGS1/CommunicationsOGS1.cs | |||
@@ -1,8 +1,8 @@ | |||
1 | using OpenSim.Framework.Communications; | 1 | using OpenSim.Framework.Communications; |
2 | using OpenSim.Framework.Communications.Cache; | ||
2 | using OpenSim.Framework.Types; | 3 | using OpenSim.Framework.Types; |
3 | using OpenSim.Framework.Servers; | 4 | using OpenSim.Framework.Servers; |
4 | using OpenSim.Framework.Communications.Caches; | 5 | |
5 | |||
6 | 6 | ||
7 | namespace OpenSim.Region.Communications.OGS1 | 7 | namespace OpenSim.Region.Communications.OGS1 |
8 | { | 8 | { |
diff --git a/OpenSim/Region/Communications/OGS1/OGS1GridServices.cs b/OpenSim/Region/Communications/OGS1/OGS1GridServices.cs index 071ad0f..dea4b9f 100644 --- a/OpenSim/Region/Communications/OGS1/OGS1GridServices.cs +++ b/OpenSim/Region/Communications/OGS1/OGS1GridServices.cs | |||
@@ -320,7 +320,7 @@ namespace OpenSim.Region.Communications.OGS1 | |||
320 | return new XmlRpcResponse(); | 320 | return new XmlRpcResponse(); |
321 | } | 321 | } |
322 | 322 | ||
323 | #region InterRegion Comms | 323 | #region m_interRegion Comms |
324 | /// <summary> | 324 | /// <summary> |
325 | /// | 325 | /// |
326 | /// </summary> | 326 | /// </summary> |
diff --git a/OpenSim/Region/Environment/Modules/DynamicTextureModule.cs b/OpenSim/Region/Environment/Modules/DynamicTextureModule.cs index 3f737e1..0fd03d3 100644 --- a/OpenSim/Region/Environment/Modules/DynamicTextureModule.cs +++ b/OpenSim/Region/Environment/Modules/DynamicTextureModule.cs | |||
@@ -6,152 +6,152 @@ using OpenSim.Framework.Utilities; | |||
6 | using OpenSim.Region.Environment.Interfaces; | 6 | using OpenSim.Region.Environment.Interfaces; |
7 | using OpenSim.Region.Environment.Scenes; | 7 | using OpenSim.Region.Environment.Scenes; |
8 | 8 | ||
9 | namespace OpenSim.Region.Environment.Modules | 9 | namespace OpenSim.Region.Environment.Modules |
10 | { | 10 | { |
11 | public class DynamicTextureModule : IRegionModule, IDynamicTextureManager | 11 | public class DynamicTextureModule : IRegionModule, IDynamicTextureManager |
12 | { | 12 | { |
13 | private Dictionary<LLUUID, Scene> RegisteredScenes = new Dictionary<LLUUID, Scene>(); | 13 | private Dictionary<LLUUID, Scene> RegisteredScenes = new Dictionary<LLUUID, Scene>(); |
14 | 14 | ||
15 | private Dictionary<string, IDynamicTextureRender> RenderPlugins = | 15 | private Dictionary<string, IDynamicTextureRender> RenderPlugins = |
16 | new Dictionary<string, IDynamicTextureRender>(); | 16 | new Dictionary<string, IDynamicTextureRender>(); |
17 | 17 | ||
18 | private Dictionary<LLUUID, DynamicTextureUpdater> Updaters = new Dictionary<LLUUID, DynamicTextureUpdater>(); | 18 | private Dictionary<LLUUID, DynamicTextureUpdater> Updaters = new Dictionary<LLUUID, DynamicTextureUpdater>(); |
19 | 19 | ||
20 | public void Initialise(Scene scene) | 20 | public void Initialise(Scene scene) |
21 | { | 21 | { |
22 | if (!RegisteredScenes.ContainsKey(scene.RegionInfo.SimUUID)) | 22 | if (!RegisteredScenes.ContainsKey(scene.RegionInfo.SimUUID)) |
23 | { | 23 | { |
24 | RegisteredScenes.Add(scene.RegionInfo.SimUUID, scene); | 24 | RegisteredScenes.Add(scene.RegionInfo.SimUUID, scene); |
25 | scene.RegisterModuleInterface<IDynamicTextureManager>(this); | 25 | scene.RegisterModuleInterface<IDynamicTextureManager>(this); |
26 | } | 26 | } |
27 | } | 27 | } |
28 | 28 | ||
29 | public void PostInitialise() | 29 | public void PostInitialise() |
30 | { | ||
31 | } | ||
32 | |||
33 | public void CloseDown() | ||
34 | { | ||
35 | } | ||
36 | |||
37 | public string GetName() | ||
30 | { | 38 | { |
31 | } | 39 | return "DynamicTextureModule"; |
32 | 40 | } | |
33 | public void CloseDown() | 41 | |
34 | { | 42 | public bool IsSharedModule() |
35 | } | 43 | { |
36 | 44 | return true; | |
37 | public string GetName() | 45 | } |
38 | { | 46 | |
39 | return "DynamicTextureModule"; | 47 | public void RegisterRender(string handleType, IDynamicTextureRender render) |
40 | } | 48 | { |
41 | 49 | if (!RenderPlugins.ContainsKey(handleType)) | |
42 | public bool IsSharedModule() | 50 | { |
43 | { | 51 | RenderPlugins.Add(handleType, render); |
44 | return true; | 52 | } |
45 | } | 53 | } |
46 | 54 | ||
47 | public void RegisterRender(string handleType, IDynamicTextureRender render) | 55 | public void ReturnData(LLUUID id, byte[] data) |
48 | { | 56 | { |
49 | if (!RenderPlugins.ContainsKey(handleType)) | 57 | if (Updaters.ContainsKey(id)) |
50 | { | 58 | { |
51 | RenderPlugins.Add(handleType, render); | 59 | DynamicTextureUpdater updater = Updaters[id]; |
52 | } | 60 | if (RegisteredScenes.ContainsKey(updater.SimUUID)) |
53 | } | 61 | { |
54 | 62 | Scene scene = RegisteredScenes[updater.SimUUID]; | |
55 | public void ReturnData(LLUUID id, byte[] data) | 63 | updater.DataReceived(data, scene); |
56 | { | 64 | } |
57 | if (Updaters.ContainsKey(id)) | 65 | } |
58 | { | 66 | } |
59 | DynamicTextureUpdater updater = Updaters[id]; | 67 | |
60 | if (RegisteredScenes.ContainsKey(updater.SimUUID)) | ||
61 | { | ||
62 | Scene scene = RegisteredScenes[updater.SimUUID]; | ||
63 | updater.DataReceived(data, scene); | ||
64 | } | ||
65 | } | ||
66 | } | ||
67 | |||
68 | public LLUUID AddDynamicTextureURL(LLUUID simID, LLUUID primID, string contentType, string url, | 68 | public LLUUID AddDynamicTextureURL(LLUUID simID, LLUUID primID, string contentType, string url, |
69 | string extraParams, int updateTimer) | 69 | string extraParams, int updateTimer) |
70 | { | 70 | { |
71 | Console.WriteLine("dynamic texture being created: " + url + " of type " + contentType); | 71 | Console.WriteLine("dynamic texture being created: " + url + " of type " + contentType); |
72 | if (RenderPlugins.ContainsKey(contentType)) | 72 | if (RenderPlugins.ContainsKey(contentType)) |
73 | { | 73 | { |
74 | DynamicTextureUpdater updater = new DynamicTextureUpdater(); | 74 | DynamicTextureUpdater updater = new DynamicTextureUpdater(); |
75 | updater.SimUUID = simID; | 75 | updater.SimUUID = simID; |
76 | updater.PrimID = primID; | 76 | updater.PrimID = primID; |
77 | updater.ContentType = contentType; | 77 | updater.ContentType = contentType; |
78 | updater.Url = url; | 78 | updater.Url = url; |
79 | updater.UpdateTimer = updateTimer; | 79 | updater.UpdateTimer = updateTimer; |
80 | updater.UpdaterID = LLUUID.Random(); | 80 | updater.UpdaterID = LLUUID.Random(); |
81 | updater.Params = extraParams; | 81 | updater.Params = extraParams; |
82 | 82 | ||
83 | if (!Updaters.ContainsKey(updater.UpdaterID)) | 83 | if (!Updaters.ContainsKey(updater.UpdaterID)) |
84 | { | 84 | { |
85 | Updaters.Add(updater.UpdaterID, updater); | 85 | Updaters.Add(updater.UpdaterID, updater); |
86 | } | 86 | } |
87 | 87 | ||
88 | RenderPlugins[contentType].AsyncConvertUrl(updater.UpdaterID, url, extraParams); | 88 | RenderPlugins[contentType].AsyncConvertUrl(updater.UpdaterID, url, extraParams); |
89 | return updater.UpdaterID; | 89 | return updater.UpdaterID; |
90 | } | 90 | } |
91 | return LLUUID.Zero; | 91 | return LLUUID.Zero; |
92 | } | 92 | } |
93 | 93 | ||
94 | public LLUUID AddDynamicTextureData(LLUUID simID, LLUUID primID, string contentType, string data, | 94 | public LLUUID AddDynamicTextureData(LLUUID simID, LLUUID primID, string contentType, string data, |
95 | string extraParams, int updateTimer) | 95 | string extraParams, int updateTimer) |
96 | { | 96 | { |
97 | if (RenderPlugins.ContainsKey(contentType)) | 97 | if (RenderPlugins.ContainsKey(contentType)) |
98 | { | 98 | { |
99 | DynamicTextureUpdater updater = new DynamicTextureUpdater(); | 99 | DynamicTextureUpdater updater = new DynamicTextureUpdater(); |
100 | updater.SimUUID = simID; | 100 | updater.SimUUID = simID; |
101 | updater.PrimID = primID; | 101 | updater.PrimID = primID; |
102 | updater.ContentType = contentType; | 102 | updater.ContentType = contentType; |
103 | updater.BodyData = data; | 103 | updater.BodyData = data; |
104 | updater.UpdateTimer = updateTimer; | 104 | updater.UpdateTimer = updateTimer; |
105 | updater.UpdaterID = LLUUID.Random(); | 105 | updater.UpdaterID = LLUUID.Random(); |
106 | updater.Params = extraParams; | 106 | updater.Params = extraParams; |
107 | 107 | ||
108 | if (!Updaters.ContainsKey(updater.UpdaterID)) | 108 | if (!Updaters.ContainsKey(updater.UpdaterID)) |
109 | { | 109 | { |
110 | Updaters.Add(updater.UpdaterID, updater); | 110 | Updaters.Add(updater.UpdaterID, updater); |
111 | } | 111 | } |
112 | 112 | ||
113 | RenderPlugins[contentType].AsyncConvertData(updater.UpdaterID, data, extraParams); | 113 | RenderPlugins[contentType].AsyncConvertData(updater.UpdaterID, data, extraParams); |
114 | return updater.UpdaterID; | 114 | return updater.UpdaterID; |
115 | } | 115 | } |
116 | return LLUUID.Zero; | 116 | return LLUUID.Zero; |
117 | } | 117 | } |
118 | 118 | ||
119 | public class DynamicTextureUpdater | 119 | public class DynamicTextureUpdater |
120 | { | 120 | { |
121 | public LLUUID SimUUID; | 121 | public LLUUID SimUUID; |
122 | public LLUUID UpdaterID; | 122 | public LLUUID UpdaterID; |
123 | public string ContentType; | 123 | public string ContentType; |
124 | public string Url; | 124 | public string Url; |
125 | public string BodyData; | 125 | public string BodyData; |
126 | public LLUUID PrimID; | 126 | public LLUUID PrimID; |
127 | public int UpdateTimer; | 127 | public int UpdateTimer; |
128 | public LLUUID LastAssetID; | 128 | public LLUUID LastAssetID; |
129 | public string Params; | 129 | public string Params; |
130 | 130 | ||
131 | public DynamicTextureUpdater() | 131 | public DynamicTextureUpdater() |
132 | { | 132 | { |
133 | LastAssetID = LLUUID.Zero; | 133 | LastAssetID = LLUUID.Zero; |
134 | UpdateTimer = 0; | 134 | UpdateTimer = 0; |
135 | BodyData = null; | 135 | BodyData = null; |
136 | } | 136 | } |
137 | 137 | ||
138 | public void DataReceived(byte[] data, Scene scene) | 138 | public void DataReceived(byte[] data, Scene scene) |
139 | { | 139 | { |
140 | //TODO delete the last asset(data), if it was a dynamic texture | 140 | //TODO delete the last asset(data), if it was a dynamic texture |
141 | 141 | ||
142 | AssetBase asset = new AssetBase(); | 142 | AssetBase asset = new AssetBase(); |
143 | asset.FullID = LLUUID.Random(); | 143 | asset.FullID = LLUUID.Random(); |
144 | asset.Data = data; | 144 | asset.Data = data; |
145 | asset.Name = "DynamicImage" + Util.RandomClass.Next(1, 10000); | 145 | asset.Name = "DynamicImage" + Util.RandomClass.Next(1, 10000); |
146 | asset.Type = 0; | 146 | asset.Type = 0; |
147 | scene.commsManager.AssetCache.AddAsset(asset); | 147 | scene.commsManager.AssetCache.AddAsset(asset); |
148 | 148 | ||
149 | LastAssetID = asset.FullID; | 149 | LastAssetID = asset.FullID; |
150 | 150 | ||
151 | SceneObjectPart part = scene.GetSceneObjectPart(PrimID); | 151 | SceneObjectPart part = scene.GetSceneObjectPart(PrimID); |
152 | part.Shape.TextureEntry = new LLObject.TextureEntry(asset.FullID).ToBytes(); | 152 | part.Shape.TextureEntry = new LLObject.TextureEntry(asset.FullID).ToBytes(); |
153 | part.ScheduleFullUpdate(); | 153 | part.ScheduleFullUpdate(); |
154 | } | 154 | } |
155 | } | 155 | } |
156 | } | 156 | } |
157 | } \ No newline at end of file | 157 | } \ No newline at end of file |
diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs index cff832e..90736f4 100644 --- a/OpenSim/Region/Environment/Scenes/Scene.cs +++ b/OpenSim/Region/Environment/Scenes/Scene.cs | |||
@@ -35,7 +35,7 @@ using Axiom.Math; | |||
35 | using libsecondlife; | 35 | using libsecondlife; |
36 | using OpenSim.Framework; | 36 | using OpenSim.Framework; |
37 | using OpenSim.Framework.Communications; | 37 | using OpenSim.Framework.Communications; |
38 | using OpenSim.Framework.Communications.Caches; | 38 | using OpenSim.Framework.Communications.Cache; |
39 | using OpenSim.Framework.Console; | 39 | using OpenSim.Framework.Console; |
40 | using OpenSim.Framework.Interfaces; | 40 | using OpenSim.Framework.Interfaces; |
41 | using OpenSim.Framework.Servers; | 41 | using OpenSim.Framework.Servers; |
diff --git a/OpenSim/Region/Environment/Scenes/SceneBase.cs b/OpenSim/Region/Environment/Scenes/SceneBase.cs index fc81d5f..b3cd99c 100644 --- a/OpenSim/Region/Environment/Scenes/SceneBase.cs +++ b/OpenSim/Region/Environment/Scenes/SceneBase.cs | |||
@@ -28,7 +28,7 @@ | |||
28 | using System; | 28 | using System; |
29 | using System.Collections.Generic; | 29 | using System.Collections.Generic; |
30 | using libsecondlife; | 30 | using libsecondlife; |
31 | using OpenSim.Framework.Communications.Caches; | 31 | using OpenSim.Framework.Communications.Cache; |
32 | using OpenSim.Framework.Console; | 32 | using OpenSim.Framework.Console; |
33 | using OpenSim.Framework.Interfaces; | 33 | using OpenSim.Framework.Interfaces; |
34 | using OpenSim.Framework.Types; | 34 | using OpenSim.Framework.Types; |
diff --git a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs index c1c678f..890008d 100644 --- a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs | |||
@@ -80,7 +80,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
80 | } | 80 | } |
81 | } | 81 | } |
82 | 82 | ||
83 | public LLVector3 AbsolutePosition | 83 | public override LLVector3 AbsolutePosition |
84 | { | 84 | { |
85 | get { return m_rootPart.GroupPosition; } | 85 | get { return m_rootPart.GroupPosition; } |
86 | set | 86 | set |
diff --git a/OpenSim/Region/Environment/Scenes/ScenePresence.cs b/OpenSim/Region/Environment/Scenes/ScenePresence.cs index 4d2c8e2..b8ef17b 100644 --- a/OpenSim/Region/Environment/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Environment/Scenes/ScenePresence.cs | |||
@@ -138,7 +138,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
138 | get { return m_controllingClient; } | 138 | get { return m_controllingClient; } |
139 | } | 139 | } |
140 | 140 | ||
141 | public LLVector3 AbsolutePosition | 141 | public override LLVector3 AbsolutePosition |
142 | { | 142 | { |
143 | get | 143 | get |
144 | { | 144 | { |
@@ -172,7 +172,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
172 | } | 172 | } |
173 | } | 173 | } |
174 | 174 | ||
175 | public LLVector3 Velocity | 175 | public override LLVector3 Velocity |
176 | { | 176 | { |
177 | get | 177 | get |
178 | { | 178 | { |
diff --git a/OpenSim/Region/Examples/SimpleApp/MyWorld.cs b/OpenSim/Region/Examples/SimpleApp/MyWorld.cs index e4b033d..6d216e3 100644 --- a/OpenSim/Region/Examples/SimpleApp/MyWorld.cs +++ b/OpenSim/Region/Examples/SimpleApp/MyWorld.cs | |||
@@ -2,6 +2,7 @@ using System.Collections.Generic; | |||
2 | using libsecondlife; | 2 | using libsecondlife; |
3 | using OpenSim.Framework; | 3 | using OpenSim.Framework; |
4 | using OpenSim.Framework.Communications; | 4 | using OpenSim.Framework.Communications; |
5 | using OpenSim.Framework.Communications.Cache; | ||
5 | using OpenSim.Framework.Interfaces; | 6 | using OpenSim.Framework.Interfaces; |
6 | using OpenSim.Framework.Servers; | 7 | using OpenSim.Framework.Servers; |
7 | using OpenSim.Framework.Types; | 8 | using OpenSim.Framework.Types; |
@@ -9,8 +10,6 @@ using OpenSim.Framework.Types; | |||
9 | using OpenSim.Region.Environment.Scenes; | 10 | using OpenSim.Region.Environment.Scenes; |
10 | using OpenSim.Region.Terrain; | 11 | using OpenSim.Region.Terrain; |
11 | using OpenSim.Region.Environment; | 12 | using OpenSim.Region.Environment; |
12 | using OpenSim.Framework.Communications.Caches; | ||
13 | |||
14 | using Avatar=OpenSim.Region.Environment.Scenes.ScenePresence; | 13 | using Avatar=OpenSim.Region.Environment.Scenes.ScenePresence; |
15 | 14 | ||
16 | namespace SimpleApp | 15 | namespace SimpleApp |
diff --git a/OpenSim/Region/Examples/SimpleApp/Program.cs b/OpenSim/Region/Examples/SimpleApp/Program.cs index 2ff9ff0..d693cce 100644 --- a/OpenSim/Region/Examples/SimpleApp/Program.cs +++ b/OpenSim/Region/Examples/SimpleApp/Program.cs | |||
@@ -3,6 +3,7 @@ using System.Collections.Generic; | |||
3 | using System.IO; | 3 | using System.IO; |
4 | using System.Net; | 4 | using System.Net; |
5 | using libsecondlife; | 5 | using libsecondlife; |
6 | using OpenSim.Framework.Communications.Cache; | ||
6 | using OpenSim.Framework.Communications.Caches; | 7 | using OpenSim.Framework.Communications.Caches; |
7 | using OpenSim.Framework.Console; | 8 | using OpenSim.Framework.Console; |
8 | using OpenSim.Framework.Types; | 9 | using OpenSim.Framework.Types; |