aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src/GridInterfaces/IGridServer.cs
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/GridInterfaces/IGridServer.cs145
1 files changed, 0 insertions, 145 deletions
diff --git a/src/GridInterfaces/IGridServer.cs b/src/GridInterfaces/IGridServer.cs
deleted file mode 100644
index dcb8ef2..0000000
--- a/src/GridInterfaces/IGridServer.cs
+++ /dev/null
@@ -1,145 +0,0 @@
1/*
2* Copyright (c) OpenSim project, http://sim.opensecondlife.org/
3*
4* Redistribution and use in source and binary forms, with or without
5* modification, are permitted provided that the following conditions are met:
6* * Redistributions of source code must retain the above copyright
7* notice, this list of conditions and the following disclaimer.
8* * Redistributions in binary form must reproduce the above copyright
9* notice, this list of conditions and the following disclaimer in the
10* documentation and/or other materials provided with the distribution.
11* * Neither the name of the <organization> nor the
12* names of its contributors may be used to endorse or promote products
13* derived from this software without specific prior written permission.
14*
15* THIS SOFTWARE IS PROVIDED BY <copyright holder> ``AS IS'' AND ANY
16* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
17* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
18* DISCLAIMED. IN NO EVENT SHALL <copyright holder> BE LIABLE FOR ANY
19* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
20* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
21* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
22* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
23* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
24* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
25*
26*/
27
28
29using System;
30using System.Collections.Generic;
31using System.Net;
32using System.Net.Sockets;
33using System.IO;
34using libsecondlife;
35using OpenSim;
36
37namespace OpenSim.GridServers
38{
39 /// <summary>
40 /// Handles connection to Grid Servers.
41 /// also Sim to Sim connections?
42 /// </summary>
43
44
45
46
47 public interface IGridServer
48 {
49 UUIDBlock RequestUUIDBlock();
50 neighbourinfo[] RequestNeighbours(ulong regionhandle); //should return a array of neighbouring regions
51 AuthenticateResponse AuthenticateSession(LLUUID sessionID, LLUUID agentID, uint circuitCode);
52 bool LogoutSession(LLUUID sessionID, LLUUID agentID, uint circuitCode);
53 string GetName();
54 bool RequestConnection();
55 void SetServerInfo(string GridServerUrl, string GridSendKey, string GridRecvKey, string UserServerUrl, string UserSendKey, string UserRecvKey);
56 }
57
58 public abstract class RemoteGridBase : IGridServer
59 {
60 public abstract Dictionary<uint, agentcircuitdata> agentcircuits {
61 get;
62 set;
63 }
64
65 public abstract UUIDBlock RequestUUIDBlock();
66 public abstract neighbourinfo[] RequestNeighbours(ulong regionhandle);
67 public abstract AuthenticateResponse AuthenticateSession(LLUUID sessionID, LLUUID agentID, uint circuitCode);
68 public abstract bool LogoutSession(LLUUID sessionID, LLUUID agentID, uint circuitCode);
69 public abstract string GetName();
70 public abstract bool RequestConnection();
71 public abstract void SetServerInfo(string GridServerUrl, string GridSendKey, string GridRecvKey, string UserServerUrl, string UserSendKey, string UserRecvKey);
72 }
73
74 public abstract class LocalGridBase : IGridServer
75 {
76 public abstract UUIDBlock RequestUUIDBlock();
77 public abstract neighbourinfo[] RequestNeighbours(ulong regionhandle);
78 public abstract AuthenticateResponse AuthenticateSession(LLUUID sessionID, LLUUID agentID, uint circuitCode);
79 public abstract bool LogoutSession(LLUUID sessionID, LLUUID agentID, uint circuitCode);
80 public abstract string GetName();
81 public abstract bool RequestConnection();
82 public abstract void SetServerInfo(string GridServerUrl, string GridSendKey, string GridRecvKey, string UserServerUrl, string UserSendKey, string UserRecvKey);
83 public abstract void AddNewSession(Login session);
84 }
85
86 public struct UUIDBlock
87 {
88 public LLUUID BlockStart;
89 public LLUUID BlockEnd;
90 }
91
92 public class AuthenticateResponse
93 {
94 public bool Authorised;
95 public Login LoginInfo;
96
97 public AuthenticateResponse()
98 {
99
100 }
101
102 }
103
104 public class Login
105 {
106 public string First = "Test";
107 public string Last = "User";
108 public LLUUID Agent;
109 public LLUUID Session;
110 public LLUUID InventoryFolder;
111 public LLUUID BaseFolder;
112 public Login()
113 {
114
115 }
116 }
117
118 public interface IGridPlugin
119 {
120 IGridServer GetGridServer();
121 }
122
123 public class agentcircuitdata
124 {
125 public agentcircuitdata() { }
126 public LLUUID AgentID;
127 public LLUUID SessionID;
128 public LLUUID SecureSessionID;
129 public string firstname;
130 public string lastname;
131 public uint circuitcode;
132 public bool child_agent;
133 }
134
135 public class neighbourinfo
136 {
137 public neighbourinfo() { }
138 public ulong regionhandle;
139 public uint RegionLocX;
140 public uint RegionLocY;
141 public string sim_ip;
142 public uint sim_port;
143 }
144
145}