diff options
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/ClientStack/Linden/Caps/UploadBakedTextureModule.cs | 35 | ||||
-rw-r--r-- | OpenSim/Tests/Clients/Assets/AssetsClient.cs | 21 |
2 files changed, 46 insertions, 10 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/Caps/UploadBakedTextureModule.cs b/OpenSim/Region/ClientStack/Linden/Caps/UploadBakedTextureModule.cs index 3b0ccd7..79a935d 100644 --- a/OpenSim/Region/ClientStack/Linden/Caps/UploadBakedTextureModule.cs +++ b/OpenSim/Region/ClientStack/Linden/Caps/UploadBakedTextureModule.cs | |||
@@ -63,9 +63,16 @@ namespace OpenSim.Region.ClientStack.Linden | |||
63 | 63 | ||
64 | private Scene m_scene; | 64 | private Scene m_scene; |
65 | private bool m_persistBakedTextures; | 65 | private bool m_persistBakedTextures; |
66 | private string m_URL; | ||
66 | 67 | ||
67 | public void Initialise(IConfigSource source) | 68 | public void Initialise(IConfigSource source) |
68 | { | 69 | { |
70 | IConfig config = source.Configs["ClientStack.LindenCaps"]; | ||
71 | if (config == null) | ||
72 | return; | ||
73 | |||
74 | m_URL = config.GetString("Cap_UploadBakedTexture", string.Empty); | ||
75 | |||
69 | IConfig appearanceConfig = source.Configs["Appearance"]; | 76 | IConfig appearanceConfig = source.Configs["Appearance"]; |
70 | if (appearanceConfig != null) | 77 | if (appearanceConfig != null) |
71 | m_persistBakedTextures = appearanceConfig.GetBoolean("PersistBakedTextures", m_persistBakedTextures); | 78 | m_persistBakedTextures = appearanceConfig.GetBoolean("PersistBakedTextures", m_persistBakedTextures); |
@@ -100,15 +107,27 @@ namespace OpenSim.Region.ClientStack.Linden | |||
100 | 107 | ||
101 | public void RegisterCaps(UUID agentID, Caps caps) | 108 | public void RegisterCaps(UUID agentID, Caps caps) |
102 | { | 109 | { |
103 | caps.RegisterHandler( | 110 | UUID capID = UUID.Random(); |
104 | "UploadBakedTexture", | 111 | |
105 | new RestStreamHandler( | 112 | //caps.RegisterHandler("GetTexture", new StreamHandler("GET", "/CAPS/" + capID, ProcessGetTexture)); |
106 | "POST", | 113 | if (m_URL == "localhost") |
107 | "/CAPS/" + caps.CapsObjectPath + m_uploadBakedTexturePath, | 114 | { |
108 | new UploadBakedTextureHandler( | 115 | caps.RegisterHandler( |
109 | caps, m_scene.AssetService, m_persistBakedTextures).UploadBakedTexture, | ||
110 | "UploadBakedTexture", | 116 | "UploadBakedTexture", |
111 | agentID.ToString())); | 117 | new RestStreamHandler( |
118 | "POST", | ||
119 | "/CAPS/" + caps.CapsObjectPath + m_uploadBakedTexturePath, | ||
120 | new UploadBakedTextureHandler( | ||
121 | caps, m_scene.AssetService, m_persistBakedTextures).UploadBakedTexture, | ||
122 | "UploadBakedTexture", | ||
123 | agentID.ToString())); | ||
124 | |||
125 | } | ||
126 | else | ||
127 | { | ||
128 | caps.RegisterHandler("UploadBakedTexture", m_URL); | ||
129 | } | ||
130 | |||
112 | } | 131 | } |
113 | } | 132 | } |
114 | } \ No newline at end of file | 133 | } \ No newline at end of file |
diff --git a/OpenSim/Tests/Clients/Assets/AssetsClient.cs b/OpenSim/Tests/Clients/Assets/AssetsClient.cs index dd168a1..26d740b 100644 --- a/OpenSim/Tests/Clients/Assets/AssetsClient.cs +++ b/OpenSim/Tests/Clients/Assets/AssetsClient.cs | |||
@@ -82,7 +82,16 @@ namespace OpenSim.Tests.Clients.AssetsClient | |||
82 | m_log.InfoFormat("[ASSET CLIENT]: [{0}] requested asset {1}", i, uuid); | 82 | m_log.InfoFormat("[ASSET CLIENT]: [{0}] requested asset {1}", i, uuid); |
83 | } | 83 | } |
84 | 84 | ||
85 | Thread.Sleep(20 * 1000); | 85 | for (int i = 0; i < 500; i++) |
86 | { | ||
87 | var x = i; | ||
88 | ThreadPool.QueueUserWorkItem(delegate | ||
89 | { | ||
90 | Dummy(x); | ||
91 | }); | ||
92 | } | ||
93 | |||
94 | Thread.Sleep(30 * 1000); | ||
86 | m_log.InfoFormat("[ASSET CLIENT]: Received responses {0}", m_NReceived); | 95 | m_log.InfoFormat("[ASSET CLIENT]: Received responses {0}", m_NReceived); |
87 | } | 96 | } |
88 | 97 | ||
@@ -92,8 +101,16 @@ namespace OpenSim.Tests.Clients.AssetsClient | |||
92 | m_MaxThreadID = Thread.CurrentThread.ManagedThreadId; | 101 | m_MaxThreadID = Thread.CurrentThread.ManagedThreadId; |
93 | int max1, max2; | 102 | int max1, max2; |
94 | ThreadPool.GetAvailableThreads(out max1, out max2); | 103 | ThreadPool.GetAvailableThreads(out max1, out max2); |
95 | m_log.InfoFormat("[ASSET CLIENT]: Received asset {0} ({1}) ({2}-{3})", id, m_MaxThreadID, max1, max2); | 104 | m_log.InfoFormat("[ASSET CLIENT]: Received asset {0} ({1}) ({2}-{3}) {4}", id, m_MaxThreadID, max1, max2, DateTime.Now.ToString("hh:mm:ss")); |
96 | m_NReceived++; | 105 | m_NReceived++; |
97 | } | 106 | } |
107 | |||
108 | private static void Dummy(int i) | ||
109 | { | ||
110 | int max1, max2; | ||
111 | ThreadPool.GetAvailableThreads(out max1, out max2); | ||
112 | m_log.InfoFormat("[ASSET CLIENT]: ({0}) Hello! {1} - {2} {3}", i, max1, max2, DateTime.Now.ToString("hh:mm:ss")); | ||
113 | Thread.Sleep(2000); | ||
114 | } | ||
98 | } | 115 | } |
99 | } | 116 | } |