aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorMW2009-02-24 14:00:29 +0000
committerMW2009-02-24 14:00:29 +0000
commitbafbfcf09086113bb15eb419f4dcb2629def7a81 (patch)
tree60c0fa5ca4769e63eae7f64a397a150ca4934335
parentAdded OpenSim.Grid.Framework project. (diff)
downloadopensim-SC-bafbfcf09086113bb15eb419f4dcb2629def7a81.zip
opensim-SC-bafbfcf09086113bb15eb419f4dcb2629def7a81.tar.gz
opensim-SC-bafbfcf09086113bb15eb419f4dcb2629def7a81.tar.bz2
opensim-SC-bafbfcf09086113bb15eb419f4dcb2629def7a81.tar.xz
Some cleaning up in the MesssagingServer and GridServer.
-rw-r--r--OpenSim/Grid/Framework/XMPPHTTPService.cs110
-rw-r--r--OpenSim/Grid/GridServer/IGridMessagingMapper.cs41
-rw-r--r--OpenSim/Grid/GridServer/IUGAIMCore.cs41
-rw-r--r--OpenSim/Grid/MessagingServer/Main.cs3
-rw-r--r--OpenSim/Grid/MessagingServer/PresenceInformer.cs8
-rw-r--r--OpenSim/Grid/MessagingServer/UserManager.cs75
6 files changed, 113 insertions, 165 deletions
diff --git a/OpenSim/Grid/Framework/XMPPHTTPService.cs b/OpenSim/Grid/Framework/XMPPHTTPService.cs
new file mode 100644
index 0000000..bb09c8a
--- /dev/null
+++ b/OpenSim/Grid/Framework/XMPPHTTPService.cs
@@ -0,0 +1,110 @@
1/*
2 * Copyright (c) Contributors, http://opensimulator.org/
3 * See CONTRIBUTORS.TXT for a full list of copyright holders.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * * Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 * * Neither the name of the OpenSim Project nor the
13 * names of its contributors may be used to endorse or promote products
14 * derived from this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
17 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27
28using System;
29using System.IO;
30using System.Reflection;
31using log4net;
32using OpenMetaverse;
33using OpenSim.Framework.Servers;
34
35namespace OpenSim.Grid.Framework
36{
37 public class XMPPHTTPStreamHandler : BaseStreamHandler
38 {
39 private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
40
41
42 /// <summary>
43 /// Constructor.
44 /// </summary>
45 /// <param name="assetManager"></param>
46 /// <param name="assetProvider"></param>
47 public XMPPHTTPStreamHandler()
48 : base("GET", "/presence")
49 {
50 m_log.Info("[REST]: In Get Request");
51
52 }
53
54 public override byte[] Handle(string path, Stream request,
55 OSHttpRequest httpRequest, OSHttpResponse httpResponse)
56 {
57 string param = GetParam(path);
58 byte[] result = new byte[] {};
59 try
60 {
61 string[] p = param.Split(new char[] {'/', '?', '&'}, StringSplitOptions.RemoveEmptyEntries);
62
63 if (p.Length > 0)
64 {
65 UUID assetID = UUID.Zero;
66
67 if (!UUID.TryParse(p[0], out assetID))
68 {
69 m_log.InfoFormat(
70 "[REST]: GET:/presence ignoring request with malformed UUID {0}", p[0]);
71 return result;
72 }
73
74 }
75 }
76 catch (Exception e)
77 {
78 m_log.Error(e.ToString());
79 }
80 return result;
81 }
82 }
83
84 public class PostXMPPStreamHandler : BaseStreamHandler
85 {
86 // private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
87
88 public override byte[] Handle(string path, Stream request,
89 OSHttpRequest httpRequest, OSHttpResponse httpResponse)
90 {
91 string param = GetParam(path);
92
93 UUID assetId;
94 if (param.Length > 0)
95 UUID.TryParse(param, out assetId);
96 // byte[] txBuffer = new byte[4096];
97
98 // TODO: Read POST serialize XMPP stanzas
99
100 return new byte[] {};
101 }
102
103 public PostXMPPStreamHandler()
104 : base("POST", "/presence")
105 {
106
107 }
108
109 }
110}
diff --git a/OpenSim/Grid/GridServer/IGridMessagingMapper.cs b/OpenSim/Grid/GridServer/IGridMessagingMapper.cs
deleted file mode 100644
index 5475029..0000000
--- a/OpenSim/Grid/GridServer/IGridMessagingMapper.cs
+++ /dev/null
@@ -1,41 +0,0 @@
1/*
2 * Copyright (c) Contributors, http://opensimulator.org/
3 * See CONTRIBUTORS.TXT for a full list of copyright holders.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * * Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 * * Neither the name of the OpenSimulator Project nor the
13 * names of its contributors may be used to endorse or promote products
14 * derived from this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
17 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27
28using System;
29using System.Collections.Generic;
30using OpenSim.Framework.Servers;
31
32namespace OpenSim.Grid.GridServer
33{
34 /*
35 public interface IGridMessagingMapper
36 {
37 List<MessageServerInfo> GetMessageServersList();
38 void RegisterMessageServer(MessageServerInfo m);
39 void DeRegisterMessageServer(MessageServerInfo m);
40 }*/
41}
diff --git a/OpenSim/Grid/GridServer/IUGAIMCore.cs b/OpenSim/Grid/GridServer/IUGAIMCore.cs
deleted file mode 100644
index 6c53b59..0000000
--- a/OpenSim/Grid/GridServer/IUGAIMCore.cs
+++ /dev/null
@@ -1,41 +0,0 @@
1/*
2 * Copyright (c) Contributors, http://opensimulator.org/
3 * See CONTRIBUTORS.TXT for a full list of copyright holders.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * * Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 * * Neither the name of the OpenSimulator Project nor the
13 * names of its contributors may be used to endorse or promote products
14 * derived from this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
17 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27
28using System;
29using OpenSim.Framework.Servers;
30
31namespace OpenSim.Grid.GridServer
32{
33 /*
34 public interface IUGAIMCore
35 {
36 T Get<T>();
37 void RegisterInterface<T>(T iface);
38 bool TryGet<T>(out T iface);
39 BaseHttpServer GetHttpServer();
40 }*/
41}
diff --git a/OpenSim/Grid/MessagingServer/Main.cs b/OpenSim/Grid/MessagingServer/Main.cs
index f09d360..e64d0ca 100644
--- a/OpenSim/Grid/MessagingServer/Main.cs
+++ b/OpenSim/Grid/MessagingServer/Main.cs
@@ -127,6 +127,9 @@ namespace OpenSim.Grid.MessagingServer
127 m_userDataBaseService = new UserDataBaseService(); 127 m_userDataBaseService = new UserDataBaseService();
128 m_userDataBaseService.AddPlugin(Cfg.DatabaseProvider, Cfg.DatabaseConnect); 128 m_userDataBaseService.AddPlugin(Cfg.DatabaseProvider, Cfg.DatabaseConnect);
129 129
130 //Register the database access service so modules can fetch it
131 // RegisterInterface<UserDataBaseService>(m_userDataBaseService);
132
130 m_userServerModule = new MessageUserServerModule(Cfg, this); 133 m_userServerModule = new MessageUserServerModule(Cfg, this);
131 m_userServerModule.Initialise(); 134 m_userServerModule.Initialise();
132 135
diff --git a/OpenSim/Grid/MessagingServer/PresenceInformer.cs b/OpenSim/Grid/MessagingServer/PresenceInformer.cs
index 20342ab..a8c98f6 100644
--- a/OpenSim/Grid/MessagingServer/PresenceInformer.cs
+++ b/OpenSim/Grid/MessagingServer/PresenceInformer.cs
@@ -95,8 +95,6 @@ namespace OpenSim.Grid.MessagingServer
95 95
96 if (whichRegion != null) 96 if (whichRegion != null)
97 { 97 {
98
99
100 Hashtable PresenceParams = new Hashtable(); 98 Hashtable PresenceParams = new Hashtable();
101 PresenceParams.Add("agent_id",TalkingAbout.agentData.AgentID.ToString()); 99 PresenceParams.Add("agent_id",TalkingAbout.agentData.AgentID.ToString());
102 PresenceParams.Add("notify_id",UserToUpdate.agentData.AgentID.ToString()); 100 PresenceParams.Add("notify_id",UserToUpdate.agentData.AgentID.ToString());
@@ -105,19 +103,14 @@ namespace OpenSim.Grid.MessagingServer
105 else 103 else
106 PresenceParams.Add("status","FALSE"); 104 PresenceParams.Add("status","FALSE");
107 105
108
109
110
111 ArrayList SendParams = new ArrayList(); 106 ArrayList SendParams = new ArrayList();
112 SendParams.Add(PresenceParams); 107 SendParams.Add(PresenceParams);
113 108
114
115 m_log.InfoFormat("[PRESENCE]: Informing {0}@{1} at {2} about {3}", TalkingAbout.agentData.firstname + " " + TalkingAbout.agentData.lastname, whichRegion.regionName, whichRegion.httpServerURI, UserToUpdate.agentData.firstname + " " + UserToUpdate.agentData.lastname); 109 m_log.InfoFormat("[PRESENCE]: Informing {0}@{1} at {2} about {3}", TalkingAbout.agentData.firstname + " " + TalkingAbout.agentData.lastname, whichRegion.regionName, whichRegion.httpServerURI, UserToUpdate.agentData.firstname + " " + UserToUpdate.agentData.lastname);
116 // Send 110 // Send
117 XmlRpcRequest RegionReq = new XmlRpcRequest("presence_update", SendParams); 111 XmlRpcRequest RegionReq = new XmlRpcRequest("presence_update", SendParams);
118 try 112 try
119 { 113 {
120
121 // XmlRpcResponse RegionResp = RegionReq.Send(whichRegion.httpServerURI, 6000); 114 // XmlRpcResponse RegionResp = RegionReq.Send(whichRegion.httpServerURI, 6000);
122 RegionReq.Send(whichRegion.httpServerURI, 6000); 115 RegionReq.Send(whichRegion.httpServerURI, 6000);
123 } 116 }
@@ -137,7 +130,6 @@ namespace OpenSim.Grid.MessagingServer
137 { 130 {
138 handlerDone(this); 131 handlerDone(this);
139 } 132 }
140
141 } 133 }
142 } 134 }
143} 135}
diff --git a/OpenSim/Grid/MessagingServer/UserManager.cs b/OpenSim/Grid/MessagingServer/UserManager.cs
deleted file mode 100644
index 4b07df7..0000000
--- a/OpenSim/Grid/MessagingServer/UserManager.cs
+++ /dev/null
@@ -1,75 +0,0 @@
1/*
2 * Copyright (c) Contributors, http://opensimulator.org/
3 * See CONTRIBUTORS.TXT for a full list of copyright holders.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * * Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 * * Neither the name of the OpenSim Project nor the
13 * names of its contributors may be used to endorse or promote products
14 * derived from this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
17 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27
28using OpenMetaverse;
29using OpenSim.Framework;
30using OpenSim.Framework.Communications;
31
32namespace OpenSim.Grid.MessagingServer
33{
34 class UserManager : UserManagerBase
35 {
36 /// <summary>
37 /// Constructor.
38 /// </summary>
39 /// Passing null to parent because we never use any function that requires an interservice inventory call.
40 public UserManager()
41 : base(null)
42 {
43 }
44
45 public UserAgentData GetUserAgentData(UUID AgentID)
46 {
47 UserProfileData userProfile = GetUserProfile(AgentID);
48
49 if (userProfile != null)
50 {
51 return userProfile.CurrentAgent;
52 }
53
54 return null;
55 }
56
57 public override UserProfileData SetupMasterUser(string firstName, string lastName)
58 {
59 //throw new Exception("The method or operation is not implemented.");
60 return null;
61 }
62
63 public override UserProfileData SetupMasterUser(string firstName, string lastName, string password)
64 {
65 //throw new Exception("The method or operation is not implemented.");
66 return null;
67 }
68
69 public override UserProfileData SetupMasterUser(UUID uuid)
70 {
71 //throw new Exception("The method or operation is not implemented.");
72 return null;
73 }
74 }
75}