diff options
Diffstat (limited to 'OpenSim/Services/Interfaces/IUserService.cs')
-rw-r--r-- | OpenSim/Services/Interfaces/IUserService.cs | 45 |
1 files changed, 40 insertions, 5 deletions
diff --git a/OpenSim/Services/Interfaces/IUserService.cs b/OpenSim/Services/Interfaces/IUserService.cs index 2a4e79d..9bbe503 100644 --- a/OpenSim/Services/Interfaces/IUserService.cs +++ b/OpenSim/Services/Interfaces/IUserService.cs | |||
@@ -32,6 +32,24 @@ namespace OpenSim.Services.Interfaces | |||
32 | { | 32 | { |
33 | public class UserData | 33 | public class UserData |
34 | { | 34 | { |
35 | public UserData() | ||
36 | { | ||
37 | } | ||
38 | |||
39 | public UserData(UUID userID, UUID homeRegionID, float homePositionX, | ||
40 | float homePositionY, float homePositionZ, float homeLookAtX, | ||
41 | float homeLookAtY, float homeLookAtZ) | ||
42 | { | ||
43 | UserID = userID; | ||
44 | HomeRegionID = homeRegionID; | ||
45 | HomePositionX = homePositionX; | ||
46 | HomePositionY = homePositionY; | ||
47 | HomePositionZ = homePositionZ; | ||
48 | HomeLookAtX = homeLookAtX; | ||
49 | HomeLookAtY = homeLookAtY; | ||
50 | HomeLookAtZ = homeLookAtZ; | ||
51 | } | ||
52 | |||
35 | public string FirstName; | 53 | public string FirstName; |
36 | public string LastName; | 54 | public string LastName; |
37 | public UUID UserID; | 55 | public UUID UserID; |
@@ -49,7 +67,7 @@ namespace OpenSim.Services.Interfaces | |||
49 | public float HomeLookAtY; | 67 | public float HomeLookAtY; |
50 | public float HomeLookAtZ; | 68 | public float HomeLookAtZ; |
51 | 69 | ||
52 | // There are here because they | 70 | // These are here because they |
53 | // concern the account rather than | 71 | // concern the account rather than |
54 | // the profile. They just happen to | 72 | // the profile. They just happen to |
55 | // be used in the Linden profile as well | 73 | // be used in the Linden profile as well |
@@ -58,11 +76,21 @@ namespace OpenSim.Services.Interfaces | |||
58 | public int UserFlags; | 76 | public int UserFlags; |
59 | public string AccountType; | 77 | public string AccountType; |
60 | 78 | ||
61 | // This is only used internally. It needs to be set | 79 | }; |
62 | // to the secret of the sending region when updating | 80 | |
63 | // user data. | 81 | public class UserDataMessage |
82 | { | ||
83 | public UserData Data; | ||
84 | |||
85 | // Set to the region's ID and secret when updating home location | ||
64 | // | 86 | // |
87 | public UUID RegionID; | ||
65 | public UUID RegionSecret; | 88 | public UUID RegionSecret; |
89 | |||
90 | // Set to the auth info of the user requesting creation/update | ||
91 | // | ||
92 | public UUID PrincipalID; | ||
93 | public UUID SessionID; | ||
66 | }; | 94 | }; |
67 | 95 | ||
68 | public interface IUserDataService | 96 | public interface IUserDataService |
@@ -73,11 +101,18 @@ namespace OpenSim.Services.Interfaces | |||
73 | // This will set only the home region portion of the data! | 101 | // This will set only the home region portion of the data! |
74 | // Can't be used to set god level, flags, type or change the name! | 102 | // Can't be used to set god level, flags, type or change the name! |
75 | // | 103 | // |
76 | bool SetUserData(UserData data); | 104 | bool SetHomePosition(UserData data, UUID RegionID, UUID RegionSecret); |
105 | |||
106 | // Update all updatable fields | ||
107 | // | ||
108 | bool SetUserData(UserData data, UUID PrincipalID, UUID SessionID); | ||
77 | 109 | ||
78 | // Returns the list of avatars that matches both the search | 110 | // Returns the list of avatars that matches both the search |
79 | // criterion and the scope ID passed | 111 | // criterion and the scope ID passed |
80 | // | 112 | // |
81 | List<UserData> GetAvatarPickerData(UUID scopeID, string query); | 113 | List<UserData> GetAvatarPickerData(UUID scopeID, string query); |
114 | |||
115 | // Creates a user data record | ||
116 | bool CreateUserData(UserData data, UUID PrincipalID, UUID SessionID); | ||
82 | } | 117 | } |
83 | } | 118 | } |