diff options
Diffstat (limited to 'OpenGridServices/OpenGrid.Framework.Data/UserData.cs')
-rw-r--r-- | OpenGridServices/OpenGrid.Framework.Data/UserData.cs | 101 |
1 files changed, 101 insertions, 0 deletions
diff --git a/OpenGridServices/OpenGrid.Framework.Data/UserData.cs b/OpenGridServices/OpenGrid.Framework.Data/UserData.cs new file mode 100644 index 0000000..4802c5f --- /dev/null +++ b/OpenGridServices/OpenGrid.Framework.Data/UserData.cs | |||
@@ -0,0 +1,101 @@ | |||
1 | using System; | ||
2 | using System.Collections.Generic; | ||
3 | using System.Text; | ||
4 | using libsecondlife; | ||
5 | |||
6 | namespace OpenGrid.Framework.Data | ||
7 | { | ||
8 | public interface IUserData | ||
9 | { | ||
10 | /// <summary> | ||
11 | /// Returns a user profile from a database via their UUID | ||
12 | /// </summary> | ||
13 | /// <param name="user">The accounts UUID</param> | ||
14 | /// <returns>The user data profile</returns> | ||
15 | UserProfileData getUserByUUID(LLUUID user); | ||
16 | |||
17 | /// <summary> | ||
18 | /// Returns a users profile by searching their username | ||
19 | /// </summary> | ||
20 | /// <param name="name">The users username</param> | ||
21 | /// <returns>The user data profile</returns> | ||
22 | UserProfileData getUserByName(string name); | ||
23 | |||
24 | /// <summary> | ||
25 | /// Returns a users profile by searching their username parts | ||
26 | /// </summary> | ||
27 | /// <param name="fname">Account firstname</param> | ||
28 | /// <param name="lname">Account lastname</param> | ||
29 | /// <returns>The user data profile</returns> | ||
30 | UserProfileData getUserByName(string fname, string lname); | ||
31 | |||
32 | /// <summary> | ||
33 | /// Returns the current agent for a user searching by it's UUID | ||
34 | /// </summary> | ||
35 | /// <param name="user">The users UUID</param> | ||
36 | /// <returns>The current agent session</returns> | ||
37 | UserAgentData getAgentByUUID(LLUUID user); | ||
38 | |||
39 | /// <summary> | ||
40 | /// Returns the current session agent for a user searching by username | ||
41 | /// </summary> | ||
42 | /// <param name="name">The users account name</param> | ||
43 | /// <returns>The current agent session</returns> | ||
44 | UserAgentData getAgentByName(string name); | ||
45 | |||
46 | /// <summary> | ||
47 | /// Returns the current session agent for a user searching by username parts | ||
48 | /// </summary> | ||
49 | /// <param name="fname">The users first account name</param> | ||
50 | /// <param name="lname">The users account surname</param> | ||
51 | /// <returns>The current agent session</returns> | ||
52 | UserAgentData getAgentByName(string fname, string lname); | ||
53 | |||
54 | /// <summary> | ||
55 | /// Adds a new User profile to the database | ||
56 | /// </summary> | ||
57 | /// <param name="user">UserProfile to add</param> | ||
58 | void addNewUserProfile(UserProfileData user); | ||
59 | |||
60 | /// <summary> | ||
61 | /// Adds a new agent to the database | ||
62 | /// </summary> | ||
63 | /// <param name="agent">The agent to add</param> | ||
64 | void addNewUserAgent(UserAgentData agent); | ||
65 | |||
66 | /// <summary> | ||
67 | /// Attempts to move currency units between accounts (NOT RELIABLE / TRUSTWORTHY. DONT TRY RUN YOUR OWN CURRENCY EXCHANGE WITH REAL VALUES) | ||
68 | /// </summary> | ||
69 | /// <param name="from">The account to transfer from</param> | ||
70 | /// <param name="to">The account to transfer to</param> | ||
71 | /// <param name="amount">The amount to transfer</param> | ||
72 | /// <returns>Successful?</returns> | ||
73 | bool moneyTransferRequest(LLUUID from, LLUUID to, uint amount); | ||
74 | |||
75 | /// <summary> | ||
76 | /// Attempts to move inventory between accounts, if inventory is copyable it will be copied into the target account. | ||
77 | /// </summary> | ||
78 | /// <param name="from">User to transfer from</param> | ||
79 | /// <param name="to">User to transfer to</param> | ||
80 | /// <param name="inventory">Specified inventory item</param> | ||
81 | /// <returns>Successful?</returns> | ||
82 | bool inventoryTransferRequest(LLUUID from, LLUUID to, LLUUID inventory); | ||
83 | |||
84 | /// <summary> | ||
85 | /// Returns the plugin version | ||
86 | /// </summary> | ||
87 | /// <returns>Plugin version in MAJOR.MINOR.REVISION.BUILD format</returns> | ||
88 | string getVersion(); | ||
89 | |||
90 | /// <summary> | ||
91 | /// Returns the plugin name | ||
92 | /// </summary> | ||
93 | /// <returns>Plugin name, eg MySQL User Provider</returns> | ||
94 | string getName(); | ||
95 | |||
96 | /// <summary> | ||
97 | /// Initialises the plugin (artificial constructor) | ||
98 | /// </summary> | ||
99 | void Initialise(); | ||
100 | } | ||
101 | } | ||