opensim – Blame information for rev 1

Subversion Repositories:
Rev:
Rev Author Line No. Line
1 eva 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 public interface IUserAgentService
47 {
48 bool LoginAgentToGrid(AgentCircuitData agent, GridRegion gatekeeper, GridRegion finalDestination, bool fromLogin, out string reason);
49 void LogoutAgent(UUID userID, UUID sessionID);
50 GridRegion GetHomeRegion(UUID userID, out Vector3 position, out Vector3 lookAt);
51 Dictionary<string, object> GetServerURLs(UUID userID);
52 Dictionary<string,object> GetUserInfo(UUID userID);
53  
54 string LocateUser(UUID userID);
55 // Tries to get the universal user identifier for the targetUserId
56 // on behalf of the userID
57 string GetUUI(UUID userID, UUID targetUserID);
58  
59 UUID GetUUID(String first, String last);
60  
61 // Returns the local friends online
62 [Obsolete]
63 List<UUID> StatusNotification(List<string> friends, UUID userID, bool online);
64  
65 bool IsAgentComingHome(UUID sessionID, string thisGridExternalName);
66 bool VerifyAgent(UUID sessionID, string token);
67 bool VerifyClient(UUID sessionID, string reportedIP);
68 }
69  
70 public interface IInstantMessage
71 {
72 bool IncomingInstantMessage(GridInstantMessage im);
73 bool OutgoingInstantMessage(GridInstantMessage im, string url, bool foreigner);
74 }
75 public interface IFriendsSimConnector
76 {
77 bool StatusNotify(UUID userID, UUID friendID, bool online);
78 bool LocalFriendshipOffered(UUID toID, GridInstantMessage im);
79 bool LocalFriendshipApproved(UUID userID, string userName, UUID friendID);
80 }
81  
82 public interface IHGFriendsService
83 {
84 int GetFriendPerms(UUID userID, UUID friendID);
85 bool NewFriendship(FriendInfo finfo, bool verified);
86 bool DeleteFriendship(FriendInfo finfo, string secret);
87 bool FriendshipOffered(UUID from, string fromName, UUID to, string message);
88 bool ValidateFriendshipOffered(UUID fromID, UUID toID);
89 // Returns the local friends online
90 List<UUID> StatusNotification(List<string> friends, UUID userID, bool online);
91 }
92  
93 public interface IInstantMessageSimConnector
94 {
95 bool SendInstantMessage(GridInstantMessage im);
96 }
97 }