Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim

integration
Melanie 2012-11-11 21:16:29 +00:00
commit 3c48b44b68
4 changed files with 116 additions and 79 deletions

View File

@ -51,10 +51,10 @@ namespace OpenSim.Region.CoreModules.World.LightShare
private Scene m_scene = null; private Scene m_scene = null;
private UUID regionID = UUID.Zero; private UUID regionID = UUID.Zero;
private static bool Enabled = false; private static bool Enabled = false;
private static readonly string capsName = "EnvironmentSettings"; private static readonly string capsName = "EnvironmentSettings";
private static readonly string capsBase = "/CAPS/0020/"; private static readonly string capsBase = "/CAPS/0020/";
private LLSDEnvironmentSetResponse setResponse = null; private LLSDEnvironmentSetResponse setResponse = null;
#region INonSharedRegionModule #region INonSharedRegionModule
@ -72,7 +72,7 @@ namespace OpenSim.Region.CoreModules.World.LightShare
} }
Enabled = true; Enabled = true;
m_log.InfoFormat("[{0}]: Module is enabled.", Name); m_log.InfoFormat("[{0}]: Module is enabled.", Name);
} }
@ -132,8 +132,8 @@ namespace OpenSim.Region.CoreModules.World.LightShare
#region Events #region Events
private void OnRegisterCaps(UUID agentID, Caps caps) private void OnRegisterCaps(UUID agentID, Caps caps)
{ {
// m_log.DebugFormat("[{0}]: Register capability for agentID {1} in region {2}", // m_log.DebugFormat("[{0}]: Register capability for agentID {1} in region {2}",
// Name, agentID, caps.RegionName); // Name, agentID, caps.RegionName);
string capsPath = capsBase + UUID.Random(); string capsPath = capsBase + UUID.Random();
@ -163,8 +163,8 @@ namespace OpenSim.Region.CoreModules.World.LightShare
private string GetEnvironmentSettings(string request, string path, string param, private string GetEnvironmentSettings(string request, string path, string param,
UUID agentID, Caps caps) UUID agentID, Caps caps)
{ {
// m_log.DebugFormat("[{0}]: Environment GET handle for agentID {1} in region {2}", // m_log.DebugFormat("[{0}]: Environment GET handle for agentID {1} in region {2}",
// Name, agentID, caps.RegionName); // Name, agentID, caps.RegionName);
string env = String.Empty; string env = String.Empty;
@ -188,8 +188,8 @@ namespace OpenSim.Region.CoreModules.World.LightShare
UUID agentID, Caps caps) UUID agentID, Caps caps)
{ {
// m_log.DebugFormat("[{0}]: Environment SET handle from agentID {1} in region {2}", // m_log.DebugFormat("[{0}]: Environment SET handle from agentID {1} in region {2}",
// Name, agentID, caps.RegionName); // Name, agentID, caps.RegionName);
setResponse.regionID = regionID; setResponse.regionID = regionID;
setResponse.success = false; setResponse.success = false;
@ -204,7 +204,7 @@ namespace OpenSim.Region.CoreModules.World.LightShare
{ {
m_scene.SimulationDataService.StoreRegionEnvironmentSettings(regionID, request); m_scene.SimulationDataService.StoreRegionEnvironmentSettings(regionID, request);
setResponse.success = true; setResponse.success = true;
m_log.InfoFormat("[{0}]: New Environment settings has been saved from agentID {1} in region {2}", m_log.InfoFormat("[{0}]: New Environment settings has been saved from agentID {1} in region {2}",
Name, agentID, caps.RegionName); Name, agentID, caps.RegionName);
} }

View File

@ -27,21 +27,20 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.IO;
using System.Reflection; using System.Reflection;
using OpenMetaverse; using OpenMetaverse;
using log4net;
using Nini.Config;
using OpenSim.Data;
using OpenSim.Framework; using OpenSim.Framework;
using OpenSim.Region.CoreModules.Framework.InterfaceCommander; using OpenSim.Region.CoreModules.Framework.InterfaceCommander;
using OpenSim.Region.Framework.Interfaces; using OpenSim.Region.Framework.Interfaces;
using OpenSim.Region.Framework.Scenes; using OpenSim.Region.Framework.Scenes;
using log4net;
using Nini.Config;
using Mono.Addins;
namespace OpenSim.Region.CoreModules.World.LightShare namespace OpenSim.Region.CoreModules.World.LightShare
{ {
public class LightShareModule : IRegionModule, ICommandableModule [Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")]
public class LightShareModule : INonSharedRegionModule, ILightShareModule, ICommandableModule
{ {
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
private readonly Commander m_commander = new Commander("windlight"); private readonly Commander m_commander = new Commander("windlight");
@ -57,7 +56,72 @@ namespace OpenSim.Region.CoreModules.World.LightShare
#endregion #endregion
#region IRegionModule Members #region INonSharedRegionModule Members
public void Initialise(IConfigSource config)
{
try
{
m_enableWindlight = config.Configs["LightShare"].GetBoolean("enable_windlight", false);
}
catch (Exception)
{
m_log.Debug("[WINDLIGHT]: ini failure for enable_windlight - using default");
}
m_log.DebugFormat("[WINDLIGHT]: windlight module {0}", (m_enableWindlight ? "enabled" : "disabled"));
}
public void AddRegion(Scene scene)
{
if (!m_enableWindlight)
return;
m_scene = scene;
m_scene.RegisterModuleInterface<ILightShareModule>(this);
m_scene.EventManager.OnPluginConsole += EventManager_OnPluginConsole;
m_scene.EventManager.OnMakeRootAgent += EventManager_OnMakeRootAgent;
m_scene.EventManager.OnSaveNewWindlightProfile += EventManager_OnSaveNewWindlightProfile;
m_scene.EventManager.OnSendNewWindlightProfileTargeted += EventManager_OnSendNewWindlightProfileTargeted;
m_scene.LoadWindlightProfile();
InstallCommands();
}
public void RemoveRegion(Scene scene)
{
if (!m_enableWindlight)
return;
m_scene.EventManager.OnPluginConsole -= EventManager_OnPluginConsole;
m_scene.EventManager.OnMakeRootAgent -= EventManager_OnMakeRootAgent;
m_scene.EventManager.OnSaveNewWindlightProfile -= EventManager_OnSaveNewWindlightProfile;
m_scene.EventManager.OnSendNewWindlightProfileTargeted -= EventManager_OnSendNewWindlightProfileTargeted;
m_scene = null;
}
public void Close()
{
}
public string Name
{
get { return "LightShareModule"; }
}
public void RegionLoaded(Scene scene)
{
}
public Type ReplaceableInterface
{
get { return null; }
}
#endregion
public static bool EnableWindlight public static bool EnableWindlight
{ {
@ -70,34 +134,7 @@ namespace OpenSim.Region.CoreModules.World.LightShare
} }
} }
public void Initialise(Scene scene, IConfigSource config) #region events
{
m_scene = scene;
m_scene.RegisterModuleInterface<IRegionModule>(this);
m_scene.EventManager.OnPluginConsole += EventManager_OnPluginConsole;
// ini file settings
try
{
m_enableWindlight = config.Configs["LightShare"].GetBoolean("enable_windlight", false);
}
catch (Exception)
{
m_log.Debug("[WINDLIGHT]: ini failure for enable_windlight - using default");
}
if (m_enableWindlight)
{
m_scene.EventManager.OnMakeRootAgent += EventManager_OnMakeRootAgent;
m_scene.EventManager.OnSaveNewWindlightProfile += EventManager_OnSaveNewWindlightProfile;
m_scene.EventManager.OnSendNewWindlightProfileTargeted += EventManager_OnSendNewWindlightProfileTargeted;
m_scene.LoadWindlightProfile();
}
InstallCommands();
m_log.Debug("[WINDLIGHT]: Initialised windlight module");
}
private List<byte[]> compileWindlightSettings(RegionLightShareData wl) private List<byte[]> compileWindlightSettings(RegionLightShareData wl)
{ {
@ -186,29 +223,6 @@ namespace OpenSim.Region.CoreModules.World.LightShare
m_scene.ForEachRootClient(SendProfileToClient); m_scene.ForEachRootClient(SendProfileToClient);
} }
public void PostInitialise()
{
}
public void Close()
{
}
public string Name
{
get { return "LightShareModule"; }
}
public bool IsSharedModule
{
get { return false; }
}
#endregion
#region events
#endregion #endregion
#region ICommandableModule Members #region ICommandableModule Members
@ -243,7 +257,7 @@ namespace OpenSim.Region.CoreModules.World.LightShare
private void HandleDisable(Object[] args) private void HandleDisable(Object[] args)
{ {
m_log.InfoFormat("[WINDLIGHT]: Plugin now disabled"); m_log.InfoFormat("[WINDLIGHT]: Plugin now disabled");
m_enableWindlight=false; m_enableWindlight = false;
} }
private void HandleEnable(Object[] args) private void HandleEnable(Object[] args)

View File

@ -0,0 +1,33 @@
/*
* 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 OpenSimulator 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.
*/
namespace OpenSim.Region.Framework.Interfaces
{
public interface ILightShareModule
{
}
}

View File

@ -1418,16 +1418,6 @@
; DeleteScriptsOnStartup = false ; DeleteScriptsOnStartup = false
[OpenGridProtocol]
;These are the settings for the Open Grid Protocol.. the Agent Domain, Region Domain, you know..
;On/true or Off/false
ogp_enabled=false
;Name Prefix/suffix when using OGP
ogp_firstname_prefix=""
ogp_lastname_suffix="_EXTERNAL"
[Concierge] [Concierge]
; Enable concierge module ; Enable concierge module
; Default is false ; Default is false