diff options
author | Melanie | 2010-02-05 12:31:29 +0000 |
---|---|---|
committer | Melanie | 2010-02-05 12:31:29 +0000 |
commit | b92cb6126d8ca59121468fce44dc7b4c3b805181 (patch) | |
tree | 616a8da65aa49fe2821b9b1c4898ff3ada87f565 | |
parent | Finally cutting the gordian knot. Friends needs to be both a module and a (diff) | |
download | opensim-SC_OLD-b92cb6126d8ca59121468fce44dc7b4c3b805181.zip opensim-SC_OLD-b92cb6126d8ca59121468fce44dc7b4c3b805181.tar.gz opensim-SC_OLD-b92cb6126d8ca59121468fce44dc7b4c3b805181.tar.bz2 opensim-SC_OLD-b92cb6126d8ca59121468fce44dc7b4c3b805181.tar.xz |
Implement the friends data adaptor
-rw-r--r-- | OpenSim/Data/IFriendsData.cs | 4 | ||||
-rw-r--r-- | OpenSim/Data/MySQL/MySQLFriendsData.cs | 19 | ||||
-rw-r--r-- | OpenSim/Data/MySQL/Resources/001_FriendsStore.sql | 5 | ||||
-rw-r--r-- | OpenSim/Data/MySQL/Resources/002_FriendsStore.sql | 5 |
4 files changed, 25 insertions, 8 deletions
diff --git a/OpenSim/Data/IFriendsData.cs b/OpenSim/Data/IFriendsData.cs index 7618976..1f1a031 100644 --- a/OpenSim/Data/IFriendsData.cs +++ b/OpenSim/Data/IFriendsData.cs | |||
@@ -45,7 +45,7 @@ namespace OpenSim.Data | |||
45 | public interface IFriendsData | 45 | public interface IFriendsData |
46 | { | 46 | { |
47 | bool Store(FriendsData data); | 47 | bool Store(FriendsData data); |
48 | bool Delete(UUID ownerID, UUID friendID); | 48 | bool Delete(UUID ownerID, string friend); |
49 | FriendsData[] GetFriends(UUID owner); | 49 | FriendsData[] GetFriends(UUID principalID); |
50 | } | 50 | } |
51 | } | 51 | } |
diff --git a/OpenSim/Data/MySQL/MySQLFriendsData.cs b/OpenSim/Data/MySQL/MySQLFriendsData.cs index 923810b..9f7e850 100644 --- a/OpenSim/Data/MySQL/MySQLFriendsData.cs +++ b/OpenSim/Data/MySQL/MySQLFriendsData.cs | |||
@@ -38,19 +38,26 @@ namespace OpenSim.Data.MySQL | |||
38 | public class MySqlFriendsData : MySQLGenericTableHandler<FriendsData>, IFriendsData | 38 | public class MySqlFriendsData : MySQLGenericTableHandler<FriendsData>, IFriendsData |
39 | { | 39 | { |
40 | public MySqlFriendsData(string connectionString, string realm) | 40 | public MySqlFriendsData(string connectionString, string realm) |
41 | : base(connectionString, realm, "Friends") | 41 | : base(connectionString, realm, "FriendsStore") |
42 | { | 42 | { |
43 | } | 43 | } |
44 | 44 | ||
45 | public bool Delete(UUID principalID, UUID friendID) | 45 | public bool Delete(UUID principalID, string friend) |
46 | { | 46 | { |
47 | // We need to delete the row where PrincipalID=principalID AND FriendID=firnedID | 47 | MySqlCommand cmd = new MySqlCommand(); |
48 | return false; | 48 | |
49 | cmd.CommandText = String.Format("delete from {0} where PrincipalID = ?PrincipalID and Friend = ?Friend", m_Realm); | ||
50 | cmd.Parameters.AddWithValue("?PrincipalID", principalID.ToString()); | ||
51 | cmd.Parameters.AddWithValue("?Friend", friend); | ||
52 | |||
53 | ExecuteNonQuery(cmd); | ||
54 | |||
55 | return true; | ||
49 | } | 56 | } |
50 | 57 | ||
51 | public FriendsData[] GetFriends(UUID userID) | 58 | public FriendsData[] GetFriends(UUID principalID) |
52 | { | 59 | { |
53 | return Get("PrincipalID =\'" + userID.ToString() + "'"); | 60 | return Get("PrincipalID", principalID.ToString()); |
54 | } | 61 | } |
55 | } | 62 | } |
56 | } | 63 | } |
diff --git a/OpenSim/Data/MySQL/Resources/001_FriendsStore.sql b/OpenSim/Data/MySQL/Resources/001_FriendsStore.sql new file mode 100644 index 0000000..da2c59c --- /dev/null +++ b/OpenSim/Data/MySQL/Resources/001_FriendsStore.sql | |||
@@ -0,0 +1,5 @@ | |||
1 | BEGIN; | ||
2 | |||
3 | CREATE TABLE `Friends` (`PrincipalID` CHAR(36) NOT NULL, `Friend` VARCHAR(255) NOT NULL, `Flags` VARCHAR(16) NOT NULL DEFAULT 0, `Offered` VARCHAR(32) NOT NULL DEFAULT 0, PRIMARY KEY(`PrincipalID`, `Friend`), KEY(`PrincipalID`)); | ||
4 | |||
5 | COMMIT; | ||
diff --git a/OpenSim/Data/MySQL/Resources/002_FriendsStore.sql b/OpenSim/Data/MySQL/Resources/002_FriendsStore.sql new file mode 100644 index 0000000..a363867 --- /dev/null +++ b/OpenSim/Data/MySQL/Resources/002_FriendsStore.sql | |||
@@ -0,0 +1,5 @@ | |||
1 | BEGIN; | ||
2 | |||
3 | INSERT INTO `Friends` SELECT `ownerID`, `friendID`, `friendPerms`, 0 FROM `userfriends`; | ||
4 | |||
5 | COMMIT; | ||