diff options
author | MW | 2007-11-05 13:58:44 +0000 |
---|---|---|
committer | MW | 2007-11-05 13:58:44 +0000 |
commit | 73fbacea1fe18873fab175d82189a1becb0f8e10 (patch) | |
tree | 4078f63bb77e7a512a7069b209ca5be569882b52 /OpenSim/Framework | |
parent | prim cuts in ODE (diff) | |
download | opensim-SC_OLD-73fbacea1fe18873fab175d82189a1becb0f8e10.zip opensim-SC_OLD-73fbacea1fe18873fab175d82189a1becb0f8e10.tar.gz opensim-SC_OLD-73fbacea1fe18873fab175d82189a1becb0f8e10.tar.bz2 opensim-SC_OLD-73fbacea1fe18873fab175d82189a1becb0f8e10.tar.xz |
Started to cleanup/close down childagent connections when a user teleports. As the client will not close old childagent connections without being told explicitly to do so by each region the connection is to. Currently only implemented in standalone mode. ( the TellRegionToCloseChildConnection( ) in OGS1GridServices.cs needs implementing for grid mode, and the inter region .net remoting added for the new messages).
hopefully fixed the echo bug in chatmodule.
Diffstat (limited to 'OpenSim/Framework')
-rw-r--r-- | OpenSim/Framework/IRegionCommsListener.cs | 3 | ||||
-rw-r--r-- | OpenSim/Framework/RegionCommsListener.cs | 9 |
2 files changed, 12 insertions, 0 deletions
diff --git a/OpenSim/Framework/IRegionCommsListener.cs b/OpenSim/Framework/IRegionCommsListener.cs index 1a24469..24c6499 100644 --- a/OpenSim/Framework/IRegionCommsListener.cs +++ b/OpenSim/Framework/IRegionCommsListener.cs | |||
@@ -38,6 +38,8 @@ namespace OpenSim.Framework | |||
38 | 38 | ||
39 | public delegate void AcknowledgeAgentCross(ulong regionHandle, LLUUID agentID); | 39 | public delegate void AcknowledgeAgentCross(ulong regionHandle, LLUUID agentID); |
40 | 40 | ||
41 | public delegate void CloseAgentConnection(ulong regionHandle, LLUUID agentID); | ||
42 | |||
41 | public interface IRegionCommsListener | 43 | public interface IRegionCommsListener |
42 | { | 44 | { |
43 | event ExpectUserDelegate OnExpectUser; | 45 | event ExpectUserDelegate OnExpectUser; |
@@ -45,5 +47,6 @@ namespace OpenSim.Framework | |||
45 | event AgentCrossing OnAvatarCrossingIntoRegion; | 47 | event AgentCrossing OnAvatarCrossingIntoRegion; |
46 | event AcknowledgeAgentCross OnAcknowledgeAgentCrossed; | 48 | event AcknowledgeAgentCross OnAcknowledgeAgentCrossed; |
47 | event UpdateNeighbours OnNeighboursUpdate; | 49 | event UpdateNeighbours OnNeighboursUpdate; |
50 | event CloseAgentConnection OnCloseAgentConnection; | ||
48 | } | 51 | } |
49 | } \ No newline at end of file | 52 | } \ No newline at end of file |
diff --git a/OpenSim/Framework/RegionCommsListener.cs b/OpenSim/Framework/RegionCommsListener.cs index ee0d503..84d1b02 100644 --- a/OpenSim/Framework/RegionCommsListener.cs +++ b/OpenSim/Framework/RegionCommsListener.cs | |||
@@ -38,6 +38,7 @@ namespace OpenSim.Framework | |||
38 | public event AgentCrossing OnAvatarCrossingIntoRegion; | 38 | public event AgentCrossing OnAvatarCrossingIntoRegion; |
39 | public event UpdateNeighbours OnNeighboursUpdate; | 39 | public event UpdateNeighbours OnNeighboursUpdate; |
40 | public event AcknowledgeAgentCross OnAcknowledgeAgentCrossed; | 40 | public event AcknowledgeAgentCross OnAcknowledgeAgentCrossed; |
41 | public event CloseAgentConnection OnCloseAgentConnection; | ||
41 | 42 | ||
42 | /// <summary> | 43 | /// <summary> |
43 | /// | 44 | /// |
@@ -76,6 +77,14 @@ namespace OpenSim.Framework | |||
76 | return false; | 77 | return false; |
77 | } | 78 | } |
78 | 79 | ||
80 | public virtual void TriggerCloseAgentConnection(ulong regionHandle, LLUUID agentID) | ||
81 | { | ||
82 | if (OnCloseAgentConnection != null) | ||
83 | { | ||
84 | OnCloseAgentConnection(regionHandle, agentID); | ||
85 | } | ||
86 | } | ||
87 | |||
79 | /// <summary> | 88 | /// <summary> |
80 | /// | 89 | /// |
81 | /// </summary> | 90 | /// </summary> |