From b8efd5f2949dd247590c1e40509e71031faf3413 Mon Sep 17 00:00:00 2001
From: Teravus Ovares
Date: Sun, 6 Jan 2008 18:18:19 +0000
Subject: * Added some userserver glue for communications with the message
server * Added some code for the message server, fixed a few references and
starting to flesh it out.
---
OpenSim/Framework/MessageServerConfig.cs | 116 +++++++++++++++++++++++++
OpenSim/Framework/Servers/MessageServerInfo.cs | 17 ++++
2 files changed, 133 insertions(+)
create mode 100644 OpenSim/Framework/MessageServerConfig.cs
create mode 100644 OpenSim/Framework/Servers/MessageServerInfo.cs
(limited to 'OpenSim/Framework')
diff --git a/OpenSim/Framework/MessageServerConfig.cs b/OpenSim/Framework/MessageServerConfig.cs
new file mode 100644
index 0000000..2859c25
--- /dev/null
+++ b/OpenSim/Framework/MessageServerConfig.cs
@@ -0,0 +1,116 @@
+/*
+* Copyright (c) Contributors, http://opensimulator.org/
+* See CONTRIBUTORS.TXT for a full list of copyright holders.
+*
+* Redistribution and use in source and binary forms, with or without
+* modification, are permitted provided that the following conditions are met:
+* * Redistributions of source code must retain the above copyright
+* notice, this list of conditions and the following disclaimer.
+* * Redistributions in binary form must reproduce the above copyright
+* notice, this list of conditions and the following disclaimer in the
+* documentation and/or other materials provided with the distribution.
+* * Neither the name of the OpenSim Project nor the
+* names of its contributors may be used to endorse or promote products
+* derived from this software without specific prior written permission.
+*
+* THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS AS IS AND ANY
+* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+* DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
+* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*
+*/
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace OpenSim.Framework
+{
+ ///
+ /// Message Server Config - Configuration of the Message Server
+ ///
+ public class MessageServerConfig
+ {
+ public string DefaultStartupMsg = "";
+ public string UserServerURL = "";
+ public string UserSendKey = "";
+ public string UserRecvKey = "";
+
+ public string DatabaseProvider = "";
+ public string GridCommsProvider = "";
+
+ public static uint DefaultHttpPort = 8006;
+ public static bool DefaultHttpSSL = false;
+ public uint HttpPort = DefaultHttpPort;
+ public bool HttpSSL = DefaultHttpSSL;
+
+ private ConfigurationMember configMember;
+
+ public MessageServerConfig(string description, string filename)
+ {
+ configMember =
+ new ConfigurationMember(filename, description, loadConfigurationOptions, handleIncomingConfiguration, true);
+ configMember.performConfigurationRetrieve();
+ }
+ public void loadConfigurationOptions()
+ {
+
+ configMember.addConfigurationOption("default_user_server",
+ ConfigurationOption.ConfigurationTypes.TYPE_STRING_NOT_EMPTY,
+ "Default User Server URI",
+ "http://127.0.0.1:" + MessageServerConfig.DefaultHttpPort.ToString() + "/", false);
+ configMember.addConfigurationOption("user_send_key", ConfigurationOption.ConfigurationTypes.TYPE_STRING,
+ "Key to send to user server", "null", false);
+ configMember.addConfigurationOption("user_recv_key", ConfigurationOption.ConfigurationTypes.TYPE_STRING,
+ "Key to expect from user server", "null", false);
+
+ configMember.addConfigurationOption("database_provider", ConfigurationOption.ConfigurationTypes.TYPE_STRING,
+ "DLL for database provider", "OpenSim.Framework.Data.MySQL.dll", false);
+
+ configMember.addConfigurationOption("region_comms_provider", ConfigurationOption.ConfigurationTypes.TYPE_STRING,
+ "DLL for comms provider", "OpenSim.Region.Communications.OGS1.dll", false);
+
+ configMember.addConfigurationOption("http_port", ConfigurationOption.ConfigurationTypes.TYPE_UINT32,
+ "Http Listener port", DefaultHttpPort.ToString(), false);
+ configMember.addConfigurationOption("http_ssl", ConfigurationOption.ConfigurationTypes.TYPE_BOOLEAN,
+ "Use SSL? true/false", DefaultHttpSSL.ToString(), false);
+
+ }
+
+ public bool handleIncomingConfiguration(string configuration_key, object configuration_result)
+ {
+ switch (configuration_key)
+ {
+
+ case "default_user_server":
+ UserServerURL = (string)configuration_result;
+ break;
+ case "user_send_key":
+ UserSendKey = (string)configuration_result;
+ break;
+ case "user_recv_key":
+ UserRecvKey = (string)configuration_result;
+ break;
+ case "database_provider":
+ DatabaseProvider = (string)configuration_result;
+ break;
+ case "http_port":
+ HttpPort = (uint)configuration_result;
+ break;
+ case "http_ssl":
+ HttpSSL = (bool)configuration_result;
+ break;
+ case "region_comms_provider":
+ GridCommsProvider = (string)configuration_result;
+ break;
+ }
+
+ return true;
+ }
+ }
+}
\ No newline at end of file
diff --git a/OpenSim/Framework/Servers/MessageServerInfo.cs b/OpenSim/Framework/Servers/MessageServerInfo.cs
new file mode 100644
index 0000000..13d65f9
--- /dev/null
+++ b/OpenSim/Framework/Servers/MessageServerInfo.cs
@@ -0,0 +1,17 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace OpenSim.Framework.Servers
+{
+ public class MessageServerInfo
+ {
+ public string URI;
+ public string sendkey;
+ public string recvkey;
+ public List responsibleForRegions;
+ public MessageServerInfo()
+ {
+ }
+ }
+}
--
cgit v1.1