clockwerk-opensim-stable – Blame information for rev 1

Subversion Repositories:
Rev:
Rev Author Line No. Line
1 vero 1 /*
2 * Copyright (c) Contributors, http://opensimulator.org/
3 * See CONTRIBUTORS.TXT for a full list of copyright holders.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * * Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 * * Neither the name of the OpenSimulator Project nor the
13 * names of its contributors may be used to endorse or promote products
14 * derived from this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
17 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27  
28 using System;
29 using System.Net;
30 using System.Collections.Generic;
31  
32 using OpenSim.Framework;
33 using OpenMetaverse;
34  
35 namespace OpenSim.Services.Interfaces
36 {
37 public interface IGatekeeperService
38 {
39 bool LinkRegion(string regionDescriptor, out UUID regionID, out ulong regionHandle, out string externalName, out string imageURL, out string reason);
40 GridRegion GetHyperlinkRegion(UUID regionID);
41  
42 bool LoginAgent(AgentCircuitData aCircuit, GridRegion destination, out string reason);
43  
44 }
45  
46 /// <summary>
47 /// HG1.5 only
48 /// </summary>
49 public interface IUserAgentService
50 {
51 bool LoginAgentToGrid(AgentCircuitData agent, GridRegion gatekeeper, GridRegion finalDestination, bool fromLogin, out string reason);
52 void LogoutAgent(UUID userID, UUID sessionID);
53 GridRegion GetHomeRegion(UUID userID, out Vector3 position, out Vector3 lookAt);
54 Dictionary<string, object> GetServerURLs(UUID userID);
55 Dictionary<string,object> GetUserInfo(UUID userID);
56  
57 string LocateUser(UUID userID);
58 // Tries to get the universal user identifier for the targetUserId
59 // on behalf of the userID
60 string GetUUI(UUID userID, UUID targetUserID);
61  
62 UUID GetUUID(String first, String last);
63  
64 // Returns the local friends online
65 [Obsolete]
66 List<UUID> StatusNotification(List<string> friends, UUID userID, bool online);
67  
68 bool IsAgentComingHome(UUID sessionID, string thisGridExternalName);
69 bool VerifyAgent(UUID sessionID, string token);
70 bool VerifyClient(UUID sessionID, string reportedIP);
71 }
72  
73 public interface IInstantMessage
74 {
75 bool IncomingInstantMessage(GridInstantMessage im);
76 bool OutgoingInstantMessage(GridInstantMessage im, string url, bool foreigner);
77 }
78 public interface IFriendsSimConnector
79 {
80 bool StatusNotify(UUID userID, UUID friendID, bool online);
81 bool LocalFriendshipOffered(UUID toID, GridInstantMessage im);
82 bool LocalFriendshipApproved(UUID userID, string userName, UUID friendID);
83 }
84  
85 public interface IHGFriendsService
86 {
87 int GetFriendPerms(UUID userID, UUID friendID);
88 bool NewFriendship(FriendInfo finfo, bool verified);
89 bool DeleteFriendship(FriendInfo finfo, string secret);
90 bool FriendshipOffered(UUID from, string fromName, UUID to, string message);
91 bool ValidateFriendshipOffered(UUID fromID, UUID toID);
92 // Returns the local friends online
93 List<UUID> StatusNotification(List<string> friends, UUID userID, bool online);
94 }
95  
96 public interface IInstantMessageSimConnector
97 {
98 bool SendInstantMessage(GridInstantMessage im);
99 }
100 }