[CalendarServer-changes] [9982] CalendarServer/branches/users/gaya/sharedgroups/txdav/common/ datastore
source_changes at macosforge.org
source_changes at macosforge.org
Wed Oct 24 16:38:14 PDT 2012
Revision: 9982
http://trac.calendarserver.org//changeset/9982
Author: gaya at apple.com
Date: 2012-10-24 16:38:14 -0700 (Wed, 24 Oct 2012)
Log Message:
-----------
Remove ADDRESSBOOK table (by adding alias in sql_tables.py for now)
Modified Paths:
--------------
CalendarServer/branches/users/gaya/sharedgroups/txdav/common/datastore/sql_schema/current.sql
CalendarServer/branches/users/gaya/sharedgroups/txdav/common/datastore/sql_tables.py
CalendarServer/branches/users/gaya/sharedgroups/txdav/common/datastore/test/util.py
Modified: CalendarServer/branches/users/gaya/sharedgroups/txdav/common/datastore/sql_schema/current.sql
===================================================================
--- CalendarServer/branches/users/gaya/sharedgroups/txdav/common/datastore/sql_schema/current.sql 2012-10-24 21:29:59 UTC (rev 9981)
+++ CalendarServer/branches/users/gaya/sharedgroups/txdav/common/datastore/sql_schema/current.sql 2012-10-24 23:38:14 UTC (rev 9982)
@@ -334,42 +334,22 @@
MODIFIED timestamp default timezone('UTC', CURRENT_TIMESTAMP)
);
--- #### TODO: DELETE ####
------------------
--- AddressBook --
------------------
-
-create table ADDRESSBOOK (
- RESOURCE_ID integer primary key default nextval('RESOURCE_ID_SEQ') -- implicit index
-);
-
-
--- #### TODO: DELETE ####
---------------------------
--- AddressBook Metadata --
---------------------------
-
-create table ADDRESSBOOK_METADATA (
- RESOURCE_ID integer primary key references ADDRESSBOOK on delete cascade, -- implicit index
- CREATED timestamp default timezone('UTC', CURRENT_TIMESTAMP),
- MODIFIED timestamp default timezone('UTC', CURRENT_TIMESTAMP)
-);
-
-
-----------------------------
-- AddressBook Object --
-----------------------------
+-- #### Want non-null constraints when using as address book object, but not when using as address book ####
+
create table ADDRESSBOOK_OBJECT (
RESOURCE_ID integer primary key default nextval('RESOURCE_ID_SEQ'), -- implicit index
- ADDRESSBOOK_RESOURCE_ID integer not null references ADDRESSBOOK on delete cascade, -- #### TODO: change to references ADDRESSBOOK_OBJECT ####
- RESOURCE_NAME varchar(255) not null,
- VCARD_TEXT text not null,
- VCARD_UID varchar(255) not null,
- MD5 char(32) not null,
+ ADDRESSBOOK_RESOURCE_ID integer default null references ADDRESSBOOK_OBJECT on delete cascade,
+ RESOURCE_NAME varchar(255) default null,
+ VCARD_TEXT text default null,
+ VCARD_UID varchar(255) default null,
+ MD5 char(32) default null,
CREATED timestamp default timezone('UTC', CURRENT_TIMESTAMP),
MODIFIED timestamp default timezone('UTC', CURRENT_TIMESTAMP),
- KIND integer not null, -- enum OBJECT_KIND
+ KIND integer default 1 not null, -- enum OBJECT_KIND -- ### default 1=group for address book code compatibility.
unique(ADDRESSBOOK_RESOURCE_ID, RESOURCE_NAME), -- implicit index
unique(ADDRESSBOOK_RESOURCE_ID, VCARD_UID) -- implicit index
@@ -394,8 +374,8 @@
---------------------------------
create table ABO_MEMBERS (
- GROUP_ID integer references ADDRESSBOOK_OBJECT, -- AddressBook Object's (kind=='group') RESOURCE_ID
- ADDRESSBOOK_ID integer not null references ADDRESSBOOK on delete cascade, -- #### TODO: change to references ADDRESSBOOK_OBJECT ####
+ GROUP_ID integer not null references ADDRESSBOOK_OBJECT, -- AddressBook Object's (kind=='group') RESOURCE_ID
+ ADDRESSBOOK_ID integer not null references ADDRESSBOOK_OBJECT on delete cascade, -- #### TODO: change to references ADDRESSBOOK_OBJECT ####
MEMBER_ID integer not null references ADDRESSBOOK_OBJECT, -- member AddressBook Object's RESOURCE_ID
primary key(GROUP_ID, MEMBER_ID) -- implicit index
);
@@ -405,23 +385,33 @@
------------------------------------------
create table ABO_FOREIGN_MEMBERS (
- GROUP_ID integer references ADDRESSBOOK_OBJECT, -- AddressBook Object's (kind=='group') RESOURCE_ID
- ADDRESSBOOK_ID integer not null references ADDRESSBOOK on delete cascade, -- #### TODO: change to references ADDRESSBOOK_OBJECT ####
+ GROUP_ID integer not null references ADDRESSBOOK_OBJECT, -- AddressBook Object's (kind=='group') RESOURCE_ID
+ ADDRESSBOOK_ID integer not null references ADDRESSBOOK_OBJECT on delete cascade, -- #### TODO: change to references ADDRESSBOOK_OBJECT ####
MEMBER_ADDRESS varchar(255) not null, -- member AddressBook Object's address
primary key(GROUP_ID, MEMBER_ADDRESS) -- implicit index
);
+-- #### TODO: DELETE, USE CREATED and MODIFIED in ADDRESSS_BOOK_OBJECT instead ####
+--------------------------
+-- AddressBook Metadata --
+--------------------------
+create table ADDRESSBOOK_METADATA (
+ RESOURCE_ID integer primary key references ADDRESSBOOK_OBJECT on delete cascade, -- implicit index
+ CREATED timestamp default timezone('UTC', CURRENT_TIMESTAMP),
+ MODIFIED timestamp default timezone('UTC', CURRENT_TIMESTAMP)
+);
+
+
----------------------
-- AddressBook Bind --
----------------------
--- Joins ADDRESSBOOK_HOME and ADDRESSBOOK
+-- Joins ADDRESSBOOK_HOME and ADDRESSBOOK_OBJECT (acting as Address Book)
create table ADDRESSBOOK_BIND (
ADDRESSBOOK_HOME_RESOURCE_ID integer not null references ADDRESSBOOK_HOME,
- ADDRESSBOOK_RESOURCE_ID integer references ADDRESSBOOK on delete cascade, -- ### TODO: DELETE ROW ###
- ADDRESSBOOK_OBJECT_RESOURCE_ID integer references ADDRESSBOOK_OBJECT on delete cascade, -- ### TODO: add 'not null' constraint ###
+ ADDRESSBOOK_RESOURCE_ID integer not null references ADDRESSBOOK_OBJECT on delete cascade,
ADDRESSBOOK_RESOURCE_NAME varchar(255) not null,
BIND_MODE integer not null, -- enum CALENDAR_BIND_MODE
BIND_STATUS integer not null, -- enum CALENDAR_BIND_STATUS
@@ -464,7 +454,7 @@
create table ADDRESSBOOK_OBJECT_REVISIONS (
ADDRESSBOOK_HOME_RESOURCE_ID integer not null references ADDRESSBOOK_HOME,
- ADDRESSBOOK_RESOURCE_ID integer references ADDRESSBOOK,
+ ADDRESSBOOK_RESOURCE_ID integer references ADDRESSBOOK_OBJECT,
ADDRESSBOOK_NAME varchar(255) default null,
RESOURCE_NAME varchar(255),
REVISION integer default nextval('REVISION_SEQ') not null,
Modified: CalendarServer/branches/users/gaya/sharedgroups/txdav/common/datastore/sql_tables.py
===================================================================
--- CalendarServer/branches/users/gaya/sharedgroups/txdav/common/datastore/sql_tables.py 2012-10-24 21:29:59 UTC (rev 9981)
+++ CalendarServer/branches/users/gaya/sharedgroups/txdav/common/datastore/sql_tables.py 2012-10-24 23:38:14 UTC (rev 9982)
@@ -91,6 +91,8 @@
schema.ADDRESSBOOK_OBJECT.VCARD_UID
schema.ADDRESSBOOK_OBJECT.PARENT_RESOURCE_ID = \
schema.ADDRESSBOOK_OBJECT.ADDRESSBOOK_RESOURCE_ID
+schema.ADDRESSBOOK = \
+ schema.ADDRESSBOOK_OBJECT
Modified: CalendarServer/branches/users/gaya/sharedgroups/txdav/common/datastore/test/util.py
===================================================================
--- CalendarServer/branches/users/gaya/sharedgroups/txdav/common/datastore/test/util.py 2012-10-24 21:29:59 UTC (rev 9981)
+++ CalendarServer/branches/users/gaya/sharedgroups/txdav/common/datastore/test/util.py 2012-10-24 23:38:14 UTC (rev 9982)
@@ -216,7 +216,6 @@
'CALENDAR_BIND',
'ADDRESSBOOK_BIND',
'CALENDAR',
- 'ADDRESSBOOK',
'CALENDAR_HOME',
'ADDRESSBOOK_HOME',
'NOTIFICATION',
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20121024/1d4a6ee8/attachment.html>
More information about the calendarserver-changes
mailing list