diff LibModuleDBShare-1.0/LibModuleDBShare-1.0.lua @ 12:5947b9721b9c master

began implementation of NewGroup implemented GetGroup
author Thnan < >
date Sun, 10 Mar 2013 03:34:49 -0400
parents 35159f132552
children 1dd07f05ecac
line wrap: on
line diff
--- a/LibModuleDBShare-1.0/LibModuleDBShare-1.0.lua	Sat Mar 09 21:50:36 2013 -0500
+++ b/LibModuleDBShare-1.0/LibModuleDBShare-1.0.lua	Sun Mar 10 03:34:49 2013 -0400
@@ -10,19 +10,29 @@
 
 if not LibModuleDBShare then return end -- No upgrade needed
 
+local AceDB = LibStub("AceDB-3.0");
+
 LibModuleDBShare.groups = LibModuleDBShare.groups or {};
 
 local DBGroup = {};
 
 --- Creates a new DB group.
 -- @param groupName The name of the new DB group.
--- @param usesDualSpec True if this group should use LibDualSpec, false otherwise.
+-- @param usesDualSpec True if this group should use LibDualSpec, false otherwise. (NYI)
 -- @param initialProfile The name of the profile to start with.
 -- @usage
 -- local myAddonDBGroup = LibStub("LibModuleDBShare-1.0"):NewGroup("MyAddonGroupName", true)
 -- @return the new DB group object
 function LibModuleDBShare:NewGroup(groupName, usesDualSpec, initialProfile)
-	
+	-- param checks go here
+	local group = {}
+	group.name = groupName;
+	group.syncDBTable = {};
+	group.syncDB = AceDB:New(group.syncDBTable, nil, true);
+	for k, v in pairs(DBGroup) do
+		group[k] = v;
+	end
+	return group;
 end
 
 --- Retrieves an existing DB group.
@@ -31,7 +41,7 @@
 -- local myAddonDBGroup = LibStub("LibModuleDBShare-1.0"):GetGroup("MyAddonGroupName")
 -- @return the DB group object, or nil if not found
 function LibModuleDBShare:GetGroup(groupName)
-
+	return LibModuleDBShare.groups[groupName];
 end
 
 --- Adds a database to the group.