[CalendarServer-changes] [9893] CalendarServer/branches/users/gaya/sharedgroups/txdav/common/ datastore/sql_schema/current.sql
source_changes at macosforge.org
source_changes at macosforge.org
Wed Oct 3 16:21:28 PDT 2012
Revision: 9893
http://trac.calendarserver.org//changeset/9893
Author: gaya at apple.com
Date: 2012-10-03 16:21:28 -0700 (Wed, 03 Oct 2012)
Log Message:
-----------
first changes for shared groups
Modified Paths:
--------------
CalendarServer/branches/users/gaya/sharedgroups/txdav/common/datastore/sql_schema/current.sql
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-03 22:58:00 UTC (rev 9892)
+++ CalendarServer/branches/users/gaya/sharedgroups/txdav/common/datastore/sql_schema/current.sql 2012-10-03 23:21:28 UTC (rev 9893)
@@ -340,6 +340,7 @@
MODIFIED timestamp default timezone('UTC', CURRENT_TIMESTAMP)
);
+-- #### TO BE DELETED ####
-----------------
-- AddressBook --
-----------------
@@ -349,6 +350,7 @@
);
+-- #### TO BE DELETED ####
--------------------------
-- AddressBook Metadata --
--------------------------
@@ -360,15 +362,70 @@
);
+-----------------------------
+-- Addressbook Object --
+-----------------------------
+
+ 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,
+ RESOURCE_NAME varchar(255) not null,
+ VCARD_TEXT text not null,
+ VCARD_UID varchar(255) not null,
+ MD5 char(32) not null,
+ CREATED timestamp default timezone('UTC', CURRENT_TIMESTAMP),
+ MODIFIED timestamp default timezone('UTC', CURRENT_TIMESTAMP),
+ KIND integer not null, -- enum OBJECT_KIND
+
+ unique(ADDRESSBOOK_RESOURCE_ID, RESOURCE_NAME), -- implicit index
+ unique(ADDRESSBOOK_RESOURCE_ID, VCARD_UID) -- implicit index
+);
+
+-----------------------------
+-- Addressbook Object kind --
+-----------------------------
+
+create table OBJECT_KIND (
+ ID integer primary key,
+ DESCRIPTION varchar(16) not null unique
+);
+
+insert into OBJECT_KIND values (0, 'person');
+insert into OBJECT_KIND values (1, 'group' );
+insert into OBJECT_KIND values (2, 'resource');
+insert into OBJECT_KIND values (3, 'location');
+
+-----------------------------
+-- Members --
+-----------------------------
+
+create table MEMBERS (
+ GROUP_ID integer references ADDRESSBOOK_OBJECT,
+ MEMBER_ID integer references ADDRESSBOOK_OBJECT,
+ primary key(GROUP_ID, MEMBER_ID) -- implicit index
+);
+
+--------------------------
+-- Foreign Members --
+--------------------------
+
+create table FOREIGN_MEMBERS (
+ GROUP_ID integer references ADDRESSBOOK_OBJECT,
+ MEMBER_ADDRESS varchar(255) not null,
+ primary key(GROUP_ID, MEMBER_ADDRESS) -- implicit index
+);
+
+
----------------------
-- AddressBook Bind --
----------------------
-- Joins ADDRESSBOOK_HOME and ADDRESSBOOK
-create table ADDRESSBOOK_BIND (
- ADDRESSBOOK_HOME_RESOURCE_ID integer not null references ADDRESSBOOK_HOME,
- ADDRESSBOOK_RESOURCE_ID integer not null references ADDRESSBOOK on delete cascade,
+create table ADDRESSBOOK_BIND (
+ ADDRESSBOOK_HOME_RESOURCE_ID integer not null references ADDRESSBOOK_HOME,
+ ADDRESSBOOK_RESOURCE_ID integer references ADDRESSBOOK on delete cascade, -- ### TO BE DELTETED
+ ADDRESSBOOK_OBJECT_RESOURCE_ID integer references ADDRESSBOOK_OBJECT on delete cascade, -- # ADD not null
-- An invitation which hasn't been accepted yet will not yet have a resource
-- name, so this field may be null.
@@ -387,20 +444,6 @@
create index ADDRESSBOOK_BIND_RESOURCE_ID on
ADDRESSBOOK_BIND(ADDRESSBOOK_RESOURCE_ID);
-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,
- RESOURCE_NAME varchar(255) not null,
- VCARD_TEXT text not null,
- VCARD_UID varchar(255) not null,
- MD5 char(32) not null,
- CREATED timestamp default timezone('UTC', CURRENT_TIMESTAMP),
- MODIFIED timestamp default timezone('UTC', CURRENT_TIMESTAMP),
-
- unique(ADDRESSBOOK_RESOURCE_ID, RESOURCE_NAME), -- implicit index
- unique(ADDRESSBOOK_RESOURCE_ID, VCARD_UID) -- implicit index
-);
-
---------------
-- Revisions --
---------------
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20121003/d3afc5ec/attachment.html>
More information about the calendarserver-changes
mailing list