aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Framework/General/AssetConfig.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Framework/General/AssetConfig.cs')
-rw-r--r--OpenSim/Framework/General/AssetConfig.cs83
1 files changed, 83 insertions, 0 deletions
diff --git a/OpenSim/Framework/General/AssetConfig.cs b/OpenSim/Framework/General/AssetConfig.cs
new file mode 100644
index 0000000..457369d
--- /dev/null
+++ b/OpenSim/Framework/General/AssetConfig.cs
@@ -0,0 +1,83 @@
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*/
28
29using System;
30using System.Collections.Generic;
31using System.Text;
32
33namespace OpenSim.Framework
34{
35 /// <summary>
36 /// UserConfig -- For User Server Configuration
37 /// </summary>
38 public class AssetConfig
39 {
40 public string DefaultStartupMsg = "";
41
42 public string DatabaseProvider = "";
43
44 public static uint DefaultHttpPort = 8003;
45 public uint HttpPort = DefaultHttpPort;
46
47 private ConfigurationMember configMember;
48
49 public AssetConfig(string description, string filename)
50 {
51 configMember = new ConfigurationMember(filename, description, this.loadConfigurationOptions, this.handleIncomingConfiguration);
52 configMember.performConfigurationRetrieve();
53 }
54
55 public void loadConfigurationOptions()
56 {
57 configMember.addConfigurationOption("default_startup_message", ConfigurationOption.ConfigurationTypes.TYPE_STRING_NOT_EMPTY, "Default Startup Message", "Welcome to OGS", false);
58
59 configMember.addConfigurationOption("database_provider", ConfigurationOption.ConfigurationTypes.TYPE_STRING, "DLL for database provider", "OpenSim.Framework.Data.MySQL.dll", false);
60
61 configMember.addConfigurationOption("http_port", ConfigurationOption.ConfigurationTypes.TYPE_UINT32, "Http Listener port", DefaultHttpPort.ToString(), false);
62
63 }
64
65 public bool handleIncomingConfiguration(string configuration_key, object configuration_result)
66 {
67 switch (configuration_key)
68 {
69 case "default_startup_message":
70 this.DefaultStartupMsg = (string)configuration_result;
71 break;
72 case "database_provider":
73 this.DatabaseProvider = (string)configuration_result;
74 break;
75 case "http_port":
76 HttpPort = (uint)configuration_result;
77 break;
78 }
79
80 return true;
81 }
82 }
83}