diff options
Diffstat (limited to '')
6 files changed, 241 insertions, 0 deletions
diff --git a/Common/OpenGrid.Framework.Communications/CommsManager.cs b/Common/OpenGrid.Framework.Communications/CommsManager.cs new file mode 100644 index 0000000..0cc2253 --- /dev/null +++ b/Common/OpenGrid.Framework.Communications/CommsManager.cs | |||
@@ -0,0 +1,33 @@ | |||
1 | using System; | ||
2 | using System.Collections.Generic; | ||
3 | using System.Text; | ||
4 | using OpenSim.Framework; | ||
5 | using OpenSim.Framework.Interfaces; | ||
6 | using OpenSim.Framework.Types; | ||
7 | |||
8 | namespace OpenGrid.Framework.Communications | ||
9 | { | ||
10 | public class CommsManager | ||
11 | { | ||
12 | |||
13 | public CommsManager() | ||
14 | { | ||
15 | |||
16 | } | ||
17 | |||
18 | /// <summary> | ||
19 | /// | ||
20 | /// </summary> | ||
21 | /// <param name="regionInfo"></param> | ||
22 | /// <returns></returns> | ||
23 | public virtual IRegionCommsHost RegisterRegion(RegionInfo regionInfo) | ||
24 | { | ||
25 | return null; | ||
26 | } | ||
27 | |||
28 | public virtual bool InformNeighbourChildAgent() | ||
29 | { | ||
30 | return false; | ||
31 | } | ||
32 | } | ||
33 | } | ||
diff --git a/Common/OpenGrid.Framework.Communications/OpenGrid.Framework.Communications.csproj b/Common/OpenGrid.Framework.Communications/OpenGrid.Framework.Communications.csproj new file mode 100644 index 0000000..b53a868 --- /dev/null +++ b/Common/OpenGrid.Framework.Communications/OpenGrid.Framework.Communications.csproj | |||
@@ -0,0 +1,53 @@ | |||
1 | <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | ||
2 | <PropertyGroup> | ||
3 | <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> | ||
4 | <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> | ||
5 | <ProductVersion>8.0.50727</ProductVersion> | ||
6 | <SchemaVersion>2.0</SchemaVersion> | ||
7 | <ProjectGuid>{C9702041-922C-452A-A1B4-7880AF53149A}</ProjectGuid> | ||
8 | <OutputType>Library</OutputType> | ||
9 | <AppDesignerFolder>Properties</AppDesignerFolder> | ||
10 | <RootNamespace>OpenGrid.Framework.Communications</RootNamespace> | ||
11 | <AssemblyName>OpenGrid.Framework.Communications</AssemblyName> | ||
12 | </PropertyGroup> | ||
13 | <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> | ||
14 | <DebugSymbols>true</DebugSymbols> | ||
15 | <DebugType>full</DebugType> | ||
16 | <Optimize>false</Optimize> | ||
17 | <OutputPath>bin\Debug\</OutputPath> | ||
18 | <DefineConstants>DEBUG;TRACE</DefineConstants> | ||
19 | <ErrorReport>prompt</ErrorReport> | ||
20 | <WarningLevel>4</WarningLevel> | ||
21 | </PropertyGroup> | ||
22 | <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> | ||
23 | <DebugType>pdbonly</DebugType> | ||
24 | <Optimize>true</Optimize> | ||
25 | <OutputPath>bin\Release\</OutputPath> | ||
26 | <DefineConstants>TRACE</DefineConstants> | ||
27 | <ErrorReport>prompt</ErrorReport> | ||
28 | <WarningLevel>4</WarningLevel> | ||
29 | </PropertyGroup> | ||
30 | <ItemGroup> | ||
31 | <Reference Include="System" /> | ||
32 | <Reference Include="System.Data" /> | ||
33 | <Reference Include="System.Xml" /> | ||
34 | </ItemGroup> | ||
35 | <ItemGroup> | ||
36 | <Compile Include="CommsManager.cs" /> | ||
37 | <Compile Include="Properties\AssemblyInfo.cs" /> | ||
38 | </ItemGroup> | ||
39 | <ItemGroup> | ||
40 | <ProjectReference Include="..\OpenSim.Framework\OpenSim.Framework.csproj"> | ||
41 | <Project>{8ACA2445-0000-0000-0000-000000000000}</Project> | ||
42 | <Name>OpenSim.Framework</Name> | ||
43 | </ProjectReference> | ||
44 | </ItemGroup> | ||
45 | <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> | ||
46 | <!-- To modify your build process, add your task inside one of the targets below and uncomment it. | ||
47 | Other similar extension points exist, see Microsoft.Common.targets. | ||
48 | <Target Name="BeforeBuild"> | ||
49 | </Target> | ||
50 | <Target Name="AfterBuild"> | ||
51 | </Target> | ||
52 | --> | ||
53 | </Project> \ No newline at end of file | ||
diff --git a/Common/OpenGrid.Framework.Communications/Properties/AssemblyInfo.cs b/Common/OpenGrid.Framework.Communications/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..90693d5 --- /dev/null +++ b/Common/OpenGrid.Framework.Communications/Properties/AssemblyInfo.cs | |||
@@ -0,0 +1,35 @@ | |||
1 | using System.Reflection; | ||
2 | using System.Runtime.CompilerServices; | ||
3 | using System.Runtime.InteropServices; | ||
4 | |||
5 | // General Information about an assembly is controlled through the following | ||
6 | // set of attributes. Change these attribute values to modify the information | ||
7 | // associated with an assembly. | ||
8 | [assembly: AssemblyTitle("OpenGrid.Framework.Communications")] | ||
9 | [assembly: AssemblyDescription("")] | ||
10 | [assembly: AssemblyConfiguration("")] | ||
11 | [assembly: AssemblyCompany("")] | ||
12 | [assembly: AssemblyProduct("OpenGrid.Framework.Communications")] | ||
13 | [assembly: AssemblyCopyright("Copyright © 2007")] | ||
14 | [assembly: AssemblyTrademark("")] | ||
15 | [assembly: AssemblyCulture("")] | ||
16 | |||
17 | // Setting ComVisible to false makes the types in this assembly not visible | ||
18 | // to COM components. If you need to access a type in this assembly from | ||
19 | // COM, set the ComVisible attribute to true on that type. | ||
20 | [assembly: ComVisible(false)] | ||
21 | |||
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM | ||
23 | [assembly: Guid("13e7c396-78a9-4a5c-baf2-6f980ea75d95")] | ||
24 | |||
25 | // Version information for an assembly consists of the following four values: | ||
26 | // | ||
27 | // Major Version | ||
28 | // Minor Version | ||
29 | // Build Number | ||
30 | // Revision | ||
31 | // | ||
32 | // You can specify all the values or you can default the Revision and Build Numbers | ||
33 | // by using the '*' as shown below: | ||
34 | [assembly: AssemblyVersion("1.0.0.0")] | ||
35 | [assembly: AssemblyFileVersion("1.0.0.0")] | ||
diff --git a/Common/OpenSim.Framework/AuthenticateSessionBase.cs b/Common/OpenSim.Framework/AuthenticateSessionBase.cs new file mode 100644 index 0000000..ca20478 --- /dev/null +++ b/Common/OpenSim.Framework/AuthenticateSessionBase.cs | |||
@@ -0,0 +1,105 @@ | |||
1 | using System; | ||
2 | using System.Collections.Generic; | ||
3 | using System.Text; | ||
4 | using libsecondlife; | ||
5 | using OpenSim.Framework.Interfaces; | ||
6 | using OpenSim.Framework.Types; | ||
7 | |||
8 | namespace OpenSim.Framework | ||
9 | { | ||
10 | public class AuthenticateSessionsBase | ||
11 | { | ||
12 | public Dictionary<uint, AgentCircuitData> AgentCircuits = new Dictionary<uint, AgentCircuitData>(); | ||
13 | |||
14 | public AuthenticateSessionsBase() | ||
15 | { | ||
16 | |||
17 | } | ||
18 | |||
19 | public virtual AuthenticateResponse AuthenticateSession(LLUUID sessionID, LLUUID agentID, uint circuitcode) | ||
20 | { | ||
21 | AgentCircuitData validcircuit = null; | ||
22 | if (this.AgentCircuits.ContainsKey(circuitcode)) | ||
23 | { | ||
24 | validcircuit = this.AgentCircuits[circuitcode]; | ||
25 | } | ||
26 | AuthenticateResponse user = new AuthenticateResponse(); | ||
27 | if (validcircuit == null) | ||
28 | { | ||
29 | //don't have this circuit code in our list | ||
30 | user.Authorised = false; | ||
31 | return (user); | ||
32 | } | ||
33 | |||
34 | if ((sessionID == validcircuit.SessionID) && (agentID == validcircuit.AgentID)) | ||
35 | { | ||
36 | user.Authorised = true; | ||
37 | user.LoginInfo = new Login(); | ||
38 | user.LoginInfo.Agent = agentID; | ||
39 | user.LoginInfo.Session = sessionID; | ||
40 | user.LoginInfo.SecureSession = validcircuit.SecureSessionID; | ||
41 | user.LoginInfo.First = validcircuit.firstname; | ||
42 | user.LoginInfo.Last = validcircuit.lastname; | ||
43 | user.LoginInfo.InventoryFolder = validcircuit.InventoryFolder; | ||
44 | user.LoginInfo.BaseFolder = validcircuit.BaseFolder; | ||
45 | } | ||
46 | else | ||
47 | { | ||
48 | // Invalid | ||
49 | user.Authorised = false; | ||
50 | } | ||
51 | |||
52 | return (user); | ||
53 | } | ||
54 | |||
55 | public virtual void AddNewCircuit(uint circuitCode, AgentCircuitData agentData) | ||
56 | { | ||
57 | if (this.AgentCircuits.ContainsKey(circuitCode)) | ||
58 | { | ||
59 | this.AgentCircuits[circuitCode] = agentData; | ||
60 | } | ||
61 | else | ||
62 | { | ||
63 | this.AgentCircuits.Add(circuitCode, agentData); | ||
64 | } | ||
65 | } | ||
66 | |||
67 | public LLVector3 GetPosition(uint circuitCode) | ||
68 | { | ||
69 | LLVector3 vec = new LLVector3(); | ||
70 | if (this.AgentCircuits.ContainsKey(circuitCode)) | ||
71 | { | ||
72 | vec = this.AgentCircuits[circuitCode].startpos; | ||
73 | } | ||
74 | return vec; | ||
75 | } | ||
76 | |||
77 | public void UpdateAgentData(AgentCircuitData agentData) | ||
78 | { | ||
79 | if (this.AgentCircuits.ContainsKey((uint)agentData.circuitcode)) | ||
80 | { | ||
81 | this.AgentCircuits[(uint)agentData.circuitcode].firstname = agentData.firstname; | ||
82 | this.AgentCircuits[(uint)agentData.circuitcode].lastname = agentData.lastname; | ||
83 | this.AgentCircuits[(uint)agentData.circuitcode].startpos = agentData.startpos; | ||
84 | // Console.WriteLine("update user start pos is " + agentData.startpos.X + " , " + agentData.startpos.Y + " , " + agentData.startpos.Z); | ||
85 | } | ||
86 | } | ||
87 | |||
88 | public void UpdateAgentChildStatus(uint circuitcode, bool childstatus) | ||
89 | { | ||
90 | if (this.AgentCircuits.ContainsKey(circuitcode)) | ||
91 | { | ||
92 | this.AgentCircuits[circuitcode].child = childstatus; | ||
93 | } | ||
94 | } | ||
95 | |||
96 | public bool GetAgentChildStatus(uint circuitcode) | ||
97 | { | ||
98 | if (this.AgentCircuits.ContainsKey(circuitcode)) | ||
99 | { | ||
100 | return this.AgentCircuits[circuitcode].child; | ||
101 | } | ||
102 | return false; | ||
103 | } | ||
104 | } | ||
105 | } \ No newline at end of file | ||
diff --git a/Common/OpenSim.Framework/IRegionCommsHost.cs b/Common/OpenSim.Framework/IRegionCommsHost.cs new file mode 100644 index 0000000..367ecfc --- /dev/null +++ b/Common/OpenSim.Framework/IRegionCommsHost.cs | |||
@@ -0,0 +1,13 @@ | |||
1 | using System; | ||
2 | using System.Collections.Generic; | ||
3 | using System.Text; | ||
4 | |||
5 | namespace OpenSim.Framework | ||
6 | { | ||
7 | public delegate void ExpectUserDelegate(); | ||
8 | |||
9 | public interface IRegionCommsHost | ||
10 | { | ||
11 | event ExpectUserDelegate ExpectUser; | ||
12 | } | ||
13 | } | ||
diff --git a/Common/OpenSim.Framework/OpenSim.Framework.csproj b/Common/OpenSim.Framework/OpenSim.Framework.csproj index 6c2a8c6..f83cb9d 100644 --- a/Common/OpenSim.Framework/OpenSim.Framework.csproj +++ b/Common/OpenSim.Framework/OpenSim.Framework.csproj | |||
@@ -99,9 +99,11 @@ | |||
99 | <Compile Include="AgentInventory.cs"> | 99 | <Compile Include="AgentInventory.cs"> |
100 | <SubType>Code</SubType> | 100 | <SubType>Code</SubType> |
101 | </Compile> | 101 | </Compile> |
102 | <Compile Include="AuthenticateSessionBase.cs" /> | ||
102 | <Compile Include="BlockingQueue.cs"> | 103 | <Compile Include="BlockingQueue.cs"> |
103 | <SubType>Code</SubType> | 104 | <SubType>Code</SubType> |
104 | </Compile> | 105 | </Compile> |
106 | <Compile Include="IRegionCommsHost.cs" /> | ||
105 | <Compile Include="LoginService.cs"> | 107 | <Compile Include="LoginService.cs"> |
106 | <SubType>Code</SubType> | 108 | <SubType>Code</SubType> |
107 | </Compile> | 109 | </Compile> |