aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Grid/UserServer
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Grid/UserServer')
-rw-r--r--OpenSim/Grid/UserServer/Main.cs27
-rw-r--r--OpenSim/Grid/UserServer/Properties/AssemblyInfo.cs31
-rw-r--r--OpenSim/Grid/UserServer/UserLoginService.cs39
-rw-r--r--OpenSim/Grid/UserServer/UserManager.cs17
4 files changed, 59 insertions, 55 deletions
diff --git a/OpenSim/Grid/UserServer/Main.cs b/OpenSim/Grid/UserServer/Main.cs
index 492f67f..779a72b 100644
--- a/OpenSim/Grid/UserServer/Main.cs
+++ b/OpenSim/Grid/UserServer/Main.cs
@@ -27,28 +27,23 @@
27*/ 27*/
28 28
29using System; 29using System;
30using System.Collections.Generic;
31using System.IO; 30using System.IO;
32using System.Reflection; 31using OpenSim.Framework;
33using libsecondlife;
34using OpenSim.Framework.Console; 32using OpenSim.Framework.Console;
35using OpenSim.Framework.Interfaces;
36using OpenSim.Framework.Servers; 33using OpenSim.Framework.Servers;
37using OpenSim.Framework;
38using OpenSim.Framework;
39 34
40namespace OpenSim.Grid.UserServer 35namespace OpenSim.Grid.UserServer
41{ 36{
42 /// <summary> 37 /// <summary>
43 /// </summary> 38 /// </summary>
44 public class OpenUser_Main : conscmd_callback 39 public class OpenUser_Main : conscmd_callback
45 { 40 {
46 private UserConfig Cfg; 41 private UserConfig Cfg;
47 42
48 public UserManager m_userManager; 43 public UserManager m_userManager;
49 public UserLoginService m_loginService; 44 public UserLoginService m_loginService;
50 45
51 LogBase m_console; 46 private LogBase m_console;
52 47
53 [STAThread] 48 [STAThread]
54 public static void Main(string[] args) 49 public static void Main(string[] args)
@@ -67,7 +62,8 @@ namespace OpenSim.Grid.UserServer
67 { 62 {
68 Directory.CreateDirectory(Util.logDir()); 63 Directory.CreateDirectory(Util.logDir());
69 } 64 }
70 m_console = new LogBase((Path.Combine(Util.logDir(), "opengrid-userserver-console.log")), "OpenUser", this, true); 65 m_console =
66 new LogBase((Path.Combine(Util.logDir(), "opengrid-userserver-console.log")), "OpenUser", this, true);
71 MainLog.Instance = m_console; 67 MainLog.Instance = m_console;
72 } 68 }
73 69
@@ -83,7 +79,7 @@ namespace OpenSim.Grid.UserServer
83 79
84 public void Startup() 80 public void Startup()
85 { 81 {
86 this.Cfg = new UserConfig("USER SERVER", (Path.Combine(Util.configDir(), "UserServer_Config.xml"))); 82 Cfg = new UserConfig("USER SERVER", (Path.Combine(Util.configDir(), "UserServer_Config.xml")));
87 83
88 MainLog.Instance.Verbose("Main.cs:Startup() - Establishing data connection"); 84 MainLog.Instance.Verbose("Main.cs:Startup() - Establishing data connection");
89 m_userManager = new UserManager(); 85 m_userManager = new UserManager();
@@ -93,15 +89,16 @@ namespace OpenSim.Grid.UserServer
93 m_loginService = new UserLoginService(m_userManager, Cfg, Cfg.DefaultStartupMsg); 89 m_loginService = new UserLoginService(m_userManager, Cfg, Cfg.DefaultStartupMsg);
94 90
95 MainLog.Instance.Verbose("Main.cs:Startup() - Starting HTTP process"); 91 MainLog.Instance.Verbose("Main.cs:Startup() - Starting HTTP process");
96 BaseHttpServer httpServer = new BaseHttpServer((int)Cfg.HttpPort); 92 BaseHttpServer httpServer = new BaseHttpServer((int) Cfg.HttpPort);
97 93
98 httpServer.AddXmlRPCHandler("login_to_simulator", m_loginService.XmlRpcLoginMethod); 94 httpServer.AddXmlRPCHandler("login_to_simulator", m_loginService.XmlRpcLoginMethod);
99 95
100 httpServer.AddXmlRPCHandler("get_user_by_name", m_userManager.XmlRPCGetUserMethodName); 96 httpServer.AddXmlRPCHandler("get_user_by_name", m_userManager.XmlRPCGetUserMethodName);
101 httpServer.AddXmlRPCHandler("get_user_by_uuid", m_userManager.XmlRPCGetUserMethodUUID); 97 httpServer.AddXmlRPCHandler("get_user_by_uuid", m_userManager.XmlRPCGetUserMethodUUID);
102 98
103 httpServer.AddStreamHandler( new RestStreamHandler("DELETE", "/usersessions/", m_userManager.RestDeleteUserSessionMethod )); 99 httpServer.AddStreamHandler(
104 100 new RestStreamHandler("DELETE", "/usersessions/", m_userManager.RestDeleteUserSessionMethod));
101
105 httpServer.Start(); 102 httpServer.Start();
106 m_console.Status("SERVER", "Userserver 0.4 - Startup complete"); 103 m_console.Status("SERVER", "Userserver 0.4 - Startup complete");
107 } 104 }
@@ -126,7 +123,7 @@ namespace OpenSim.Grid.UserServer
126 123
127 tempMD5Passwd = Util.Md5Hash(Util.Md5Hash(tempMD5Passwd) + ":" + ""); 124 tempMD5Passwd = Util.Md5Hash(Util.Md5Hash(tempMD5Passwd) + ":" + "");
128 125
129 m_userManager.AddUserProfile(tempfirstname, templastname, tempMD5Passwd, regX, regY); 126 m_userManager.AddUserProfile(tempfirstname, templastname, tempMD5Passwd, regX, regY);
130 break; 127 break;
131 } 128 }
132 } 129 }
@@ -178,4 +175,4 @@ namespace OpenSim.Grid.UserServer
178 { 175 {
179 } 176 }
180 } 177 }
181} 178} \ No newline at end of file
diff --git a/OpenSim/Grid/UserServer/Properties/AssemblyInfo.cs b/OpenSim/Grid/UserServer/Properties/AssemblyInfo.cs
index 877f02f..079e05e 100644
--- a/OpenSim/Grid/UserServer/Properties/AssemblyInfo.cs
+++ b/OpenSim/Grid/UserServer/Properties/AssemblyInfo.cs
@@ -1,24 +1,28 @@
1using System.Reflection; 1using System.Reflection;
2using System.Runtime.InteropServices; 2using System.Runtime.InteropServices;
3
3// General Information about an assembly is controlled through the following 4// General Information about an assembly is controlled through the following
4// set of attributes. Change these attribute values to modify the information 5// set of attributes. Change these attribute values to modify the information
5// associated with an assembly. 6// associated with an assembly.
6[assembly: AssemblyTitle("OGS-UserServer")] 7
7[assembly: AssemblyDescription("")] 8[assembly : AssemblyTitle("OGS-UserServer")]
8[assembly: AssemblyConfiguration("")] 9[assembly : AssemblyDescription("")]
9[assembly: AssemblyCompany("")] 10[assembly : AssemblyConfiguration("")]
10[assembly: AssemblyProduct("OGS-UserServer")] 11[assembly : AssemblyCompany("")]
11[assembly: AssemblyCopyright("Copyright © 2007")] 12[assembly : AssemblyProduct("OGS-UserServer")]
12[assembly: AssemblyTrademark("")] 13[assembly : AssemblyCopyright("Copyright © 2007")]
13[assembly: AssemblyCulture("")] 14[assembly : AssemblyTrademark("")]
15[assembly : AssemblyCulture("")]
14 16
15// Setting ComVisible to false makes the types in this assembly not visible 17// Setting ComVisible to false makes the types in this assembly not visible
16// to COM components. If you need to access a type in this assembly from 18// to COM components. If you need to access a type in this assembly from
17// COM, set the ComVisible attribute to true on that type. 19// COM, set the ComVisible attribute to true on that type.
18[assembly: ComVisible(false)] 20
21[assembly : ComVisible(false)]
19 22
20// The following GUID is for the ID of the typelib if this project is exposed to COM 23// The following GUID is for the ID of the typelib if this project is exposed to COM
21[assembly: Guid("e266513a-090b-4d38-80f6-8599eef68c8c")] 24
25[assembly : Guid("e266513a-090b-4d38-80f6-8599eef68c8c")]
22 26
23// Version information for an assembly consists of the following four values: 27// Version information for an assembly consists of the following four values:
24// 28//
@@ -27,5 +31,6 @@ using System.Runtime.InteropServices;
27// Build Number 31// Build Number
28// Revision 32// Revision
29// 33//
30[assembly: AssemblyVersion("1.0.0.0")] 34
31[assembly: AssemblyFileVersion("1.0.0.0")] 35[assembly : AssemblyVersion("1.0.0.0")]
36[assembly : AssemblyFileVersion("1.0.0.0")] \ No newline at end of file
diff --git a/OpenSim/Grid/UserServer/UserLoginService.cs b/OpenSim/Grid/UserServer/UserLoginService.cs
index 1523f81..bbef4b2 100644
--- a/OpenSim/Grid/UserServer/UserLoginService.cs
+++ b/OpenSim/Grid/UserServer/UserLoginService.cs
@@ -30,12 +30,10 @@ using System;
30using System.Collections; 30using System.Collections;
31using System.Net; 31using System.Net;
32using Nwc.XmlRpc; 32using Nwc.XmlRpc;
33using OpenSim.Framework.Data;
34using OpenSim.Framework.UserManagement;
35using OpenSim.Framework;
36using OpenSim.Framework;
37using OpenSim.Framework; 33using OpenSim.Framework;
38using OpenSim.Framework.Console; 34using OpenSim.Framework.Console;
35using OpenSim.Framework.Data;
36using OpenSim.Framework.UserManagement;
39 37
40namespace OpenSim.Grid.UserServer 38namespace OpenSim.Grid.UserServer
41{ 39{
@@ -58,18 +56,24 @@ namespace OpenSim.Grid.UserServer
58 { 56 {
59 // Load information from the gridserver 57 // Load information from the gridserver
60 RegionProfileData SimInfo = new RegionProfileData(); 58 RegionProfileData SimInfo = new RegionProfileData();
61 SimInfo = SimInfo.RequestSimProfileData(theUser.currentAgent.currentHandle, m_config.GridServerURL, m_config.GridSendKey, m_config.GridRecvKey); 59 SimInfo =
60 SimInfo.RequestSimProfileData(theUser.currentAgent.currentHandle, m_config.GridServerURL,
61 m_config.GridSendKey, m_config.GridRecvKey);
62 62
63 // Customise the response 63 // Customise the response
64 // Home Location 64 // Home Location
65 response.Home = "{'region_handle':[r" + (SimInfo.regionLocX * 256).ToString() + ",r" + (SimInfo.regionLocY * 256).ToString() + "], " + 65 response.Home = "{'region_handle':[r" + (SimInfo.regionLocX*256).ToString() + ",r" +
66 "'position':[r" + theUser.homeLocation.X.ToString() + ",r" + theUser.homeLocation.Y.ToString() + ",r" + theUser.homeLocation.Z.ToString() + "], " + 66 (SimInfo.regionLocY*256).ToString() + "], " +
67 "'look_at':[r" + theUser.homeLocation.X.ToString() + ",r" + theUser.homeLocation.Y.ToString() + ",r" + theUser.homeLocation.Z.ToString() + "]}"; 67 "'position':[r" + theUser.homeLocation.X.ToString() + ",r" +
68 theUser.homeLocation.Y.ToString() + ",r" + theUser.homeLocation.Z.ToString() + "], " +
69 "'look_at':[r" + theUser.homeLocation.X.ToString() + ",r" +
70 theUser.homeLocation.Y.ToString() + ",r" + theUser.homeLocation.Z.ToString() + "]}";
68 71
69 // Destination 72 // Destination
70 MainLog.Instance.Verbose("CUSTOMISERESPONSE: Region X: " + SimInfo.regionLocX + "; Region Y: " + SimInfo.regionLocY); 73 MainLog.Instance.Verbose("CUSTOMISERESPONSE: Region X: " + SimInfo.regionLocX + "; Region Y: " +
74 SimInfo.regionLocY);
71 response.SimAddress = Util.GetHostFromDNS(SimInfo.serverIP).ToString(); 75 response.SimAddress = Util.GetHostFromDNS(SimInfo.serverIP).ToString();
72 response.SimPort = (Int32)SimInfo.serverPort; 76 response.SimPort = (Int32) SimInfo.serverPort;
73 response.RegionX = SimInfo.regionLocX; 77 response.RegionX = SimInfo.regionLocX;
74 response.RegionY = SimInfo.regionLocY; 78 response.RegionY = SimInfo.regionLocY;
75 79
@@ -87,7 +91,7 @@ namespace OpenSim.Grid.UserServer
87 SimParams["firstname"] = theUser.username; 91 SimParams["firstname"] = theUser.username;
88 SimParams["lastname"] = theUser.surname; 92 SimParams["lastname"] = theUser.surname;
89 SimParams["agent_id"] = theUser.UUID.ToString(); 93 SimParams["agent_id"] = theUser.UUID.ToString();
90 SimParams["circuit_code"] = (Int32)Convert.ToUInt32(response.CircuitCode); 94 SimParams["circuit_code"] = (Int32) Convert.ToUInt32(response.CircuitCode);
91 SimParams["startpos_x"] = theUser.currentAgent.currentPos.X.ToString(); 95 SimParams["startpos_x"] = theUser.currentAgent.currentPos.X.ToString();
92 SimParams["startpos_y"] = theUser.currentAgent.currentPos.Y.ToString(); 96 SimParams["startpos_y"] = theUser.currentAgent.currentPos.Y.ToString();
93 SimParams["startpos_z"] = theUser.currentAgent.currentPos.Z.ToString(); 97 SimParams["startpos_z"] = theUser.currentAgent.currentPos.Z.ToString();
@@ -107,21 +111,20 @@ namespace OpenSim.Grid.UserServer
107 XmlRpcRequest GridReq = new XmlRpcRequest("expect_user", SendParams); 111 XmlRpcRequest GridReq = new XmlRpcRequest("expect_user", SendParams);
108 XmlRpcResponse GridResp = GridReq.Send(SimInfo.httpServerURI, 6000); 112 XmlRpcResponse GridResp = GridReq.Send(SimInfo.httpServerURI, 6000);
109 } 113 }
110 catch( WebException e ) 114 catch (WebException e)
111 { 115 {
112 switch( e.Status ) 116 switch (e.Status)
113 { 117 {
114 case WebExceptionStatus.Timeout: 118 case WebExceptionStatus.Timeout:
115 //TODO: Send him to nearby or default region instead 119 //TODO: Send him to nearby or default region instead
116 MainLog.Instance.Verbose("Unable to connect to " + SimInfo.regionName + " (" + SimInfo.serverURI + ")"); 120 MainLog.Instance.Verbose("Unable to connect to " + SimInfo.regionName + " (" + SimInfo.serverURI +
121 ")");
117 break; 122 break;
118 123
119 default: 124 default:
120 throw; 125 throw;
121 } 126 }
122 } 127 }
123 } 128 }
124 } 129 }
125} 130} \ No newline at end of file
126
127
diff --git a/OpenSim/Grid/UserServer/UserManager.cs b/OpenSim/Grid/UserServer/UserManager.cs
index 2b2bf72..96cdfb3 100644
--- a/OpenSim/Grid/UserServer/UserManager.cs
+++ b/OpenSim/Grid/UserServer/UserManager.cs
@@ -27,12 +27,10 @@
27*/ 27*/
28using System; 28using System;
29using System.Collections; 29using System.Collections;
30using System.Net; 30using libsecondlife;
31using Nwc.XmlRpc; 31using Nwc.XmlRpc;
32using OpenSim.Framework; 32using OpenSim.Framework;
33using OpenSim.Framework.UserManagement; 33using OpenSim.Framework.UserManagement;
34using OpenSim.Framework;
35using libsecondlife;
36 34
37namespace OpenSim.Grid.UserServer 35namespace OpenSim.Grid.UserServer
38{ 36{
@@ -118,11 +116,11 @@ namespace OpenSim.Grid.UserServer
118 public XmlRpcResponse XmlRPCGetUserMethodName(XmlRpcRequest request) 116 public XmlRpcResponse XmlRPCGetUserMethodName(XmlRpcRequest request)
119 { 117 {
120 XmlRpcResponse response = new XmlRpcResponse(); 118 XmlRpcResponse response = new XmlRpcResponse();
121 Hashtable requestData = (Hashtable)request.Params[0]; 119 Hashtable requestData = (Hashtable) request.Params[0];
122 UserProfileData userProfile; 120 UserProfileData userProfile;
123 if (requestData.Contains("avatar_name")) 121 if (requestData.Contains("avatar_name"))
124 { 122 {
125 userProfile = GetUserProfile((string)requestData["avatar_name"]); 123 userProfile = GetUserProfile((string) requestData["avatar_name"]);
126 if (userProfile == null) 124 if (userProfile == null)
127 { 125 {
128 return CreateUnknownUserErrorResponse(); 126 return CreateUnknownUserErrorResponse();
@@ -139,12 +137,12 @@ namespace OpenSim.Grid.UserServer
139 public XmlRpcResponse XmlRPCGetUserMethodUUID(XmlRpcRequest request) 137 public XmlRpcResponse XmlRPCGetUserMethodUUID(XmlRpcRequest request)
140 { 138 {
141 XmlRpcResponse response = new XmlRpcResponse(); 139 XmlRpcResponse response = new XmlRpcResponse();
142 Hashtable requestData = (Hashtable)request.Params[0]; 140 Hashtable requestData = (Hashtable) request.Params[0];
143 UserProfileData userProfile; 141 UserProfileData userProfile;
144 System.Console.WriteLine("METHOD BY UUID CALLED"); 142 Console.WriteLine("METHOD BY UUID CALLED");
145 if (requestData.Contains("avatar_uuid")) 143 if (requestData.Contains("avatar_uuid"))
146 { 144 {
147 userProfile = GetUserProfile((LLUUID)(string)requestData["avatar_uuid"]); 145 userProfile = GetUserProfile((LLUUID) (string) requestData["avatar_uuid"]);
148 if (userProfile == null) 146 if (userProfile == null)
149 { 147 {
150 return CreateUnknownUserErrorResponse(); 148 return CreateUnknownUserErrorResponse();
@@ -158,6 +156,7 @@ namespace OpenSim.Grid.UserServer
158 156
159 return ProfileToXmlRPCResponse(userProfile); 157 return ProfileToXmlRPCResponse(userProfile);
160 } 158 }
159
161 #endregion 160 #endregion
162 161
163 public override UserProfileData SetupMasterUser(string firstName, string lastName) 162 public override UserProfileData SetupMasterUser(string firstName, string lastName)
@@ -170,4 +169,4 @@ namespace OpenSim.Grid.UserServer
170 throw new Exception("The method or operation is not implemented."); 169 throw new Exception("The method or operation is not implemented.");
171 } 170 }
172 } 171 }
173} 172} \ No newline at end of file