Add rdbms specific creation scripts for active sync
authorMichael J. Rubinsky <mrubinsk@horde.org>
Tue, 22 Jun 2010 15:52:25 +0000 (11:52 -0400)
committerMichael J. Rubinsky <mrubinsk@horde.org>
Tue, 22 Jun 2010 15:53:08 +0000 (11:53 -0400)
horde/scripts/sql/horde_activesync.mssql.sql [new file with mode: 0644]
horde/scripts/sql/horde_activesync.mysql.sql [new file with mode: 0644]
horde/scripts/sql/horde_activesync.oci8.sql [new file with mode: 0644]
horde/scripts/sql/horde_activesync.pgsql.sql [new file with mode: 0644]
horde/scripts/sql/horde_activesync.sql

diff --git a/horde/scripts/sql/horde_activesync.mssql.sql b/horde/scripts/sql/horde_activesync.mssql.sql
new file mode 100644 (file)
index 0000000..9dce215
--- /dev/null
@@ -0,0 +1,54 @@
+CREATE TABLE horde_activesync_state (
+    sync_time          INT,
+    sync_key           VARCHAR(255) NOT NULL,
+    sync_data          TEXT,
+    sync_devid         VARCHAR(255),
+    sync_folderid      VARCHAR(255),
+    sync_user          VARCHAR(255) NOT NULL,
+--
+    PRIMARY KEY (sync_key)
+);
+GO
+
+CREATE INDEX activesync_state_folder_idx ON horde_activesync_state (sync_folderid);
+CREATE INDEX activesync_state_devid_idx ON horde_activesync_state (sync_devid);
+GO
+
+CREATE TABLE horde_activesync_map (
+    message_uid        VARCHAR(255) NOT NULL,
+    sync_modtime       INT,
+    sync_key           VARCHAR(255) NOT NULL,
+    sync_devid         VARCHAR(255) NOT NULL,
+    sync_folderid      VARCHAR(255) NOT NULL,
+    sync_user          VARCHAR(255) NOT NULL
+);
+GO
+
+CREATE INDEX activesync_map_user_idx ON horde_activesync_map (sync_user);
+CREATE INDEX activesync_map_devid_idx ON horde_activesync_map (sync_devid);
+CREATE INDEX activesync_map_message_idx ON horde_activesync_map (message_uid);
+GO
+
+CREATE TABLE horde_activesync_device (
+    device_id         VARCHAR(255) NOT NULL,
+    device_type       VARCHAR(255) NOT NULL,
+    device_agent      VARCHAR(255) NOT NULL,
+    device_supported  TEXT,
+    device_policykey  BIGINT DEFAULT 0,
+    device_rwstatus   INT,
+--
+    PRIMARY KEY (device_id)
+);
+GO
+
+CREATE TABLE horde_activesync_device_users (
+    device_id         VARCHAR(255) NOT NULL,
+    device_user       VARCHAR(255) NOT NULL,
+    device_ping       TEXT,
+    device_folders    TEXT
+);
+GO
+
+CREATE INDEX activesync_device_users_idx ON horde_activesync_device_users (device_user);
+CREATE INDEX activesync_device_users_id_idx on horde_activesync_device_users (device_id);
+GO
diff --git a/horde/scripts/sql/horde_activesync.mysql.sql b/horde/scripts/sql/horde_activesync.mysql.sql
new file mode 100644 (file)
index 0000000..11539b7
--- /dev/null
@@ -0,0 +1,48 @@
+CREATE TABLE horde_activesync_state (
+    sync_time          INTEGER,
+    sync_key           VARCHAR(255) NOT NULL,
+    sync_data          LONGTEXT,
+    sync_devid         VARCHAR(255),
+    sync_folderid      VARCHAR(255),
+    sync_user          VARCHAR(255) NOT NULL,
+--
+    PRIMARY KEY (sync_key)
+);
+
+CREATE INDEX activesync_state_folder_idx ON horde_activesync_state (sync_folderid);
+CREATE INDEX activesync_state_devid_idx ON horde_activesync_state (sync_devid);
+
+CREATE TABLE horde_activesync_map (
+    message_uid        VARCHAR(255) NOT NULL,
+    sync_modtime       INTEGER,
+    sync_key           VARCHAR(255) NOT NULL,
+    sync_devid         VARCHAR(255) NOT NULL,
+    sync_folderid      VARCHAR(255) NOT NULL,
+    sync_user          VARCHAR(255) NOT NULL
+);
+
+CREATE INDEX activesync_map_devid_idx ON horde_activesync_map (sync_devid);
+CREATE INDEX activesync_map_message_idx ON horde_activesync_map (message_uid);
+CREATE INDEX activesync_map_user_idx ON horde_activesync_map (sync_user);
+
+
+CREATE TABLE horde_activesync_device (
+    device_id         VARCHAR(255) NOT NULL,
+    device_type       VARCHAR(255) NOT NULL,
+    device_agent      VARCHAR(255) NOT NULL,
+    device_supported  TEXT,
+    device_policykey  BIGINT DEFAULT 0,
+    device_rwstatus   INTEGER,
+--
+    PRIMARY KEY (device_id)
+);
+
+CREATE TABLE horde_activesync_device_users (
+    device_id         VARCHAR(255) NOT NULL,
+    device_user       VARCHAR(255) NOT NULL,
+    device_ping       TEXT,
+    device_folders    TEXT
+);
+
+CREATE INDEX activesync_device_users_idx ON horde_activesync_device_users (device_user);
+CREATE INDEX activesync_device_users_id_idx on horde_activesync_device_users (device_id);
\ No newline at end of file
diff --git a/horde/scripts/sql/horde_activesync.oci8.sql b/horde/scripts/sql/horde_activesync.oci8.sql
new file mode 100644 (file)
index 0000000..82f9abc
--- /dev/null
@@ -0,0 +1,49 @@
+CREATE TABLE horde_activesync_state (
+    sync_time          NUMBER(16),
+    sync_key           VARCHAR2(255) NOT NULL,
+    sync_data          CLOB,
+    sync_devid         VARCHAR2(255),
+    sync_folderid      VARCHAR2(255),
+    sync_user          VARCHAR2(255) NOT NULL,
+--
+    PRIMARY KEY (sync_key)
+);
+
+CREATE INDEX activesync_state_folder_idx ON horde_activesync_state (sync_folderid);
+CREATE INDEX activesync_state_devid_idx ON horde_activesync_state (sync_devid);
+
+CREATE TABLE horde_activesync_map (
+    message_uid        VARCHAR2(255) NOT NULL,
+    sync_modtime       NUMBER(16),
+    sync_key           VARCHAR2(255) NOT NULL,
+    sync_devid         VARCHAR2(255) NOT NULL,
+    sync_folderid      VARCHAR2(255) NOT NULL,
+    sync_user          VARCHAR2(255) NOT NULL
+);
+
+CREATE INDEX activesync_map_devid_idx ON horde_activesync_map (sync_devid);
+CREATE INDEX activesync_map_message_idx ON horde_activesync_map (message_uid);
+CREATE INDEX activesync_map_user_idx ON horde_activesync_map (sync_user);
+
+
+CREATE TABLE horde_activesync_device (
+    device_id         VARCHAR2(255) NOT NULL,
+    device_type       VARCHAR2(255) NOT NULL,
+    device_agent      VARCHAR2(255) NOT NULL,
+    device_supported  CLOB,
+    device_policykey  NUMBER(16) DEFAULT 0,
+    device_rwstatus   NUMBER(8),
+--
+    PRIMARY KEY (device_id)
+);
+
+CREATE TABLE horde_activesync_device_users (
+    device_id         VARCHAR2(255) NOT NULL,
+    device_user       VARCHAR2(255) NOT NULL,
+    device_ping       CLOB,
+    device_folders    CLOB
+);
+CREATE INDEX activesync_device_users_idx ON horde_activesync_device_users (device_user);
+CREATE INDEX activesync_device_users_id_idx on horde_activesync_device_users (device_id);
+
+exit
diff --git a/horde/scripts/sql/horde_activesync.pgsql.sql b/horde/scripts/sql/horde_activesync.pgsql.sql
new file mode 100644 (file)
index 0000000..8fe535f
--- /dev/null
@@ -0,0 +1,50 @@
+BEGIN;
+
+CREATE TABLE horde_activesync_state (
+    sync_time          INT,
+    sync_key           VARCHAR(255) NOT NULL,
+    sync_data          TEXT,
+    sync_devid         VARCHAR(255),
+    sync_folderid      VARCHAR(255),
+    sync_user          VARCHAR(255) NOT NULL,
+--
+    PRIMARY KEY (sync_key)
+);
+
+CREATE INDEX activesync_state_folder_idx ON horde_activesync_state (sync_folderid);
+CREATE INDEX activesync_state_devid_idx ON horde_activesync_state (sync_devid);
+
+CREATE TABLE horde_activesync_map (
+    message_uid        VARCHAR(255) NOT NULL,
+    sync_modtime       INT,
+    sync_key           VARCHAR(255) NOT NULL,
+    sync_devid         VARCHAR(255) NOT NULL,
+    sync_folderid      VARCHAR(255) NOT NULL,
+    sync_user          VARCHAR(255) NOT NULL
+);
+
+CREATE INDEX activesync_map_devid_idx ON horde_activesync_map (sync_devid);
+CREATE INDEX activesync_map_message_idx ON horde_activesync_map (message_uid);
+CREATE INDEX activesync_map_user_idx ON horde_activesync_map (sync_user);
+
+CREATE TABLE horde_activesync_device (
+    device_id         VARCHAR(255) NOT NULL,
+    device_type       VARCHAR(255) NOT NULL,
+    device_agent      VARCHAR(255) NOT NULL,
+    device_supported  TEXT,
+    device_policykey  BIGINT DEFAULT 0,
+    device_rwstatus   INT,
+--
+    PRIMARY KEY (device_id)
+);
+
+CREATE TABLE horde_activesync_device_users (
+    device_id         VARCHAR(255) NOT NULL,
+    device_user       VARCHAR(255) NOT NULL,
+    device_ping       TEXT,
+    device_folders    TEXT);
+
+CREATE INDEX activesync_device_users_idx ON horde_activesync_device_users (device_user);
+CREATE INDEX activesync_device_users_id_idx on horde_activesync_device_users (device_id);
+
+COMMIT;
\ No newline at end of file
index 5f21e01..19e8e79 100644 (file)
@@ -1,7 +1,7 @@
 CREATE TABLE horde_activesync_state (
     sync_time          INTEGER,
     sync_key           VARCHAR(255) NOT NULL,
-    sync_data          LONGTEXT,
+    sync_data          TEXT,
     sync_devid         VARCHAR(255),
     sync_folderid      VARCHAR(255),
     sync_user          VARCHAR(255) NOT NULL,