Merge branch 'master' of /home/opensim/var/repo/opensim
Conflicts: OpenSim/ApplicationPlugins/LoadRegions/LoadRegionsPlugin.csintegration
commit
4e8e3874ae
OpenSim
ApplicationPlugins
LoadRegions
RegionModulesController
Region
Application
ClientStack/Linden/Caps
BunchOfCaps
EventQueue
ObjectCaps
CoreModules
Agent
AssetTransaction
IPBan
TextureSender
Xfer
Avatar
AvatarFactory
Chat
Combat
Dialog
Gestures
Gods
Groups
Inventory
Archiver
Transfer
Profile
Framework
EntityTransfer
InventoryAccess
Library
Monitoring
UserManagement
Hypergrid
Properties
Resources
Scripting
DynamicTexture
EMailModules
HttpRequest
LSLHttp
LoadImageURL
ScriptModuleComms
VectorRender
WorldComm
XMLRPC
ServiceConnectorsIn
Authentication
Hypergrid
Inventory
Neighbour
Simulation
ServiceConnectorsOut
MapImage
|
@ -99,12 +99,12 @@ namespace OpenSim.ApplicationPlugins.LoadRegions
|
||||||
RegionInfo[] regionsToLoad = regionLoader.LoadRegions();
|
RegionInfo[] regionsToLoad = regionLoader.LoadRegions();
|
||||||
|
|
||||||
m_log.Info("[LOAD REGIONS PLUGIN]: Loading specific shared modules...");
|
m_log.Info("[LOAD REGIONS PLUGIN]: Loading specific shared modules...");
|
||||||
m_log.Info("[LOAD REGIONS PLUGIN]: DynamicTextureModule...");
|
//m_log.Info("[LOAD REGIONS PLUGIN]: DynamicTextureModule...");
|
||||||
m_openSim.ModuleLoader.LoadDefaultSharedModule(new DynamicTextureModule());
|
//m_openSim.ModuleLoader.LoadDefaultSharedModule(new DynamicTextureModule());
|
||||||
m_log.Info("[LOAD REGIONS PLUGIN]: LoadImageURLModule...");
|
//m_log.Info("[LOAD REGIONS PLUGIN]: LoadImageURLModule...");
|
||||||
m_openSim.ModuleLoader.LoadDefaultSharedModule(new LoadImageURLModule());
|
//m_openSim.ModuleLoader.LoadDefaultSharedModule(new LoadImageURLModule());
|
||||||
m_log.Info("[LOAD REGIONS PLUGIN]: XMLRPCModule...");
|
//m_log.Info("[LOAD REGIONS PLUGIN]: XMLRPCModule...");
|
||||||
m_openSim.ModuleLoader.LoadDefaultSharedModule(new XMLRPCModule());
|
//m_openSim.ModuleLoader.LoadDefaultSharedModule(new XMLRPCModule());
|
||||||
// m_log.Info("[LOADREGIONSPLUGIN]: AssetTransactionModule...");
|
// m_log.Info("[LOADREGIONSPLUGIN]: AssetTransactionModule...");
|
||||||
// m_openSim.ModuleLoader.LoadDefaultSharedModule(new AssetTransactionModule());
|
// m_openSim.ModuleLoader.LoadDefaultSharedModule(new AssetTransactionModule());
|
||||||
m_log.Info("[LOAD REGIONS PLUGIN]: Done.");
|
m_log.Info("[LOAD REGIONS PLUGIN]: Done.");
|
||||||
|
|
|
@ -215,7 +215,7 @@ namespace OpenSim.ApplicationPlugins.RegionModulesController
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#region IRegionModulesController implementation
|
#region Region Module interfacesController implementation
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Check that the given module is no disabled in the [Modules] section of the config files.
|
/// Check that the given module is no disabled in the [Modules] section of the config files.
|
||||||
|
|
|
@ -757,33 +757,13 @@ namespace OpenSim
|
||||||
switch (cmdparams[0].ToLower())
|
switch (cmdparams[0].ToLower())
|
||||||
{
|
{
|
||||||
case "list":
|
case "list":
|
||||||
foreach (IRegionModule irm in m_moduleLoader.GetLoadedSharedModules)
|
//TODO: Convert to new region modules
|
||||||
{
|
|
||||||
MainConsole.Instance.Output(String.Format("Shared region module: {0}", irm.Name));
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
case "unload":
|
case "unload":
|
||||||
if (cmdparams.Length > 1)
|
//TODO: Convert to new region modules
|
||||||
{
|
|
||||||
foreach (IRegionModule rm in new ArrayList(m_moduleLoader.GetLoadedSharedModules))
|
|
||||||
{
|
|
||||||
if (rm.Name.ToLower() == cmdparams[1].ToLower())
|
|
||||||
{
|
|
||||||
MainConsole.Instance.Output(String.Format("Unloading module: {0}", rm.Name));
|
|
||||||
m_moduleLoader.UnloadModule(rm);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
case "load":
|
case "load":
|
||||||
if (cmdparams.Length > 1)
|
//TODO: Convert to new region modules
|
||||||
{
|
|
||||||
foreach (Scene s in new ArrayList(SceneManager.Scenes))
|
|
||||||
{
|
|
||||||
MainConsole.Instance.Output(String.Format("Loading module: {0}", cmdparams[1]));
|
|
||||||
m_moduleLoader.LoadRegionModules(cmdparams[1], s);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1018,28 +998,9 @@ namespace OpenSim
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "modules":
|
case "modules":
|
||||||
MainConsole.Instance.Output("The currently loaded shared modules are:");
|
|
||||||
foreach (IRegionModule module in m_moduleLoader.GetLoadedSharedModules)
|
|
||||||
{
|
|
||||||
MainConsole.Instance.Output("Shared Module: " + module.Name);
|
|
||||||
}
|
|
||||||
|
|
||||||
SceneManager.ForEachScene(
|
SceneManager.ForEachScene(
|
||||||
delegate(Scene scene) {
|
delegate(Scene scene) {
|
||||||
m_log.Error("The currently loaded modules in " + scene.RegionInfo.RegionName + " are:");
|
MainConsole.Instance.Output("Loaded region modules in" + scene.RegionInfo.RegionName + " are:");
|
||||||
foreach (IRegionModule module in scene.Modules.Values)
|
|
||||||
{
|
|
||||||
if (!module.IsSharedModule)
|
|
||||||
{
|
|
||||||
m_log.Error("Region Module: " + module.Name);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
SceneManager.ForEachScene(
|
|
||||||
delegate(Scene scene) {
|
|
||||||
MainConsole.Instance.Output("Loaded new region modules in" + scene.RegionInfo.RegionName + " are:");
|
|
||||||
foreach (IRegionModuleBase module in scene.RegionModules.Values)
|
foreach (IRegionModuleBase module in scene.RegionModules.Values)
|
||||||
{
|
{
|
||||||
Type type = module.GetType().GetInterface("ISharedRegionModule");
|
Type type = module.GetType().GetInterface("ISharedRegionModule");
|
||||||
|
|
|
@ -127,14 +127,6 @@ namespace OpenSim
|
||||||
get { return m_httpServerPort; }
|
get { return m_httpServerPort; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public ModuleLoader ModuleLoader
|
|
||||||
{
|
|
||||||
get { return m_moduleLoader; }
|
|
||||||
set { m_moduleLoader = value; }
|
|
||||||
}
|
|
||||||
|
|
||||||
protected ModuleLoader m_moduleLoader;
|
|
||||||
|
|
||||||
protected IRegistryCore m_applicationRegistry = new RegistryCore();
|
protected IRegistryCore m_applicationRegistry = new RegistryCore();
|
||||||
|
|
||||||
public IRegistryCore ApplicationRegistry
|
public IRegistryCore ApplicationRegistry
|
||||||
|
@ -223,9 +215,6 @@ namespace OpenSim
|
||||||
|
|
||||||
base.StartupSpecific();
|
base.StartupSpecific();
|
||||||
|
|
||||||
// Create a ModuleLoader instance
|
|
||||||
m_moduleLoader = new ModuleLoader(m_config.Source);
|
|
||||||
|
|
||||||
LoadPlugins();
|
LoadPlugins();
|
||||||
foreach (IApplicationPlugin plugin in m_plugins)
|
foreach (IApplicationPlugin plugin in m_plugins)
|
||||||
{
|
{
|
||||||
|
@ -370,12 +359,6 @@ namespace OpenSim
|
||||||
|
|
||||||
m_log.Info("[MODULES]: Loading Region's modules (old style)");
|
m_log.Info("[MODULES]: Loading Region's modules (old style)");
|
||||||
|
|
||||||
List<IRegionModule> modules = m_moduleLoader.PickupModules(scene, ".");
|
|
||||||
|
|
||||||
// This needs to be ahead of the script engine load, so the
|
|
||||||
// script module can pick up events exposed by a module
|
|
||||||
m_moduleLoader.InitialiseSharedModules(scene);
|
|
||||||
|
|
||||||
// Use this in the future, the line above will be deprecated soon
|
// Use this in the future, the line above will be deprecated soon
|
||||||
m_log.Info("[REGIONMODULES]: Loading Region's modules (new style)");
|
m_log.Info("[REGIONMODULES]: Loading Region's modules (new style)");
|
||||||
IRegionModulesController controller;
|
IRegionModulesController controller;
|
||||||
|
@ -426,13 +409,6 @@ namespace OpenSim
|
||||||
clientServer.Start();
|
clientServer.Start();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (do_post_init)
|
|
||||||
{
|
|
||||||
foreach (IRegionModule module in modules)
|
|
||||||
{
|
|
||||||
module.PostInitialise();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
scene.EventManager.OnShutdown += delegate() { ShutdownRegion(scene); };
|
scene.EventManager.OnShutdown += delegate() { ShutdownRegion(scene); };
|
||||||
|
|
||||||
mscene = scene;
|
mscene = scene;
|
||||||
|
@ -722,7 +698,7 @@ namespace OpenSim
|
||||||
|
|
||||||
return new Scene(
|
return new Scene(
|
||||||
regionInfo, circuitManager, sceneGridService,
|
regionInfo, circuitManager, sceneGridService,
|
||||||
simDataService, estateDataService, m_moduleLoader, false,
|
simDataService, estateDataService, false,
|
||||||
m_config.Source, m_version);
|
m_config.Source, m_version);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -45,7 +45,7 @@ using Caps = OpenSim.Framework.Capabilities.Caps;
|
||||||
namespace OpenSim.Region.ClientStack.Linden
|
namespace OpenSim.Region.ClientStack.Linden
|
||||||
{
|
{
|
||||||
|
|
||||||
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")]
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "BunchOfCapsModule")]
|
||||||
public class BunchOfCapsModule : INonSharedRegionModule
|
public class BunchOfCapsModule : INonSharedRegionModule
|
||||||
{
|
{
|
||||||
// private static readonly ILog m_log =
|
// private static readonly ILog m_log =
|
||||||
|
|
|
@ -55,8 +55,8 @@ namespace OpenSim.Region.ClientStack.Linden
|
||||||
public OSDMap body;
|
public OSDMap body;
|
||||||
}
|
}
|
||||||
|
|
||||||
//[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")]
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "EventQueueGetModule")]
|
||||||
public class EventQueueGetModule : IEventQueue, IRegionModule
|
public class EventQueueGetModule : IEventQueue, INonSharedRegionModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
||||||
|
@ -66,8 +66,6 @@ namespace OpenSim.Region.ClientStack.Linden
|
||||||
public int DebugLevel { get; set; }
|
public int DebugLevel { get; set; }
|
||||||
|
|
||||||
protected Scene m_scene;
|
protected Scene m_scene;
|
||||||
private IConfigSource m_gConfig;
|
|
||||||
bool enabledYN;
|
|
||||||
|
|
||||||
private Dictionary<UUID, int> m_ids = new Dictionary<UUID, int>();
|
private Dictionary<UUID, int> m_ids = new Dictionary<UUID, int>();
|
||||||
|
|
||||||
|
@ -75,34 +73,17 @@ namespace OpenSim.Region.ClientStack.Linden
|
||||||
private Dictionary<UUID, UUID> m_QueueUUIDAvatarMapping = new Dictionary<UUID, UUID>();
|
private Dictionary<UUID, UUID> m_QueueUUIDAvatarMapping = new Dictionary<UUID, UUID>();
|
||||||
private Dictionary<UUID, UUID> m_AvatarQueueUUIDMapping = new Dictionary<UUID, UUID>();
|
private Dictionary<UUID, UUID> m_AvatarQueueUUIDMapping = new Dictionary<UUID, UUID>();
|
||||||
|
|
||||||
#region IRegionModule methods
|
#region INonSharedRegionModule methods
|
||||||
public virtual void Initialise(Scene scene, IConfigSource config)
|
public virtual void Initialise(IConfigSource config)
|
||||||
{
|
{
|
||||||
m_gConfig = config;
|
}
|
||||||
|
|
||||||
IConfig startupConfig = m_gConfig.Configs["Startup"];
|
public void AddRegion(Scene scene)
|
||||||
|
|
||||||
ReadConfigAndPopulate(scene, startupConfig, "Startup");
|
|
||||||
|
|
||||||
if (enabledYN)
|
|
||||||
{
|
{
|
||||||
m_scene = scene;
|
m_scene = scene;
|
||||||
scene.RegisterModuleInterface<IEventQueue>(this);
|
scene.RegisterModuleInterface<IEventQueue>(this);
|
||||||
|
|
||||||
// Register fallback handler
|
|
||||||
// Why does EQG Fail on region crossings!
|
|
||||||
|
|
||||||
//scene.CommsManager.HttpServer.AddLLSDHandler("/CAPS/EQG/", EventQueueFallBack);
|
|
||||||
|
|
||||||
// scene.EventManager.OnNewClient += OnNewClient;
|
|
||||||
|
|
||||||
// TODO: Leaving these open, or closing them when we
|
|
||||||
// become a child is incorrect. It messes up TP in a big
|
|
||||||
// way. CAPS/EQ need to be active as long as the UDP
|
|
||||||
// circuit is there.
|
|
||||||
|
|
||||||
scene.EventManager.OnClientClosed += ClientClosed;
|
scene.EventManager.OnClientClosed += ClientClosed;
|
||||||
|
|
||||||
scene.EventManager.OnMakeChildAgent += MakeChildAgent;
|
scene.EventManager.OnMakeChildAgent += MakeChildAgent;
|
||||||
scene.EventManager.OnRegisterCaps += OnRegisterCaps;
|
scene.EventManager.OnRegisterCaps += OnRegisterCaps;
|
||||||
|
|
||||||
|
@ -117,18 +98,21 @@ namespace OpenSim.Region.ClientStack.Linden
|
||||||
+ " >= 2 - turns on poll notification",
|
+ " >= 2 - turns on poll notification",
|
||||||
HandleDebugEq);
|
HandleDebugEq);
|
||||||
}
|
}
|
||||||
else
|
|
||||||
|
public void RemoveRegion(Scene scene)
|
||||||
{
|
{
|
||||||
m_gConfig = null;
|
if (m_scene != scene)
|
||||||
}
|
return;
|
||||||
|
|
||||||
|
scene.EventManager.OnClientClosed -= ClientClosed;
|
||||||
|
scene.EventManager.OnMakeChildAgent -= MakeChildAgent;
|
||||||
|
scene.EventManager.OnRegisterCaps -= OnRegisterCaps;
|
||||||
|
|
||||||
|
scene.UnregisterModuleInterface<IEventQueue>(this);
|
||||||
|
m_scene = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ReadConfigAndPopulate(Scene scene, IConfig startupConfig, string p)
|
public void RegionLoaded(Scene scene)
|
||||||
{
|
|
||||||
enabledYN = startupConfig.GetBoolean("EventQueue", true);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void PostInitialise()
|
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -141,10 +125,11 @@ namespace OpenSim.Region.ClientStack.Linden
|
||||||
get { return "EventQueueGetModule"; }
|
get { return "EventQueueGetModule"; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool IsSharedModule
|
public Type ReplaceableInterface
|
||||||
{
|
{
|
||||||
get { return false; }
|
get { return null; }
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
protected void HandleDebugEq(string module, string[] args)
|
protected void HandleDebugEq(string module, string[] args)
|
||||||
|
|
|
@ -45,7 +45,7 @@ namespace OpenSim.Region.ClientStack.Linden
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// This module implements both WebFetchInventoryDescendents and FetchInventoryDescendents2 capabilities.
|
/// This module implements both WebFetchInventoryDescendents and FetchInventoryDescendents2 capabilities.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")]
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "FetchInventory2Module")]
|
||||||
public class FetchInventory2Module : INonSharedRegionModule
|
public class FetchInventory2Module : INonSharedRegionModule
|
||||||
{
|
{
|
||||||
// private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
// private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
|
@ -47,7 +47,7 @@ using Caps = OpenSim.Framework.Capabilities.Caps;
|
||||||
|
|
||||||
namespace OpenSim.Region.ClientStack.Linden
|
namespace OpenSim.Region.ClientStack.Linden
|
||||||
{
|
{
|
||||||
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")]
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "GetMeshModule")]
|
||||||
public class GetMeshModule : INonSharedRegionModule
|
public class GetMeshModule : INonSharedRegionModule
|
||||||
{
|
{
|
||||||
// private static readonly ILog m_log =
|
// private static readonly ILog m_log =
|
||||||
|
@ -58,7 +58,7 @@ namespace OpenSim.Region.ClientStack.Linden
|
||||||
private bool m_Enabled = true;
|
private bool m_Enabled = true;
|
||||||
private string m_URL;
|
private string m_URL;
|
||||||
|
|
||||||
#region IRegionModuleBase Members
|
#region Region Module interfaceBase Members
|
||||||
|
|
||||||
public Type ReplaceableInterface
|
public Type ReplaceableInterface
|
||||||
{
|
{
|
||||||
|
|
|
@ -51,7 +51,7 @@ using OpenSim.Capabilities.Handlers;
|
||||||
namespace OpenSim.Region.ClientStack.Linden
|
namespace OpenSim.Region.ClientStack.Linden
|
||||||
{
|
{
|
||||||
|
|
||||||
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")]
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "GetTextureModule")]
|
||||||
public class GetTextureModule : INonSharedRegionModule
|
public class GetTextureModule : INonSharedRegionModule
|
||||||
{
|
{
|
||||||
// private static readonly ILog m_log =
|
// private static readonly ILog m_log =
|
||||||
|
|
|
@ -45,7 +45,7 @@ namespace OpenSim.Region.ClientStack.Linden
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// MeshUploadFlag capability. This is required for uploading Mesh.
|
/// MeshUploadFlag capability. This is required for uploading Mesh.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")]
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "MeshUploadFlagModule")]
|
||||||
public class MeshUploadFlagModule : INonSharedRegionModule
|
public class MeshUploadFlagModule : INonSharedRegionModule
|
||||||
{
|
{
|
||||||
// private static readonly ILog m_log =
|
// private static readonly ILog m_log =
|
||||||
|
|
|
@ -47,7 +47,7 @@ using OpenSim.Framework.Capabilities;
|
||||||
|
|
||||||
namespace OpenSim.Region.ClientStack.Linden
|
namespace OpenSim.Region.ClientStack.Linden
|
||||||
{
|
{
|
||||||
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")]
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "NewFileAgentInventoryVariablePriceModule")]
|
||||||
public class NewFileAgentInventoryVariablePriceModule : INonSharedRegionModule
|
public class NewFileAgentInventoryVariablePriceModule : INonSharedRegionModule
|
||||||
{
|
{
|
||||||
// private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
// private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
@ -58,7 +58,7 @@ namespace OpenSim.Region.ClientStack.Linden
|
||||||
private bool m_enabled = true;
|
private bool m_enabled = true;
|
||||||
private int m_levelUpload = 0;
|
private int m_levelUpload = 0;
|
||||||
|
|
||||||
#region IRegionModuleBase Members
|
#region Region Module interfaceBase Members
|
||||||
|
|
||||||
|
|
||||||
public Type ReplaceableInterface
|
public Type ReplaceableInterface
|
||||||
|
@ -98,7 +98,7 @@ namespace OpenSim.Region.ClientStack.Linden
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
||||||
#region IRegionModule Members
|
#region Region Module interface
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -32,6 +32,7 @@ using log4net;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
using OpenMetaverse.StructuredData;
|
using OpenMetaverse.StructuredData;
|
||||||
|
using Mono.Addins;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
using OpenSim.Framework.Servers;
|
using OpenSim.Framework.Servers;
|
||||||
using OpenSim.Framework.Servers.HttpServer;
|
using OpenSim.Framework.Servers.HttpServer;
|
||||||
|
@ -41,24 +42,54 @@ using Caps=OpenSim.Framework.Capabilities.Caps;
|
||||||
|
|
||||||
namespace OpenSim.Region.ClientStack.Linden
|
namespace OpenSim.Region.ClientStack.Linden
|
||||||
{
|
{
|
||||||
public class ObjectAdd : IRegionModule
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "ObjectAdd")]
|
||||||
|
public class ObjectAdd : INonSharedRegionModule
|
||||||
{
|
{
|
||||||
// private static readonly ILog m_log =
|
// private static readonly ILog m_log =
|
||||||
// LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
// LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
||||||
private Scene m_scene;
|
private Scene m_scene;
|
||||||
#region IRegionModule Members
|
|
||||||
|
|
||||||
public void Initialise(Scene pScene, IConfigSource pSource)
|
#region INonSharedRegionModule Members
|
||||||
|
|
||||||
|
public void Initialise(IConfigSource pSource)
|
||||||
{
|
{
|
||||||
m_scene = pScene;
|
}
|
||||||
|
|
||||||
|
public void AddRegion(Scene scene)
|
||||||
|
{
|
||||||
|
m_scene = scene;
|
||||||
m_scene.EventManager.OnRegisterCaps += RegisterCaps;
|
m_scene.EventManager.OnRegisterCaps += RegisterCaps;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void PostInitialise()
|
public void RemoveRegion(Scene scene)
|
||||||
{
|
{
|
||||||
|
if (m_scene == scene)
|
||||||
|
{
|
||||||
|
m_scene.EventManager.OnRegisterCaps -= RegisterCaps;
|
||||||
|
m_scene = null;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RegionLoaded(Scene scene)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Close()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public string Name
|
||||||
|
{
|
||||||
|
get { return "ObjectAddModule"; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public Type ReplaceableInterface
|
||||||
|
{
|
||||||
|
get { return null; }
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
public void RegisterCaps(UUID agentID, Caps caps)
|
public void RegisterCaps(UUID agentID, Caps caps)
|
||||||
{
|
{
|
||||||
|
@ -350,21 +381,5 @@ namespace OpenSim.Region.ClientStack.Linden
|
||||||
return String.Format("<binary encoding=\"base64\">{0}</binary>", Convert.ToBase64String(resultbytes));
|
return String.Format("<binary encoding=\"base64\">{0}</binary>", Convert.ToBase64String(resultbytes));
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Close()
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public string Name
|
|
||||||
{
|
|
||||||
get { return "ObjectAddModule"; }
|
|
||||||
}
|
|
||||||
|
|
||||||
public bool IsSharedModule
|
|
||||||
{
|
|
||||||
get { return false; }
|
|
||||||
}
|
|
||||||
|
|
||||||
#endregion
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -51,14 +51,14 @@ using ExtraParamType = OpenMetaverse.ExtraParamType;
|
||||||
|
|
||||||
namespace OpenSim.Region.ClientStack.Linden
|
namespace OpenSim.Region.ClientStack.Linden
|
||||||
{
|
{
|
||||||
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")]
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "UploadObjectAssetModule")]
|
||||||
public class UploadObjectAssetModule : INonSharedRegionModule
|
public class UploadObjectAssetModule : INonSharedRegionModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log =
|
private static readonly ILog m_log =
|
||||||
LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
private Scene m_scene;
|
private Scene m_scene;
|
||||||
|
|
||||||
#region IRegionModuleBase Members
|
#region Region Module interfaceBase Members
|
||||||
|
|
||||||
|
|
||||||
public Type ReplaceableInterface
|
public Type ReplaceableInterface
|
||||||
|
@ -92,7 +92,7 @@ namespace OpenSim.Region.ClientStack.Linden
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
||||||
#region IRegionModule Members
|
#region Region Module interface
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -53,7 +53,7 @@ namespace OpenSim.Region.ClientStack.Linden
|
||||||
/// NOTE: Part of this code was adapted from the Aurora project, specifically
|
/// NOTE: Part of this code was adapted from the Aurora project, specifically
|
||||||
/// the normal part of the response in the capability handler.
|
/// the normal part of the response in the capability handler.
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")]
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "SimulatorFeaturesModule")]
|
||||||
public class SimulatorFeaturesModule : ISharedRegionModule, ISimulatorFeaturesModule
|
public class SimulatorFeaturesModule : ISharedRegionModule, ISimulatorFeaturesModule
|
||||||
{
|
{
|
||||||
// private static readonly ILog m_log =
|
// private static readonly ILog m_log =
|
||||||
|
|
|
@ -50,7 +50,7 @@ using OpenSim.Capabilities.Handlers;
|
||||||
|
|
||||||
namespace OpenSim.Region.ClientStack.Linden
|
namespace OpenSim.Region.ClientStack.Linden
|
||||||
{
|
{
|
||||||
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")]
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "UploadBakedTextureModule")]
|
||||||
public class UploadBakedTextureModule : INonSharedRegionModule
|
public class UploadBakedTextureModule : INonSharedRegionModule
|
||||||
{
|
{
|
||||||
// private static readonly ILog m_log =
|
// private static readonly ILog m_log =
|
||||||
|
|
|
@ -45,7 +45,7 @@ namespace OpenSim.Region.ClientStack.Linden
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// This module implements both WebFetchInventoryDescendents and FetchInventoryDescendents2 capabilities.
|
/// This module implements both WebFetchInventoryDescendents and FetchInventoryDescendents2 capabilities.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")]
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "WebFetchInvDescModule")]
|
||||||
public class WebFetchInvDescModule : INonSharedRegionModule
|
public class WebFetchInvDescModule : INonSharedRegionModule
|
||||||
{
|
{
|
||||||
// private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
// private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
|
@ -54,7 +54,7 @@ namespace OpenSim.Region.CoreModules.Agent.AssetTransaction
|
||||||
private Dictionary<UUID, AgentAssetTransactions> AgentTransactions =
|
private Dictionary<UUID, AgentAssetTransactions> AgentTransactions =
|
||||||
new Dictionary<UUID, AgentAssetTransactions>();
|
new Dictionary<UUID, AgentAssetTransactions>();
|
||||||
|
|
||||||
#region IRegionModule Members
|
#region Region Module interface
|
||||||
|
|
||||||
public void Initialise(IConfigSource source)
|
public void Initialise(IConfigSource source)
|
||||||
{
|
{
|
||||||
|
|
|
@ -29,6 +29,7 @@ using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
using OpenSim.Region.Framework.Interfaces;
|
using OpenSim.Region.Framework.Interfaces;
|
||||||
|
@ -36,13 +37,18 @@ using OpenSim.Region.Framework.Scenes;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Agent.IPBan
|
namespace OpenSim.Region.CoreModules.Agent.IPBan
|
||||||
{
|
{
|
||||||
public class IPBanModule : IRegionModule
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "IPBanModule")]
|
||||||
|
public class IPBanModule : ISharedRegionModule
|
||||||
{
|
{
|
||||||
#region Implementation of IRegionModule
|
#region Implementation of ISharedRegionModule
|
||||||
|
|
||||||
private List<string> m_bans = new List<string>();
|
private List<string> m_bans = new List<string>();
|
||||||
|
|
||||||
public void Initialise(Scene scene, IConfigSource source)
|
public void Initialise(IConfigSource source)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public void AddRegion(Scene scene)
|
||||||
{
|
{
|
||||||
new SceneBanner(scene, m_bans);
|
new SceneBanner(scene, m_bans);
|
||||||
|
|
||||||
|
@ -58,6 +64,14 @@ namespace OpenSim.Region.CoreModules.Agent.IPBan
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void RemoveRegion(Scene scene)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RegionLoaded(Scene scene)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
public void PostInitialise()
|
public void PostInitialise()
|
||||||
{
|
{
|
||||||
if (File.Exists("bans.txt"))
|
if (File.Exists("bans.txt"))
|
||||||
|
@ -80,9 +94,9 @@ namespace OpenSim.Region.CoreModules.Agent.IPBan
|
||||||
get { return "IPBanModule"; }
|
get { return "IPBanModule"; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool IsSharedModule
|
public Type ReplaceableInterface
|
||||||
{
|
{
|
||||||
get { return true; }
|
get { return null; }
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
|
@ -32,6 +32,7 @@ using System.Reflection;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading;
|
using System.Threading;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
using OpenMetaverse.Imaging;
|
using OpenMetaverse.Imaging;
|
||||||
|
@ -45,7 +46,8 @@ namespace OpenSim.Region.CoreModules.Agent.TextureSender
|
||||||
{
|
{
|
||||||
public delegate void J2KDecodeDelegate(UUID assetID);
|
public delegate void J2KDecodeDelegate(UUID assetID);
|
||||||
|
|
||||||
public class J2KDecoderModule : IRegionModule, IJ2KDecoder
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "J2KDecoderModule")]
|
||||||
|
public class J2KDecoderModule : ISharedRegionModule, IJ2KDecoder
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
||||||
|
@ -55,27 +57,32 @@ namespace OpenSim.Region.CoreModules.Agent.TextureSender
|
||||||
private readonly Dictionary<UUID, List<DecodedCallback>> m_notifyList = new Dictionary<UUID, List<DecodedCallback>>();
|
private readonly Dictionary<UUID, List<DecodedCallback>> m_notifyList = new Dictionary<UUID, List<DecodedCallback>>();
|
||||||
/// <summary>Cache that will store decoded JPEG2000 layer boundary data</summary>
|
/// <summary>Cache that will store decoded JPEG2000 layer boundary data</summary>
|
||||||
private IImprovedAssetCache m_cache;
|
private IImprovedAssetCache m_cache;
|
||||||
|
private IImprovedAssetCache Cache
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
if (m_cache == null)
|
||||||
|
m_cache = m_scene.RequestModuleInterface<IImprovedAssetCache>();
|
||||||
|
|
||||||
|
return m_cache;
|
||||||
|
}
|
||||||
|
}
|
||||||
/// <summary>Reference to a scene (doesn't matter which one as long as it can load the cache module)</summary>
|
/// <summary>Reference to a scene (doesn't matter which one as long as it can load the cache module)</summary>
|
||||||
|
private UUID m_CreatorID = UUID.Zero;
|
||||||
private Scene m_scene;
|
private Scene m_scene;
|
||||||
|
|
||||||
#region IRegionModule
|
#region ISharedRegionModule
|
||||||
|
|
||||||
private bool m_useCSJ2K = true;
|
private bool m_useCSJ2K = true;
|
||||||
|
|
||||||
public string Name { get { return "J2KDecoderModule"; } }
|
public string Name { get { return "J2KDecoderModule"; } }
|
||||||
public bool IsSharedModule { get { return true; } }
|
|
||||||
|
|
||||||
public J2KDecoderModule()
|
public J2KDecoderModule()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Initialise(Scene scene, IConfigSource source)
|
public void Initialise(IConfigSource source)
|
||||||
{
|
{
|
||||||
if (m_scene == null)
|
|
||||||
m_scene = scene;
|
|
||||||
|
|
||||||
scene.RegisterModuleInterface<IJ2KDecoder>(this);
|
|
||||||
|
|
||||||
IConfig startupConfig = source.Configs["Startup"];
|
IConfig startupConfig = source.Configs["Startup"];
|
||||||
if (startupConfig != null)
|
if (startupConfig != null)
|
||||||
{
|
{
|
||||||
|
@ -83,16 +90,42 @@ namespace OpenSim.Region.CoreModules.Agent.TextureSender
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void AddRegion(Scene scene)
|
||||||
|
{
|
||||||
|
if (m_scene == null)
|
||||||
|
{
|
||||||
|
m_scene = scene;
|
||||||
|
m_CreatorID = scene.RegionInfo.RegionID;
|
||||||
|
}
|
||||||
|
|
||||||
|
scene.RegisterModuleInterface<IJ2KDecoder>(this);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RemoveRegion(Scene scene)
|
||||||
|
{
|
||||||
|
if (m_scene == scene)
|
||||||
|
m_scene = null;
|
||||||
|
}
|
||||||
|
|
||||||
public void PostInitialise()
|
public void PostInitialise()
|
||||||
{
|
{
|
||||||
m_cache = m_scene.RequestModuleInterface<IImprovedAssetCache>();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Close()
|
public void Close()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion IRegionModule
|
public void RegionLoaded(Scene scene)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public Type ReplaceableInterface
|
||||||
|
{
|
||||||
|
get { return null; }
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion Region Module interface
|
||||||
|
|
||||||
#region IJ2KDecoder
|
#region IJ2KDecoder
|
||||||
|
|
||||||
|
@ -275,11 +308,11 @@ namespace OpenSim.Region.CoreModules.Agent.TextureSender
|
||||||
{
|
{
|
||||||
m_decodedCache.AddOrUpdate(AssetId, Layers, TimeSpan.FromMinutes(10));
|
m_decodedCache.AddOrUpdate(AssetId, Layers, TimeSpan.FromMinutes(10));
|
||||||
|
|
||||||
if (m_cache != null)
|
if (Cache != null)
|
||||||
{
|
{
|
||||||
string assetID = "j2kCache_" + AssetId.ToString();
|
string assetID = "j2kCache_" + AssetId.ToString();
|
||||||
|
|
||||||
AssetBase layerDecodeAsset = new AssetBase(assetID, assetID, (sbyte)AssetType.Notecard, m_scene.RegionInfo.RegionID.ToString());
|
AssetBase layerDecodeAsset = new AssetBase(assetID, assetID, (sbyte)AssetType.Notecard, m_CreatorID.ToString());
|
||||||
layerDecodeAsset.Local = true;
|
layerDecodeAsset.Local = true;
|
||||||
layerDecodeAsset.Temporary = true;
|
layerDecodeAsset.Temporary = true;
|
||||||
|
|
||||||
|
@ -299,7 +332,7 @@ namespace OpenSim.Region.CoreModules.Agent.TextureSender
|
||||||
|
|
||||||
#endregion Serialize Layer Data
|
#endregion Serialize Layer Data
|
||||||
|
|
||||||
m_cache.Cache(layerDecodeAsset);
|
Cache.Cache(layerDecodeAsset);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -309,10 +342,10 @@ namespace OpenSim.Region.CoreModules.Agent.TextureSender
|
||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
else if (m_cache != null)
|
else if (Cache != null)
|
||||||
{
|
{
|
||||||
string assetName = "j2kCache_" + AssetId.ToString();
|
string assetName = "j2kCache_" + AssetId.ToString();
|
||||||
AssetBase layerDecodeAsset = m_cache.Get(assetName);
|
AssetBase layerDecodeAsset = Cache.Get(assetName);
|
||||||
|
|
||||||
if (layerDecodeAsset != null)
|
if (layerDecodeAsset != null)
|
||||||
{
|
{
|
||||||
|
@ -324,7 +357,7 @@ namespace OpenSim.Region.CoreModules.Agent.TextureSender
|
||||||
if (lines.Length == 0)
|
if (lines.Length == 0)
|
||||||
{
|
{
|
||||||
m_log.Warn("[J2KDecodeCache]: Expiring corrupted layer data (empty) " + assetName);
|
m_log.Warn("[J2KDecodeCache]: Expiring corrupted layer data (empty) " + assetName);
|
||||||
m_cache.Expire(assetName);
|
Cache.Expire(assetName);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -345,7 +378,7 @@ namespace OpenSim.Region.CoreModules.Agent.TextureSender
|
||||||
catch (FormatException)
|
catch (FormatException)
|
||||||
{
|
{
|
||||||
m_log.Warn("[J2KDecodeCache]: Expiring corrupted layer data (format) " + assetName);
|
m_log.Warn("[J2KDecodeCache]: Expiring corrupted layer data (format) " + assetName);
|
||||||
m_cache.Expire(assetName);
|
Cache.Expire(assetName);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -356,7 +389,7 @@ namespace OpenSim.Region.CoreModules.Agent.TextureSender
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
m_log.Warn("[J2KDecodeCache]: Expiring corrupted layer data (layout) " + assetName);
|
m_log.Warn("[J2KDecodeCache]: Expiring corrupted layer data (layout) " + assetName);
|
||||||
m_cache.Expire(assetName);
|
Cache.Expire(assetName);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,9 +35,12 @@ using OpenSim.Framework;
|
||||||
using OpenSim.Region.Framework.Interfaces;
|
using OpenSim.Region.Framework.Interfaces;
|
||||||
using OpenSim.Region.Framework.Scenes;
|
using OpenSim.Region.Framework.Scenes;
|
||||||
|
|
||||||
|
using Mono.Addins;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Agent.Xfer
|
namespace OpenSim.Region.CoreModules.Agent.Xfer
|
||||||
{
|
{
|
||||||
public class XferModule : IRegionModule, IXfer
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "XferModule")]
|
||||||
|
public class XferModule : INonSharedRegionModule, IXfer
|
||||||
{
|
{
|
||||||
private Scene m_scene;
|
private Scene m_scene;
|
||||||
private Dictionary<string, FileData> NewFiles = new Dictionary<string, FileData>();
|
private Dictionary<string, FileData> NewFiles = new Dictionary<string, FileData>();
|
||||||
|
@ -59,9 +62,13 @@ namespace OpenSim.Region.CoreModules.Agent.Xfer
|
||||||
public int Count;
|
public int Count;
|
||||||
}
|
}
|
||||||
|
|
||||||
#region IRegionModule Members
|
#region INonSharedRegionModule Members
|
||||||
|
|
||||||
public void Initialise(Scene scene, IConfigSource config)
|
public void Initialise(IConfigSource config)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public void AddRegion(Scene scene)
|
||||||
{
|
{
|
||||||
m_scene = scene;
|
m_scene = scene;
|
||||||
m_scene.EventManager.OnNewClient += NewClient;
|
m_scene.EventManager.OnNewClient += NewClient;
|
||||||
|
@ -69,8 +76,21 @@ namespace OpenSim.Region.CoreModules.Agent.Xfer
|
||||||
m_scene.RegisterModuleInterface<IXfer>(this);
|
m_scene.RegisterModuleInterface<IXfer>(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void PostInitialise()
|
public void RemoveRegion(Scene scene)
|
||||||
{
|
{
|
||||||
|
m_scene.EventManager.OnNewClient -= NewClient;
|
||||||
|
|
||||||
|
m_scene.UnregisterModuleInterface<IXfer>(this);
|
||||||
|
m_scene = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RegionLoaded(Scene scene)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public Type ReplaceableInterface
|
||||||
|
{
|
||||||
|
get { return null; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Close()
|
public void Close()
|
||||||
|
@ -82,11 +102,6 @@ namespace OpenSim.Region.CoreModules.Agent.Xfer
|
||||||
get { return "XferModule"; }
|
get { return "XferModule"; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool IsSharedModule
|
|
||||||
{
|
|
||||||
get { return false; }
|
|
||||||
}
|
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region IXfer Members
|
#region IXfer Members
|
||||||
|
|
|
@ -28,6 +28,7 @@
|
||||||
using System;
|
using System;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
using OpenSim.Region.Framework.Interfaces;
|
using OpenSim.Region.Framework.Interfaces;
|
||||||
|
@ -89,6 +90,7 @@ namespace OpenSim.Region.CoreModules.Asset
|
||||||
/// ExpirationTime = 60
|
/// ExpirationTime = 60
|
||||||
/// </code>
|
/// </code>
|
||||||
/// </example>
|
/// </example>
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "CenomeMemoryAssetCache")]
|
||||||
public class CenomeMemoryAssetCache : IImprovedAssetCache, ISharedRegionModule
|
public class CenomeMemoryAssetCache : IImprovedAssetCache, ISharedRegionModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
|
@ -30,6 +30,7 @@ using System;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
using OpenSim.Region.Framework.Interfaces;
|
using OpenSim.Region.Framework.Interfaces;
|
||||||
|
@ -38,6 +39,7 @@ using OpenSim.Services.Interfaces;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Asset
|
namespace OpenSim.Region.CoreModules.Asset
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "CoreAssetCache")]
|
||||||
public class CoreAssetCache : ISharedRegionModule, IImprovedAssetCache
|
public class CoreAssetCache : ISharedRegionModule, IImprovedAssetCache
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log =
|
private static readonly ILog m_log =
|
||||||
|
|
|
@ -49,12 +49,12 @@ using OpenSim.Region.Framework.Scenes;
|
||||||
using OpenSim.Services.Interfaces;
|
using OpenSim.Services.Interfaces;
|
||||||
|
|
||||||
|
|
||||||
[assembly: Addin("FlotsamAssetCache", "1.1")]
|
//[assembly: Addin("FlotsamAssetCache", "1.1")]
|
||||||
[assembly: AddinDependency("OpenSim", "0.5")]
|
//[assembly: AddinDependency("OpenSim", "0.5")]
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Asset
|
namespace OpenSim.Region.CoreModules.Asset
|
||||||
{
|
{
|
||||||
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")]
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "FlotsamAssetCache")]
|
||||||
public class FlotsamAssetCache : ISharedRegionModule, IImprovedAssetCache, IAssetService
|
public class FlotsamAssetCache : ISharedRegionModule, IImprovedAssetCache, IAssetService
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log =
|
private static readonly ILog m_log =
|
||||||
|
|
|
@ -31,6 +31,7 @@ using System.IO;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using GlynnTucker.Cache;
|
using GlynnTucker.Cache;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
using OpenSim.Region.Framework.Interfaces;
|
using OpenSim.Region.Framework.Interfaces;
|
||||||
|
@ -39,6 +40,7 @@ using OpenSim.Services.Interfaces;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Asset
|
namespace OpenSim.Region.CoreModules.Asset
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "GlynnTuckerAssetCache")]
|
||||||
public class GlynnTuckerAssetCache : ISharedRegionModule, IImprovedAssetCache
|
public class GlynnTuckerAssetCache : ISharedRegionModule, IImprovedAssetCache
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log =
|
private static readonly ILog m_log =
|
||||||
|
|
|
@ -39,9 +39,12 @@ using OpenSim.Region.Framework.Interfaces;
|
||||||
using OpenSim.Region.Framework.Scenes;
|
using OpenSim.Region.Framework.Scenes;
|
||||||
using OpenSim.Services.Interfaces;
|
using OpenSim.Services.Interfaces;
|
||||||
|
|
||||||
|
using Mono.Addins;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Avatar.AvatarFactory
|
namespace OpenSim.Region.CoreModules.Avatar.AvatarFactory
|
||||||
{
|
{
|
||||||
public class AvatarFactoryModule : IAvatarFactoryModule, IRegionModule
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "AvatarFactoryModule")]
|
||||||
|
public class AvatarFactoryModule : IAvatarFactoryModule, INonSharedRegionModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
||||||
|
@ -59,12 +62,10 @@ namespace OpenSim.Region.CoreModules.Avatar.AvatarFactory
|
||||||
|
|
||||||
private object m_setAppearanceLock = new object();
|
private object m_setAppearanceLock = new object();
|
||||||
|
|
||||||
#region IRegionModule
|
#region Region Module interface
|
||||||
|
|
||||||
public void Initialise(Scene scene, IConfigSource config)
|
public void Initialise(IConfigSource config)
|
||||||
{
|
{
|
||||||
scene.RegisterModuleInterface<IAvatarFactoryModule>(this);
|
|
||||||
scene.EventManager.OnNewClient += SubscribeToClientEvents;
|
|
||||||
|
|
||||||
IConfig appearanceConfig = config.Configs["Appearance"];
|
IConfig appearanceConfig = config.Configs["Appearance"];
|
||||||
if (appearanceConfig != null)
|
if (appearanceConfig != null)
|
||||||
|
@ -74,11 +75,29 @@ namespace OpenSim.Region.CoreModules.Avatar.AvatarFactory
|
||||||
// m_log.InfoFormat("[AVFACTORY] configured for {0} save and {1} send",m_savetime,m_sendtime);
|
// m_log.InfoFormat("[AVFACTORY] configured for {0} save and {1} send",m_savetime,m_sendtime);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (m_scene == null)
|
|
||||||
m_scene = scene;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void PostInitialise()
|
public void AddRegion(Scene scene)
|
||||||
|
{
|
||||||
|
if (m_scene == null)
|
||||||
|
m_scene = scene;
|
||||||
|
|
||||||
|
scene.RegisterModuleInterface<IAvatarFactoryModule>(this);
|
||||||
|
scene.EventManager.OnNewClient += SubscribeToClientEvents;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RemoveRegion(Scene scene)
|
||||||
|
{
|
||||||
|
if (scene == m_scene)
|
||||||
|
{
|
||||||
|
scene.UnregisterModuleInterface<IAvatarFactoryModule>(this);
|
||||||
|
scene.EventManager.OnNewClient -= SubscribeToClientEvents;
|
||||||
|
}
|
||||||
|
|
||||||
|
m_scene = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RegionLoaded(Scene scene)
|
||||||
{
|
{
|
||||||
m_updateTimer.Enabled = false;
|
m_updateTimer.Enabled = false;
|
||||||
m_updateTimer.AutoReset = true;
|
m_updateTimer.AutoReset = true;
|
||||||
|
@ -100,6 +119,12 @@ namespace OpenSim.Region.CoreModules.Avatar.AvatarFactory
|
||||||
get { return false; }
|
get { return false; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Type ReplaceableInterface
|
||||||
|
{
|
||||||
|
get { return null; }
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
private void SubscribeToClientEvents(IClientAPI client)
|
private void SubscribeToClientEvents(IClientAPI client)
|
||||||
{
|
{
|
||||||
client.OnRequestWearables += Client_OnRequestWearables;
|
client.OnRequestWearables += Client_OnRequestWearables;
|
||||||
|
|
|
@ -30,6 +30,7 @@ using System.Collections.Generic;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using log4net;
|
using log4net;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
|
using Mono.Addins;
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
using OpenSim.Region.Framework.Interfaces;
|
using OpenSim.Region.Framework.Interfaces;
|
||||||
|
@ -37,6 +38,7 @@ using OpenSim.Region.Framework.Scenes;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Avatar.Chat
|
namespace OpenSim.Region.CoreModules.Avatar.Chat
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "ChatModule")]
|
||||||
public class ChatModule : ISharedRegionModule
|
public class ChatModule : ISharedRegionModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log =
|
private static readonly ILog m_log =
|
||||||
|
|
|
@ -33,9 +33,12 @@ using OpenSim.Region.Framework.Interfaces;
|
||||||
using OpenSim.Region.Framework.Scenes;
|
using OpenSim.Region.Framework.Scenes;
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
|
|
||||||
|
using Mono.Addins;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Avatar.Combat.CombatModule
|
namespace OpenSim.Region.CoreModules.Avatar.Combat.CombatModule
|
||||||
{
|
{
|
||||||
public class CombatModule : IRegionModule
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "CombatModule")]
|
||||||
|
public class CombatModule : ISharedRegionModule
|
||||||
{
|
{
|
||||||
//private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
//private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
||||||
|
@ -54,7 +57,11 @@ namespace OpenSim.Region.CoreModules.Avatar.Combat.CombatModule
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="scene"></param>
|
/// <param name="scene"></param>
|
||||||
/// <param name="config"></param>
|
/// <param name="config"></param>
|
||||||
public void Initialise(Scene scene, IConfigSource config)
|
public void Initialise(IConfigSource config)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public void AddRegion(Scene scene)
|
||||||
{
|
{
|
||||||
lock (m_scenel)
|
lock (m_scenel)
|
||||||
{
|
{
|
||||||
|
@ -72,6 +79,19 @@ namespace OpenSim.Region.CoreModules.Avatar.Combat.CombatModule
|
||||||
scene.EventManager.OnAvatarEnteringNewParcel += AvatarEnteringParcel;
|
scene.EventManager.OnAvatarEnteringNewParcel += AvatarEnteringParcel;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void RemoveRegion(Scene scene)
|
||||||
|
{
|
||||||
|
if (m_scenel.ContainsKey(scene.RegionInfo.RegionHandle))
|
||||||
|
m_scenel.Remove(scene.RegionInfo.RegionHandle);
|
||||||
|
|
||||||
|
scene.EventManager.OnAvatarKilled -= KillAvatar;
|
||||||
|
scene.EventManager.OnAvatarEnteringNewParcel -= AvatarEnteringParcel;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RegionLoaded(Scene scene)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
public void PostInitialise()
|
public void PostInitialise()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
@ -85,11 +105,12 @@ namespace OpenSim.Region.CoreModules.Avatar.Combat.CombatModule
|
||||||
get { return "CombatModule"; }
|
get { return "CombatModule"; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool IsSharedModule
|
public Type ReplaceableInterface
|
||||||
{
|
{
|
||||||
get { return true; }
|
get { return null; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private void KillAvatar(uint killerObjectLocalID, ScenePresence deadAvatar)
|
private void KillAvatar(uint killerObjectLocalID, ScenePresence deadAvatar)
|
||||||
{
|
{
|
||||||
string deadAvatarMessage;
|
string deadAvatarMessage;
|
||||||
|
|
|
@ -32,6 +32,7 @@ using log4net;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
|
using Mono.Addins;
|
||||||
|
|
||||||
using OpenSim.Region.Framework.Interfaces;
|
using OpenSim.Region.Framework.Interfaces;
|
||||||
using OpenSim.Region.Framework.Scenes;
|
using OpenSim.Region.Framework.Scenes;
|
||||||
|
@ -39,16 +40,27 @@ using OpenSim.Services.Interfaces;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Avatar.Dialog
|
namespace OpenSim.Region.CoreModules.Avatar.Dialog
|
||||||
{
|
{
|
||||||
public class DialogModule : IRegionModule, IDialogModule
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "DialogModule")]
|
||||||
|
public class DialogModule : IDialogModule, INonSharedRegionModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
||||||
protected Scene m_scene;
|
protected Scene m_scene;
|
||||||
|
|
||||||
public void Initialise(Scene scene, IConfigSource source)
|
public void Initialise(IConfigSource source) { }
|
||||||
|
|
||||||
|
public Type ReplaceableInterface { get { return null; } }
|
||||||
|
|
||||||
|
public void AddRegion(Scene scene)
|
||||||
{
|
{
|
||||||
m_scene = scene;
|
m_scene = scene;
|
||||||
m_scene.RegisterModuleInterface<IDialogModule>(this);
|
m_scene.RegisterModuleInterface<IDialogModule>(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RegionLoaded(Scene scene)
|
||||||
|
{
|
||||||
|
if (scene != m_scene)
|
||||||
|
return;
|
||||||
|
|
||||||
m_scene.AddCommand(
|
m_scene.AddCommand(
|
||||||
"Users", this, "alert", "alert <message>",
|
"Users", this, "alert", "alert <message>",
|
||||||
|
@ -56,22 +68,30 @@ namespace OpenSim.Region.CoreModules.Avatar.Dialog
|
||||||
HandleAlertConsoleCommand);
|
HandleAlertConsoleCommand);
|
||||||
|
|
||||||
m_scene.AddCommand(
|
m_scene.AddCommand(
|
||||||
"Users", this, "alert-user", "alert-user <first> <last> <message>",
|
"Users", this, "alert-user",
|
||||||
|
"alert-user <first> <last> <message>",
|
||||||
"Send an alert to a user",
|
"Send an alert to a user",
|
||||||
HandleAlertConsoleCommand);
|
HandleAlertConsoleCommand);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void PostInitialise() {}
|
public void RemoveRegion(Scene scene)
|
||||||
|
{
|
||||||
|
if (scene != m_scene)
|
||||||
|
return;
|
||||||
|
|
||||||
|
m_scene.UnregisterModuleInterface<IDialogModule>(this);
|
||||||
|
}
|
||||||
|
|
||||||
public void Close() { }
|
public void Close() { }
|
||||||
public string Name { get { return "Dialog Module"; } }
|
public string Name { get { return "Dialog Module"; } }
|
||||||
public bool IsSharedModule { get { return false; } }
|
|
||||||
|
|
||||||
public void SendAlertToUser(IClientAPI client, string message)
|
public void SendAlertToUser(IClientAPI client, string message)
|
||||||
{
|
{
|
||||||
SendAlertToUser(client, message, false);
|
SendAlertToUser(client, message, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SendAlertToUser(IClientAPI client, string message, bool modal)
|
public void SendAlertToUser(IClientAPI client, string message,
|
||||||
|
bool modal)
|
||||||
{
|
{
|
||||||
client.SendAgentAlertMessage(message, modal);
|
client.SendAgentAlertMessage(message, modal);
|
||||||
}
|
}
|
||||||
|
@ -89,11 +109,16 @@ namespace OpenSim.Region.CoreModules.Avatar.Dialog
|
||||||
sp.ControllingClient.SendAgentAlertMessage(message, modal);
|
sp.ControllingClient.SendAgentAlertMessage(message, modal);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SendAlertToUser(string firstName, string lastName, string message, bool modal)
|
public void SendAlertToUser(string firstName, string lastName,
|
||||||
|
string message, bool modal)
|
||||||
{
|
{
|
||||||
ScenePresence presence = m_scene.GetScenePresence(firstName, lastName);
|
ScenePresence presence = m_scene.GetScenePresence(firstName,
|
||||||
|
lastName);
|
||||||
if (presence != null)
|
if (presence != null)
|
||||||
presence.ControllingClient.SendAgentAlertMessage(message, modal);
|
{
|
||||||
|
presence.ControllingClient.SendAgentAlertMessage(message,
|
||||||
|
modal);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SendGeneralAlert(string message)
|
public void SendGeneralAlert(string message)
|
||||||
|
@ -104,11 +129,12 @@ namespace OpenSim.Region.CoreModules.Avatar.Dialog
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SendDialogToUser(
|
public void SendDialogToUser(UUID avatarID, string objectName,
|
||||||
UUID avatarID, string objectName, UUID objectID, UUID ownerID,
|
UUID objectID, UUID ownerID, string message, UUID textureID,
|
||||||
string message, UUID textureID, int ch, string[] buttonlabels)
|
int ch, string[] buttonlabels)
|
||||||
{
|
{
|
||||||
UserAccount account = m_scene.UserAccountService.GetUserAccount(m_scene.RegionInfo.ScopeID, ownerID);
|
UserAccount account = m_scene.UserAccountService.GetUserAccount(
|
||||||
|
m_scene.RegionInfo.ScopeID, ownerID);
|
||||||
string ownerFirstName, ownerLastName;
|
string ownerFirstName, ownerLastName;
|
||||||
if (account != null)
|
if (account != null)
|
||||||
{
|
{
|
||||||
|
@ -123,22 +149,31 @@ namespace OpenSim.Region.CoreModules.Avatar.Dialog
|
||||||
|
|
||||||
ScenePresence sp = m_scene.GetScenePresence(avatarID);
|
ScenePresence sp = m_scene.GetScenePresence(avatarID);
|
||||||
if (sp != null)
|
if (sp != null)
|
||||||
sp.ControllingClient.SendDialog(
|
{
|
||||||
objectName, objectID, ownerID, ownerFirstName, ownerLastName, message, textureID, ch, buttonlabels);
|
sp.ControllingClient.SendDialog(objectName, objectID, ownerID,
|
||||||
|
ownerFirstName, ownerLastName, message, textureID, ch,
|
||||||
|
buttonlabels);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SendUrlToUser(
|
public void SendUrlToUser(UUID avatarID, string objectName,
|
||||||
UUID avatarID, string objectName, UUID objectID, UUID ownerID, bool groupOwned, string message, string url)
|
UUID objectID, UUID ownerID, bool groupOwned, string message,
|
||||||
|
string url)
|
||||||
{
|
{
|
||||||
ScenePresence sp = m_scene.GetScenePresence(avatarID);
|
ScenePresence sp = m_scene.GetScenePresence(avatarID);
|
||||||
|
|
||||||
if (sp != null)
|
if (sp != null)
|
||||||
sp.ControllingClient.SendLoadURL(objectName, objectID, ownerID, groupOwned, message, url);
|
{
|
||||||
|
sp.ControllingClient.SendLoadURL(objectName, objectID,
|
||||||
|
ownerID, groupOwned, message, url);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SendTextBoxToUser(UUID avatarid, string message, int chatChannel, string name, UUID objectid, UUID ownerid)
|
public void SendTextBoxToUser(UUID avatarid, string message,
|
||||||
|
int chatChannel, string name, UUID objectid, UUID ownerid)
|
||||||
{
|
{
|
||||||
UserAccount account = m_scene.UserAccountService.GetUserAccount(m_scene.RegionInfo.ScopeID, ownerid);
|
UserAccount account = m_scene.UserAccountService.GetUserAccount(
|
||||||
|
m_scene.RegionInfo.ScopeID, ownerid);
|
||||||
string ownerFirstName, ownerLastName;
|
string ownerFirstName, ownerLastName;
|
||||||
UUID ownerID = UUID.Zero;
|
UUID ownerID = UUID.Zero;
|
||||||
if (account != null)
|
if (account != null)
|
||||||
|
@ -156,15 +191,20 @@ namespace OpenSim.Region.CoreModules.Avatar.Dialog
|
||||||
ScenePresence sp = m_scene.GetScenePresence(avatarid);
|
ScenePresence sp = m_scene.GetScenePresence(avatarid);
|
||||||
|
|
||||||
if (sp != null)
|
if (sp != null)
|
||||||
sp.ControllingClient.SendTextBoxRequest(message, chatChannel, name, ownerID, ownerFirstName, ownerLastName, objectid);
|
{
|
||||||
|
sp.ControllingClient.SendTextBoxRequest(message, chatChannel,
|
||||||
|
name, ownerID, ownerFirstName, ownerLastName,
|
||||||
|
objectid);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SendNotificationToUsersInRegion(
|
public void SendNotificationToUsersInRegion(UUID fromAvatarID,
|
||||||
UUID fromAvatarID, string fromAvatarName, string message)
|
string fromAvatarName, string message)
|
||||||
{
|
{
|
||||||
m_scene.ForEachRootClient(delegate(IClientAPI client)
|
m_scene.ForEachRootClient(delegate(IClientAPI client)
|
||||||
{
|
{
|
||||||
client.SendBlueBoxMessage(fromAvatarID, fromAvatarName, message);
|
client.SendBlueBoxMessage(fromAvatarID, fromAvatarName,
|
||||||
|
message);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -173,10 +213,14 @@ namespace OpenSim.Region.CoreModules.Avatar.Dialog
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="module"></param>
|
/// <param name="module"></param>
|
||||||
/// <param name="cmdparams"></param>
|
/// <param name="cmdparams"></param>
|
||||||
public void HandleAlertConsoleCommand(string module, string[] cmdparams)
|
public void HandleAlertConsoleCommand(string module,
|
||||||
|
string[] cmdparams)
|
||||||
|
{
|
||||||
|
if (m_scene.ConsoleScene() != null &&
|
||||||
|
m_scene.ConsoleScene() != m_scene)
|
||||||
{
|
{
|
||||||
if (m_scene.ConsoleScene() != null && m_scene.ConsoleScene() != m_scene)
|
|
||||||
return;
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
string message = string.Empty;
|
string message = string.Empty;
|
||||||
|
|
||||||
|
@ -192,9 +236,9 @@ namespace OpenSim.Region.CoreModules.Avatar.Dialog
|
||||||
string firstName = cmdparams[1];
|
string firstName = cmdparams[1];
|
||||||
string lastName = cmdparams[2];
|
string lastName = cmdparams[2];
|
||||||
message = CombineParams(cmdparams, 3);
|
message = CombineParams(cmdparams, 3);
|
||||||
m_log.InfoFormat(
|
m_log.InfoFormat("[DIALOG]: Sending alert in region {0} to {1} {2} with message {3}",
|
||||||
"[DIALOG]: Sending alert in region {0} to {1} {2} with message {3}",
|
m_scene.RegionInfo.RegionName, firstName, lastName,
|
||||||
m_scene.RegionInfo.RegionName, firstName, lastName, message);
|
message);
|
||||||
SendAlertToUser(firstName, lastName, message, false);
|
SendAlertToUser(firstName, lastName, message, false);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
|
@ -35,6 +35,7 @@ using log4net;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using Nwc.XmlRpc;
|
using Nwc.XmlRpc;
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
|
using Mono.Addins;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
using OpenSim.Framework.Servers.HttpServer;
|
using OpenSim.Framework.Servers.HttpServer;
|
||||||
using OpenSim.Framework.Communications;
|
using OpenSim.Framework.Communications;
|
||||||
|
@ -50,6 +51,7 @@ using GridRegion = OpenSim.Services.Interfaces.GridRegion;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Avatar.Friends
|
namespace OpenSim.Region.CoreModules.Avatar.Friends
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "FriendsModule")]
|
||||||
public class FriendsModule : ISharedRegionModule, IFriendsModule
|
public class FriendsModule : ISharedRegionModule, IFriendsModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
|
@ -46,6 +46,7 @@ using GridRegion = OpenSim.Services.Interfaces.GridRegion;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Avatar.Friends
|
namespace OpenSim.Region.CoreModules.Avatar.Friends
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "HGFriendsModule")]
|
||||||
public class HGFriendsModule : FriendsModule, ISharedRegionModule, IFriendsModule, IFriendsSimConnector
|
public class HGFriendsModule : FriendsModule, ISharedRegionModule, IFriendsModule, IFriendsSimConnector
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
|
@ -25,6 +25,7 @@
|
||||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
using System;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using log4net;
|
using log4net;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
|
@ -35,25 +36,45 @@ using OpenSim.Region.Framework.Interfaces;
|
||||||
using OpenSim.Region.Framework.Scenes;
|
using OpenSim.Region.Framework.Scenes;
|
||||||
using OpenSim.Services.Interfaces;
|
using OpenSim.Services.Interfaces;
|
||||||
|
|
||||||
|
using Mono.Addins;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Avatar.Gestures
|
namespace OpenSim.Region.CoreModules.Avatar.Gestures
|
||||||
{
|
{
|
||||||
public class GesturesModule : IRegionModule
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "GesturesModule")]
|
||||||
|
public class GesturesModule : INonSharedRegionModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
||||||
protected Scene m_scene;
|
protected Scene m_scene;
|
||||||
|
|
||||||
public void Initialise(Scene scene, IConfigSource source)
|
public void Initialise(IConfigSource source)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public void AddRegion(Scene scene)
|
||||||
{
|
{
|
||||||
m_scene = scene;
|
m_scene = scene;
|
||||||
|
|
||||||
m_scene.EventManager.OnNewClient += OnNewClient;
|
m_scene.EventManager.OnNewClient += OnNewClient;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void PostInitialise() {}
|
public void RegionLoaded(Scene scene)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RemoveRegion(Scene scene)
|
||||||
|
{
|
||||||
|
m_scene.EventManager.OnNewClient -= OnNewClient;
|
||||||
|
m_scene = null;
|
||||||
|
}
|
||||||
|
|
||||||
public void Close() {}
|
public void Close() {}
|
||||||
public string Name { get { return "Gestures Module"; } }
|
public string Name { get { return "Gestures Module"; } }
|
||||||
public bool IsSharedModule { get { return false; } }
|
|
||||||
|
public Type ReplaceableInterface
|
||||||
|
{
|
||||||
|
get { return null; }
|
||||||
|
}
|
||||||
|
|
||||||
private void OnNewClient(IClientAPI client)
|
private void OnNewClient(IClientAPI client)
|
||||||
{
|
{
|
||||||
|
|
|
@ -25,6 +25,7 @@
|
||||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
|
@ -32,28 +33,58 @@ using OpenSim.Framework;
|
||||||
using OpenSim.Region.Framework.Scenes;
|
using OpenSim.Region.Framework.Scenes;
|
||||||
using OpenSim.Region.Framework.Interfaces;
|
using OpenSim.Region.Framework.Interfaces;
|
||||||
|
|
||||||
|
using Mono.Addins;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Avatar.Gods
|
namespace OpenSim.Region.CoreModules.Avatar.Gods
|
||||||
{
|
{
|
||||||
public class GodsModule : IRegionModule, IGodsModule
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "GodsModule")]
|
||||||
|
public class GodsModule : INonSharedRegionModule, IGodsModule
|
||||||
{
|
{
|
||||||
/// <summary>Special UUID for actions that apply to all agents</summary>
|
/// <summary>Special UUID for actions that apply to all agents</summary>
|
||||||
private static readonly UUID ALL_AGENTS = new UUID("44e87126-e794-4ded-05b3-7c42da3d5cdb");
|
private static readonly UUID ALL_AGENTS = new UUID("44e87126-e794-4ded-05b3-7c42da3d5cdb");
|
||||||
|
|
||||||
protected Scene m_scene;
|
protected Scene m_scene;
|
||||||
protected IDialogModule m_dialogModule;
|
protected IDialogModule m_dialogModule;
|
||||||
|
protected IDialogModule DialogModule
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
if (m_dialogModule == null)
|
||||||
|
m_dialogModule = m_scene.RequestModuleInterface<IDialogModule>();
|
||||||
|
|
||||||
public void Initialise(Scene scene, IConfigSource source)
|
return m_dialogModule;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Initialise(IConfigSource source)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public void AddRegion(Scene scene)
|
||||||
{
|
{
|
||||||
m_scene = scene;
|
m_scene = scene;
|
||||||
m_dialogModule = m_scene.RequestModuleInterface<IDialogModule>();
|
|
||||||
m_scene.RegisterModuleInterface<IGodsModule>(this);
|
m_scene.RegisterModuleInterface<IGodsModule>(this);
|
||||||
m_scene.EventManager.OnNewClient += SubscribeToClientEvents;
|
m_scene.EventManager.OnNewClient += SubscribeToClientEvents;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void PostInitialise() {}
|
public void RemoveRegion(Scene scene)
|
||||||
|
{
|
||||||
|
m_scene.UnregisterModuleInterface<IGodsModule>(this);
|
||||||
|
m_scene.EventManager.OnNewClient -= SubscribeToClientEvents;
|
||||||
|
m_scene = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RegionLoaded(Scene scene)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
public void Close() {}
|
public void Close() {}
|
||||||
public string Name { get { return "Gods Module"; } }
|
public string Name { get { return "Gods Module"; } }
|
||||||
public bool IsSharedModule { get { return false; } }
|
|
||||||
|
public Type ReplaceableInterface
|
||||||
|
{
|
||||||
|
get { return null; }
|
||||||
|
}
|
||||||
|
|
||||||
public void SubscribeToClientEvents(IClientAPI client)
|
public void SubscribeToClientEvents(IClientAPI client)
|
||||||
{
|
{
|
||||||
|
@ -96,8 +127,8 @@ namespace OpenSim.Region.CoreModules.Avatar.Gods
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (m_dialogModule != null)
|
if (DialogModule != null)
|
||||||
m_dialogModule.SendAlertToUser(agentID, "Request for god powers denied");
|
DialogModule.SendAlertToUser(agentID, "Request for god powers denied");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -121,7 +152,6 @@ namespace OpenSim.Region.CoreModules.Avatar.Gods
|
||||||
|
|
||||||
if (sp != null || agentID == kickUserID)
|
if (sp != null || agentID == kickUserID)
|
||||||
{
|
{
|
||||||
m_dialogModule = m_scene.RequestModuleInterface<IDialogModule>();
|
|
||||||
if (m_scene.Permissions.IsGod(godID))
|
if (m_scene.Permissions.IsGod(godID))
|
||||||
{
|
{
|
||||||
if (kickflags == 0)
|
if (kickflags == 0)
|
||||||
|
@ -163,27 +193,27 @@ namespace OpenSim.Region.CoreModules.Avatar.Gods
|
||||||
if (kickflags == 1)
|
if (kickflags == 1)
|
||||||
{
|
{
|
||||||
sp.AllowMovement = false;
|
sp.AllowMovement = false;
|
||||||
if (m_dialogModule != null)
|
if (DialogModule != null)
|
||||||
{
|
{
|
||||||
m_dialogModule.SendAlertToUser(agentID, Utils.BytesToString(reason));
|
DialogModule.SendAlertToUser(agentID, Utils.BytesToString(reason));
|
||||||
m_dialogModule.SendAlertToUser(godID, "User Frozen");
|
DialogModule.SendAlertToUser(godID, "User Frozen");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (kickflags == 2)
|
if (kickflags == 2)
|
||||||
{
|
{
|
||||||
sp.AllowMovement = true;
|
sp.AllowMovement = true;
|
||||||
if (m_dialogModule != null)
|
if (DialogModule != null)
|
||||||
{
|
{
|
||||||
m_dialogModule.SendAlertToUser(agentID, Utils.BytesToString(reason));
|
DialogModule.SendAlertToUser(agentID, Utils.BytesToString(reason));
|
||||||
m_dialogModule.SendAlertToUser(godID, "User Unfrozen");
|
DialogModule.SendAlertToUser(godID, "User Unfrozen");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (m_dialogModule != null)
|
if (DialogModule != null)
|
||||||
m_dialogModule.SendAlertToUser(godID, "Kick request denied");
|
DialogModule.SendAlertToUser(godID, "Kick request denied");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,6 +25,7 @@
|
||||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
@ -34,9 +35,12 @@ using OpenSim.Framework;
|
||||||
using OpenSim.Region.Framework.Interfaces;
|
using OpenSim.Region.Framework.Interfaces;
|
||||||
using OpenSim.Region.Framework.Scenes;
|
using OpenSim.Region.Framework.Scenes;
|
||||||
|
|
||||||
|
using Mono.Addins;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Avatar.Groups
|
namespace OpenSim.Region.CoreModules.Avatar.Groups
|
||||||
{
|
{
|
||||||
public class GroupsModule : IRegionModule
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "GroupsModule")]
|
||||||
|
public class GroupsModule : ISharedRegionModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log =
|
private static readonly ILog m_log =
|
||||||
LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
@ -55,9 +59,11 @@ namespace OpenSim.Region.CoreModules.Avatar.Groups
|
||||||
private static GroupMembershipData osGroup =
|
private static GroupMembershipData osGroup =
|
||||||
new GroupMembershipData();
|
new GroupMembershipData();
|
||||||
|
|
||||||
#region IRegionModule Members
|
private bool m_Enabled = false;
|
||||||
|
|
||||||
public void Initialise(Scene scene, IConfigSource config)
|
#region ISharedRegionModule Members
|
||||||
|
|
||||||
|
public void Initialise(IConfigSource config)
|
||||||
{
|
{
|
||||||
IConfig groupsConfig = config.Configs["Groups"];
|
IConfig groupsConfig = config.Configs["Groups"];
|
||||||
|
|
||||||
|
@ -67,7 +73,8 @@ namespace OpenSim.Region.CoreModules.Avatar.Groups
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (!groupsConfig.GetBoolean("Enabled", false))
|
m_Enabled = groupsConfig.GetBoolean("Enabled", false);
|
||||||
|
if (!m_Enabled)
|
||||||
{
|
{
|
||||||
m_log.Info("[GROUPS]: Groups disabled in configuration");
|
m_log.Info("[GROUPS]: Groups disabled in configuration");
|
||||||
return;
|
return;
|
||||||
|
@ -77,6 +84,13 @@ namespace OpenSim.Region.CoreModules.Avatar.Groups
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void AddRegion(Scene scene)
|
||||||
|
{
|
||||||
|
if (!m_Enabled)
|
||||||
|
return;
|
||||||
|
|
||||||
lock (m_SceneList)
|
lock (m_SceneList)
|
||||||
{
|
{
|
||||||
if (!m_SceneList.Contains(scene))
|
if (!m_SceneList.Contains(scene))
|
||||||
|
@ -99,12 +113,34 @@ namespace OpenSim.Region.CoreModules.Avatar.Groups
|
||||||
// scene.EventManager.OnIncomingInstantMessage += OnGridInstantMessage;
|
// scene.EventManager.OnIncomingInstantMessage += OnGridInstantMessage;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void RemoveRegion(Scene scene)
|
||||||
|
{
|
||||||
|
if (!m_Enabled)
|
||||||
|
return;
|
||||||
|
|
||||||
|
lock (m_SceneList)
|
||||||
|
{
|
||||||
|
if (m_SceneList.Contains(scene))
|
||||||
|
m_SceneList.Remove(scene);
|
||||||
|
}
|
||||||
|
|
||||||
|
scene.EventManager.OnNewClient -= OnNewClient;
|
||||||
|
scene.EventManager.OnClientClosed -= OnClientClosed;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RegionLoaded(Scene scene)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
public void PostInitialise()
|
public void PostInitialise()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Close()
|
public void Close()
|
||||||
{
|
{
|
||||||
|
if (!m_Enabled)
|
||||||
|
return;
|
||||||
|
|
||||||
// m_log.Debug("[GROUPS]: Shutting down group module.");
|
// m_log.Debug("[GROUPS]: Shutting down group module.");
|
||||||
|
|
||||||
lock (m_ClientMap)
|
lock (m_ClientMap)
|
||||||
|
@ -123,9 +159,9 @@ namespace OpenSim.Region.CoreModules.Avatar.Groups
|
||||||
get { return "GroupsModule"; }
|
get { return "GroupsModule"; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool IsSharedModule
|
public Type ReplaceableInterface
|
||||||
{
|
{
|
||||||
get { return true; }
|
get { return null; }
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
|
@ -48,7 +48,7 @@ using OpenSim.Server.Handlers.Hypergrid;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Avatar.InstantMessage
|
namespace OpenSim.Region.CoreModules.Avatar.InstantMessage
|
||||||
{
|
{
|
||||||
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")]
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "HGMessageTransferModule")]
|
||||||
public class HGMessageTransferModule : ISharedRegionModule, IMessageTransferModule, IInstantMessageSimConnector
|
public class HGMessageTransferModule : ISharedRegionModule, IMessageTransferModule, IInstantMessageSimConnector
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
|
@ -28,6 +28,7 @@ using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
|
@ -37,6 +38,7 @@ using OpenSim.Region.Framework.Scenes;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Avatar.InstantMessage
|
namespace OpenSim.Region.CoreModules.Avatar.InstantMessage
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "InstantMessageModule")]
|
||||||
public class InstantMessageModule : ISharedRegionModule
|
public class InstantMessageModule : ISharedRegionModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(
|
private static readonly ILog m_log = LogManager.GetLogger(
|
||||||
|
@ -49,7 +51,7 @@ namespace OpenSim.Region.CoreModules.Avatar.InstantMessage
|
||||||
|
|
||||||
private readonly List<Scene> m_scenes = new List<Scene>();
|
private readonly List<Scene> m_scenes = new List<Scene>();
|
||||||
|
|
||||||
#region IRegionModule Members
|
#region Region Module interface
|
||||||
|
|
||||||
private IMessageTransferModule m_TransferModule = null;
|
private IMessageTransferModule m_TransferModule = null;
|
||||||
|
|
||||||
|
|
|
@ -30,6 +30,7 @@ using System.Collections.Generic;
|
||||||
using System.Net;
|
using System.Net;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using Nwc.XmlRpc;
|
using Nwc.XmlRpc;
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
|
@ -43,6 +44,7 @@ using OpenSim.Services.Interfaces;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Avatar.InstantMessage
|
namespace OpenSim.Region.CoreModules.Avatar.InstantMessage
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "MessageTransferModule")]
|
||||||
public class MessageTransferModule : ISharedRegionModule, IMessageTransferModule
|
public class MessageTransferModule : ISharedRegionModule, IMessageTransferModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
|
@ -29,6 +29,7 @@ using System.Collections.Generic;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using log4net;
|
using log4net;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
|
using Mono.Addins;
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
using OpenSim.Framework.Communications;
|
using OpenSim.Framework.Communications;
|
||||||
|
@ -39,6 +40,7 @@ using OpenSim.Region.Framework.Scenes;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Avatar.InstantMessage
|
namespace OpenSim.Region.CoreModules.Avatar.InstantMessage
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "MuteListModule")]
|
||||||
public class MuteListModule : ISharedRegionModule
|
public class MuteListModule : ISharedRegionModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
|
@ -28,6 +28,7 @@ using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
|
@ -39,6 +40,7 @@ using OpenSim.Region.Framework.Scenes;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Avatar.InstantMessage
|
namespace OpenSim.Region.CoreModules.Avatar.InstantMessage
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "OfflineMessageModule")]
|
||||||
public class OfflineMessageModule : ISharedRegionModule
|
public class OfflineMessageModule : ISharedRegionModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
|
@ -33,6 +33,7 @@ using log4net;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using Nwc.XmlRpc;
|
using Nwc.XmlRpc;
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
|
using Mono.Addins;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
using OpenSim.Region.Framework.Interfaces;
|
using OpenSim.Region.Framework.Interfaces;
|
||||||
using OpenSim.Region.Framework.Scenes;
|
using OpenSim.Region.Framework.Scenes;
|
||||||
|
@ -42,6 +43,7 @@ using PresenceInfo = OpenSim.Services.Interfaces.PresenceInfo;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Avatar.InstantMessage
|
namespace OpenSim.Region.CoreModules.Avatar.InstantMessage
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "PresenceModule")]
|
||||||
public class PresenceModule : ISharedRegionModule, IPresenceModule
|
public class PresenceModule : ISharedRegionModule, IPresenceModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(
|
private static readonly ILog m_log = LogManager.GetLogger(
|
||||||
|
|
|
@ -39,20 +39,18 @@ using OpenSim.Framework.Console;
|
||||||
using OpenSim.Region.Framework.Interfaces;
|
using OpenSim.Region.Framework.Interfaces;
|
||||||
using OpenSim.Region.Framework.Scenes;
|
using OpenSim.Region.Framework.Scenes;
|
||||||
using OpenSim.Services.Interfaces;
|
using OpenSim.Services.Interfaces;
|
||||||
|
using Mono.Addins;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
|
namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// This module loads and saves OpenSimulator inventory archives
|
/// This module loads and saves OpenSimulator inventory archives
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class InventoryArchiverModule : IRegionModule, IInventoryArchiverModule
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "InventoryArchiverModule")]
|
||||||
|
public class InventoryArchiverModule : ISharedRegionModule, IInventoryArchiverModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
||||||
public string Name { get { return "Inventory Archiver Module"; } }
|
|
||||||
|
|
||||||
public bool IsSharedModule { get { return true; } }
|
|
||||||
|
|
||||||
/// <value>
|
/// <value>
|
||||||
/// Enable or disable checking whether the iar user is actually logged in
|
/// Enable or disable checking whether the iar user is actually logged in
|
||||||
/// </value>
|
/// </value>
|
||||||
|
@ -101,7 +99,13 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
|
||||||
// DisablePresenceChecks = disablePresenceChecks;
|
// DisablePresenceChecks = disablePresenceChecks;
|
||||||
// }
|
// }
|
||||||
|
|
||||||
public void Initialise(Scene scene, IConfigSource source)
|
#region ISharedRegionModule
|
||||||
|
|
||||||
|
public void Initialise(IConfigSource source)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public void AddRegion(Scene scene)
|
||||||
{
|
{
|
||||||
if (m_scenes.Count == 0)
|
if (m_scenes.Count == 0)
|
||||||
{
|
{
|
||||||
|
@ -144,10 +148,29 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Archiver
|
||||||
m_scenes[scene.RegionInfo.RegionID] = scene;
|
m_scenes[scene.RegionInfo.RegionID] = scene;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void PostInitialise() {}
|
public void RemoveRegion(Scene scene)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
public void Close() {}
|
public void Close() {}
|
||||||
|
|
||||||
|
public void RegionLoaded(Scene scene)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public void PostInitialise()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public Type ReplaceableInterface
|
||||||
|
{
|
||||||
|
get { return null; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public string Name { get { return "Inventory Archiver Module"; } }
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Trigger the inventory archive saved event.
|
/// Trigger the inventory archive saved event.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
@ -29,6 +29,7 @@ using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
|
@ -38,6 +39,7 @@ using OpenSim.Services.Interfaces;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Avatar.Inventory.Transfer
|
namespace OpenSim.Region.CoreModules.Avatar.Inventory.Transfer
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "InventoryTransferModule")]
|
||||||
public class InventoryTransferModule : ISharedRegionModule
|
public class InventoryTransferModule : ISharedRegionModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log
|
private static readonly ILog m_log
|
||||||
|
@ -51,7 +53,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Transfer
|
||||||
private IMessageTransferModule m_TransferModule = null;
|
private IMessageTransferModule m_TransferModule = null;
|
||||||
private bool m_Enabled = true;
|
private bool m_Enabled = true;
|
||||||
|
|
||||||
#region IRegionModule Members
|
#region Region Module interface
|
||||||
|
|
||||||
public void Initialise(IConfigSource config)
|
public void Initialise(IConfigSource config)
|
||||||
{
|
{
|
||||||
|
@ -298,73 +300,76 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Transfer
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// XXX: This code was placed here to try and accomdate RLV which moves given folders named #RLV/~<name>
|
// Disabled for now as it looks like http://opensimulator.org/mantis/view.php?id=6311 was fixed by fixes
|
||||||
// to a folder called name in #RLV. However, this approach may not be ultimately correct - from analysis
|
// to inventory folder versioning allowing the viewer to move the received folder itself as happens on the
|
||||||
// of Firestorm 4.2.2 on sending an InventoryOffered instead of TaskInventoryOffered (as was previously
|
// LL grid. Doing it again server-side then wrongly does a second create and move
|
||||||
// done), the viewer itself would appear to move and rename the folder, rather than the simulator doing it here.
|
// // XXX: This code was placed here to try and accomdate RLV which moves given folders named #RLV/~<name>
|
||||||
else if (im.dialog == (byte) InstantMessageDialog.TaskInventoryAccepted)
|
// // to a folder called name in #RLV. However, this approach may not be ultimately correct - from analysis
|
||||||
{
|
// // of Firestorm 4.2.2 on sending an InventoryOffered instead of TaskInventoryOffered (as was previously
|
||||||
UUID destinationFolderID = UUID.Zero;
|
// // done), the viewer itself would appear to move and rename the folder, rather than the simulator doing it here.
|
||||||
|
// else if (im.dialog == (byte) InstantMessageDialog.TaskInventoryAccepted)
|
||||||
if (im.binaryBucket != null && im.binaryBucket.Length >= 16)
|
// {
|
||||||
{
|
// UUID destinationFolderID = UUID.Zero;
|
||||||
destinationFolderID = new UUID(im.binaryBucket, 0);
|
//
|
||||||
}
|
// if (im.binaryBucket != null && im.binaryBucket.Length >= 16)
|
||||||
|
// {
|
||||||
if (destinationFolderID != UUID.Zero)
|
// destinationFolderID = new UUID(im.binaryBucket, 0);
|
||||||
{
|
// }
|
||||||
InventoryFolderBase destinationFolder = new InventoryFolderBase(destinationFolderID, client.AgentId);
|
//
|
||||||
if (destinationFolder == null)
|
// if (destinationFolderID != UUID.Zero)
|
||||||
{
|
// {
|
||||||
m_log.WarnFormat(
|
// InventoryFolderBase destinationFolder = new InventoryFolderBase(destinationFolderID, client.AgentId);
|
||||||
"[INVENTORY TRANSFER]: TaskInventoryAccepted message from {0} in {1} specified folder {2} which does not exist",
|
// if (destinationFolder == null)
|
||||||
client.Name, scene.Name, destinationFolderID);
|
// {
|
||||||
|
// m_log.WarnFormat(
|
||||||
return;
|
// "[INVENTORY TRANSFER]: TaskInventoryAccepted message from {0} in {1} specified folder {2} which does not exist",
|
||||||
}
|
// client.Name, scene.Name, destinationFolderID);
|
||||||
|
//
|
||||||
IInventoryService invService = scene.InventoryService;
|
// return;
|
||||||
|
// }
|
||||||
UUID inventoryID = new UUID(im.imSessionID); // The inventory item/folder, back from it's trip
|
//
|
||||||
|
// IInventoryService invService = scene.InventoryService;
|
||||||
InventoryItemBase item = new InventoryItemBase(inventoryID, client.AgentId);
|
//
|
||||||
item = invService.GetItem(item);
|
// UUID inventoryID = new UUID(im.imSessionID); // The inventory item/folder, back from it's trip
|
||||||
InventoryFolderBase folder = null;
|
//
|
||||||
UUID? previousParentFolderID = null;
|
// InventoryItemBase item = new InventoryItemBase(inventoryID, client.AgentId);
|
||||||
|
// item = invService.GetItem(item);
|
||||||
if (item != null) // It's an item
|
// InventoryFolderBase folder = null;
|
||||||
{
|
// UUID? previousParentFolderID = null;
|
||||||
previousParentFolderID = item.Folder;
|
//
|
||||||
item.Folder = destinationFolderID;
|
// if (item != null) // It's an item
|
||||||
|
// {
|
||||||
invService.DeleteItems(item.Owner, new List<UUID>() { item.ID });
|
// previousParentFolderID = item.Folder;
|
||||||
scene.AddInventoryItem(client, item);
|
// item.Folder = destinationFolderID;
|
||||||
}
|
//
|
||||||
else
|
// invService.DeleteItems(item.Owner, new List<UUID>() { item.ID });
|
||||||
{
|
// scene.AddInventoryItem(client, item);
|
||||||
folder = new InventoryFolderBase(inventoryID, client.AgentId);
|
// }
|
||||||
folder = invService.GetFolder(folder);
|
// else
|
||||||
|
// {
|
||||||
if (folder != null) // It's a folder
|
// folder = new InventoryFolderBase(inventoryID, client.AgentId);
|
||||||
{
|
// folder = invService.GetFolder(folder);
|
||||||
previousParentFolderID = folder.ParentID;
|
//
|
||||||
folder.ParentID = destinationFolderID;
|
// if (folder != null) // It's a folder
|
||||||
invService.MoveFolder(folder);
|
// {
|
||||||
}
|
// previousParentFolderID = folder.ParentID;
|
||||||
}
|
// folder.ParentID = destinationFolderID;
|
||||||
|
// invService.MoveFolder(folder);
|
||||||
// Tell client about updates to original parent and new parent (this should probably be factored with existing move item/folder code).
|
// }
|
||||||
if (previousParentFolderID != null)
|
// }
|
||||||
{
|
//
|
||||||
InventoryFolderBase previousParentFolder
|
// // Tell client about updates to original parent and new parent (this should probably be factored with existing move item/folder code).
|
||||||
= new InventoryFolderBase((UUID)previousParentFolderID, client.AgentId);
|
// if (previousParentFolderID != null)
|
||||||
previousParentFolder = invService.GetFolder(previousParentFolder);
|
// {
|
||||||
scene.SendInventoryUpdate(client, previousParentFolder, true, true);
|
// InventoryFolderBase previousParentFolder
|
||||||
|
// = new InventoryFolderBase((UUID)previousParentFolderID, client.AgentId);
|
||||||
scene.SendInventoryUpdate(client, destinationFolder, true, true);
|
// previousParentFolder = invService.GetFolder(previousParentFolder);
|
||||||
}
|
// scene.SendInventoryUpdate(client, previousParentFolder, true, true);
|
||||||
}
|
//
|
||||||
}
|
// scene.SendInventoryUpdate(client, destinationFolder, true, true);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// }
|
||||||
else if (
|
else if (
|
||||||
im.dialog == (byte)InstantMessageDialog.InventoryDeclined
|
im.dialog == (byte)InstantMessageDialog.InventoryDeclined
|
||||||
|| im.dialog == (byte)InstantMessageDialog.TaskInventoryDeclined)
|
|| im.dialog == (byte)InstantMessageDialog.TaskInventoryDeclined)
|
||||||
|
|
|
@ -42,7 +42,7 @@ using GridRegion = OpenSim.Services.Interfaces.GridRegion;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Avatar.Lure
|
namespace OpenSim.Region.CoreModules.Avatar.Lure
|
||||||
{
|
{
|
||||||
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")]
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "HGLureModule")]
|
||||||
public class HGLureModule : ISharedRegionModule
|
public class HGLureModule : ISharedRegionModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(
|
private static readonly ILog m_log = LogManager.GetLogger(
|
||||||
|
|
|
@ -29,6 +29,7 @@ using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
|
@ -37,6 +38,7 @@ using OpenSim.Region.Framework.Scenes;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Avatar.Lure
|
namespace OpenSim.Region.CoreModules.Avatar.Lure
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "LureModule")]
|
||||||
public class LureModule : ISharedRegionModule
|
public class LureModule : ISharedRegionModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(
|
private static readonly ILog m_log = LogManager.GetLogger(
|
||||||
|
|
|
@ -42,7 +42,7 @@ using OpenSim.Services.Interfaces;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Avatar.Profile
|
namespace OpenSim.Region.CoreModules.Avatar.Profile
|
||||||
{
|
{
|
||||||
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")]
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "BasicProfileModule")]
|
||||||
public class BasicProfileModule : IProfileModule, ISharedRegionModule
|
public class BasicProfileModule : IProfileModule, ISharedRegionModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
|
@ -43,7 +43,7 @@ using Caps=OpenSim.Framework.Capabilities.Caps;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Framework
|
namespace OpenSim.Region.CoreModules.Framework
|
||||||
{
|
{
|
||||||
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")]
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "CapabilitiesModule")]
|
||||||
public class CapabilitiesModule : INonSharedRegionModule, ICapabilitiesModule
|
public class CapabilitiesModule : INonSharedRegionModule, ICapabilitiesModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
|
@ -43,9 +43,11 @@ using GridRegion = OpenSim.Services.Interfaces.GridRegion;
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
using log4net;
|
using log4net;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
|
using Mono.Addins;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
|
namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "EntityTransferModule")]
|
||||||
public class EntityTransferModule : INonSharedRegionModule, IEntityTransferModule
|
public class EntityTransferModule : INonSharedRegionModule, IEntityTransferModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
|
@ -42,9 +42,11 @@ using GridRegion = OpenSim.Services.Interfaces.GridRegion;
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
using log4net;
|
using log4net;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
|
using Mono.Addins;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
|
namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "HGEntityTransferModule")]
|
||||||
public class HGEntityTransferModule
|
public class HGEntityTransferModule
|
||||||
: EntityTransferModule, INonSharedRegionModule, IEntityTransferModule, IUserAgentVerificationModule
|
: EntityTransferModule, INonSharedRegionModule, IEntityTransferModule, IUserAgentVerificationModule
|
||||||
{
|
{
|
||||||
|
|
|
@ -42,9 +42,11 @@ using GridRegion = OpenSim.Services.Interfaces.GridRegion;
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
using log4net;
|
using log4net;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
|
using Mono.Addins;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Framework.InventoryAccess
|
namespace OpenSim.Region.CoreModules.Framework.InventoryAccess
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "HGInventoryAccessModule")]
|
||||||
public class HGInventoryAccessModule : BasicInventoryAccessModule, INonSharedRegionModule, IInventoryAccessModule
|
public class HGInventoryAccessModule : BasicInventoryAccessModule, INonSharedRegionModule, IInventoryAccessModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
|
@ -46,9 +46,11 @@ using GridRegion = OpenSim.Services.Interfaces.GridRegion;
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
using log4net;
|
using log4net;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
|
using Mono.Addins;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Framework.InventoryAccess
|
namespace OpenSim.Region.CoreModules.Framework.InventoryAccess
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "BasicInventoryAccessModule")]
|
||||||
public class BasicInventoryAccessModule : INonSharedRegionModule, IInventoryAccessModule
|
public class BasicInventoryAccessModule : INonSharedRegionModule, IInventoryAccessModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
@ -180,12 +182,6 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess
|
||||||
if (!m_Scene.Permissions.CanCreateUserInventory(invType, remoteClient.AgentId))
|
if (!m_Scene.Permissions.CanCreateUserInventory(invType, remoteClient.AgentId))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
InventoryFolderBase f = new InventoryFolderBase(folderID, remoteClient.AgentId);
|
|
||||||
InventoryFolderBase folder = m_Scene.InventoryService.GetFolder(f);
|
|
||||||
|
|
||||||
if (folder == null || folder.Owner != remoteClient.AgentId)
|
|
||||||
return;
|
|
||||||
|
|
||||||
if (transactionID == UUID.Zero)
|
if (transactionID == UUID.Zero)
|
||||||
{
|
{
|
||||||
ScenePresence presence;
|
ScenePresence presence;
|
||||||
|
|
|
@ -41,10 +41,12 @@ using OpenSim.Server.Base;
|
||||||
|
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Framework.Library
|
namespace OpenSim.Region.CoreModules.Framework.Library
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "LibraryModule")]
|
||||||
public class LibraryModule : ISharedRegionModule
|
public class LibraryModule : ISharedRegionModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
|
@ -38,10 +38,12 @@ using OpenSim.Region.CoreModules.Framework.Monitoring.Alerts;
|
||||||
using OpenSim.Region.CoreModules.Framework.Monitoring.Monitors;
|
using OpenSim.Region.CoreModules.Framework.Monitoring.Monitors;
|
||||||
using OpenSim.Region.Framework.Interfaces;
|
using OpenSim.Region.Framework.Interfaces;
|
||||||
using OpenSim.Region.Framework.Scenes;
|
using OpenSim.Region.Framework.Scenes;
|
||||||
|
using Mono.Addins;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Framework.Monitoring
|
namespace OpenSim.Region.CoreModules.Framework.Monitoring
|
||||||
{
|
{
|
||||||
public class MonitorModule : IRegionModule
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "MonitorModule")]
|
||||||
|
public class MonitorModule : INonSharedRegionModule
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Is this module enabled?
|
/// Is this module enabled?
|
||||||
|
@ -62,14 +64,14 @@ namespace OpenSim.Region.CoreModules.Framework.Monitoring
|
||||||
private readonly List<IAlert> m_alerts = new List<IAlert>();
|
private readonly List<IAlert> m_alerts = new List<IAlert>();
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
||||||
#region Implementation of IRegionModule
|
|
||||||
|
|
||||||
public MonitorModule()
|
public MonitorModule()
|
||||||
{
|
{
|
||||||
Enabled = true;
|
Enabled = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Initialise(Scene scene, IConfigSource source)
|
#region Implementation of INonSharedRegionModule
|
||||||
|
|
||||||
|
public void Initialise(IConfigSource source)
|
||||||
{
|
{
|
||||||
IConfig cnfg = source.Configs["Monitoring"];
|
IConfig cnfg = source.Configs["Monitoring"];
|
||||||
|
|
||||||
|
@ -79,6 +81,13 @@ namespace OpenSim.Region.CoreModules.Framework.Monitoring
|
||||||
if (!Enabled)
|
if (!Enabled)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void AddRegion(Scene scene)
|
||||||
|
{
|
||||||
|
if (!Enabled)
|
||||||
|
return;
|
||||||
|
|
||||||
m_scene = scene;
|
m_scene = scene;
|
||||||
|
|
||||||
m_scene.AddCommand("General", this, "monitor report",
|
m_scene.AddCommand("General", this, "monitor report",
|
||||||
|
@ -89,101 +98,42 @@ namespace OpenSim.Region.CoreModules.Framework.Monitoring
|
||||||
MainServer.Instance.AddHTTPHandler("/monitorstats/" + m_scene.RegionInfo.RegionID, StatsPage);
|
MainServer.Instance.AddHTTPHandler("/monitorstats/" + m_scene.RegionInfo.RegionID, StatsPage);
|
||||||
MainServer.Instance.AddHTTPHandler(
|
MainServer.Instance.AddHTTPHandler(
|
||||||
"/monitorstats/" + Uri.EscapeDataString(m_scene.RegionInfo.RegionName), StatsPage);
|
"/monitorstats/" + Uri.EscapeDataString(m_scene.RegionInfo.RegionName), StatsPage);
|
||||||
|
|
||||||
|
AddMonitors();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void DebugMonitors(string module, string[] args)
|
public void RemoveRegion(Scene scene)
|
||||||
{
|
|
||||||
foreach (IMonitor monitor in m_staticMonitors)
|
|
||||||
{
|
|
||||||
MainConsole.Instance.OutputFormat(
|
|
||||||
"[MONITOR MODULE]: {0} reports {1} = {2}",
|
|
||||||
m_scene.RegionInfo.RegionName, monitor.GetFriendlyName(), monitor.GetFriendlyValue());
|
|
||||||
}
|
|
||||||
|
|
||||||
foreach (KeyValuePair<string, float> tuple in m_scene.StatsReporter.GetExtraSimStats())
|
|
||||||
{
|
|
||||||
MainConsole.Instance.OutputFormat(
|
|
||||||
"[MONITOR MODULE]: {0} reports {1} = {2}",
|
|
||||||
m_scene.RegionInfo.RegionName, tuple.Key, tuple.Value);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void TestAlerts()
|
|
||||||
{
|
|
||||||
foreach (IAlert alert in m_alerts)
|
|
||||||
{
|
|
||||||
alert.Test();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public Hashtable StatsPage(Hashtable request)
|
|
||||||
{
|
|
||||||
// If request was for a specific monitor
|
|
||||||
// eg url/?monitor=Monitor.Name
|
|
||||||
if (request.ContainsKey("monitor"))
|
|
||||||
{
|
|
||||||
string monID = (string) request["monitor"];
|
|
||||||
|
|
||||||
foreach (IMonitor monitor in m_staticMonitors)
|
|
||||||
{
|
|
||||||
string elemName = monitor.ToString();
|
|
||||||
if (elemName.StartsWith(monitor.GetType().Namespace))
|
|
||||||
elemName = elemName.Substring(monitor.GetType().Namespace.Length + 1);
|
|
||||||
|
|
||||||
if (elemName == monID || monitor.ToString() == monID)
|
|
||||||
{
|
|
||||||
Hashtable ereply3 = new Hashtable();
|
|
||||||
|
|
||||||
ereply3["int_response_code"] = 404; // 200 OK
|
|
||||||
ereply3["str_response_string"] = monitor.GetValue().ToString();
|
|
||||||
ereply3["content_type"] = "text/plain";
|
|
||||||
|
|
||||||
return ereply3;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// FIXME: Arguably this should also be done with dynamic monitors but I'm not sure what the above code
|
|
||||||
// is even doing. Why are we inspecting the type of the monitor???
|
|
||||||
|
|
||||||
// No monitor with that name
|
|
||||||
Hashtable ereply2 = new Hashtable();
|
|
||||||
|
|
||||||
ereply2["int_response_code"] = 404; // 200 OK
|
|
||||||
ereply2["str_response_string"] = "No such monitor";
|
|
||||||
ereply2["content_type"] = "text/plain";
|
|
||||||
|
|
||||||
return ereply2;
|
|
||||||
}
|
|
||||||
|
|
||||||
string xml = "<data>";
|
|
||||||
foreach (IMonitor monitor in m_staticMonitors)
|
|
||||||
{
|
|
||||||
string elemName = monitor.GetName();
|
|
||||||
xml += "<" + elemName + ">" + monitor.GetValue().ToString() + "</" + elemName + ">";
|
|
||||||
// m_log.DebugFormat("[MONITOR MODULE]: {0} = {1}", elemName, monitor.GetValue());
|
|
||||||
}
|
|
||||||
|
|
||||||
foreach (KeyValuePair<string, float> tuple in m_scene.StatsReporter.GetExtraSimStats())
|
|
||||||
{
|
|
||||||
xml += "<" + tuple.Key + ">" + tuple.Value + "</" + tuple.Key + ">";
|
|
||||||
}
|
|
||||||
|
|
||||||
xml += "</data>";
|
|
||||||
|
|
||||||
Hashtable ereply = new Hashtable();
|
|
||||||
|
|
||||||
ereply["int_response_code"] = 200; // 200 OK
|
|
||||||
ereply["str_response_string"] = xml;
|
|
||||||
ereply["content_type"] = "text/xml";
|
|
||||||
|
|
||||||
return ereply;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void PostInitialise()
|
|
||||||
{
|
{
|
||||||
if (!Enabled)
|
if (!Enabled)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
MainServer.Instance.RemoveHTTPHandler("GET", "/monitorstats/" + m_scene.RegionInfo.RegionID);
|
||||||
|
MainServer.Instance.RemoveHTTPHandler("GET", "/monitorstats/" + Uri.EscapeDataString(m_scene.RegionInfo.RegionName));
|
||||||
|
m_scene = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Close()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public string Name
|
||||||
|
{
|
||||||
|
get { return "Region Health Monitoring Module"; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RegionLoaded(Scene scene)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public Type ReplaceableInterface
|
||||||
|
{
|
||||||
|
get { return null; }
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
public void AddMonitors()
|
||||||
|
{
|
||||||
m_staticMonitors.Add(new AgentCountMonitor(m_scene));
|
m_staticMonitors.Add(new AgentCountMonitor(m_scene));
|
||||||
m_staticMonitors.Add(new ChildAgentCountMonitor(m_scene));
|
m_staticMonitors.Add(new ChildAgentCountMonitor(m_scene));
|
||||||
m_staticMonitors.Add(new GCMemoryMonitor());
|
m_staticMonitors.Add(new GCMemoryMonitor());
|
||||||
|
@ -357,25 +307,98 @@ namespace OpenSim.Region.CoreModules.Framework.Monitoring
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void DebugMonitors(string module, string[] args)
|
||||||
|
{
|
||||||
|
foreach (IMonitor monitor in m_staticMonitors)
|
||||||
|
{
|
||||||
|
MainConsole.Instance.OutputFormat(
|
||||||
|
"[MONITOR MODULE]: {0} reports {1} = {2}",
|
||||||
|
m_scene.RegionInfo.RegionName, monitor.GetFriendlyName(), monitor.GetFriendlyValue());
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach (KeyValuePair<string, float> tuple in m_scene.StatsReporter.GetExtraSimStats())
|
||||||
|
{
|
||||||
|
MainConsole.Instance.OutputFormat(
|
||||||
|
"[MONITOR MODULE]: {0} reports {1} = {2}",
|
||||||
|
m_scene.RegionInfo.RegionName, tuple.Key, tuple.Value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void TestAlerts()
|
||||||
|
{
|
||||||
|
foreach (IAlert alert in m_alerts)
|
||||||
|
{
|
||||||
|
alert.Test();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public Hashtable StatsPage(Hashtable request)
|
||||||
|
{
|
||||||
|
// If request was for a specific monitor
|
||||||
|
// eg url/?monitor=Monitor.Name
|
||||||
|
if (request.ContainsKey("monitor"))
|
||||||
|
{
|
||||||
|
string monID = (string) request["monitor"];
|
||||||
|
|
||||||
|
foreach (IMonitor monitor in m_staticMonitors)
|
||||||
|
{
|
||||||
|
string elemName = monitor.ToString();
|
||||||
|
if (elemName.StartsWith(monitor.GetType().Namespace))
|
||||||
|
elemName = elemName.Substring(monitor.GetType().Namespace.Length + 1);
|
||||||
|
|
||||||
|
if (elemName == monID || monitor.ToString() == monID)
|
||||||
|
{
|
||||||
|
Hashtable ereply3 = new Hashtable();
|
||||||
|
|
||||||
|
ereply3["int_response_code"] = 404; // 200 OK
|
||||||
|
ereply3["str_response_string"] = monitor.GetValue().ToString();
|
||||||
|
ereply3["content_type"] = "text/plain";
|
||||||
|
|
||||||
|
return ereply3;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// FIXME: Arguably this should also be done with dynamic monitors but I'm not sure what the above code
|
||||||
|
// is even doing. Why are we inspecting the type of the monitor???
|
||||||
|
|
||||||
|
// No monitor with that name
|
||||||
|
Hashtable ereply2 = new Hashtable();
|
||||||
|
|
||||||
|
ereply2["int_response_code"] = 404; // 200 OK
|
||||||
|
ereply2["str_response_string"] = "No such monitor";
|
||||||
|
ereply2["content_type"] = "text/plain";
|
||||||
|
|
||||||
|
return ereply2;
|
||||||
|
}
|
||||||
|
|
||||||
|
string xml = "<data>";
|
||||||
|
foreach (IMonitor monitor in m_staticMonitors)
|
||||||
|
{
|
||||||
|
string elemName = monitor.GetName();
|
||||||
|
xml += "<" + elemName + ">" + monitor.GetValue().ToString() + "</" + elemName + ">";
|
||||||
|
// m_log.DebugFormat("[MONITOR MODULE]: {0} = {1}", elemName, monitor.GetValue());
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach (KeyValuePair<string, float> tuple in m_scene.StatsReporter.GetExtraSimStats())
|
||||||
|
{
|
||||||
|
xml += "<" + tuple.Key + ">" + tuple.Value + "</" + tuple.Key + ">";
|
||||||
|
}
|
||||||
|
|
||||||
|
xml += "</data>";
|
||||||
|
|
||||||
|
Hashtable ereply = new Hashtable();
|
||||||
|
|
||||||
|
ereply["int_response_code"] = 200; // 200 OK
|
||||||
|
ereply["str_response_string"] = xml;
|
||||||
|
ereply["content_type"] = "text/xml";
|
||||||
|
|
||||||
|
return ereply;
|
||||||
|
}
|
||||||
|
|
||||||
void OnTriggerAlert(System.Type reporter, string reason, bool fatal)
|
void OnTriggerAlert(System.Type reporter, string reason, bool fatal)
|
||||||
{
|
{
|
||||||
m_log.Error("[Monitor] " + reporter.Name + " for " + m_scene.RegionInfo.RegionName + " reports " + reason + " (Fatal: " + fatal + ")");
|
m_log.Error("[Monitor] " + reporter.Name + " for " + m_scene.RegionInfo.RegionName + " reports " + reason + " (Fatal: " + fatal + ")");
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Close()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
public string Name
|
|
||||||
{
|
|
||||||
get { return "Region Health Monitoring Module"; }
|
|
||||||
}
|
|
||||||
|
|
||||||
public bool IsSharedModule
|
|
||||||
{
|
|
||||||
get { return false; }
|
|
||||||
}
|
|
||||||
|
|
||||||
#endregion
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -41,9 +41,11 @@ using OpenMetaverse;
|
||||||
using OpenMetaverse.Packets;
|
using OpenMetaverse.Packets;
|
||||||
using log4net;
|
using log4net;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
|
using Mono.Addins;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Framework.UserManagement
|
namespace OpenSim.Region.CoreModules.Framework.UserManagement
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "HGUserManagementModule")]
|
||||||
public class HGUserManagementModule : UserManagementModule, ISharedRegionModule, IUserManagement
|
public class HGUserManagementModule : UserManagementModule, ISharedRegionModule, IUserManagement
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
|
@ -42,6 +42,7 @@ using OpenMetaverse;
|
||||||
using OpenMetaverse.Packets;
|
using OpenMetaverse.Packets;
|
||||||
using log4net;
|
using log4net;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
|
using Mono.Addins;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Framework.UserManagement
|
namespace OpenSim.Region.CoreModules.Framework.UserManagement
|
||||||
{
|
{
|
||||||
|
@ -54,6 +55,7 @@ namespace OpenSim.Region.CoreModules.Framework.UserManagement
|
||||||
public Dictionary<string, object> ServerURLs { get; set; }
|
public Dictionary<string, object> ServerURLs { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "UserManagementModule")]
|
||||||
public class UserManagementModule : ISharedRegionModule, IUserManagement
|
public class UserManagementModule : ISharedRegionModule, IUserManagement
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
|
@ -31,6 +31,7 @@ using System.Reflection;
|
||||||
using log4net;
|
using log4net;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
|
using Mono.Addins;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
using OpenSim.Region.CoreModules.World.WorldMap;
|
using OpenSim.Region.CoreModules.World.WorldMap;
|
||||||
using OpenSim.Region.Framework.Interfaces;
|
using OpenSim.Region.Framework.Interfaces;
|
||||||
|
@ -39,6 +40,7 @@ using GridRegion = OpenSim.Services.Interfaces.GridRegion;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Hypergrid
|
namespace OpenSim.Region.CoreModules.Hypergrid
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "HGWorldMapModule")]
|
||||||
public class HGWorldMapModule : WorldMapModule
|
public class HGWorldMapModule : WorldMapModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
|
@ -1,150 +0,0 @@
|
||||||
/*
|
|
||||||
* 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
using System;
|
|
||||||
using System.Collections;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Net;
|
|
||||||
using System.Reflection;
|
|
||||||
using System.Text;
|
|
||||||
using log4net;
|
|
||||||
using Nini.Config;
|
|
||||||
using Nwc.XmlRpc;
|
|
||||||
using OpenMetaverse;
|
|
||||||
using OpenSim.Framework;
|
|
||||||
using OpenSim.Framework.Communications;
|
|
||||||
using OpenSim.Framework.Servers;
|
|
||||||
using OpenSim.Region.Framework.Interfaces;
|
|
||||||
using OpenSim.Region.Framework.Scenes;
|
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.InterGrid
|
|
||||||
{
|
|
||||||
public class OGSRadmin : IRegionModule
|
|
||||||
{
|
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
|
||||||
private readonly List<Scene> m_scenes = new List<Scene>();
|
|
||||||
private IConfigSource m_settings;
|
|
||||||
|
|
||||||
#region Implementation of IRegionModuleBase
|
|
||||||
|
|
||||||
public string Name
|
|
||||||
{
|
|
||||||
get { return "OGS Supporting RAdmin"; }
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public void Initialise(IConfigSource source)
|
|
||||||
{
|
|
||||||
m_settings = source;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Close()
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public void AddRegion(Scene scene)
|
|
||||||
{
|
|
||||||
lock (m_scenes)
|
|
||||||
m_scenes.Add(scene);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void RemoveRegion(Scene scene)
|
|
||||||
{
|
|
||||||
lock (m_scenes)
|
|
||||||
m_scenes.Remove(scene);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void RegionLoaded(Scene scene)
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public void PostInitialise()
|
|
||||||
{
|
|
||||||
if (m_settings.Configs["Startup"].GetBoolean("gridmode", false))
|
|
||||||
{
|
|
||||||
MainServer.Instance.AddXmlRPCHandler("grid_message", GridWideMessage);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#endregion
|
|
||||||
|
|
||||||
#region IRegionModule
|
|
||||||
|
|
||||||
public void Initialise(Scene scene, IConfigSource source)
|
|
||||||
{
|
|
||||||
m_settings = source;
|
|
||||||
|
|
||||||
lock (m_scenes)
|
|
||||||
m_scenes.Add(scene);
|
|
||||||
}
|
|
||||||
|
|
||||||
public bool IsSharedModule
|
|
||||||
{
|
|
||||||
get { return true; }
|
|
||||||
}
|
|
||||||
|
|
||||||
#endregion
|
|
||||||
|
|
||||||
public XmlRpcResponse GridWideMessage(XmlRpcRequest req, IPEndPoint remoteClient)
|
|
||||||
{
|
|
||||||
XmlRpcResponse response = new XmlRpcResponse();
|
|
||||||
Hashtable responseData = new Hashtable();
|
|
||||||
|
|
||||||
Hashtable requestData = (Hashtable)req.Params[0];
|
|
||||||
|
|
||||||
// REFACTORING PROBLEM. This authorization needs to be replaced with some other
|
|
||||||
//if ((!requestData.Contains("password") || (string)requestData["password"] != m_com.NetworkServersInfo.GridRecvKey))
|
|
||||||
//{
|
|
||||||
// responseData["accepted"] = false;
|
|
||||||
// responseData["success"] = false;
|
|
||||||
// responseData["error"] = "Invalid Key";
|
|
||||||
// response.Value = responseData;
|
|
||||||
// return response;
|
|
||||||
//}
|
|
||||||
|
|
||||||
string message = (string)requestData["message"];
|
|
||||||
string user = (string)requestData["user"];
|
|
||||||
m_log.InfoFormat("[RADMIN]: Broadcasting: {0}", message);
|
|
||||||
|
|
||||||
lock (m_scenes)
|
|
||||||
foreach (Scene scene in m_scenes)
|
|
||||||
{
|
|
||||||
IDialogModule dialogModule = scene.RequestModuleInterface<IDialogModule>();
|
|
||||||
if (dialogModule != null)
|
|
||||||
dialogModule.SendNotificationToUsersInRegion(UUID.Random(), user, message);
|
|
||||||
}
|
|
||||||
|
|
||||||
responseData["accepted"] = true;
|
|
||||||
responseData["success"] = true;
|
|
||||||
response.Value = responseData;
|
|
||||||
|
|
||||||
return response;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,38 @@
|
||||||
|
using System.Reflection;
|
||||||
|
using System.Runtime.CompilerServices;
|
||||||
|
using System.Runtime.InteropServices;
|
||||||
|
using Mono.Addins;
|
||||||
|
|
||||||
|
// General Information about an assembly is controlled through the following
|
||||||
|
// set of attributes. Change these attribute values to modify the information
|
||||||
|
// associated with an assembly.
|
||||||
|
[assembly: AssemblyTitle("OpenSim.Region.CoreModules")]
|
||||||
|
[assembly: AssemblyDescription("Core modules for OpenSim")]
|
||||||
|
[assembly: AssemblyConfiguration("")]
|
||||||
|
[assembly: AssemblyCompany("")]
|
||||||
|
[assembly: AssemblyProduct("OpenSim.Region.CoreModules.Properties")]
|
||||||
|
[assembly: AssemblyCopyright("Copyright © 2012")]
|
||||||
|
[assembly: AssemblyTrademark("")]
|
||||||
|
[assembly: AssemblyCulture("")]
|
||||||
|
|
||||||
|
// Setting ComVisible to false makes the types in this assembly not visible
|
||||||
|
// to COM components. If you need to access a type in this assembly from
|
||||||
|
// COM, set the ComVisible attribute to true on that type.
|
||||||
|
[assembly: ComVisible(false)]
|
||||||
|
|
||||||
|
// The following GUID is for the ID of the typelib if this project is exposed to COM
|
||||||
|
[assembly: Guid("94f62dd1-bcf3-4218-9844-9a3996286e3e")]
|
||||||
|
|
||||||
|
// Version information for an assembly consists of the following four values:
|
||||||
|
//
|
||||||
|
// Major Version
|
||||||
|
// Minor Version
|
||||||
|
// Build Number
|
||||||
|
// Revision
|
||||||
|
//
|
||||||
|
[assembly: AssemblyVersion("1.0.0.0")]
|
||||||
|
[assembly: AssemblyFileVersion("1.0.0.0")]
|
||||||
|
|
||||||
|
[assembly: Addin("OpenSim.Region.CoreModules", "0.1")]
|
||||||
|
[assembly: AddinDependency("OpenSim", "0.5")]
|
||||||
|
|
|
@ -1,91 +0,0 @@
|
||||||
<Addin id="OpenSim.Region.CoreModules" version="0.3">
|
|
||||||
<Runtime>
|
|
||||||
<Import assembly="OpenSim.Region.CoreModules.dll"/>
|
|
||||||
</Runtime>
|
|
||||||
|
|
||||||
<Dependencies>
|
|
||||||
<Addin id="OpenSim" version="0.5" />
|
|
||||||
</Dependencies>
|
|
||||||
|
|
||||||
<Extension path = "/OpenSim/RegionModules">
|
|
||||||
<RegionModule id="UserManagementModule" type="OpenSim.Region.CoreModules.Framework.UserManagement.UserManagementModule" />
|
|
||||||
<RegionModule id="HGUserManagementModule" type="OpenSim.Region.CoreModules.Framework.UserManagement.HGUserManagementModule" />
|
|
||||||
<RegionModule id="EntityTransferModule" type="OpenSim.Region.CoreModules.Framework.EntityTransfer.EntityTransferModule" />
|
|
||||||
<RegionModule id="HGEntityTransferModule" type="OpenSim.Region.CoreModules.Framework.EntityTransfer.HGEntityTransferModule" />
|
|
||||||
<RegionModule id="InventoryAccessModule" type="OpenSim.Region.CoreModules.Framework.InventoryAccess.BasicInventoryAccessModule" />
|
|
||||||
<RegionModule id="HGInventoryAccessModule" type="OpenSim.Region.CoreModules.Framework.InventoryAccess.HGInventoryAccessModule" />
|
|
||||||
<RegionModule id="LandManagementModule" type="OpenSim.Region.CoreModules.World.Land.LandManagementModule" />
|
|
||||||
<RegionModule id="DwellModule" type="OpenSim.Region.CoreModules.World.Land.DwellModule" />
|
|
||||||
<RegionModule id="PrimCountModule" type="OpenSim.Region.CoreModules.World.Land.PrimCountModule" />
|
|
||||||
<RegionModule id="ExportSerialisationModule" type="OpenSim.Region.CoreModules.World.Serialiser.SerialiserModule" />
|
|
||||||
<RegionModule id="ArchiverModule" type="OpenSim.Region.CoreModules.World.Archiver.ArchiverModule" />
|
|
||||||
<RegionModule id="TerrainModule" type="OpenSim.Region.CoreModules.World.Terrain.TerrainModule" />
|
|
||||||
<RegionModule id="WorldMapModule" type="OpenSim.Region.CoreModules.World.WorldMap.WorldMapModule" />
|
|
||||||
<RegionModule id="Warp3DImageModule" type="OpenSim.Region.CoreModules.World.Warp3DMap.Warp3DImageModule" />
|
|
||||||
<RegionModule id="HGWorldMapModule" type="OpenSim.Region.CoreModules.Hypergrid.HGWorldMapModule" />
|
|
||||||
<RegionModule id="UrlModule" type="OpenSim.Region.CoreModules.Scripting.LSLHttp.UrlModule" />
|
|
||||||
<RegionModule id="Chat" type="OpenSim.Region.CoreModules.Avatar.Chat.ChatModule" />
|
|
||||||
<RegionModule id="FriendsModule" type="OpenSim.Region.CoreModules.Avatar.Friends.FriendsModule" />
|
|
||||||
<RegionModule id="HGFriendsModule" type="OpenSim.Region.CoreModules.Avatar.Friends.HGFriendsModule" />
|
|
||||||
<RegionModule id="PresenceModule" type="OpenSim.Region.CoreModules.Avatar.InstantMessage.PresenceModule" />
|
|
||||||
<RegionModule id="MuteListModule" type="OpenSim.Region.CoreModules.Avatar.InstantMessage.MuteListModule" />
|
|
||||||
<RegionModule id="OfflineMessageModule" type="OpenSim.Region.CoreModules.Avatar.InstantMessage.OfflineMessageModule" />
|
|
||||||
<RegionModule id="InstantMessageModule" type="OpenSim.Region.CoreModules.Avatar.InstantMessage.InstantMessageModule" />
|
|
||||||
<RegionModule id="MessageTransferModule" type="OpenSim.Region.CoreModules.Avatar.InstantMessage.MessageTransferModule" />
|
|
||||||
<RegionModule id="LureModule" type="OpenSim.Region.CoreModules.Avatar.Lure.LureModule" />
|
|
||||||
<RegionModule id="InventoryTransferModule" type="OpenSim.Region.CoreModules.Avatar.Inventory.Transfer.InventoryTransferModule" />
|
|
||||||
<RegionModule id="CoreAssetCache" type="OpenSim.Region.CoreModules.Asset.CoreAssetCache" />
|
|
||||||
<RegionModule id="GlynnTuckerAssetCache" type="OpenSim.Region.CoreModules.Asset.GlynnTuckerAssetCache" />
|
|
||||||
<RegionModule id="CenomeMemoryAssetCache" type="OpenSim.Region.CoreModules.Asset.CenomeMemoryAssetCache"/>
|
|
||||||
<RegionModule id="LibraryModule" type="OpenSim.Region.CoreModules.Framework.Library.LibraryModule"/>
|
|
||||||
<!-- Service connectors OUT modules -->
|
|
||||||
<RegionModule id="LocalAssetServicesConnector" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.Asset.LocalAssetServicesConnector" />
|
|
||||||
<RegionModule id="RemoteAssetServicesConnector" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.Asset.RemoteAssetServicesConnector" />
|
|
||||||
<RegionModule id="LocalAvatarServicesConnector" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.Avatar.LocalAvatarServicesConnector" />
|
|
||||||
<RegionModule id="RemoteAvatarServicesConnector" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.Avatar.RemoteAvatarServicesConnector" />
|
|
||||||
<RegionModule id="LocalAuthenticationServicesConnector" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.Authentication.LocalAuthenticationServicesConnector" />
|
|
||||||
<RegionModule id="RemoteAuthenticationServicesConnector" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.Authentication.RemoteAuthenticationServicesConnector" />
|
|
||||||
<RegionModule id="LocalAuthorizationServicesConnector" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.Authorization.LocalAuthorizationServicesConnector" />
|
|
||||||
<RegionModule id="RemoteAuthorizationServicesConnector" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.Authorization.RemoteAuthorizationServicesConnector" />
|
|
||||||
<RegionModule id="HGAssetBroker" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.Asset.HGAssetBroker" />
|
|
||||||
<RegionModule id="LocalInventoryServicesConnector" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory.LocalInventoryServicesConnector" />
|
|
||||||
<RegionModule id="RemoteXInventoryServicesConnector" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory.RemoteXInventoryServicesConnector" />
|
|
||||||
<RegionModule id="HGInventoryBroker" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory.HGInventoryBroker" />
|
|
||||||
<RegionModule id="LocalNeighbourServicesConnector" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.Neighbour.LocalNeighbourServicesConnector" />
|
|
||||||
<RegionModule id="RemoteNeighbourServicesConnector" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.Neighbour.RemoteNeighbourServicesConnector" />
|
|
||||||
<RegionModule id="LocalLandServicesConnector" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.Land.LocalLandServicesConnector" />
|
|
||||||
<RegionModule id="RemoteLandServicesConnector" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.Land.RemoteLandServicesConnector" />
|
|
||||||
<RegionModule id="LocalGridServicesConnector" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.Grid.LocalGridServicesConnector" />
|
|
||||||
<RegionModule id="RemoteGridServicesConnector" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.Grid.RemoteGridServicesConnector" />
|
|
||||||
<RegionModule id="LocalPresenceServicesConnector" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.Presence.LocalPresenceServicesConnector" />
|
|
||||||
<RegionModule id="RemotePresenceServicesConnector" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.Presence.RemotePresenceServicesConnector" />
|
|
||||||
<RegionModule id="LocalUserAccountServicesConnector" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.UserAccounts.LocalUserAccountServicesConnector" />
|
|
||||||
<RegionModule id="RemoteUserAccountServicesConnector" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.UserAccounts.RemoteUserAccountServicesConnector" />
|
|
||||||
|
|
||||||
<RegionModule id="LocalGridUserServicesConnector" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.GridUser.LocalGridUserServicesConnector" />
|
|
||||||
<RegionModule id="RemoteGridUserServicesConnector" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.GridUser.RemoteGridUserServicesConnector" />
|
|
||||||
|
|
||||||
<RegionModule id="LocalSimulationConnectorModule" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.Simulation.LocalSimulationConnectorModule" />
|
|
||||||
<RegionModule id="RemoteSimulationConnectorModule" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.Simulation.RemoteSimulationConnectorModule" />
|
|
||||||
|
|
||||||
<!-- Service connectors IN modules -->
|
|
||||||
<RegionModule id="AssetServiceInConnectorModule" type="OpenSim.Region.CoreModules.ServiceConnectorsIn.Asset.AssetServiceInConnectorModule" />
|
|
||||||
<RegionModule id="InventoryServiceInConnectorModule" type="OpenSim.Region.CoreModules.ServiceConnectorsIn.Inventory.InventoryServiceInConnectorModule" />
|
|
||||||
<RegionModule id="LandServiceInConnectorModule" type="OpenSim.Region.CoreModules.ServiceConnectorsIn.Land.LandServiceInConnectorModule" />
|
|
||||||
<RegionModule id="NeighbourServiceInConnectorModule" type="OpenSim.Region.CoreModules.ServiceConnectorsIn.Neighbour.NeighbourServiceInConnectorModule" /> \
|
|
||||||
<RegionModule id="HypergridServiceInConnectorModule" type="OpenSim.Region.CoreModules.ServiceConnectorsIn.Hypergrid.HypergridServiceInConnectorModule" /> \
|
|
||||||
<RegionModule id="LLLoginServiceInConnectorModule" type="OpenSim.Region.CoreModules.ServiceConnectorsIn.Login.LLLoginServiceInConnectorModule" /> \
|
|
||||||
<RegionModule id="SimulationServiceInConnectorModule" type="OpenSim.Region.CoreModules.ServiceConnectorsIn.Simulation.SimulationServiceInConnectorModule" /> \
|
|
||||||
<RegionModule id="GridInfoServiceInConnectorModule" type="OpenSim.Region.CoreModules.ServiceConnectorsIn.Grid.GridInfoServiceInConnectorModule" /> \
|
|
||||||
<RegionModule id="AuthenticationServiceInConnectorModule" type="OpenSim.Region.CoreModules.ServiceConnectorsIn.Authentication.AuthenticationServiceInConnectorModule" />
|
|
||||||
<RegionModule id="AccessModule" type="OpenSim.Region.CoreModules.World.AccessModule" /> \
|
|
||||||
<RegionModule id="MapImageModule" type="OpenSim.Region.CoreModules.World.LegacyMap.MapImageModule" /> \
|
|
||||||
|
|
||||||
</Extension>
|
|
||||||
|
|
||||||
<Extension path = "/OpenSim/WindModule">
|
|
||||||
<WindModel id="ConfigurableWind" type="OpenSim.Region.CoreModules.World.Wind.Plugins.ConfigurableWind" />
|
|
||||||
<WindModel id="SimpleRandomWind" type="OpenSim.Region.CoreModules.World.Wind.Plugins.SimpleRandomWind" />
|
|
||||||
</Extension>
|
|
||||||
|
|
||||||
</Addin>
|
|
|
@ -37,10 +37,12 @@ using OpenSim.Region.Framework.Interfaces;
|
||||||
using OpenSim.Region.Framework.Scenes;
|
using OpenSim.Region.Framework.Scenes;
|
||||||
using log4net;
|
using log4net;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
using Mono.Addins;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Scripting.DynamicTexture
|
namespace OpenSim.Region.CoreModules.Scripting.DynamicTexture
|
||||||
{
|
{
|
||||||
public class DynamicTextureModule : IRegionModule, IDynamicTextureManager
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "DynamicTextureModule")]
|
||||||
|
public class DynamicTextureModule : ISharedRegionModule, IDynamicTextureManager
|
||||||
{
|
{
|
||||||
// private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
// private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
||||||
|
@ -81,6 +83,16 @@ namespace OpenSim.Region.CoreModules.Scripting.DynamicTexture
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
private Cache m_reuseableDynamicTextures;
|
private Cache m_reuseableDynamicTextures;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// This constructor is only here because of the Unit Tests...
|
||||||
|
/// Don't use it.
|
||||||
|
/// </summary>
|
||||||
|
public DynamicTextureModule()
|
||||||
|
{
|
||||||
|
m_reuseableDynamicTextures = new Cache(CacheMedium.Memory, CacheStrategy.Conservative);
|
||||||
|
m_reuseableDynamicTextures.DefaultTTL = new TimeSpan(24, 0, 0);
|
||||||
|
}
|
||||||
|
|
||||||
#region IDynamicTextureManager Members
|
#region IDynamicTextureManager Members
|
||||||
|
|
||||||
public void RegisterRender(string handleType, IDynamicTextureRender render)
|
public void RegisterRender(string handleType, IDynamicTextureRender render)
|
||||||
|
@ -323,17 +335,30 @@ namespace OpenSim.Region.CoreModules.Scripting.DynamicTexture
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region IRegionModule Members
|
#region ISharedRegionModule Members
|
||||||
|
|
||||||
public void Initialise(Scene scene, IConfigSource config)
|
public void Initialise(IConfigSource config)
|
||||||
{
|
{
|
||||||
IConfig texturesConfig = config.Configs["Textures"];
|
IConfig texturesConfig = config.Configs["Textures"];
|
||||||
if (texturesConfig != null)
|
if (texturesConfig != null)
|
||||||
{
|
{
|
||||||
ReuseTextures = texturesConfig.GetBoolean("ReuseDynamicTextures", false);
|
ReuseTextures = texturesConfig.GetBoolean("ReuseDynamicTextures", false);
|
||||||
ReuseLowDataTextures = texturesConfig.GetBoolean("ReuseDynamicLowDataTextures", false);
|
ReuseLowDataTextures = texturesConfig.GetBoolean("ReuseDynamicLowDataTextures", false);
|
||||||
|
|
||||||
|
if (ReuseTextures)
|
||||||
|
{
|
||||||
|
m_reuseableDynamicTextures = new Cache(CacheMedium.Memory, CacheStrategy.Conservative);
|
||||||
|
m_reuseableDynamicTextures.DefaultTTL = new TimeSpan(24, 0, 0);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void PostInitialise()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public void AddRegion(Scene scene)
|
||||||
|
{
|
||||||
if (!RegisteredScenes.ContainsKey(scene.RegionInfo.RegionID))
|
if (!RegisteredScenes.ContainsKey(scene.RegionInfo.RegionID))
|
||||||
{
|
{
|
||||||
RegisteredScenes.Add(scene.RegionInfo.RegionID, scene);
|
RegisteredScenes.Add(scene.RegionInfo.RegionID, scene);
|
||||||
|
@ -341,13 +366,14 @@ namespace OpenSim.Region.CoreModules.Scripting.DynamicTexture
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void PostInitialise()
|
public void RegionLoaded(Scene scene)
|
||||||
{
|
{
|
||||||
if (ReuseTextures)
|
|
||||||
{
|
|
||||||
m_reuseableDynamicTextures = new Cache(CacheMedium.Memory, CacheStrategy.Conservative);
|
|
||||||
m_reuseableDynamicTextures.DefaultTTL = new TimeSpan(24, 0, 0);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void RemoveRegion(Scene scene)
|
||||||
|
{
|
||||||
|
if (RegisteredScenes.ContainsKey(scene.RegionInfo.RegionID))
|
||||||
|
RegisteredScenes.Remove(scene.RegionInfo.RegionID);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Close()
|
public void Close()
|
||||||
|
@ -359,9 +385,9 @@ namespace OpenSim.Region.CoreModules.Scripting.DynamicTexture
|
||||||
get { return "DynamicTextureModule"; }
|
get { return "DynamicTextureModule"; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool IsSharedModule
|
public Type ReplaceableInterface
|
||||||
{
|
{
|
||||||
get { return true; }
|
get { return null; }
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
|
@ -37,10 +37,12 @@ using OpenMetaverse;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
using OpenSim.Region.Framework.Interfaces;
|
using OpenSim.Region.Framework.Interfaces;
|
||||||
using OpenSim.Region.Framework.Scenes;
|
using OpenSim.Region.Framework.Scenes;
|
||||||
|
using Mono.Addins;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Scripting.EmailModules
|
namespace OpenSim.Region.CoreModules.Scripting.EmailModules
|
||||||
{
|
{
|
||||||
public class EmailModule : IRegionModule, IEmailModule
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "EmailModule")]
|
||||||
|
public class EmailModule : ISharedRegionModule, IEmailModule
|
||||||
{
|
{
|
||||||
//
|
//
|
||||||
// Log
|
// Log
|
||||||
|
@ -72,31 +74,9 @@ namespace OpenSim.Region.CoreModules.Scripting.EmailModules
|
||||||
|
|
||||||
private bool m_Enabled = false;
|
private bool m_Enabled = false;
|
||||||
|
|
||||||
public void InsertEmail(UUID to, Email email)
|
#region ISharedRegionModule
|
||||||
{
|
|
||||||
// It's tempting to create the queue here. Don't; objects which have
|
|
||||||
// not yet called GetNextEmail should have no queue, and emails to them
|
|
||||||
// should be silently dropped.
|
|
||||||
|
|
||||||
lock (m_MailQueues)
|
public void Initialise(IConfigSource config)
|
||||||
{
|
|
||||||
if (m_MailQueues.ContainsKey(to))
|
|
||||||
{
|
|
||||||
if (m_MailQueues[to].Count >= m_MaxQueueSize)
|
|
||||||
{
|
|
||||||
// fail silently
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
lock (m_MailQueues[to])
|
|
||||||
{
|
|
||||||
m_MailQueues[to].Add(email);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Initialise(Scene scene, IConfigSource config)
|
|
||||||
{
|
{
|
||||||
m_Config = config;
|
m_Config = config;
|
||||||
IConfig SMTPConfig;
|
IConfig SMTPConfig;
|
||||||
|
@ -138,9 +118,14 @@ namespace OpenSim.Region.CoreModules.Scripting.EmailModules
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// It's a go!
|
}
|
||||||
if (m_Enabled)
|
|
||||||
|
public void AddRegion(Scene scene)
|
||||||
{
|
{
|
||||||
|
if (!m_Enabled)
|
||||||
|
return;
|
||||||
|
|
||||||
|
// It's a go!
|
||||||
lock (m_Scenes)
|
lock (m_Scenes)
|
||||||
{
|
{
|
||||||
// Claim the interface slot
|
// Claim the interface slot
|
||||||
|
@ -159,6 +144,9 @@ namespace OpenSim.Region.CoreModules.Scripting.EmailModules
|
||||||
|
|
||||||
m_log.Info("[EMAIL] Activated DefaultEmailModule");
|
m_log.Info("[EMAIL] Activated DefaultEmailModule");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void RemoveRegion(Scene scene)
|
||||||
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
public void PostInitialise()
|
public void PostInitialise()
|
||||||
|
@ -174,9 +162,39 @@ namespace OpenSim.Region.CoreModules.Scripting.EmailModules
|
||||||
get { return "DefaultEmailModule"; }
|
get { return "DefaultEmailModule"; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool IsSharedModule
|
public Type ReplaceableInterface
|
||||||
{
|
{
|
||||||
get { return true; }
|
get { return null; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RegionLoaded(Scene scene)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
public void InsertEmail(UUID to, Email email)
|
||||||
|
{
|
||||||
|
// It's tempting to create the queue here. Don't; objects which have
|
||||||
|
// not yet called GetNextEmail should have no queue, and emails to them
|
||||||
|
// should be silently dropped.
|
||||||
|
|
||||||
|
lock (m_MailQueues)
|
||||||
|
{
|
||||||
|
if (m_MailQueues.ContainsKey(to))
|
||||||
|
{
|
||||||
|
if (m_MailQueues[to].Count >= m_MaxQueueSize)
|
||||||
|
{
|
||||||
|
// fail silently
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
lock (m_MailQueues[to])
|
||||||
|
{
|
||||||
|
m_MailQueues[to].Add(email);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private bool IsLocal(UUID objectID)
|
private bool IsLocal(UUID objectID)
|
||||||
|
|
|
@ -41,6 +41,7 @@ using OpenSim.Framework.Servers;
|
||||||
using OpenSim.Framework.Servers.HttpServer;
|
using OpenSim.Framework.Servers.HttpServer;
|
||||||
using OpenSim.Region.Framework.Interfaces;
|
using OpenSim.Region.Framework.Interfaces;
|
||||||
using OpenSim.Region.Framework.Scenes;
|
using OpenSim.Region.Framework.Scenes;
|
||||||
|
using Mono.Addins;
|
||||||
|
|
||||||
/*****************************************************
|
/*****************************************************
|
||||||
*
|
*
|
||||||
|
@ -87,7 +88,8 @@ using OpenSim.Region.Framework.Scenes;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Scripting.HttpRequest
|
namespace OpenSim.Region.CoreModules.Scripting.HttpRequest
|
||||||
{
|
{
|
||||||
public class HttpRequestModule : IRegionModule, IHttpRequestModule
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "HttpRequestModule")]
|
||||||
|
public class HttpRequestModule : ISharedRegionModule, IHttpRequestModule
|
||||||
{
|
{
|
||||||
private object HttpListLock = new object();
|
private object HttpListLock = new object();
|
||||||
private int httpTimeout = 30000;
|
private int httpTimeout = 30000;
|
||||||
|
@ -270,24 +272,38 @@ namespace OpenSim.Region.CoreModules.Scripting.HttpRequest
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region IRegionModule Members
|
#region ISharedRegionModule Members
|
||||||
|
|
||||||
public void Initialise(Scene scene, IConfigSource config)
|
public void Initialise(IConfigSource config)
|
||||||
{
|
{
|
||||||
m_scene = scene;
|
|
||||||
|
|
||||||
m_scene.RegisterModuleInterface<IHttpRequestModule>(this);
|
|
||||||
|
|
||||||
m_proxyurl = config.Configs["Startup"].GetString("HttpProxy");
|
m_proxyurl = config.Configs["Startup"].GetString("HttpProxy");
|
||||||
m_proxyexcepts = config.Configs["Startup"].GetString("HttpProxyExceptions");
|
m_proxyexcepts = config.Configs["Startup"].GetString("HttpProxyExceptions");
|
||||||
|
|
||||||
m_pendingRequests = new Dictionary<UUID, HttpRequestClass>();
|
m_pendingRequests = new Dictionary<UUID, HttpRequestClass>();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void AddRegion(Scene scene)
|
||||||
|
{
|
||||||
|
m_scene = scene;
|
||||||
|
|
||||||
|
m_scene.RegisterModuleInterface<IHttpRequestModule>(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RemoveRegion(Scene scene)
|
||||||
|
{
|
||||||
|
scene.UnregisterModuleInterface<IHttpRequestModule>(this);
|
||||||
|
if (scene == m_scene)
|
||||||
|
m_scene = null;
|
||||||
|
}
|
||||||
|
|
||||||
public void PostInitialise()
|
public void PostInitialise()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void RegionLoaded(Scene scene)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
public void Close()
|
public void Close()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
@ -297,9 +313,9 @@ namespace OpenSim.Region.CoreModules.Scripting.HttpRequest
|
||||||
get { return m_name; }
|
get { return m_name; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool IsSharedModule
|
public Type ReplaceableInterface
|
||||||
{
|
{
|
||||||
get { return true; }
|
get { return null; }
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
|
@ -31,6 +31,7 @@ using System.Collections.Generic;
|
||||||
using System.Collections;
|
using System.Collections;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
|
@ -94,6 +95,7 @@ namespace OpenSim.Region.CoreModules.Scripting.LSLHttp
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// This module provides external URLs for in-world scripts.
|
/// This module provides external URLs for in-world scripts.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "UrlModule")]
|
||||||
public class UrlModule : ISharedRegionModule, IUrlModule
|
public class UrlModule : ISharedRegionModule, IUrlModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log =
|
private static readonly ILog m_log =
|
||||||
|
|
|
@ -37,10 +37,12 @@ using OpenSim.Region.Framework.Interfaces;
|
||||||
using OpenSim.Region.Framework.Scenes;
|
using OpenSim.Region.Framework.Scenes;
|
||||||
using log4net;
|
using log4net;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
using Mono.Addins;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Scripting.LoadImageURL
|
namespace OpenSim.Region.CoreModules.Scripting.LoadImageURL
|
||||||
{
|
{
|
||||||
public class LoadImageURLModule : IRegionModule, IDynamicTextureRender
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "LoadImageURLModule")]
|
||||||
|
public class LoadImageURLModule : ISharedRegionModule, IDynamicTextureRender
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
||||||
|
@ -104,22 +106,32 @@ namespace OpenSim.Region.CoreModules.Scripting.LoadImageURL
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region IRegionModule Members
|
#region ISharedRegionModule Members
|
||||||
|
|
||||||
public void Initialise(Scene scene, IConfigSource config)
|
public void Initialise(IConfigSource config)
|
||||||
{
|
{
|
||||||
if (m_scene == null)
|
|
||||||
{
|
|
||||||
m_scene = scene;
|
|
||||||
}
|
|
||||||
|
|
||||||
m_proxyurl = config.Configs["Startup"].GetString("HttpProxy");
|
m_proxyurl = config.Configs["Startup"].GetString("HttpProxy");
|
||||||
m_proxyexcepts = config.Configs["Startup"].GetString("HttpProxyExceptions");
|
m_proxyexcepts = config.Configs["Startup"].GetString("HttpProxyExceptions");
|
||||||
}
|
}
|
||||||
|
|
||||||
public void PostInitialise()
|
public void PostInitialise()
|
||||||
{
|
{
|
||||||
if (m_scene != null)
|
}
|
||||||
|
|
||||||
|
public void AddRegion(Scene scene)
|
||||||
|
{
|
||||||
|
if (m_scene == null)
|
||||||
|
m_scene = scene;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RemoveRegion(Scene scene)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RegionLoaded(Scene scene)
|
||||||
|
{
|
||||||
|
if (m_textureManager == null && m_scene == scene)
|
||||||
{
|
{
|
||||||
m_textureManager = m_scene.RequestModuleInterface<IDynamicTextureManager>();
|
m_textureManager = m_scene.RequestModuleInterface<IDynamicTextureManager>();
|
||||||
if (m_textureManager != null)
|
if (m_textureManager != null)
|
||||||
|
@ -138,9 +150,9 @@ namespace OpenSim.Region.CoreModules.Scripting.LoadImageURL
|
||||||
get { return m_name; }
|
get { return m_name; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool IsSharedModule
|
public Type ReplaceableInterface
|
||||||
{
|
{
|
||||||
get { return true; }
|
get { return null; }
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
@ -172,6 +184,12 @@ namespace OpenSim.Region.CoreModules.Scripting.LoadImageURL
|
||||||
|
|
||||||
private void HttpRequestReturn(IAsyncResult result)
|
private void HttpRequestReturn(IAsyncResult result)
|
||||||
{
|
{
|
||||||
|
if (m_textureManager == null)
|
||||||
|
{
|
||||||
|
m_log.WarnFormat("[LOADIMAGEURLMODULE]: No texture manager. Can't function.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
RequestState state = (RequestState) result.AsyncState;
|
RequestState state = (RequestState) result.AsyncState;
|
||||||
WebRequest request = (WebRequest) state.Request;
|
WebRequest request = (WebRequest) state.Request;
|
||||||
Stream stream = null;
|
Stream stream = null;
|
||||||
|
|
|
@ -38,7 +38,7 @@ using OpenMetaverse;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Linq.Expressions;
|
using System.Linq.Expressions;
|
||||||
|
|
||||||
namespace OpenSim.Region.OptionalModules.Scripting.ScriptModuleComms
|
namespace OpenSim.Region.CoreModules.Scripting.ScriptModuleComms
|
||||||
{
|
{
|
||||||
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "ScriptModuleCommsModule")]
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "ScriptModuleCommsModule")]
|
||||||
class ScriptModuleCommsModule : INonSharedRegionModule, IScriptModuleComms
|
class ScriptModuleCommsModule : INonSharedRegionModule, IScriptModuleComms
|
||||||
|
|
|
@ -40,12 +40,14 @@ using OpenSim.Region.Framework.Interfaces;
|
||||||
using OpenSim.Region.Framework.Scenes;
|
using OpenSim.Region.Framework.Scenes;
|
||||||
using log4net;
|
using log4net;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
using Mono.Addins;
|
||||||
|
|
||||||
//using Cairo;
|
//using Cairo;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Scripting.VectorRender
|
namespace OpenSim.Region.CoreModules.Scripting.VectorRender
|
||||||
{
|
{
|
||||||
public class VectorRenderModule : IRegionModule, IDynamicTextureRender
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "VectorRenderModule")]
|
||||||
|
public class VectorRenderModule : ISharedRegionModule, IDynamicTextureRender
|
||||||
{
|
{
|
||||||
// These fields exist for testing purposes, please do not remove.
|
// These fields exist for testing purposes, please do not remove.
|
||||||
// private static bool s_flipper;
|
// private static bool s_flipper;
|
||||||
|
@ -56,6 +58,7 @@ namespace OpenSim.Region.CoreModules.Scripting.VectorRender
|
||||||
|
|
||||||
private Scene m_scene;
|
private Scene m_scene;
|
||||||
private IDynamicTextureManager m_textureManager;
|
private IDynamicTextureManager m_textureManager;
|
||||||
|
|
||||||
private Graphics m_graph;
|
private Graphics m_graph;
|
||||||
private string m_fontName = "Arial";
|
private string m_fontName = "Arial";
|
||||||
|
|
||||||
|
@ -103,6 +106,11 @@ namespace OpenSim.Region.CoreModules.Scripting.VectorRender
|
||||||
|
|
||||||
public bool AsyncConvertData(UUID id, string bodyData, string extraParams)
|
public bool AsyncConvertData(UUID id, string bodyData, string extraParams)
|
||||||
{
|
{
|
||||||
|
if (m_textureManager == null)
|
||||||
|
{
|
||||||
|
m_log.Warn("[VECTORRENDERMODULE]: No texture manager. Can't function");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
// XXX: This isn't actually being done asynchronously!
|
// XXX: This isn't actually being done asynchronously!
|
||||||
m_textureManager.ReturnData(id, ConvertData(bodyData, extraParams));
|
m_textureManager.ReturnData(id, ConvertData(bodyData, extraParams));
|
||||||
|
|
||||||
|
@ -131,45 +139,49 @@ namespace OpenSim.Region.CoreModules.Scripting.VectorRender
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region IRegionModule Members
|
#region ISharedRegionModule Members
|
||||||
|
|
||||||
public void Initialise(Scene scene, IConfigSource config)
|
public void Initialise(IConfigSource config)
|
||||||
{
|
{
|
||||||
if (m_scene == null)
|
|
||||||
{
|
|
||||||
m_scene = scene;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (m_graph == null)
|
|
||||||
{
|
|
||||||
// We won't dispose of these explicitly since this module is only removed when the entire simulator
|
|
||||||
// is shut down.
|
|
||||||
Bitmap bitmap = new Bitmap(1024, 1024, PixelFormat.Format32bppArgb);
|
|
||||||
m_graph = Graphics.FromImage(bitmap);
|
|
||||||
}
|
|
||||||
|
|
||||||
IConfig cfg = config.Configs["VectorRender"];
|
IConfig cfg = config.Configs["VectorRender"];
|
||||||
if (null != cfg)
|
if (null != cfg)
|
||||||
{
|
{
|
||||||
m_fontName = cfg.GetString("font_name", m_fontName);
|
m_fontName = cfg.GetString("font_name", m_fontName);
|
||||||
}
|
}
|
||||||
m_log.DebugFormat("[VECTORRENDERMODULE]: using font \"{0}\" for text rendering.", m_fontName);
|
m_log.DebugFormat("[VECTORRENDERMODULE]: using font \"{0}\" for text rendering.", m_fontName);
|
||||||
|
|
||||||
|
// We won't dispose of these explicitly since this module is only removed when the entire simulator
|
||||||
|
// is shut down.
|
||||||
|
Bitmap bitmap = new Bitmap(1024, 1024, PixelFormat.Format32bppArgb);
|
||||||
|
m_graph = Graphics.FromImage(bitmap);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void PostInitialise()
|
public void PostInitialise()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public void AddRegion(Scene scene)
|
||||||
|
{
|
||||||
|
if (m_scene == null)
|
||||||
|
{
|
||||||
|
m_scene = scene;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RegionLoaded(Scene scene)
|
||||||
|
{
|
||||||
|
if (m_textureManager == null && m_scene == scene)
|
||||||
{
|
{
|
||||||
m_textureManager = m_scene.RequestModuleInterface<IDynamicTextureManager>();
|
m_textureManager = m_scene.RequestModuleInterface<IDynamicTextureManager>();
|
||||||
if (m_textureManager != null)
|
if (m_textureManager != null)
|
||||||
{
|
{
|
||||||
m_textureManager.RegisterRender(GetContentType(), this);
|
m_textureManager.RegisterRender(GetContentType(), this);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// This code exists for testing purposes, please do not remove.
|
public void RemoveRegion(Scene scene)
|
||||||
// s_asset1Data = m_scene.AssetService.Get("00000000-0000-1111-9999-000000000001").Data;
|
{
|
||||||
// s_asset1Data = m_scene.AssetService.Get("9f4acf0d-1841-4e15-bdb8-3a12efc9dd8f").Data;
|
|
||||||
|
|
||||||
// Terrain dirt - smallest bin/assets file (6004 bytes)
|
|
||||||
// s_asset2Data = m_scene.AssetService.Get("b8d3965a-ad78-bf43-699b-bff8eca6c975").Data;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Close()
|
public void Close()
|
||||||
|
@ -181,9 +193,9 @@ namespace OpenSim.Region.CoreModules.Scripting.VectorRender
|
||||||
get { return "VectorRenderModule"; }
|
get { return "VectorRenderModule"; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool IsSharedModule
|
public Type ReplaceableInterface
|
||||||
{
|
{
|
||||||
get { return true; }
|
get { return null; }
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
|
@ -29,8 +29,12 @@ using System;
|
||||||
using System.Collections;
|
using System.Collections;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Text.RegularExpressions;
|
using System.Text.RegularExpressions;
|
||||||
|
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
|
using Mono.Addins;
|
||||||
|
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
|
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
using OpenSim.Region.Framework.Interfaces;
|
using OpenSim.Region.Framework.Interfaces;
|
||||||
using OpenSim.Region.Framework.Scenes;
|
using OpenSim.Region.Framework.Scenes;
|
||||||
|
@ -86,7 +90,8 @@ using OpenSim.Region.Framework.Scenes;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Scripting.WorldComm
|
namespace OpenSim.Region.CoreModules.Scripting.WorldComm
|
||||||
{
|
{
|
||||||
public class WorldCommModule : IRegionModule, IWorldComm
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "WorldCommModule")]
|
||||||
|
public class WorldCommModule : IWorldComm, INonSharedRegionModule
|
||||||
{
|
{
|
||||||
// private static readonly ILog m_log =
|
// private static readonly ILog m_log =
|
||||||
// LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
// LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
@ -99,9 +104,9 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
|
||||||
private int m_saydistance = 20;
|
private int m_saydistance = 20;
|
||||||
private int m_shoutdistance = 100;
|
private int m_shoutdistance = 100;
|
||||||
|
|
||||||
#region IRegionModule Members
|
#region INonSharedRegionModule Members
|
||||||
|
|
||||||
public void Initialise(Scene scene, IConfigSource config)
|
public void Initialise(IConfigSource config)
|
||||||
{
|
{
|
||||||
// wrap this in a try block so that defaults will work if
|
// wrap this in a try block so that defaults will work if
|
||||||
// the config file doesn't specify otherwise.
|
// the config file doesn't specify otherwise.
|
||||||
|
@ -109,23 +114,23 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
|
||||||
int maxhandles = 64;
|
int maxhandles = 64;
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
m_whisperdistance = config.Configs["Chat"].GetInt("whisper_distance", m_whisperdistance);
|
m_whisperdistance = config.Configs["Chat"].GetInt(
|
||||||
m_saydistance = config.Configs["Chat"].GetInt("say_distance", m_saydistance);
|
"whisper_distance", m_whisperdistance);
|
||||||
m_shoutdistance = config.Configs["Chat"].GetInt("shout_distance", m_shoutdistance);
|
m_saydistance = config.Configs["Chat"].GetInt(
|
||||||
maxlisteners = config.Configs["LL-Functions"].GetInt("max_listens_per_region", maxlisteners);
|
"say_distance", m_saydistance);
|
||||||
maxhandles = config.Configs["LL-Functions"].GetInt("max_listens_per_script", maxhandles);
|
m_shoutdistance = config.Configs["Chat"].GetInt(
|
||||||
|
"shout_distance", m_shoutdistance);
|
||||||
|
maxlisteners = config.Configs["LL-Functions"].GetInt(
|
||||||
|
"max_listens_per_region", maxlisteners);
|
||||||
|
maxhandles = config.Configs["LL-Functions"].GetInt(
|
||||||
|
"max_listens_per_script", maxhandles);
|
||||||
}
|
}
|
||||||
catch (Exception)
|
catch (Exception)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
if (maxlisteners < 1) maxlisteners = int.MaxValue;
|
if (maxlisteners < 1) maxlisteners = int.MaxValue;
|
||||||
if (maxhandles < 1) maxhandles = int.MaxValue;
|
if (maxhandles < 1) maxhandles = int.MaxValue;
|
||||||
|
|
||||||
m_scene = scene;
|
|
||||||
m_scene.RegisterModuleInterface<IWorldComm>(this);
|
|
||||||
m_listenerManager = new ListenerManager(maxlisteners, maxhandles);
|
m_listenerManager = new ListenerManager(maxlisteners, maxhandles);
|
||||||
m_scene.EventManager.OnChatFromClient += DeliverClientMessage;
|
|
||||||
m_scene.EventManager.OnChatBroadcast += DeliverClientMessage;
|
|
||||||
m_pendingQ = new Queue();
|
m_pendingQ = new Queue();
|
||||||
m_pending = Queue.Synchronized(m_pendingQ);
|
m_pending = Queue.Synchronized(m_pendingQ);
|
||||||
}
|
}
|
||||||
|
@ -134,6 +139,26 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void AddRegion(Scene scene)
|
||||||
|
{
|
||||||
|
m_scene = scene;
|
||||||
|
m_scene.RegisterModuleInterface<IWorldComm>(this);
|
||||||
|
m_scene.EventManager.OnChatFromClient += DeliverClientMessage;
|
||||||
|
m_scene.EventManager.OnChatBroadcast += DeliverClientMessage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RegionLoaded(Scene scene) { }
|
||||||
|
|
||||||
|
public void RemoveRegion(Scene scene)
|
||||||
|
{
|
||||||
|
if (scene != m_scene)
|
||||||
|
return;
|
||||||
|
|
||||||
|
m_scene.UnregisterModuleInterface<IWorldComm>(this);
|
||||||
|
m_scene.EventManager.OnChatBroadcast -= DeliverClientMessage;
|
||||||
|
m_scene.EventManager.OnChatBroadcast -= DeliverClientMessage;
|
||||||
|
}
|
||||||
|
|
||||||
public void Close()
|
public void Close()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
@ -143,10 +168,7 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
|
||||||
get { return "WorldCommModule"; }
|
get { return "WorldCommModule"; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool IsSharedModule
|
public Type ReplaceableInterface { get { return null; } }
|
||||||
{
|
|
||||||
get { return false; }
|
|
||||||
}
|
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
@ -278,7 +300,8 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
|
||||||
/// <param name="name">name of sender (object or avatar)</param>
|
/// <param name="name">name of sender (object or avatar)</param>
|
||||||
/// <param name="id">key of sender (object or avatar)</param>
|
/// <param name="id">key of sender (object or avatar)</param>
|
||||||
/// <param name="msg">msg to sent</param>
|
/// <param name="msg">msg to sent</param>
|
||||||
public void DeliverMessage(ChatTypeEnum type, int channel, string name, UUID id, string msg, Vector3 position)
|
public void DeliverMessage(ChatTypeEnum type, int channel,
|
||||||
|
string name, UUID id, string msg, Vector3 position)
|
||||||
{
|
{
|
||||||
// m_log.DebugFormat("[WorldComm] got[2] type {0}, channel {1}, name {2}, id {3}, msg {4}",
|
// m_log.DebugFormat("[WorldComm] got[2] type {0}, channel {1}, name {2}, id {3}, msg {4}",
|
||||||
// type, channel, name, id, msg);
|
// type, channel, name, id, msg);
|
||||||
|
@ -286,17 +309,21 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
|
||||||
// Determine which listen event filters match the given set of arguments, this results
|
// Determine which listen event filters match the given set of arguments, this results
|
||||||
// in a limited set of listeners, each belonging a host. If the host is in range, add them
|
// in a limited set of listeners, each belonging a host. If the host is in range, add them
|
||||||
// to the pending queue.
|
// to the pending queue.
|
||||||
foreach (ListenerInfo li in m_listenerManager.GetListeners(UUID.Zero, channel, name, id, msg))
|
foreach (ListenerInfo li
|
||||||
|
in m_listenerManager.GetListeners(UUID.Zero, channel,
|
||||||
|
name, id, msg))
|
||||||
{
|
{
|
||||||
// Dont process if this message is from yourself!
|
// Dont process if this message is from yourself!
|
||||||
if (li.GetHostID().Equals(id))
|
if (li.GetHostID().Equals(id))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
SceneObjectPart sPart = m_scene.GetSceneObjectPart(li.GetHostID());
|
SceneObjectPart sPart = m_scene.GetSceneObjectPart(
|
||||||
|
li.GetHostID());
|
||||||
if (sPart == null)
|
if (sPart == null)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
double dis = Util.GetDistanceTo(sPart.AbsolutePosition, position);
|
double dis = Util.GetDistanceTo(sPart.AbsolutePosition,
|
||||||
|
position);
|
||||||
switch (type)
|
switch (type)
|
||||||
{
|
{
|
||||||
case ChatTypeEnum.Whisper:
|
case ChatTypeEnum.Whisper:
|
||||||
|
@ -339,14 +366,16 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
|
||||||
/// <param name='msg'>
|
/// <param name='msg'>
|
||||||
/// Message.
|
/// Message.
|
||||||
/// </param>
|
/// </param>
|
||||||
public void DeliverMessageTo(UUID target, int channel, Vector3 pos, string name, UUID id, string msg)
|
public void DeliverMessageTo(UUID target, int channel, Vector3 pos,
|
||||||
|
string name, UUID id, string msg)
|
||||||
{
|
{
|
||||||
// Is id an avatar?
|
// Is id an avatar?
|
||||||
ScenePresence sp = m_scene.GetScenePresence(target);
|
ScenePresence sp = m_scene.GetScenePresence(target);
|
||||||
|
|
||||||
if (sp != null)
|
if (sp != null)
|
||||||
{
|
{
|
||||||
// ignore if a child agent this is restricted to inside one region
|
// ignore if a child agent this is restricted to inside one
|
||||||
|
// region
|
||||||
if (sp.IsChildAgent)
|
if (sp.IsChildAgent)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@ -355,7 +384,8 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
|
||||||
// non zero channel messages only go to the attachments
|
// non zero channel messages only go to the attachments
|
||||||
if (channel == 0)
|
if (channel == 0)
|
||||||
{
|
{
|
||||||
m_scene.SimChatToAgent(target, Utils.StringToBytes(msg), pos, name, id, false);
|
m_scene.SimChatToAgent(target, Utils.StringToBytes(msg),
|
||||||
|
pos, name, id, false);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -372,13 +402,18 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
|
||||||
}
|
}
|
||||||
|
|
||||||
// Need to check each attachment
|
// Need to check each attachment
|
||||||
foreach (ListenerInfo li in m_listenerManager.GetListeners(UUID.Zero, channel, name, id, msg))
|
foreach (ListenerInfo li
|
||||||
|
in m_listenerManager.GetListeners(UUID.Zero,
|
||||||
|
channel, name, id, msg))
|
||||||
{
|
{
|
||||||
if (li.GetHostID().Equals(id))
|
if (li.GetHostID().Equals(id))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if (m_scene.GetSceneObjectPart(li.GetHostID()) == null)
|
if (m_scene.GetSceneObjectPart(
|
||||||
|
li.GetHostID()) == null)
|
||||||
|
{
|
||||||
continue;
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
if (targets.Contains(li.GetHostID()))
|
if (targets.Contains(li.GetHostID()))
|
||||||
QueueMessage(new ListenerInfo(li, name, id, msg));
|
QueueMessage(new ListenerInfo(li, name, id, msg));
|
||||||
|
@ -389,13 +424,16 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
|
||||||
}
|
}
|
||||||
|
|
||||||
// No avatar found so look for an object
|
// No avatar found so look for an object
|
||||||
foreach (ListenerInfo li in m_listenerManager.GetListeners(UUID.Zero, channel, name, id, msg))
|
foreach (ListenerInfo li
|
||||||
|
in m_listenerManager.GetListeners(UUID.Zero, channel,
|
||||||
|
name, id, msg))
|
||||||
{
|
{
|
||||||
// Dont process if this message is from yourself!
|
// Dont process if this message is from yourself!
|
||||||
if (li.GetHostID().Equals(id))
|
if (li.GetHostID().Equals(id))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
SceneObjectPart sPart = m_scene.GetSceneObjectPart(li.GetHostID());
|
SceneObjectPart sPart = m_scene.GetSceneObjectPart(
|
||||||
|
li.GetHostID());
|
||||||
if (sPart == null)
|
if (sPart == null)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
@ -453,9 +491,15 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
|
||||||
private void DeliverClientMessage(Object sender, OSChatMessage e)
|
private void DeliverClientMessage(Object sender, OSChatMessage e)
|
||||||
{
|
{
|
||||||
if (null != e.Sender)
|
if (null != e.Sender)
|
||||||
DeliverMessage(e.Type, e.Channel, e.Sender.Name, e.Sender.AgentId, e.Message, e.Position);
|
{
|
||||||
|
DeliverMessage(e.Type, e.Channel, e.Sender.Name,
|
||||||
|
e.Sender.AgentId, e.Message, e.Position);
|
||||||
|
}
|
||||||
else
|
else
|
||||||
DeliverMessage(e.Type, e.Channel, e.From, UUID.Zero, e.Message, e.Position);
|
{
|
||||||
|
DeliverMessage(e.Type, e.Channel, e.From, UUID.Zero,
|
||||||
|
e.Message, e.Position);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public Object[] GetSerializationData(UUID itemID)
|
public Object[] GetSerializationData(UUID itemID)
|
||||||
|
@ -472,7 +516,8 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
|
||||||
|
|
||||||
public class ListenerManager
|
public class ListenerManager
|
||||||
{
|
{
|
||||||
private Dictionary<int, List<ListenerInfo>> m_listeners = new Dictionary<int, List<ListenerInfo>>();
|
private Dictionary<int, List<ListenerInfo>> m_listeners =
|
||||||
|
new Dictionary<int, List<ListenerInfo>>();
|
||||||
private int m_maxlisteners;
|
private int m_maxlisteners;
|
||||||
private int m_maxhandles;
|
private int m_maxhandles;
|
||||||
private int m_curlisteners;
|
private int m_curlisteners;
|
||||||
|
@ -531,7 +576,8 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
|
||||||
regexBitfield);
|
regexBitfield);
|
||||||
|
|
||||||
List<ListenerInfo> listeners;
|
List<ListenerInfo> listeners;
|
||||||
if (!m_listeners.TryGetValue(channel,out listeners))
|
if (!m_listeners.TryGetValue(
|
||||||
|
channel, out listeners))
|
||||||
{
|
{
|
||||||
listeners = new List<ListenerInfo>();
|
listeners = new List<ListenerInfo>();
|
||||||
m_listeners.Add(channel, listeners);
|
m_listeners.Add(channel, listeners);
|
||||||
|
@ -550,11 +596,13 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
|
||||||
{
|
{
|
||||||
lock (m_listeners)
|
lock (m_listeners)
|
||||||
{
|
{
|
||||||
foreach (KeyValuePair<int,List<ListenerInfo>> lis in m_listeners)
|
foreach (KeyValuePair<int, List<ListenerInfo>> lis
|
||||||
|
in m_listeners)
|
||||||
{
|
{
|
||||||
foreach (ListenerInfo li in lis.Value)
|
foreach (ListenerInfo li in lis.Value)
|
||||||
{
|
{
|
||||||
if (li.GetItemID().Equals(itemID) && li.GetHandle().Equals(handle))
|
if (li.GetItemID().Equals(itemID) &&
|
||||||
|
li.GetHandle().Equals(handle))
|
||||||
{
|
{
|
||||||
lis.Value.Remove(li);
|
lis.Value.Remove(li);
|
||||||
if (lis.Value.Count == 0)
|
if (lis.Value.Count == 0)
|
||||||
|
@ -577,13 +625,15 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
|
||||||
|
|
||||||
lock (m_listeners)
|
lock (m_listeners)
|
||||||
{
|
{
|
||||||
foreach (KeyValuePair<int,List<ListenerInfo>> lis in m_listeners)
|
foreach (KeyValuePair<int, List<ListenerInfo>> lis
|
||||||
|
in m_listeners)
|
||||||
{
|
{
|
||||||
foreach (ListenerInfo li in lis.Value)
|
foreach (ListenerInfo li in lis.Value)
|
||||||
{
|
{
|
||||||
if (li.GetItemID().Equals(itemID))
|
if (li.GetItemID().Equals(itemID))
|
||||||
{
|
{
|
||||||
// store them first, else the enumerated bails on us
|
// store them first, else the enumerated bails on
|
||||||
|
// us
|
||||||
removedListeners.Add(li);
|
removedListeners.Add(li);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -610,11 +660,13 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
|
||||||
{
|
{
|
||||||
lock (m_listeners)
|
lock (m_listeners)
|
||||||
{
|
{
|
||||||
foreach (KeyValuePair<int,List<ListenerInfo>> lis in m_listeners)
|
foreach (KeyValuePair<int, List<ListenerInfo>> lis
|
||||||
|
in m_listeners)
|
||||||
{
|
{
|
||||||
foreach (ListenerInfo li in lis.Value)
|
foreach (ListenerInfo li in lis.Value)
|
||||||
{
|
{
|
||||||
if (li.GetItemID().Equals(itemID) && li.GetHandle() == handle)
|
if (li.GetItemID().Equals(itemID) &&
|
||||||
|
li.GetHandle() == handle)
|
||||||
{
|
{
|
||||||
li.Activate();
|
li.Activate();
|
||||||
// only one, bail out
|
// only one, bail out
|
||||||
|
@ -629,11 +681,13 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
|
||||||
{
|
{
|
||||||
lock (m_listeners)
|
lock (m_listeners)
|
||||||
{
|
{
|
||||||
foreach (KeyValuePair<int,List<ListenerInfo>> lis in m_listeners)
|
foreach (KeyValuePair<int, List<ListenerInfo>> lis
|
||||||
|
in m_listeners)
|
||||||
{
|
{
|
||||||
foreach (ListenerInfo li in lis.Value)
|
foreach (ListenerInfo li in lis.Value)
|
||||||
{
|
{
|
||||||
if (li.GetItemID().Equals(itemID) && li.GetHandle() == handle)
|
if (li.GetItemID().Equals(itemID) &&
|
||||||
|
li.GetHandle() == handle)
|
||||||
{
|
{
|
||||||
li.Deactivate();
|
li.Deactivate();
|
||||||
// only one, bail out
|
// only one, bail out
|
||||||
|
@ -644,7 +698,12 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// non-locked access, since its always called in the context of the lock
|
/// <summary>
|
||||||
|
/// non-locked access, since its always called in the context of the
|
||||||
|
/// lock
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="itemID"></param>
|
||||||
|
/// <returns></returns>
|
||||||
private int GetNewHandle(UUID itemID)
|
private int GetNewHandle(UUID itemID)
|
||||||
{
|
{
|
||||||
List<int> handles = new List<int>();
|
List<int> handles = new List<int>();
|
||||||
|
@ -685,10 +744,23 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
// Theres probably a more clever and efficient way to
|
/// <summary>
|
||||||
// do this, maybe with regex.
|
/// Get listeners matching the input parameters.
|
||||||
// PM2008: Ha, one could even be smart and define a specialized Enumerator.
|
/// </summary>
|
||||||
public List<ListenerInfo> GetListeners(UUID itemID, int channel, string name, UUID id, string msg)
|
/// <remarks>
|
||||||
|
/// Theres probably a more clever and efficient way to do this, maybe
|
||||||
|
/// with regex.
|
||||||
|
/// PM2008: Ha, one could even be smart and define a specialized
|
||||||
|
/// Enumerator.
|
||||||
|
/// </remarks>
|
||||||
|
/// <param name="itemID"></param>
|
||||||
|
/// <param name="channel"></param>
|
||||||
|
/// <param name="name"></param>
|
||||||
|
/// <param name="id"></param>
|
||||||
|
/// <param name="msg"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
public List<ListenerInfo> GetListeners(UUID itemID, int channel,
|
||||||
|
string name, UUID id, string msg)
|
||||||
{
|
{
|
||||||
List<ListenerInfo> collection = new List<ListenerInfo>();
|
List<ListenerInfo> collection = new List<ListenerInfo>();
|
||||||
|
|
||||||
|
@ -706,7 +778,8 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if (!itemID.Equals(UUID.Zero) && !li.GetItemID().Equals(itemID))
|
if (!itemID.Equals(UUID.Zero) &&
|
||||||
|
!li.GetItemID().Equals(itemID))
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
@ -771,7 +844,10 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
|
||||||
lock (m_listeners)
|
lock (m_listeners)
|
||||||
{
|
{
|
||||||
if (!m_listeners.ContainsKey((int)item[2]))
|
if (!m_listeners.ContainsKey((int)item[2]))
|
||||||
m_listeners.Add((int)item[2], new List<ListenerInfo>());
|
{
|
||||||
|
m_listeners.Add((int)item[2],
|
||||||
|
new List<ListenerInfo>());
|
||||||
|
}
|
||||||
m_listeners[(int)item[2]].Add(info);
|
m_listeners[(int)item[2]].Add(info);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -782,17 +858,54 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
|
||||||
|
|
||||||
public class ListenerInfo : IWorldCommListenerInfo
|
public class ListenerInfo : IWorldCommListenerInfo
|
||||||
{
|
{
|
||||||
private bool m_active; // Listener is active or not
|
/// <summary>
|
||||||
private int m_handle; // Assigned handle of this listener
|
/// Listener is active or not
|
||||||
private uint m_localID; // Local ID from script engine
|
/// </summary>
|
||||||
private UUID m_itemID; // ID of the host script engine
|
private bool m_active;
|
||||||
private UUID m_hostID; // ID of the host/scene part
|
|
||||||
private int m_channel; // Channel
|
|
||||||
private UUID m_id; // ID to filter messages from
|
|
||||||
private string m_name; // Object name to filter messages from
|
|
||||||
private string m_message; // The message
|
|
||||||
|
|
||||||
public ListenerInfo(int handle, uint localID, UUID ItemID, UUID hostID, int channel, string name, UUID id, string message)
|
/// <summary>
|
||||||
|
/// Assigned handle of this listener
|
||||||
|
/// </summary>
|
||||||
|
private int m_handle;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Local ID from script engine
|
||||||
|
/// </summary>
|
||||||
|
private uint m_localID;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// ID of the host script engine
|
||||||
|
/// </summary>
|
||||||
|
private UUID m_itemID;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// ID of the host/scene part
|
||||||
|
/// </summary>
|
||||||
|
private UUID m_hostID;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Channel
|
||||||
|
/// </summary>
|
||||||
|
private int m_channel;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// ID to filter messages from
|
||||||
|
/// </summary>
|
||||||
|
private UUID m_id;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Object name to filter messages from
|
||||||
|
/// </summary>
|
||||||
|
private string m_name;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The message
|
||||||
|
/// </summary>
|
||||||
|
private string m_message;
|
||||||
|
|
||||||
|
public ListenerInfo(int handle, uint localID, UUID ItemID,
|
||||||
|
UUID hostID, int channel, string name, UUID id,
|
||||||
|
string message)
|
||||||
{
|
{
|
||||||
Initialise(handle, localID, ItemID, hostID, channel, name, id,
|
Initialise(handle, localID, ItemID, hostID, channel, name, id,
|
||||||
message, 0);
|
message, 0);
|
||||||
|
@ -806,17 +919,23 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
|
||||||
message, regexBitfield);
|
message, regexBitfield);
|
||||||
}
|
}
|
||||||
|
|
||||||
public ListenerInfo(ListenerInfo li, string name, UUID id, string message)
|
public ListenerInfo(ListenerInfo li, string name, UUID id,
|
||||||
|
string message)
|
||||||
{
|
{
|
||||||
Initialise(li.m_handle, li.m_localID, li.m_itemID, li.m_hostID, li.m_channel, name, id, message, 0);
|
Initialise(li.m_handle, li.m_localID, li.m_itemID, li.m_hostID,
|
||||||
|
li.m_channel, name, id, message, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
public ListenerInfo(ListenerInfo li, string name, UUID id, string message, int regexBitfield)
|
public ListenerInfo(ListenerInfo li, string name, UUID id,
|
||||||
|
string message, int regexBitfield)
|
||||||
{
|
{
|
||||||
Initialise(li.m_handle, li.m_localID, li.m_itemID, li.m_hostID, li.m_channel, name, id, message, regexBitfield);
|
Initialise(li.m_handle, li.m_localID, li.m_itemID, li.m_hostID,
|
||||||
|
li.m_channel, name, id, message, regexBitfield);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void Initialise(int handle, uint localID, UUID ItemID, UUID hostID, int channel, string name, UUID id, string message, int regexBitfield)
|
private void Initialise(int handle, uint localID, UUID ItemID,
|
||||||
|
UUID hostID, int channel, string name, UUID id,
|
||||||
|
string message, int regexBitfield)
|
||||||
{
|
{
|
||||||
m_active = true;
|
m_active = true;
|
||||||
m_handle = handle;
|
m_handle = handle;
|
||||||
|
@ -845,9 +964,12 @@ namespace OpenSim.Region.CoreModules.Scripting.WorldComm
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static ListenerInfo FromData(uint localID, UUID ItemID, UUID hostID, Object[] data)
|
public static ListenerInfo FromData(uint localID, UUID ItemID,
|
||||||
|
UUID hostID, Object[] data)
|
||||||
{
|
{
|
||||||
ListenerInfo linfo = new ListenerInfo((int)data[1], localID, ItemID, hostID, (int)data[2], (string)data[3], (UUID)data[4], (string)data[5]);
|
ListenerInfo linfo = new ListenerInfo((int)data[1], localID,
|
||||||
|
ItemID, hostID, (int)data[2], (string)data[3],
|
||||||
|
(UUID)data[4], (string)data[5]);
|
||||||
linfo.m_active = (bool)data[0];
|
linfo.m_active = (bool)data[0];
|
||||||
if (data.Length >= 7)
|
if (data.Length >= 7)
|
||||||
{
|
{
|
||||||
|
|
|
@ -40,6 +40,7 @@ using OpenSim.Framework.Servers;
|
||||||
using OpenSim.Framework.Servers.HttpServer;
|
using OpenSim.Framework.Servers.HttpServer;
|
||||||
using OpenSim.Region.Framework.Interfaces;
|
using OpenSim.Region.Framework.Interfaces;
|
||||||
using OpenSim.Region.Framework.Scenes;
|
using OpenSim.Region.Framework.Scenes;
|
||||||
|
using Mono.Addins;
|
||||||
|
|
||||||
/*****************************************************
|
/*****************************************************
|
||||||
*
|
*
|
||||||
|
@ -76,7 +77,8 @@ using OpenSim.Region.Framework.Scenes;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.Scripting.XMLRPC
|
namespace OpenSim.Region.CoreModules.Scripting.XMLRPC
|
||||||
{
|
{
|
||||||
public class XMLRPCModule : IRegionModule, IXMLRPC
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "XMLRPCModule")]
|
||||||
|
public class XMLRPCModule : ISharedRegionModule, IXMLRPC
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
||||||
|
@ -86,6 +88,10 @@ namespace OpenSim.Region.CoreModules.Scripting.XMLRPC
|
||||||
private Dictionary<UUID, RPCChannelInfo> m_openChannels;
|
private Dictionary<UUID, RPCChannelInfo> m_openChannels;
|
||||||
private Dictionary<UUID, SendRemoteDataRequest> m_pendingSRDResponses;
|
private Dictionary<UUID, SendRemoteDataRequest> m_pendingSRDResponses;
|
||||||
private int m_remoteDataPort = 0;
|
private int m_remoteDataPort = 0;
|
||||||
|
public int Port
|
||||||
|
{
|
||||||
|
get { return m_remoteDataPort; }
|
||||||
|
}
|
||||||
|
|
||||||
private Dictionary<UUID, RPCRequestInfo> m_rpcPending;
|
private Dictionary<UUID, RPCRequestInfo> m_rpcPending;
|
||||||
private Dictionary<UUID, RPCRequestInfo> m_rpcPendingResponses;
|
private Dictionary<UUID, RPCRequestInfo> m_rpcPendingResponses;
|
||||||
|
@ -94,15 +100,13 @@ namespace OpenSim.Region.CoreModules.Scripting.XMLRPC
|
||||||
private int RemoteReplyScriptWait = 300;
|
private int RemoteReplyScriptWait = 300;
|
||||||
private object XMLRPCListLock = new object();
|
private object XMLRPCListLock = new object();
|
||||||
|
|
||||||
#region IRegionModule Members
|
#region ISharedRegionModule Members
|
||||||
|
|
||||||
public void Initialise(Scene scene, IConfigSource config)
|
public void Initialise(IConfigSource config)
|
||||||
{
|
{
|
||||||
// We need to create these early because the scripts might be calling
|
// We need to create these early because the scripts might be calling
|
||||||
// But since this gets called for every region, we need to make sure they
|
// But since this gets called for every region, we need to make sure they
|
||||||
// get called only one time (or we lose any open channels)
|
// get called only one time (or we lose any open channels)
|
||||||
if (null == m_openChannels)
|
|
||||||
{
|
|
||||||
m_openChannels = new Dictionary<UUID, RPCChannelInfo>();
|
m_openChannels = new Dictionary<UUID, RPCChannelInfo>();
|
||||||
m_rpcPending = new Dictionary<UUID, RPCRequestInfo>();
|
m_rpcPending = new Dictionary<UUID, RPCRequestInfo>();
|
||||||
m_rpcPendingResponses = new Dictionary<UUID, RPCRequestInfo>();
|
m_rpcPendingResponses = new Dictionary<UUID, RPCRequestInfo>();
|
||||||
|
@ -117,14 +121,6 @@ namespace OpenSim.Region.CoreModules.Scripting.XMLRPC
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!m_scenes.Contains(scene))
|
|
||||||
{
|
|
||||||
m_scenes.Add(scene);
|
|
||||||
|
|
||||||
scene.RegisterModuleInterface<IXMLRPC>(this);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void PostInitialise()
|
public void PostInitialise()
|
||||||
{
|
{
|
||||||
if (IsEnabled())
|
if (IsEnabled())
|
||||||
|
@ -140,6 +136,35 @@ namespace OpenSim.Region.CoreModules.Scripting.XMLRPC
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void AddRegion(Scene scene)
|
||||||
|
{
|
||||||
|
if (!IsEnabled())
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (!m_scenes.Contains(scene))
|
||||||
|
{
|
||||||
|
m_scenes.Add(scene);
|
||||||
|
|
||||||
|
scene.RegisterModuleInterface<IXMLRPC>(this);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RegionLoaded(Scene scene)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RemoveRegion(Scene scene)
|
||||||
|
{
|
||||||
|
if (!IsEnabled())
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (m_scenes.Contains(scene))
|
||||||
|
{
|
||||||
|
scene.UnregisterModuleInterface<IXMLRPC>(this);
|
||||||
|
m_scenes.Remove(scene);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public void Close()
|
public void Close()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
@ -149,14 +174,9 @@ namespace OpenSim.Region.CoreModules.Scripting.XMLRPC
|
||||||
get { return m_name; }
|
get { return m_name; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool IsSharedModule
|
public Type ReplaceableInterface
|
||||||
{
|
{
|
||||||
get { return true; }
|
get { return null; }
|
||||||
}
|
|
||||||
|
|
||||||
public int Port
|
|
||||||
{
|
|
||||||
get { return m_remoteDataPort; }
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
|
@ -29,6 +29,7 @@ using System;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
using OpenSim.Framework.Servers;
|
using OpenSim.Framework.Servers;
|
||||||
|
@ -39,6 +40,7 @@ using OpenSim.Server.Handlers.Base;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Asset
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Asset
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "AssetServiceInConnectorModule")]
|
||||||
public class AssetServiceInConnectorModule : ISharedRegionModule
|
public class AssetServiceInConnectorModule : ISharedRegionModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
@ -47,7 +49,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Asset
|
||||||
private IConfigSource m_Config;
|
private IConfigSource m_Config;
|
||||||
bool m_Registered = false;
|
bool m_Registered = false;
|
||||||
|
|
||||||
#region IRegionModule interface
|
#region Region Module interface
|
||||||
|
|
||||||
public void Initialise(IConfigSource config)
|
public void Initialise(IConfigSource config)
|
||||||
{
|
{
|
||||||
|
|
|
@ -29,6 +29,7 @@ using System;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
using OpenSim.Framework.Servers;
|
using OpenSim.Framework.Servers;
|
||||||
|
@ -41,6 +42,7 @@ using OpenSim.Services.Interfaces;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Authentication
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Authentication
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "AuthenticationServiceInConnectorModule")]
|
||||||
public class AuthenticationServiceInConnectorModule : ISharedRegionModule
|
public class AuthenticationServiceInConnectorModule : ISharedRegionModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
@ -49,7 +51,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Authentication
|
||||||
private IConfigSource m_Config;
|
private IConfigSource m_Config;
|
||||||
bool m_Registered = false;
|
bool m_Registered = false;
|
||||||
|
|
||||||
#region IRegionModule interface
|
#region Region Module interface
|
||||||
|
|
||||||
public void Initialise(IConfigSource config)
|
public void Initialise(IConfigSource config)
|
||||||
{
|
{
|
||||||
|
|
|
@ -29,6 +29,7 @@ using System;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
using OpenSim.Framework.Servers;
|
using OpenSim.Framework.Servers;
|
||||||
|
@ -41,6 +42,7 @@ using OpenSim.Services.Interfaces;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Grid
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Grid
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "GridInfoServiceInConnectorModule")]
|
||||||
public class GridInfoServiceInConnectorModule : ISharedRegionModule
|
public class GridInfoServiceInConnectorModule : ISharedRegionModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
@ -49,7 +51,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Grid
|
||||||
private IConfigSource m_Config;
|
private IConfigSource m_Config;
|
||||||
bool m_Registered = false;
|
bool m_Registered = false;
|
||||||
|
|
||||||
#region IRegionModule interface
|
#region Region Module interface
|
||||||
|
|
||||||
public void Initialise(IConfigSource config)
|
public void Initialise(IConfigSource config)
|
||||||
{
|
{
|
||||||
|
|
|
@ -29,6 +29,7 @@ using System;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
using OpenSim.Framework.Servers;
|
using OpenSim.Framework.Servers;
|
||||||
|
@ -42,6 +43,7 @@ using GridRegion = OpenSim.Services.Interfaces.GridRegion;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Hypergrid
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Hypergrid
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "HypergridServiceInConnectorModule")]
|
||||||
public class HypergridServiceInConnectorModule : ISharedRegionModule
|
public class HypergridServiceInConnectorModule : ISharedRegionModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
@ -53,7 +55,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Hypergrid
|
||||||
private GatekeeperServiceInConnector m_HypergridHandler;
|
private GatekeeperServiceInConnector m_HypergridHandler;
|
||||||
private UserAgentServerConnector m_UASHandler;
|
private UserAgentServerConnector m_UASHandler;
|
||||||
|
|
||||||
#region IRegionModule interface
|
#region Region Module interface
|
||||||
|
|
||||||
public void Initialise(IConfigSource config)
|
public void Initialise(IConfigSource config)
|
||||||
{
|
{
|
||||||
|
|
|
@ -29,6 +29,7 @@ using System;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
using OpenSim.Framework.Servers;
|
using OpenSim.Framework.Servers;
|
||||||
|
@ -39,6 +40,7 @@ using OpenSim.Server.Handlers.Base;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Inventory
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Inventory
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "InventoryServiceInConnectorModule")]
|
||||||
public class InventoryServiceInConnectorModule : ISharedRegionModule
|
public class InventoryServiceInConnectorModule : ISharedRegionModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
@ -47,7 +49,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Inventory
|
||||||
private IConfigSource m_Config;
|
private IConfigSource m_Config;
|
||||||
bool m_Registered = false;
|
bool m_Registered = false;
|
||||||
|
|
||||||
#region IRegionModule interface
|
#region Region Module interface
|
||||||
|
|
||||||
public void Initialise(IConfigSource config)
|
public void Initialise(IConfigSource config)
|
||||||
{
|
{
|
||||||
|
|
|
@ -29,6 +29,7 @@ using System;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
using OpenSim.Framework.Servers;
|
using OpenSim.Framework.Servers;
|
||||||
|
@ -42,6 +43,7 @@ using OpenMetaverse;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Land
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Land
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "LandServiceInConnectorModule")]
|
||||||
public class LandServiceInConnectorModule : ISharedRegionModule, ILandService
|
public class LandServiceInConnectorModule : ISharedRegionModule, ILandService
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
@ -51,7 +53,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Land
|
||||||
private IConfigSource m_Config;
|
private IConfigSource m_Config;
|
||||||
private List<Scene> m_Scenes = new List<Scene>();
|
private List<Scene> m_Scenes = new List<Scene>();
|
||||||
|
|
||||||
#region IRegionModule interface
|
#region Region Module interface
|
||||||
|
|
||||||
public void Initialise(IConfigSource config)
|
public void Initialise(IConfigSource config)
|
||||||
{
|
{
|
||||||
|
|
|
@ -29,6 +29,7 @@ using System;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
using OpenSim.Framework.Servers;
|
using OpenSim.Framework.Servers;
|
||||||
|
@ -42,6 +43,7 @@ using OpenSim.Services.Interfaces;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Login
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Login
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "LLLoginServiceInConnectorModule")]
|
||||||
public class LLLoginServiceInConnectorModule : ISharedRegionModule
|
public class LLLoginServiceInConnectorModule : ISharedRegionModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
@ -51,7 +53,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Login
|
||||||
private IConfigSource m_Config;
|
private IConfigSource m_Config;
|
||||||
private List<Scene> m_Scenes = new List<Scene>();
|
private List<Scene> m_Scenes = new List<Scene>();
|
||||||
|
|
||||||
#region IRegionModule interface
|
#region Region Module interface
|
||||||
|
|
||||||
public void Initialise(IConfigSource config)
|
public void Initialise(IConfigSource config)
|
||||||
{
|
{
|
||||||
|
|
|
@ -42,7 +42,7 @@ using OpenSim.Services.Interfaces;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.MapImage
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.MapImage
|
||||||
{
|
{
|
||||||
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")]
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "MapImageServiceInConnectorModule")]
|
||||||
public class MapImageServiceInConnectorModule : ISharedRegionModule
|
public class MapImageServiceInConnectorModule : ISharedRegionModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
@ -50,7 +50,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.MapImage
|
||||||
|
|
||||||
private IConfigSource m_Config;
|
private IConfigSource m_Config;
|
||||||
|
|
||||||
#region IRegionModule interface
|
#region Region Module interface
|
||||||
|
|
||||||
public void Initialise(IConfigSource config)
|
public void Initialise(IConfigSource config)
|
||||||
{
|
{
|
||||||
|
|
|
@ -29,6 +29,7 @@ using System;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
using OpenSim.Framework.Servers;
|
using OpenSim.Framework.Servers;
|
||||||
|
@ -41,6 +42,7 @@ using OpenSim.Services.Interfaces;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Neighbour
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Neighbour
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "NeighbourServiceInConnectorModule")]
|
||||||
public class NeighbourServiceInConnectorModule : ISharedRegionModule, INeighbourService
|
public class NeighbourServiceInConnectorModule : ISharedRegionModule, INeighbourService
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
@ -50,7 +52,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Neighbour
|
||||||
private IConfigSource m_Config;
|
private IConfigSource m_Config;
|
||||||
private List<Scene> m_Scenes = new List<Scene>();
|
private List<Scene> m_Scenes = new List<Scene>();
|
||||||
|
|
||||||
#region IRegionModule interface
|
#region Region Module interface
|
||||||
|
|
||||||
public void Initialise(IConfigSource config)
|
public void Initialise(IConfigSource config)
|
||||||
{
|
{
|
||||||
|
|
|
@ -29,6 +29,7 @@ using System;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
using OpenSim.Framework.Servers;
|
using OpenSim.Framework.Servers;
|
||||||
|
@ -40,7 +41,7 @@ using OpenSim.Server.Handlers.Base;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Simulation
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Simulation
|
||||||
{
|
{
|
||||||
// Under construction
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "SimulationServiceInConnectorModule")]
|
||||||
public class SimulationServiceInConnectorModule : ISharedRegionModule
|
public class SimulationServiceInConnectorModule : ISharedRegionModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
@ -49,7 +50,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsIn.Simulation
|
||||||
private IConfigSource m_Config;
|
private IConfigSource m_Config;
|
||||||
bool m_Registered = false;
|
bool m_Registered = false;
|
||||||
|
|
||||||
#region IRegionModule interface
|
#region Region Module interface
|
||||||
|
|
||||||
public void Initialise(IConfigSource config)
|
public void Initialise(IConfigSource config)
|
||||||
{
|
{
|
||||||
|
|
|
@ -26,6 +26,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
@ -40,8 +41,8 @@ using OpenMetaverse;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Asset
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Asset
|
||||||
{
|
{
|
||||||
public class HGAssetBroker :
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "HGAssetBroker")]
|
||||||
ISharedRegionModule, IAssetService
|
public class HGAssetBroker : ISharedRegionModule, IAssetService
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log =
|
private static readonly ILog m_log =
|
||||||
LogManager.GetLogger(
|
LogManager.GetLogger(
|
||||||
|
|
|
@ -26,6 +26,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
@ -38,6 +39,7 @@ using OpenSim.Services.Interfaces;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Asset
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Asset
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "LocalAssetServicesConnector")]
|
||||||
public class LocalAssetServicesConnector : ISharedRegionModule, IAssetService
|
public class LocalAssetServicesConnector : ISharedRegionModule, IAssetService
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
|
@ -26,6 +26,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
@ -38,6 +39,7 @@ using OpenSim.Services.Interfaces;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Asset
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Asset
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "RemoteAssetServicesConnector")]
|
||||||
public class RemoteAssetServicesConnector :
|
public class RemoteAssetServicesConnector :
|
||||||
AssetServicesConnector, ISharedRegionModule, IAssetService
|
AssetServicesConnector, ISharedRegionModule, IAssetService
|
||||||
{
|
{
|
||||||
|
|
|
@ -29,6 +29,7 @@ using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenSim.Region.Framework.Interfaces;
|
using OpenSim.Region.Framework.Interfaces;
|
||||||
using OpenSim.Region.Framework.Scenes;
|
using OpenSim.Region.Framework.Scenes;
|
||||||
|
@ -39,6 +40,7 @@ using OpenMetaverse;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Authentication
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Authentication
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "LocalAuthenticationServicesConnector")]
|
||||||
public class LocalAuthenticationServicesConnector : ISharedRegionModule, IAuthenticationService
|
public class LocalAuthenticationServicesConnector : ISharedRegionModule, IAuthenticationService
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log =
|
private static readonly ILog m_log =
|
||||||
|
|
|
@ -28,6 +28,7 @@
|
||||||
using System;
|
using System;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using OpenSim.Region.Framework.Interfaces;
|
using OpenSim.Region.Framework.Interfaces;
|
||||||
using OpenSim.Region.Framework.Scenes;
|
using OpenSim.Region.Framework.Scenes;
|
||||||
|
@ -36,6 +37,7 @@ using OpenSim.Services.Connectors;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Authentication
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Authentication
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "RemoteAuthenticationServicesConnector")]
|
||||||
public class RemoteAuthenticationServicesConnector : AuthenticationServicesConnector,
|
public class RemoteAuthenticationServicesConnector : AuthenticationServicesConnector,
|
||||||
ISharedRegionModule, IAuthenticationService
|
ISharedRegionModule, IAuthenticationService
|
||||||
{
|
{
|
||||||
|
|
|
@ -26,6 +26,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
@ -39,6 +40,7 @@ using OpenMetaverse;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Authorization
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Authorization
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "LocalAuthorizationServicesConnector")]
|
||||||
public class LocalAuthorizationServicesConnector : INonSharedRegionModule, IAuthorizationService
|
public class LocalAuthorizationServicesConnector : INonSharedRegionModule, IAuthorizationService
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log =
|
private static readonly ILog m_log =
|
||||||
|
|
|
@ -26,6 +26,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
@ -39,6 +40,7 @@ using OpenMetaverse;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Authorization
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Authorization
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "RemoteAuthorizationServicesConnector")]
|
||||||
public class RemoteAuthorizationServicesConnector :
|
public class RemoteAuthorizationServicesConnector :
|
||||||
AuthorizationServicesConnector, ISharedRegionModule, IAuthorizationService
|
AuthorizationServicesConnector, ISharedRegionModule, IAuthorizationService
|
||||||
{
|
{
|
||||||
|
|
|
@ -29,6 +29,7 @@ using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
using OpenSim.Region.Framework.Interfaces;
|
using OpenSim.Region.Framework.Interfaces;
|
||||||
|
@ -40,6 +41,7 @@ using OpenMetaverse;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Avatar
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Avatar
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "LocalAvatarServicesConnector")]
|
||||||
public class LocalAvatarServicesConnector : ISharedRegionModule, IAvatarService
|
public class LocalAvatarServicesConnector : ISharedRegionModule, IAvatarService
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log =
|
private static readonly ILog m_log =
|
||||||
|
|
|
@ -26,6 +26,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using log4net;
|
using log4net;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
@ -36,6 +37,7 @@ using OpenSim.Services.Connectors;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Avatar
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Avatar
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "RemoteAvatarServicesConnector")]
|
||||||
public class RemoteAvatarServicesConnector : AvatarServicesConnector,
|
public class RemoteAvatarServicesConnector : AvatarServicesConnector,
|
||||||
ISharedRegionModule, IAvatarService
|
ISharedRegionModule, IAvatarService
|
||||||
{
|
{
|
||||||
|
|
|
@ -26,6 +26,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
@ -41,6 +42,7 @@ using OpenMetaverse;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Grid
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Grid
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "LocalGridServicesConnector")]
|
||||||
public class LocalGridServicesConnector : ISharedRegionModule, IGridService
|
public class LocalGridServicesConnector : ISharedRegionModule, IGridService
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log =
|
private static readonly ILog m_log =
|
||||||
|
|
|
@ -26,6 +26,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
@ -42,6 +43,7 @@ using GridRegion = OpenSim.Services.Interfaces.GridRegion;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Grid
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Grid
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "RemoteGridServicesConnector")]
|
||||||
public class RemoteGridServicesConnector : ISharedRegionModule, IGridService
|
public class RemoteGridServicesConnector : ISharedRegionModule, IGridService
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log =
|
private static readonly ILog m_log =
|
||||||
|
|
|
@ -29,6 +29,7 @@ using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenSim.Region.Framework.Interfaces;
|
using OpenSim.Region.Framework.Interfaces;
|
||||||
using OpenSim.Region.Framework.Scenes;
|
using OpenSim.Region.Framework.Scenes;
|
||||||
|
@ -39,6 +40,7 @@ using OpenMetaverse;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.GridUser
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.GridUser
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "LocalGridUserServicesConnector")]
|
||||||
public class LocalGridUserServicesConnector : ISharedRegionModule, IGridUserService
|
public class LocalGridUserServicesConnector : ISharedRegionModule, IGridUserService
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log =
|
private static readonly ILog m_log =
|
||||||
|
|
|
@ -36,10 +36,12 @@ using OpenSim.Services.Connectors;
|
||||||
|
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.GridUser
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.GridUser
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "RemoteGridUserServicesConnector")]
|
||||||
public class RemoteGridUserServicesConnector : ISharedRegionModule, IGridUserService
|
public class RemoteGridUserServicesConnector : ISharedRegionModule, IGridUserService
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
|
@ -26,6 +26,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
@ -42,6 +43,7 @@ using OpenMetaverse;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "HGInventoryBroker")]
|
||||||
public class HGInventoryBroker : ISharedRegionModule, IInventoryService
|
public class HGInventoryBroker : ISharedRegionModule, IInventoryService
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log =
|
private static readonly ILog m_log =
|
||||||
|
|
|
@ -26,6 +26,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
|
@ -41,6 +42,7 @@ using OpenMetaverse;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "LocalInventoryServicesConnector")]
|
||||||
public class LocalInventoryServicesConnector : ISharedRegionModule, IInventoryService
|
public class LocalInventoryServicesConnector : ISharedRegionModule, IInventoryService
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log =
|
private static readonly ILog m_log =
|
||||||
|
|
|
@ -29,6 +29,7 @@ using log4net;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
using OpenSim.Framework.Monitoring;
|
using OpenSim.Framework.Monitoring;
|
||||||
|
@ -40,6 +41,7 @@ using OpenMetaverse;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Inventory
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "RemoteXInventoryServicesConnector")]
|
||||||
public class RemoteXInventoryServicesConnector : ISharedRegionModule, IInventoryService
|
public class RemoteXInventoryServicesConnector : ISharedRegionModule, IInventoryService
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log =
|
private static readonly ILog m_log =
|
||||||
|
|
|
@ -26,6 +26,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
@ -39,8 +40,8 @@ using OpenMetaverse;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Land
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Land
|
||||||
{
|
{
|
||||||
public class LocalLandServicesConnector :
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "LocalLandServicesConnector")]
|
||||||
ISharedRegionModule, ILandService
|
public class LocalLandServicesConnector : ISharedRegionModule, ILandService
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log =
|
private static readonly ILog m_log =
|
||||||
LogManager.GetLogger(
|
LogManager.GetLogger(
|
||||||
|
|
|
@ -26,6 +26,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
@ -41,6 +42,7 @@ using OpenMetaverse;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Land
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Land
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "RemoteLandServicesConnector")]
|
||||||
public class RemoteLandServicesConnector :
|
public class RemoteLandServicesConnector :
|
||||||
LandServicesConnector, ISharedRegionModule, ILandService
|
LandServicesConnector, ISharedRegionModule, ILandService
|
||||||
{
|
{
|
||||||
|
|
|
@ -52,7 +52,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.MapImage
|
||||||
/// <remarks>
|
/// <remarks>
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
|
|
||||||
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")]
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "MapImageServiceModule")]
|
||||||
public class MapImageServiceModule : ISharedRegionModule
|
public class MapImageServiceModule : ISharedRegionModule
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log =
|
private static readonly ILog m_log =
|
||||||
|
|
|
@ -29,6 +29,7 @@ using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
using OpenSim.Framework;
|
using OpenSim.Framework;
|
||||||
|
@ -39,6 +40,7 @@ using OpenSim.Services.Interfaces;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Neighbour
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Neighbour
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "LocalNeighbourServicesConnector")]
|
||||||
public class LocalNeighbourServicesConnector :
|
public class LocalNeighbourServicesConnector :
|
||||||
ISharedRegionModule, INeighbourService
|
ISharedRegionModule, INeighbourService
|
||||||
{
|
{
|
||||||
|
|
|
@ -26,6 +26,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
@ -39,6 +40,7 @@ using OpenSim.Server.Base;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Neighbour
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Neighbour
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "RemoteNeighbourServicesConnector")]
|
||||||
public class RemoteNeighbourServicesConnector :
|
public class RemoteNeighbourServicesConnector :
|
||||||
NeighbourServicesConnector, ISharedRegionModule, INeighbourService
|
NeighbourServicesConnector, ISharedRegionModule, INeighbourService
|
||||||
{
|
{
|
||||||
|
|
|
@ -36,10 +36,12 @@ using PresenceInfo = OpenSim.Services.Interfaces.PresenceInfo;
|
||||||
|
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Presence
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Presence
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "LocalPresenceServicesConnector")]
|
||||||
public class LocalPresenceServicesConnector : ISharedRegionModule, IPresenceService
|
public class LocalPresenceServicesConnector : ISharedRegionModule, IPresenceService
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
|
@ -37,10 +37,12 @@ using PresenceInfo = OpenSim.Services.Interfaces.PresenceInfo;
|
||||||
|
|
||||||
using OpenMetaverse;
|
using OpenMetaverse;
|
||||||
using log4net;
|
using log4net;
|
||||||
|
using Mono.Addins;
|
||||||
using Nini.Config;
|
using Nini.Config;
|
||||||
|
|
||||||
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Presence
|
namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.Presence
|
||||||
{
|
{
|
||||||
|
[Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule", Id = "RemotePresenceServicesConnector")]
|
||||||
public class RemotePresenceServicesConnector : ISharedRegionModule, IPresenceService
|
public class RemotePresenceServicesConnector : ISharedRegionModule, IPresenceService
|
||||||
{
|
{
|
||||||
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue