aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorMW2007-06-22 22:21:08 +0000
committerMW2007-06-22 22:21:08 +0000
commitd7121a422a334f20e96d09251cf7382164b590db (patch)
tree64ebfea926bc57569963bd1a8adc16e71c942ab1
parentImported Share folder from trunk (diff)
downloadopensim-SC-d7121a422a334f20e96d09251cf7382164b590db.zip
opensim-SC-d7121a422a334f20e96d09251cf7382164b590db.tar.gz
opensim-SC-d7121a422a334f20e96d09251cf7382164b590db.tar.bz2
opensim-SC-d7121a422a334f20e96d09251cf7382164b590db.tar.xz
Started work on CAPS support, now we have our first test capability, MapLayer requests are handled by CAPS.
-rw-r--r--Common/OpenGrid.Framework.Communications/IInterRegionCommunications.cs2
-rw-r--r--Common/OpenGrid.Framework.UserManager/LoginResponse.cs13
-rw-r--r--Common/OpenSim.Servers/BaseHttpServer.cs16
-rw-r--r--OpenSim/Examples/SimpleApp/MyWorld.cs5
-rw-r--r--OpenSim/Examples/SimpleApp/Program.cs5
-rw-r--r--OpenSim/OpenSim.LocalCommunications/LocalBackEndServices.cs2
-rw-r--r--OpenSim/OpenSim.LocalCommunications/LocalUserServices.cs2
-rw-r--r--OpenSim/OpenSim.Region/Caps.cs98
-rw-r--r--OpenSim/OpenSim.Region/OpenSim.Region.csproj55
-rw-r--r--OpenSim/OpenSim.Region/Scenes/Primitive.cs2
-rw-r--r--OpenSim/OpenSim.Region/Scenes/Scene.cs13
-rw-r--r--OpenSim/OpenSim/OpenSimMain.cs6
12 files changed, 167 insertions, 52 deletions
diff --git a/Common/OpenGrid.Framework.Communications/IInterRegionCommunications.cs b/Common/OpenGrid.Framework.Communications/IInterRegionCommunications.cs
index 27e6fc7..4cb8a38 100644
--- a/Common/OpenGrid.Framework.Communications/IInterRegionCommunications.cs
+++ b/Common/OpenGrid.Framework.Communications/IInterRegionCommunications.cs
@@ -35,7 +35,7 @@ namespace OpenGrid.Framework.Communications
35{ 35{
36 public interface IInterRegionCommunications 36 public interface IInterRegionCommunications
37 { 37 {
38 bool InformNeighbourOfChildAgent(ulong regionHandle, AgentCircuitData agentData); 38 bool InformRegionOfChildAgent(ulong regionHandle, AgentCircuitData agentData);
39 bool ExpectAvatarCrossing(ulong regionHandle, libsecondlife.LLUUID agentID, libsecondlife.LLVector3 position); 39 bool ExpectAvatarCrossing(ulong regionHandle, libsecondlife.LLUUID agentID, libsecondlife.LLVector3 position);
40 } 40 }
41} 41}
diff --git a/Common/OpenGrid.Framework.UserManager/LoginResponse.cs b/Common/OpenGrid.Framework.UserManager/LoginResponse.cs
index 1c51aeb..514ebef 100644
--- a/Common/OpenGrid.Framework.UserManager/LoginResponse.cs
+++ b/Common/OpenGrid.Framework.UserManager/LoginResponse.cs
@@ -40,8 +40,6 @@ namespace OpenGrid.Framework.UserManagement
40 private LLUUID agentID; 40 private LLUUID agentID;
41 private LLUUID sessionID; 41 private LLUUID sessionID;
42 private LLUUID secureSessionID; 42 private LLUUID secureSessionID;
43 private LLUUID baseFolderID;
44 private LLUUID inventoryFolderID;
45 43
46 // Login Flags 44 // Login Flags
47 private string dst; 45 private string dst;
@@ -107,8 +105,6 @@ namespace OpenGrid.Framework.UserManagement
107 105
108 public void SetDefaultValues() 106 public void SetDefaultValues()
109 { 107 {
110 try
111 {
112 this.DST = "N"; 108 this.DST = "N";
113 this.StipendSinceLogin = "N"; 109 this.StipendSinceLogin = "N";
114 this.Gendered = "Y"; 110 this.Gendered = "Y";
@@ -153,14 +149,7 @@ namespace OpenGrid.Framework.UserManagement
153 InitialOutfitHash["folder_name"] = "Nightclub Female"; 149 InitialOutfitHash["folder_name"] = "Nightclub Female";
154 InitialOutfitHash["gender"] = "female"; 150 InitialOutfitHash["gender"] = "female";
155 this.initialOutfit.Add(InitialOutfitHash); 151 this.initialOutfit.Add(InitialOutfitHash);
156 } 152
157 catch (Exception e)
158 {
159 OpenSim.Framework.Console.MainLog.Instance.WriteLine(
160 OpenSim.Framework.Console.LogPriority.LOW,
161 "LoginResponse: Unable to set default values: " + e.Message
162 );
163 }
164 153
165 } // SetDefaultValues 154 } // SetDefaultValues
166 155
diff --git a/Common/OpenSim.Servers/BaseHttpServer.cs b/Common/OpenSim.Servers/BaseHttpServer.cs
index 3daec8d..71c36a7 100644
--- a/Common/OpenSim.Servers/BaseHttpServer.cs
+++ b/Common/OpenSim.Servers/BaseHttpServer.cs
@@ -66,6 +66,7 @@ namespace OpenSim.Servers
66 protected Dictionary<string, RestMethodEntry> m_restHandlers = new Dictionary<string, RestMethodEntry>(); 66 protected Dictionary<string, RestMethodEntry> m_restHandlers = new Dictionary<string, RestMethodEntry>();
67 protected Dictionary<string, XmlRpcMethod> m_rpcHandlers = new Dictionary<string, XmlRpcMethod>(); 67 protected Dictionary<string, XmlRpcMethod> m_rpcHandlers = new Dictionary<string, XmlRpcMethod>();
68 protected int m_port; 68 protected int m_port;
69 protected bool firstcaps = true;
69 70
70 public BaseHttpServer(int port) 71 public BaseHttpServer(int port)
71 { 72 {
@@ -74,6 +75,7 @@ namespace OpenSim.Servers
74 75
75 public bool AddRestHandler(string method, string path, RestMethod handler) 76 public bool AddRestHandler(string method, string path, RestMethod handler)
76 { 77 {
78 Console.WriteLine("adding new REST handler for path " + path);
77 string methodKey = String.Format("{0}: {1}", method, path); 79 string methodKey = String.Format("{0}: {1}", method, path);
78 80
79 if (!this.m_restHandlers.ContainsKey(methodKey)) 81 if (!this.m_restHandlers.ContainsKey(methodKey))
@@ -158,7 +160,14 @@ namespace OpenSim.Servers
158 protected virtual string ParseLLSDXML(string requestBody) 160 protected virtual string ParseLLSDXML(string requestBody)
159 { 161 {
160 // dummy function for now - IMPLEMENT ME! 162 // dummy function for now - IMPLEMENT ME!
161 return ""; 163 Console.WriteLine("LLSD request "+requestBody);
164 string resp = "";
165 if (firstcaps)
166 {
167 resp = "<llsd><map><key>MapLayer</key><string>http://127.0.0.1:9000/CAPS/</string></map></llsd>";
168 firstcaps = false;
169 }
170 return resp;
162 } 171 }
163 172
164 protected virtual string ParseXMLRPC(string requestBody) 173 protected virtual string ParseXMLRPC(string requestBody)
@@ -204,6 +213,7 @@ namespace OpenSim.Servers
204 //Console.WriteLine(requestBody); 213 //Console.WriteLine(requestBody);
205 214
206 string responseString = ""; 215 string responseString = "";
216 Console.WriteLine("new request " + request.ContentType);
207 switch (request.ContentType) 217 switch (request.ContentType)
208 { 218 {
209 case "text/xml": 219 case "text/xml":
@@ -217,7 +227,9 @@ namespace OpenSim.Servers
217 227
218 case "application/xml": 228 case "application/xml":
219 // probably LLSD we hope, otherwise it should be ignored by the parser 229 // probably LLSD we hope, otherwise it should be ignored by the parser
220 responseString = ParseLLSDXML(requestBody); 230 // responseString = ParseLLSDXML(requestBody);
231 Console.WriteLine(" request " + request.HttpMethod + " to " + request.RawUrl);
232 responseString = ParseREST(requestBody, request.RawUrl, request.HttpMethod);
221 response.AddHeader("Content-type", "application/xml"); 233 response.AddHeader("Content-type", "application/xml");
222 break; 234 break;
223 235
diff --git a/OpenSim/Examples/SimpleApp/MyWorld.cs b/OpenSim/Examples/SimpleApp/MyWorld.cs
index 334b6af..477d29d 100644
--- a/OpenSim/Examples/SimpleApp/MyWorld.cs
+++ b/OpenSim/Examples/SimpleApp/MyWorld.cs
@@ -11,6 +11,7 @@ using OpenSim.Region.Scenes;
11using OpenSim.Framework; 11using OpenSim.Framework;
12using OpenSim.Caches; 12using OpenSim.Caches;
13using OpenGrid.Framework.Communications; 13using OpenGrid.Framework.Communications;
14using OpenSim.Servers;
14 15
15namespace SimpleApp 16namespace SimpleApp
16{ 17{
@@ -19,8 +20,8 @@ namespace SimpleApp
19 private RegionInfo m_regionInfo; 20 private RegionInfo m_regionInfo;
20 private List<OpenSim.Region.Scenes.ScenePresence> m_avatars; 21 private List<OpenSim.Region.Scenes.ScenePresence> m_avatars;
21 22
22 public MyWorld(Dictionary<uint, IClientAPI> clientThreads, RegionInfo regionInfo, AuthenticateSessionsBase authen, CommunicationsManager commsMan, AssetCache assetCach) 23 public MyWorld(Dictionary<uint, IClientAPI> clientThreads, RegionInfo regionInfo, AuthenticateSessionsBase authen, CommunicationsManager commsMan, AssetCache assetCach, BaseHttpServer httpServer)
23 : base(clientThreads, regionInfo, authen, commsMan, assetCach) 24 : base(clientThreads, regionInfo, authen, commsMan, assetCach, httpServer)
24 { 25 {
25 m_regionInfo = regionInfo; 26 m_regionInfo = regionInfo;
26 m_avatars = new List<Avatar>(); 27 m_avatars = new List<Avatar>();
diff --git a/OpenSim/Examples/SimpleApp/Program.cs b/OpenSim/Examples/SimpleApp/Program.cs
index 944bca3..ffcaa52 100644
--- a/OpenSim/Examples/SimpleApp/Program.cs
+++ b/OpenSim/Examples/SimpleApp/Program.cs
@@ -56,15 +56,14 @@ namespace SimpleApp
56 CommunicationsManager communicationsManager = new CommunicationsLocal(1000, 1000); 56 CommunicationsManager communicationsManager = new CommunicationsLocal(1000, 1000);
57 57
58 RegionInfo regionInfo = new RegionInfo( ); 58 RegionInfo regionInfo = new RegionInfo( );
59 59 BaseHttpServer httpServer = new BaseHttpServer(simPort);
60 udpServer.LocalWorld = new MyWorld( packetServer.ClientAPIs, regionInfo, m_circuitManager, communicationsManager, assetCache ); 60 udpServer.LocalWorld = new MyWorld( packetServer.ClientAPIs, regionInfo, m_circuitManager, communicationsManager, assetCache, httpServer );
61 61
62 // World world = new World(udpServer.PacketServer.ClientAPIs, regionInfo); 62 // World world = new World(udpServer.PacketServer.ClientAPIs, regionInfo);
63 // PhysicsScene physicsScene = new NullPhysicsScene(); 63 // PhysicsScene physicsScene = new NullPhysicsScene();
64 // world.PhysicsScene = physicsScene; 64 // world.PhysicsScene = physicsScene;
65 // udpServer.LocalWorld = world; 65 // udpServer.LocalWorld = world;
66 66
67 BaseHttpServer httpServer = new BaseHttpServer( simPort );
68 httpServer.AddXmlRPCHandler( "login_to_simulator", loginServer.XmlRpcLoginMethod ); 67 httpServer.AddXmlRPCHandler( "login_to_simulator", loginServer.XmlRpcLoginMethod );
69 httpServer.Start(); 68 httpServer.Start();
70 69
diff --git a/OpenSim/OpenSim.LocalCommunications/LocalBackEndServices.cs b/OpenSim/OpenSim.LocalCommunications/LocalBackEndServices.cs
index 06e09f2..10e6dd9 100644
--- a/OpenSim/OpenSim.LocalCommunications/LocalBackEndServices.cs
+++ b/OpenSim/OpenSim.LocalCommunications/LocalBackEndServices.cs
@@ -144,7 +144,7 @@ namespace OpenSim.LocalCommunications
144 /// <param name="regionHandle"></param> 144 /// <param name="regionHandle"></param>
145 /// <param name="agentData"></param> 145 /// <param name="agentData"></param>
146 /// <returns></returns> 146 /// <returns></returns>
147 public bool InformNeighbourOfChildAgent(ulong regionHandle, AgentCircuitData agentData) //should change from agentCircuitData 147 public bool InformRegionOfChildAgent(ulong regionHandle, AgentCircuitData agentData) //should change from agentCircuitData
148 { 148 {
149 //Console.WriteLine("CommsManager- Trying to Inform a region to expect child agent"); 149 //Console.WriteLine("CommsManager- Trying to Inform a region to expect child agent");
150 if (this.regionHosts.ContainsKey(regionHandle)) 150 if (this.regionHosts.ContainsKey(regionHandle))
diff --git a/OpenSim/OpenSim.LocalCommunications/LocalUserServices.cs b/OpenSim/OpenSim.LocalCommunications/LocalUserServices.cs
index 7a7f2bf..00f514a 100644
--- a/OpenSim/OpenSim.LocalCommunications/LocalUserServices.cs
+++ b/OpenSim/OpenSim.LocalCommunications/LocalUserServices.cs
@@ -91,7 +91,7 @@ namespace OpenSim.LocalCommunications
91 response.SimPort = (Int32)reg.IPListenPort; 91 response.SimPort = (Int32)reg.IPListenPort;
92 response.RegionX = reg.RegionLocX ; 92 response.RegionX = reg.RegionLocX ;
93 response.RegionY = reg.RegionLocY ; 93 response.RegionY = reg.RegionLocY ;
94 94 response.SeedCapability = "http://" + reg.IPListenAddr + ":" + "9000" + "/CAPS/00334-0000/";
95 theUser.currentAgent.currentRegion = reg.SimUUID; 95 theUser.currentAgent.currentRegion = reg.SimUUID;
96 theUser.currentAgent.currentHandle = reg.RegionHandle; 96 theUser.currentAgent.currentHandle = reg.RegionHandle;
97 97
diff --git a/OpenSim/OpenSim.Region/Caps.cs b/OpenSim/OpenSim.Region/Caps.cs
new file mode 100644
index 0000000..c672d29
--- /dev/null
+++ b/OpenSim/OpenSim.Region/Caps.cs
@@ -0,0 +1,98 @@
1using System;
2using System.Collections.Generic;
3using System.Text;
4using OpenSim.Servers;
5using libsecondlife;
6
7namespace OpenSim.Region
8{
9 public class Caps
10 {
11 private string httpListenerAddress;
12 private uint httpListenPort;
13 private string MainPath = "00334-0000/";
14 private string MapLayerPath = "00334-0001/";
15 private BaseHttpServer httpListener;
16
17 public Caps(BaseHttpServer httpServer, string httpListen, uint httpPort)
18 {
19 httpListener = httpServer;
20 httpListenerAddress = httpListen;
21 httpListenPort = httpPort;
22 }
23
24 /// <summary>
25 ///
26 /// </summary>
27 public void RegisterHandlers()
28 {
29 Console.WriteLine("registering caps handlers");
30 httpListener.AddRestHandler("POST", "/CAPS/" + MainPath, CapsRequest);
31 httpListener.AddRestHandler("POST", "/CAPS/" + MapLayerPath, MapLayer);
32 }
33
34 /// <summary>
35 ///
36 /// </summary>
37 /// <param name="request"></param>
38 /// <param name="path"></param>
39 /// <param name="param"></param>
40 /// <returns></returns>
41 public string CapsRequest(string request, string path, string param)
42 {
43 Console.WriteLine("Caps request " + request);
44 string result = "<llsd><map>";
45 result += this.GetCapabilities();
46 result += "</map></llsd>";
47 return result;
48 }
49
50 /// <summary>
51 ///
52 /// </summary>
53 /// <returns></returns>
54 protected string GetCapabilities()
55 {
56 string capURLS = "<key>MapLayer</key><string>http://" + httpListenerAddress + ":" + httpListenPort.ToString() + "/CAPS/" + MapLayerPath + "</string>";
57 return capURLS;
58 }
59
60 /// <summary>
61 ///
62 /// </summary>
63 /// <param name="request"></param>
64 /// <param name="path"></param>
65 /// <param name="param"></param>
66 /// <returns></returns>
67 public string MapLayer(string request, string path, string param)
68 {
69 Console.WriteLine("Caps MapLayer request " + request);
70 string res = "<llsd><map><key>AgentData</key><map><key>Flags</key><integer>0</integer></map><key>LayerData</key><array>";
71 res += this.BuildLLSDMapLayerResponse();
72 res += "</array></map></llsd>";
73 return res;
74 }
75
76 /// <summary>
77 ///
78 /// </summary>
79 /// <returns></returns>
80 protected string BuildLLSDMapLayerResponse()
81 {
82 int left;
83 int right;
84 int top;
85 int bottom;
86 LLUUID image = null;
87
88 left = 500;
89 bottom = 500;
90 top = 1500;
91 right = 1500;
92 image = new LLUUID("00000000-0000-0000-9999-000000000006");
93
94 string res= "<map><key>Left</key><integer>"+left+"</integer><key>Bottom</key><integer>"+bottom +"</integer><key>Top</key><integer>"+top+"</integer><key>Right</key><integer>"+right+"</integer><key>ImageID</key><uuid>"+image.ToStringHyphenated()+"</uuid></map>";
95 return res;
96 }
97 }
98}
diff --git a/OpenSim/OpenSim.Region/OpenSim.Region.csproj b/OpenSim/OpenSim.Region/OpenSim.Region.csproj
index 7ab7ed1..2ae7909 100644
--- a/OpenSim/OpenSim.Region/OpenSim.Region.csproj
+++ b/OpenSim/OpenSim.Region/OpenSim.Region.csproj
@@ -1,4 +1,4 @@
1<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 1<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
2 <PropertyGroup> 2 <PropertyGroup>
3 <ProjectType>Local</ProjectType> 3 <ProjectType>Local</ProjectType>
4 <ProductVersion>8.0.50727</ProductVersion> 4 <ProductVersion>8.0.50727</ProductVersion>
@@ -6,7 +6,8 @@
6 <ProjectGuid>{196916AF-0000-0000-0000-000000000000}</ProjectGuid> 6 <ProjectGuid>{196916AF-0000-0000-0000-000000000000}</ProjectGuid>
7 <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> 7 <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
8 <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> 8 <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
9 <ApplicationIcon></ApplicationIcon> 9 <ApplicationIcon>
10 </ApplicationIcon>
10 <AssemblyKeyContainerName> 11 <AssemblyKeyContainerName>
11 </AssemblyKeyContainerName> 12 </AssemblyKeyContainerName>
12 <AssemblyName>OpenSim.Region</AssemblyName> 13 <AssemblyName>OpenSim.Region</AssemblyName>
@@ -15,9 +16,11 @@
15 <DefaultTargetSchema>IE50</DefaultTargetSchema> 16 <DefaultTargetSchema>IE50</DefaultTargetSchema>
16 <DelaySign>false</DelaySign> 17 <DelaySign>false</DelaySign>
17 <OutputType>Library</OutputType> 18 <OutputType>Library</OutputType>
18 <AppDesignerFolder></AppDesignerFolder> 19 <AppDesignerFolder>
20 </AppDesignerFolder>
19 <RootNamespace>OpenSim.Region</RootNamespace> 21 <RootNamespace>OpenSim.Region</RootNamespace>
20 <StartupObject></StartupObject> 22 <StartupObject>
23 </StartupObject>
21 <FileUpgradeFlags> 24 <FileUpgradeFlags>
22 </FileUpgradeFlags> 25 </FileUpgradeFlags>
23 </PropertyGroup> 26 </PropertyGroup>
@@ -28,7 +31,8 @@
28 <ConfigurationOverrideFile> 31 <ConfigurationOverrideFile>
29 </ConfigurationOverrideFile> 32 </ConfigurationOverrideFile>
30 <DefineConstants>TRACE;DEBUG</DefineConstants> 33 <DefineConstants>TRACE;DEBUG</DefineConstants>
31 <DocumentationFile></DocumentationFile> 34 <DocumentationFile>
35 </DocumentationFile>
32 <DebugSymbols>True</DebugSymbols> 36 <DebugSymbols>True</DebugSymbols>
33 <FileAlignment>4096</FileAlignment> 37 <FileAlignment>4096</FileAlignment>
34 <Optimize>False</Optimize> 38 <Optimize>False</Optimize>
@@ -37,7 +41,8 @@
37 <RemoveIntegerChecks>False</RemoveIntegerChecks> 41 <RemoveIntegerChecks>False</RemoveIntegerChecks>
38 <TreatWarningsAsErrors>False</TreatWarningsAsErrors> 42 <TreatWarningsAsErrors>False</TreatWarningsAsErrors>
39 <WarningLevel>4</WarningLevel> 43 <WarningLevel>4</WarningLevel>
40 <NoWarn></NoWarn> 44 <NoWarn>
45 </NoWarn>
41 </PropertyGroup> 46 </PropertyGroup>
42 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> 47 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
43 <AllowUnsafeBlocks>False</AllowUnsafeBlocks> 48 <AllowUnsafeBlocks>False</AllowUnsafeBlocks>
@@ -46,7 +51,8 @@
46 <ConfigurationOverrideFile> 51 <ConfigurationOverrideFile>
47 </ConfigurationOverrideFile> 52 </ConfigurationOverrideFile>
48 <DefineConstants>TRACE</DefineConstants> 53 <DefineConstants>TRACE</DefineConstants>
49 <DocumentationFile></DocumentationFile> 54 <DocumentationFile>
55 </DocumentationFile>
50 <DebugSymbols>False</DebugSymbols> 56 <DebugSymbols>False</DebugSymbols>
51 <FileAlignment>4096</FileAlignment> 57 <FileAlignment>4096</FileAlignment>
52 <Optimize>True</Optimize> 58 <Optimize>True</Optimize>
@@ -55,26 +61,28 @@
55 <RemoveIntegerChecks>False</RemoveIntegerChecks> 61 <RemoveIntegerChecks>False</RemoveIntegerChecks>
56 <TreatWarningsAsErrors>False</TreatWarningsAsErrors> 62 <TreatWarningsAsErrors>False</TreatWarningsAsErrors>
57 <WarningLevel>4</WarningLevel> 63 <WarningLevel>4</WarningLevel>
58 <NoWarn></NoWarn> 64 <NoWarn>
65 </NoWarn>
59 </PropertyGroup> 66 </PropertyGroup>
60 <ItemGroup> 67 <ItemGroup>
61 <Reference Include="Axiom.MathLib.dll" > 68 <Reference Include="Axiom.MathLib.dll">
62 <HintPath>..\..\bin\Axiom.MathLib.dll</HintPath> 69 <HintPath>..\..\bin\Axiom.MathLib.dll</HintPath>
63 <Private>False</Private> 70 <Private>False</Private>
64 </Reference> 71 </Reference>
65 <Reference Include="Db4objects.Db4o.dll" > 72 <Reference Include="Db4objects.Db4o.dll">
66 <HintPath>..\..\bin\Db4objects.Db4o.dll</HintPath> 73 <HintPath>..\..\bin\Db4objects.Db4o.dll</HintPath>
67 <Private>False</Private> 74 <Private>False</Private>
68 </Reference> 75 </Reference>
69 <Reference Include="libsecondlife.dll" > 76 <Reference Include="libsecondlife.dll">
70 <HintPath>..\..\bin\libsecondlife.dll</HintPath> 77 <HintPath>..\..\bin\libsecondlife.dll</HintPath>
71 <Private>False</Private> 78 <Private>False</Private>
72 </Reference> 79 </Reference>
73 <Reference Include="System" > 80 <Reference Include="System">
74 <HintPath>System.dll</HintPath> 81 <HintPath>System.dll</HintPath>
75 <Private>False</Private> 82 <Private>False</Private>
76 </Reference> 83 </Reference>
77 <Reference Include="System.Xml" > 84 <Reference Include="System.Data" />
85 <Reference Include="System.Xml">
78 <HintPath>System.Xml.dll</HintPath> 86 <HintPath>System.Xml.dll</HintPath>
79 <Private>False</Private> 87 <Private>False</Private>
80 </Reference> 88 </Reference>
@@ -84,58 +92,59 @@
84 <Name>OpenGrid.Framework.Communications</Name> 92 <Name>OpenGrid.Framework.Communications</Name>
85 <Project>{683344D5-0000-0000-0000-000000000000}</Project> 93 <Project>{683344D5-0000-0000-0000-000000000000}</Project>
86 <Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package> 94 <Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package>
87 <Private>False</Private> 95 <Private>False</Private>
88 </ProjectReference> 96 </ProjectReference>
89 <ProjectReference Include="..\OpenSim.Caches\OpenSim.Caches.csproj"> 97 <ProjectReference Include="..\OpenSim.Caches\OpenSim.Caches.csproj">
90 <Name>OpenSim.Caches</Name> 98 <Name>OpenSim.Caches</Name>
91 <Project>{1938EB12-0000-0000-0000-000000000000}</Project> 99 <Project>{1938EB12-0000-0000-0000-000000000000}</Project>
92 <Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package> 100 <Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package>
93 <Private>False</Private> 101 <Private>False</Private>
94 </ProjectReference> 102 </ProjectReference>
95 <ProjectReference Include="..\..\Common\OpenSim.Framework\OpenSim.Framework.csproj"> 103 <ProjectReference Include="..\..\Common\OpenSim.Framework\OpenSim.Framework.csproj">
96 <Name>OpenSim.Framework</Name> 104 <Name>OpenSim.Framework</Name>
97 <Project>{8ACA2445-0000-0000-0000-000000000000}</Project> 105 <Project>{8ACA2445-0000-0000-0000-000000000000}</Project>
98 <Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package> 106 <Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package>
99 <Private>False</Private> 107 <Private>False</Private>
100 </ProjectReference> 108 </ProjectReference>
101 <ProjectReference Include="..\..\Common\OpenSim.Framework.Console\OpenSim.Framework.Console.csproj"> 109 <ProjectReference Include="..\..\Common\OpenSim.Framework.Console\OpenSim.Framework.Console.csproj">
102 <Name>OpenSim.Framework.Console</Name> 110 <Name>OpenSim.Framework.Console</Name>
103 <Project>{A7CD0630-0000-0000-0000-000000000000}</Project> 111 <Project>{A7CD0630-0000-0000-0000-000000000000}</Project>
104 <Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package> 112 <Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package>
105 <Private>False</Private> 113 <Private>False</Private>
106 </ProjectReference> 114 </ProjectReference>
107 <ProjectReference Include="..\..\Common\OpenSim.GenericConfig\Xml\OpenSim.GenericConfig.Xml.csproj"> 115 <ProjectReference Include="..\..\Common\OpenSim.GenericConfig\Xml\OpenSim.GenericConfig.Xml.csproj">
108 <Name>OpenSim.GenericConfig.Xml</Name> 116 <Name>OpenSim.GenericConfig.Xml</Name>
109 <Project>{E88EF749-0000-0000-0000-000000000000}</Project> 117 <Project>{E88EF749-0000-0000-0000-000000000000}</Project>
110 <Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package> 118 <Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package>
111 <Private>False</Private> 119 <Private>False</Private>
112 </ProjectReference> 120 </ProjectReference>
113 <ProjectReference Include="..\OpenSim.Physics\Manager\OpenSim.Physics.Manager.csproj"> 121 <ProjectReference Include="..\OpenSim.Physics\Manager\OpenSim.Physics.Manager.csproj">
114 <Name>OpenSim.Physics.Manager</Name> 122 <Name>OpenSim.Physics.Manager</Name>
115 <Project>{8BE16150-0000-0000-0000-000000000000}</Project> 123 <Project>{8BE16150-0000-0000-0000-000000000000}</Project>
116 <Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package> 124 <Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package>
117 <Private>False</Private> 125 <Private>False</Private>
118 </ProjectReference> 126 </ProjectReference>
119 <ProjectReference Include="..\..\Common\OpenSim.Servers\OpenSim.Servers.csproj"> 127 <ProjectReference Include="..\..\Common\OpenSim.Servers\OpenSim.Servers.csproj">
120 <Name>OpenSim.Servers</Name> 128 <Name>OpenSim.Servers</Name>
121 <Project>{8BB20F0A-0000-0000-0000-000000000000}</Project> 129 <Project>{8BB20F0A-0000-0000-0000-000000000000}</Project>
122 <Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package> 130 <Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package>
123 <Private>False</Private> 131 <Private>False</Private>
124 </ProjectReference> 132 </ProjectReference>
125 <ProjectReference Include="..\OpenSim.Terrain.BasicTerrain\OpenSim.Terrain.BasicTerrain.csproj"> 133 <ProjectReference Include="..\OpenSim.Terrain.BasicTerrain\OpenSim.Terrain.BasicTerrain.csproj">
126 <Name>OpenSim.Terrain.BasicTerrain</Name> 134 <Name>OpenSim.Terrain.BasicTerrain</Name>
127 <Project>{2270B8FE-0000-0000-0000-000000000000}</Project> 135 <Project>{2270B8FE-0000-0000-0000-000000000000}</Project>
128 <Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package> 136 <Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package>
129 <Private>False</Private> 137 <Private>False</Private>
130 </ProjectReference> 138 </ProjectReference>
131 <ProjectReference Include="..\..\Common\XmlRpcCS\XMLRPC.csproj"> 139 <ProjectReference Include="..\..\Common\XmlRpcCS\XMLRPC.csproj">
132 <Name>XMLRPC</Name> 140 <Name>XMLRPC</Name>
133 <Project>{8E81D43C-0000-0000-0000-000000000000}</Project> 141 <Project>{8E81D43C-0000-0000-0000-000000000000}</Project>
134 <Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package> 142 <Package>{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</Package>
135 <Private>False</Private> 143 <Private>False</Private>
136 </ProjectReference> 144 </ProjectReference>
137 </ItemGroup> 145 </ItemGroup>
138 <ItemGroup> 146 <ItemGroup>
147 <Compile Include="Caps.cs" />
139 <Compile Include="EstateManager.cs"> 148 <Compile Include="EstateManager.cs">
140 <SubType>Code</SubType> 149 <SubType>Code</SubType>
141 </Compile> 150 </Compile>
@@ -201,4 +210,4 @@
201 <PostBuildEvent> 210 <PostBuildEvent>
202 </PostBuildEvent> 211 </PostBuildEvent>
203 </PropertyGroup> 212 </PropertyGroup>
204</Project> 213</Project> \ No newline at end of file
diff --git a/OpenSim/OpenSim.Region/Scenes/Primitive.cs b/OpenSim/OpenSim.Region/Scenes/Primitive.cs
index 39b3fbc..8192bf0 100644
--- a/OpenSim/OpenSim.Region/Scenes/Primitive.cs
+++ b/OpenSim/OpenSim.Region/Scenes/Primitive.cs
@@ -411,7 +411,7 @@ namespace OpenSim.Region.Scenes
411 lPos = this.Pos; 411 lPos = this.Pos;
412 } 412 }
413 413
414 remoteClient.SendPrimitiveToClient(this.m_regionHandle, 64096, this.LocalId, this.primData, lPos, new LLUUID("00000000-0000-0000-5005-000000000005")); 414 remoteClient.SendPrimitiveToClient(this.m_regionHandle, 64096, this.LocalId, this.primData, lPos, new LLUUID("00000000-0000-1000-5005-000000000018"));
415 } 415 }
416 416
417 /// <summary> 417 /// <summary>
diff --git a/OpenSim/OpenSim.Region/Scenes/Scene.cs b/OpenSim/OpenSim.Region/Scenes/Scene.cs
index ca8e5c3..14c77c2 100644
--- a/OpenSim/OpenSim.Region/Scenes/Scene.cs
+++ b/OpenSim/OpenSim.Region/Scenes/Scene.cs
@@ -43,6 +43,8 @@ using OpenSim.Region.Scripting;
43using OpenSim.Terrain; 43using OpenSim.Terrain;
44using OpenGrid.Framework.Communications; 44using OpenGrid.Framework.Communications;
45using OpenSim.Caches; 45using OpenSim.Caches;
46using OpenSim.Region;
47using OpenSim.Servers;
46 48
47namespace OpenSim.Region.Scenes 49namespace OpenSim.Region.Scenes
48{ 50{
@@ -67,6 +69,8 @@ namespace OpenSim.Region.Scenes
67 protected RegionCommsListener regionCommsHost; 69 protected RegionCommsListener regionCommsHost;
68 protected CommunicationsManager commsManager; 70 protected CommunicationsManager commsManager;
69 71
72 protected Caps TestCapsHandler;
73 protected BaseHttpServer httpListener;
70 74
71 public ParcelManager parcelManager; 75 public ParcelManager parcelManager;
72 public EstateManager estateManager; 76 public EstateManager estateManager;
@@ -96,7 +100,7 @@ namespace OpenSim.Region.Scenes
96 /// <param name="clientThreads">Dictionary to contain client threads</param> 100 /// <param name="clientThreads">Dictionary to contain client threads</param>
97 /// <param name="regionHandle">Region Handle for this region</param> 101 /// <param name="regionHandle">Region Handle for this region</param>
98 /// <param name="regionName">Region Name for this region</param> 102 /// <param name="regionName">Region Name for this region</param>
99 public Scene(Dictionary<uint, IClientAPI> clientThreads, RegionInfo regInfo, AuthenticateSessionsBase authen, CommunicationsManager commsMan, AssetCache assetCach) 103 public Scene(Dictionary<uint, IClientAPI> clientThreads, RegionInfo regInfo, AuthenticateSessionsBase authen, CommunicationsManager commsMan, AssetCache assetCach, BaseHttpServer httpServer)
100 { 104 {
101 try 105 try
102 { 106 {
@@ -127,6 +131,9 @@ namespace OpenSim.Region.Scenes
127 Terrain = new TerrainEngine(); 131 Terrain = new TerrainEngine();
128 132
129 ScenePresence.LoadAnims(); 133 ScenePresence.LoadAnims();
134 this.httpListener = httpServer;
135 this.TestCapsHandler = new Caps(httpListener, "127.0.0.1" , 9000);
136 this.TestCapsHandler.RegisterHandlers();
130 } 137 }
131 catch (Exception e) 138 catch (Exception e)
132 { 139 {
@@ -755,7 +762,7 @@ namespace OpenSim.Region.Scenes
755 agent.InventoryFolder = LLUUID.Zero; 762 agent.InventoryFolder = LLUUID.Zero;
756 agent.startpos = new LLVector3(128, 128, 70); 763 agent.startpos = new LLVector3(128, 128, 70);
757 agent.child = true; 764 agent.child = true;
758 this.commsManager.InterRegion.InformNeighbourOfChildAgent(neighbours[i].RegionHandle, agent); 765 this.commsManager.InterRegion.InformRegionOfChildAgent(neighbours[i].RegionHandle, agent);
759 remoteClient.InformClientOfNeighbour(neighbours[i].RegionHandle, System.Net.IPAddress.Parse(neighbours[i].IPListenAddr), (ushort)neighbours[i].IPListenPort); 766 remoteClient.InformClientOfNeighbour(neighbours[i].RegionHandle, System.Net.IPAddress.Parse(neighbours[i].IPListenAddr), (ushort)neighbours[i].IPListenPort);
760 } 767 }
761 } 768 }
@@ -816,7 +823,7 @@ namespace OpenSim.Region.Scenes
816 agent.InventoryFolder = LLUUID.Zero; 823 agent.InventoryFolder = LLUUID.Zero;
817 agent.startpos = new LLVector3(128, 128, 70); 824 agent.startpos = new LLVector3(128, 128, 70);
818 agent.child = true; 825 agent.child = true;
819 this.commsManager.InterRegion.InformNeighbourOfChildAgent(regionHandle, agent); 826 this.commsManager.InterRegion.InformRegionOfChildAgent(regionHandle, agent);
820 this.commsManager.InterRegion.ExpectAvatarCrossing(regionHandle, remoteClient.AgentId, position); 827 this.commsManager.InterRegion.ExpectAvatarCrossing(regionHandle, remoteClient.AgentId, position);
821 remoteClient.SendRegionTeleport(regionHandle, 13, reg.IPListenAddr, (ushort)reg.IPListenPort, 4, (1 << 4)); 828 remoteClient.SendRegionTeleport(regionHandle, 13, reg.IPListenAddr, (ushort)reg.IPListenPort, 4, (1 << 4));
822 } 829 }
diff --git a/OpenSim/OpenSim/OpenSimMain.cs b/OpenSim/OpenSim/OpenSimMain.cs
index 3b83fd8..66cc2ba 100644
--- a/OpenSim/OpenSim/OpenSimMain.cs
+++ b/OpenSim/OpenSim/OpenSimMain.cs
@@ -120,12 +120,12 @@ namespace OpenSim
120 this.physManager = new OpenSim.Physics.Manager.PhysicsManager(); 120 this.physManager = new OpenSim.Physics.Manager.PhysicsManager();
121 this.physManager.LoadPlugins(); 121 this.physManager.LoadPlugins();
122 122
123 this.SetupHttpListener();
124
123 this.SetupWorld(); 125 this.SetupWorld();
124 126
125 m_log.Verbose( "Main.cs:Startup() - Initialising HTTP server"); 127 m_log.Verbose( "Main.cs:Startup() - Initialising HTTP server");
126 128
127 this.SetupHttpListener();
128
129 //Login server setup 129 //Login server setup
130 LoginServer loginServer = null; 130 LoginServer loginServer = null;
131 LoginServer adminLoginServer = null; 131 LoginServer adminLoginServer = null;
@@ -242,7 +242,7 @@ namespace OpenSim
242 m_log.componentname = "Region " + regionData.RegionName; 242 m_log.componentname = "Region " + regionData.RegionName;
243 */ 243 */
244 244
245 LocalWorld = new Scene(udpServer.PacketServer.ClientAPIs, regionDat, authenBase, commsManager, this.AssetCache); 245 LocalWorld = new Scene(udpServer.PacketServer.ClientAPIs, regionDat, authenBase, commsManager, this.AssetCache, httpServer);
246 this.m_localWorld.Add(LocalWorld); 246 this.m_localWorld.Add(LocalWorld);
247 //LocalWorld.InventoryCache = InventoryCache; 247 //LocalWorld.InventoryCache = InventoryCache;
248 //LocalWorld.AssetCache = AssetCache; 248 //LocalWorld.AssetCache = AssetCache;