aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorMelanie Thielker2008-08-23 02:30:07 +0000
committerMelanie Thielker2008-08-23 02:30:07 +0000
commitccd74f888bcb2fe60d14d45bfc9506a2c005aa82 (patch)
tree5b626ffee4fa08aafa60c5397c1a4e154447546c
parentSet svn:eol-style (diff)
downloadopensim-SC-ccd74f888bcb2fe60d14d45bfc9506a2c005aa82.zip
opensim-SC-ccd74f888bcb2fe60d14d45bfc9506a2c005aa82.tar.gz
opensim-SC-ccd74f888bcb2fe60d14d45bfc9506a2c005aa82.tar.bz2
opensim-SC-ccd74f888bcb2fe60d14d45bfc9506a2c005aa82.tar.xz
Some complex re-ordering to make prebuild do what needed to be done.
It is now possible to use module interfaces without referencing Scene. Place those interfaces in OpenSim/Region/Interfaces. They may not use any refs from OpenSim.Region.Environment as parameters. This resolves a circular library ref introduced in r5949
-rw-r--r--OpenSim/Framework/Communications/Capabilities/Caps.cs5
-rw-r--r--OpenSim/Framework/IScene.cs4
-rw-r--r--OpenSim/Region/Environment/Modules/Agent/AssetTransaction/AssetTransactionModule.cs1
-rw-r--r--OpenSim/Region/Environment/Modules/Avatar/Currency/SampleMoney/SampleMoneyModule.cs3
-rw-r--r--OpenSim/Region/Environment/Scenes/Scene.Inventory.cs1
-rw-r--r--OpenSim/Region/Environment/Scenes/Scene.cs2
-rw-r--r--OpenSim/Region/Environment/Scenes/SceneBase.cs5
-rw-r--r--OpenSim/Region/Interfaces/IMoneyModule.cs (renamed from OpenSim/Region/Environment/Interfaces/IMoneyModule.cs)4
-rw-r--r--OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs1
-rw-r--r--OpenSim/Region/ScriptEngine/Common/ScriptEngineBase/EventManager.cs1
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs1
-rw-r--r--OpenSim/Region/ScriptEngine/XEngine/EventManager.cs1
-rw-r--r--prebuild.xml29
13 files changed, 49 insertions, 9 deletions
diff --git a/OpenSim/Framework/Communications/Capabilities/Caps.cs b/OpenSim/Framework/Communications/Capabilities/Caps.cs
index 338604d..6946561 100644
--- a/OpenSim/Framework/Communications/Capabilities/Caps.cs
+++ b/OpenSim/Framework/Communications/Capabilities/Caps.cs
@@ -35,8 +35,7 @@ using log4net;
35using OpenSim.Framework.Communications.Cache; 35using OpenSim.Framework.Communications.Cache;
36using OpenSim.Framework.Servers; 36using OpenSim.Framework.Servers;
37using OpenSim.Framework; 37using OpenSim.Framework;
38using OpenSim.Region.Environment.Interfaces; 38using OpenSim.Region.Interfaces;
39using OpenSim.Region.Environment.Scenes;
40 39
41namespace OpenSim.Framework.Communications.Capabilities 40namespace OpenSim.Framework.Communications.Capabilities
42{ 41{
@@ -614,7 +613,7 @@ namespace OpenSim.Framework.Communications.Capabilities
614 llsdRequest.asset_type == "sound") 613 llsdRequest.asset_type == "sound")
615 { 614 {
616 IClientAPI client = GetClient(m_agentID); 615 IClientAPI client = GetClient(m_agentID);
617 Scene scene = (Scene)client.Scene; 616 IScene scene = client.Scene;
618 617
619 IMoneyModule mm = scene.RequestModuleInterface<IMoneyModule>(); 618 IMoneyModule mm = scene.RequestModuleInterface<IMoneyModule>();
620 619
diff --git a/OpenSim/Framework/IScene.cs b/OpenSim/Framework/IScene.cs
index 82002c2..2cce12f 100644
--- a/OpenSim/Framework/IScene.cs
+++ b/OpenSim/Framework/IScene.cs
@@ -63,5 +63,7 @@ namespace OpenSim.Framework
63 bool PresenceChildStatus(LLUUID avatarID); 63 bool PresenceChildStatus(LLUUID avatarID);
64 64
65 string GetCapsPath(LLUUID agentId); 65 string GetCapsPath(LLUUID agentId);
66
67 T RequestModuleInterface<T>();
66 } 68 }
67} \ No newline at end of file 69}
diff --git a/OpenSim/Region/Environment/Modules/Agent/AssetTransaction/AssetTransactionModule.cs b/OpenSim/Region/Environment/Modules/Agent/AssetTransaction/AssetTransactionModule.cs
index d8720db..d5e4df7 100644
--- a/OpenSim/Region/Environment/Modules/Agent/AssetTransaction/AssetTransactionModule.cs
+++ b/OpenSim/Region/Environment/Modules/Agent/AssetTransaction/AssetTransactionModule.cs
@@ -32,6 +32,7 @@ using libsecondlife;
32using log4net; 32using log4net;
33using Nini.Config; 33using Nini.Config;
34using OpenSim.Framework; 34using OpenSim.Framework;
35using OpenSim.Region.Interfaces;
35using OpenSim.Region.Environment.Interfaces; 36using OpenSim.Region.Environment.Interfaces;
36using OpenSim.Region.Environment.Scenes; 37using OpenSim.Region.Environment.Scenes;
37 38
diff --git a/OpenSim/Region/Environment/Modules/Avatar/Currency/SampleMoney/SampleMoneyModule.cs b/OpenSim/Region/Environment/Modules/Avatar/Currency/SampleMoney/SampleMoneyModule.cs
index e31770f..4a6828c 100644
--- a/OpenSim/Region/Environment/Modules/Avatar/Currency/SampleMoney/SampleMoneyModule.cs
+++ b/OpenSim/Region/Environment/Modules/Avatar/Currency/SampleMoney/SampleMoneyModule.cs
@@ -38,6 +38,7 @@ using Nini.Config;
38using Nwc.XmlRpc; 38using Nwc.XmlRpc;
39using OpenSim.Framework; 39using OpenSim.Framework;
40using OpenSim.Region.Environment.Interfaces; 40using OpenSim.Region.Environment.Interfaces;
41using OpenSim.Region.Interfaces;
41using OpenSim.Region.Environment.Scenes; 42using OpenSim.Region.Environment.Scenes;
42using OpenSim.Framework.Communications.Cache; 43using OpenSim.Framework.Communications.Cache;
43 44
@@ -54,7 +55,7 @@ namespace OpenSim.Region.Environment.Modules.Avatar.Currency.SampleMoney
54 /// Centralized grid structure example using OpenSimWi Redux revision 9+ 55 /// Centralized grid structure example using OpenSimWi Redux revision 9+
55 /// svn co https://opensimwiredux.svn.sourceforge.net/svnroot/opensimwiredux 56 /// svn co https://opensimwiredux.svn.sourceforge.net/svnroot/opensimwiredux
56 /// </summary> 57 /// </summary>
57 public class SampleMoneyModule : IMoneyModule 58 public class SampleMoneyModule : IMoneyModule, IRegionModule
58 { 59 {
59 private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); 60 private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
60 61
diff --git a/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs b/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs
index 9c91725..8382467 100644
--- a/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs
+++ b/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs
@@ -35,6 +35,7 @@ using libsecondlife.Packets;
35using log4net; 35using log4net;
36using OpenSim.Framework; 36using OpenSim.Framework;
37using OpenSim.Framework.Communications.Cache; 37using OpenSim.Framework.Communications.Cache;
38using OpenSim.Region.Interfaces;
38using OpenSim.Region.Environment.Interfaces; 39using OpenSim.Region.Environment.Interfaces;
39 40
40namespace OpenSim.Region.Environment.Scenes 41namespace OpenSim.Region.Environment.Scenes
diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs
index fb2cbb6..3bae463 100644
--- a/OpenSim/Region/Environment/Scenes/Scene.cs
+++ b/OpenSim/Region/Environment/Scenes/Scene.cs
@@ -2963,7 +2963,7 @@ namespace OpenSim.Region.Environment.Scenes
2963 /// For the given interface, retrieve the region module which implements it. 2963 /// For the given interface, retrieve the region module which implements it.
2964 /// </summary> 2964 /// </summary>
2965 /// <returns>null if there is no module implementing that interface</returns> 2965 /// <returns>null if there is no module implementing that interface</returns>
2966 public T RequestModuleInterface<T>() 2966 public override T RequestModuleInterface<T>()
2967 { 2967 {
2968 if (ModuleInterfaces.ContainsKey(typeof(T))) 2968 if (ModuleInterfaces.ContainsKey(typeof(T)))
2969 { 2969 {
diff --git a/OpenSim/Region/Environment/Scenes/SceneBase.cs b/OpenSim/Region/Environment/Scenes/SceneBase.cs
index fbef367..c624a41 100644
--- a/OpenSim/Region/Environment/Scenes/SceneBase.cs
+++ b/OpenSim/Region/Environment/Scenes/SceneBase.cs
@@ -220,5 +220,10 @@ namespace OpenSim.Region.Environment.Scenes
220 220
221 return null; 221 return null;
222 } 222 }
223
224 public virtual T RequestModuleInterface<T>()
225 {
226 return default(T);
227 }
223 } 228 }
224} 229}
diff --git a/OpenSim/Region/Environment/Interfaces/IMoneyModule.cs b/OpenSim/Region/Interfaces/IMoneyModule.cs
index 49d096b..5636857 100644
--- a/OpenSim/Region/Environment/Interfaces/IMoneyModule.cs
+++ b/OpenSim/Region/Interfaces/IMoneyModule.cs
@@ -29,10 +29,10 @@ using System;
29using OpenSim.Framework; 29using OpenSim.Framework;
30using libsecondlife; 30using libsecondlife;
31 31
32namespace OpenSim.Region.Environment.Interfaces 32namespace OpenSim.Region.Interfaces
33{ 33{
34 public delegate void ObjectPaid(LLUUID objectID, LLUUID agentID, int amount); 34 public delegate void ObjectPaid(LLUUID objectID, LLUUID agentID, int amount);
35 public interface IMoneyModule : IRegionModule 35 public interface IMoneyModule
36 { 36 {
37 bool ObjectGiveMoney(LLUUID objectID, LLUUID fromID, LLUUID toID, 37 bool ObjectGiveMoney(LLUUID objectID, LLUUID fromID, LLUUID toID,
38 int amount); 38 int amount);
diff --git a/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs b/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs
index 6c62d88..be337e7 100644
--- a/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs
+++ b/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs
@@ -38,6 +38,7 @@ using libsecondlife.Packets;
38using OpenSim.Framework; 38using OpenSim.Framework;
39using OpenSim.Framework.Communications.Cache; 39using OpenSim.Framework.Communications.Cache;
40using OpenSim.Region.Environment; 40using OpenSim.Region.Environment;
41using OpenSim.Region.Interfaces;
41using OpenSim.Region.Environment.Interfaces; 42using OpenSim.Region.Environment.Interfaces;
42using OpenSim.Region.Environment.Modules.Avatar.Currency.SampleMoney; 43using OpenSim.Region.Environment.Modules.Avatar.Currency.SampleMoney;
43using OpenSim.Region.Environment.Modules.World.Land; 44using OpenSim.Region.Environment.Modules.World.Land;
diff --git a/OpenSim/Region/ScriptEngine/Common/ScriptEngineBase/EventManager.cs b/OpenSim/Region/ScriptEngine/Common/ScriptEngineBase/EventManager.cs
index eea7ab4..a6bb405 100644
--- a/OpenSim/Region/ScriptEngine/Common/ScriptEngineBase/EventManager.cs
+++ b/OpenSim/Region/ScriptEngine/Common/ScriptEngineBase/EventManager.cs
@@ -31,6 +31,7 @@ using libsecondlife;
31using OpenSim.Framework; 31using OpenSim.Framework;
32using OpenSim.Region.Environment.Modules.Avatar.Currency.SampleMoney; 32using OpenSim.Region.Environment.Modules.Avatar.Currency.SampleMoney;
33using OpenSim.Region.Environment; 33using OpenSim.Region.Environment;
34using OpenSim.Region.Interfaces;
34using OpenSim.Region; 35using OpenSim.Region;
35using OpenSim.Region.Environment.Scenes; 36using OpenSim.Region.Environment.Scenes;
36using OpenSim.Region.Environment.Interfaces; 37using OpenSim.Region.Environment.Interfaces;
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
index b90ab79..2428bc4 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
@@ -39,6 +39,7 @@ using OpenSim;
39using OpenSim.Framework; 39using OpenSim.Framework;
40using OpenSim.Framework.Communications.Cache; 40using OpenSim.Framework.Communications.Cache;
41using OpenSim.Region.Environment; 41using OpenSim.Region.Environment;
42using OpenSim.Region.Interfaces;
42using OpenSim.Region.Environment.Interfaces; 43using OpenSim.Region.Environment.Interfaces;
43using OpenSim.Region.Environment.Modules.Avatar.Currency.SampleMoney; 44using OpenSim.Region.Environment.Modules.Avatar.Currency.SampleMoney;
44using OpenSim.Region.Environment.Modules.World.Land; 45using OpenSim.Region.Environment.Modules.World.Land;
diff --git a/OpenSim/Region/ScriptEngine/XEngine/EventManager.cs b/OpenSim/Region/ScriptEngine/XEngine/EventManager.cs
index db11e6b..a4b9d4c 100644
--- a/OpenSim/Region/ScriptEngine/XEngine/EventManager.cs
+++ b/OpenSim/Region/ScriptEngine/XEngine/EventManager.cs
@@ -31,6 +31,7 @@ using System.Collections.Generic;
31using libsecondlife; 31using libsecondlife;
32using OpenSim.Framework; 32using OpenSim.Framework;
33using OpenSim.Region.Environment.Modules.Avatar.Currency.SampleMoney; 33using OpenSim.Region.Environment.Modules.Avatar.Currency.SampleMoney;
34using OpenSim.Region.Interfaces;
34using OpenSim.Region.Environment.Scenes; 35using OpenSim.Region.Environment.Scenes;
35using OpenSim.Region.Environment.Interfaces; 36using OpenSim.Region.Environment.Interfaces;
36using OpenSim.Region.ScriptEngine.Shared; 37using OpenSim.Region.ScriptEngine.Shared;
diff --git a/prebuild.xml b/prebuild.xml
index 2f67c60..48c4093 100644
--- a/prebuild.xml
+++ b/prebuild.xml
@@ -650,6 +650,29 @@
650 </Files> 650 </Files>
651 </Project> 651 </Project>
652 652
653 <Project name="OpenSim.Region.Interfaces" path="OpenSim/Region/Interfaces" type="Library">
654 <Configuration name="Debug">
655 <Options>
656 <OutputPath>../../../bin/</OutputPath>
657 </Options>
658 </Configuration>
659 <Configuration name="Release">
660 <Options>
661 <OutputPath>../../../bin/</OutputPath>
662 </Options>
663 </Configuration>
664
665 <ReferencePath>../../../bin/</ReferencePath>
666 <Reference name="System" localCopy="false"/>
667 <Reference name="System.Runtime.Remoting"/>
668 <Reference name="OpenSim.Framework"/>
669 <Reference name="libsecondlife.dll"/>
670
671 <Files>
672 <Match pattern="*.cs" recurse="true"/>
673 </Files>
674 </Project>
675
653 <!-- OpenSim.Framework.Communications --> 676 <!-- OpenSim.Framework.Communications -->
654 <Project name="OpenSim.Framework.Communications" path="OpenSim/Framework/Communications" type="Library"> 677 <Project name="OpenSim.Framework.Communications" path="OpenSim/Framework/Communications" type="Library">
655 <Configuration name="Debug"> 678 <Configuration name="Debug">
@@ -668,12 +691,12 @@
668 <Reference name="System.Xml"/> 691 <Reference name="System.Xml"/>
669 <Reference name="System.Web"/> 692 <Reference name="System.Web"/>
670 <Reference name="OpenSim.Framework"/> 693 <Reference name="OpenSim.Framework"/>
671 <Reference name="OpenSim.Region.Environment"/>
672 <Reference name="OpenSim.Framework.AssetLoader.Filesystem"/> 694 <Reference name="OpenSim.Framework.AssetLoader.Filesystem"/>
673 <Reference name="OpenSim.Data" /> 695 <Reference name="OpenSim.Data" />
674 <Reference name="OpenSim.Framework.Servers"/> 696 <Reference name="OpenSim.Framework.Servers"/>
675 <Reference name="OpenSim.Framework.Console"/> 697 <Reference name="OpenSim.Framework.Console"/>
676 <Reference name="OpenSim.Framework.Statistics"/> 698 <Reference name="OpenSim.Framework.Statistics"/>
699 <Reference name="OpenSim.Region.Interfaces"/>
677 <Reference name="libsecondlife.dll"/> 700 <Reference name="libsecondlife.dll"/>
678 <Reference name="Nini.dll" /> 701 <Reference name="Nini.dll" />
679 <Reference name="XMLRPC.dll"/> 702 <Reference name="XMLRPC.dll"/>
@@ -768,6 +791,7 @@
768 <Reference name="Axiom.MathLib.dll"/> 791 <Reference name="Axiom.MathLib.dll"/>
769 <Reference name="OpenSim.Framework"/> 792 <Reference name="OpenSim.Framework"/>
770 <Reference name="OpenSim.Data" /> 793 <Reference name="OpenSim.Data" />
794 <Reference name="OpenSim.Region.Interfaces" />
771 <Reference name="OpenSim.Framework.Console"/> 795 <Reference name="OpenSim.Framework.Console"/>
772 <Reference name="OpenSim.Framework.Servers"/> 796 <Reference name="OpenSim.Framework.Servers"/>
773 <Reference name="OpenSim.Framework.Statistics"/> 797 <Reference name="OpenSim.Framework.Statistics"/>
@@ -1575,6 +1599,7 @@
1575 <Reference name="OpenSim" /> 1599 <Reference name="OpenSim" />
1576 <Reference name="OpenSim.Framework"/> 1600 <Reference name="OpenSim.Framework"/>
1577 <Reference name="OpenSim.Framework.Communications"/> 1601 <Reference name="OpenSim.Framework.Communications"/>
1602 <Reference name="OpenSim.Region.Interfaces" />
1578 <Reference name="OpenSim.Region.Environment" /> 1603 <Reference name="OpenSim.Region.Environment" />
1579 <Reference name="OpenSim.Region.Physics.Manager" /> 1604 <Reference name="OpenSim.Region.Physics.Manager" />
1580 <Reference name="OpenSim.Framework.Console"/> 1605 <Reference name="OpenSim.Framework.Console"/>
@@ -1665,6 +1690,7 @@
1665 <Reference name="OpenSim" /> 1690 <Reference name="OpenSim" />
1666 <Reference name="OpenSim.Framework"/> 1691 <Reference name="OpenSim.Framework"/>
1667 <Reference name="OpenSim.Framework.Communications"/> 1692 <Reference name="OpenSim.Framework.Communications"/>
1693 <Reference name="OpenSim.Region.Interfaces" />
1668 <Reference name="OpenSim.Region.Environment" /> 1694 <Reference name="OpenSim.Region.Environment" />
1669 <Reference name="OpenSim.Framework.Console"/> 1695 <Reference name="OpenSim.Framework.Console"/>
1670 <Reference name="OpenSim.Region.ScriptEngine.Shared"/> 1696 <Reference name="OpenSim.Region.ScriptEngine.Shared"/>
@@ -1888,6 +1914,7 @@
1888 <Reference name="OpenSim.Framework"/> 1914 <Reference name="OpenSim.Framework"/>
1889 <Reference name="OpenSim.Framework.Communications"/> 1915 <Reference name="OpenSim.Framework.Communications"/>
1890 <Reference name="OpenSim.Region.Environment" /> 1916 <Reference name="OpenSim.Region.Environment" />
1917 <Reference name="OpenSim.Region.Interfaces" />
1891 <Reference name="OpenSim.Region.Physics.Manager" /> 1918 <Reference name="OpenSim.Region.Physics.Manager" />
1892 <Reference name="OpenSim.Framework.Console"/> 1919 <Reference name="OpenSim.Framework.Console"/>
1893 <Reference name="Axiom.MathLib.dll" localCopy="false"/> 1920 <Reference name="Axiom.MathLib.dll" localCopy="false"/>