--- /dev/null
+<?php
+class HordeActiveSyncBaseTables extends Horde_Db_Migration_Base
+{
+ public function up()
+ {
+ if (!in_array('horde_activesync_state', $this->tables())) {
+ $t = $this->createTable('horde_activesync_state', array('primaryKey' => array('sync_key')));
+ $t->column('sync_time', 'integer');
+ $t->column('sync_key', 'string', array('limit' => 255, 'null' => false));
+ $t->column('sync_data', 'text');
+ $t->column('sync_devid', 'string', array('limit' => 255));
+ $t->column('sync_folderid', 'string', array('limit' => 255));
+ $t->column('sync_user', 'string', array('limit' => 255));
+ $t->end();
+
+ $this->addIndex('horde_activesync_state', array('sync_folderid'));
+ $this->addIndex('horde_activesync_state', array('sync_devid'));
+ }
+ if (!in_array('horde_activesync_map', $this->tables())) {
+ $t = $this->createTable('horde_activesync_map', array('primaryKey' => false));
+ $t->column('message_uid', 'string', array('limit' => 255, 'null' => false));
+ $t->column('sync_modtime', 'integer');
+ $t->column('sync_key', 'string', array('limit' => 255, 'null' => false));
+ $t->column('sync_devid', 'string', array('limit' => 255, 'null' => false));
+ $t->column('sync_folderid', 'string', array('limit' => 255, 'null' => false));
+ $t->column('sync_user', 'string', array('limit' => 255));
+ $t->end();
+
+ $this->addIndex('horde_activesync_map', array('sync_devid'));
+ $this->addIndex('horde_activesync_map', array('message_uid'));
+ $this->addIndex('horde_activesync_map', array('sync_user'));
+ }
+ if (!in_array('horde_activesync_device', $this->tables())) {
+ $t = $this->createTable('horde_activesync_device', array('primaryKey' => array('device_id')));
+ $t->column('device_id', 'string', array('limit' => 255, 'null' => false));
+ $t->column('device_type', 'string', array('limit' => 255, 'null' => false));
+ $t->column('device_agent', 'string', array('limit' => 255, 'null' => false));
+ $t->column('device_supported', 'text');
+ $t->column('device_policykey', 'bigint', array('default' => 0));
+ $t->column('device_rwstatus', 'integer');
+ $t->end();
+ }
+ if (!in_array('horde_activesync_device_users', $this->tables())) {
+ $t = $this->createTable('horde_activesync_device_users', array('primaryKey' => false));
+ $t->column('device_id', 'string', array('limit' => 255, 'null' => false));
+ $t->column('device_user', 'string', array('limit' => 255, 'null' => false));
+ $t->column('device_ping', 'text');
+ $t->column('device_folders', 'text');
+ $t->end();
+
+ $this->addIndex('horde_activesync_device_users', array('device_user'));
+ $this->addIndex('horde_activesync_device_users', array('device_id'));
+ }
+ }
+
+ public function down()
+ {
+ $this->dropTable('horde_activesync_device_users');
+ $this->dropTable('horde_activesync_device');
+ $this->dropTable('horde_activesync_map');
+ $this->dropTable('horde_activesync_state');
+ }
+}
+++ /dev/null
-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
+++ /dev/null
-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
+++ /dev/null
-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
+++ /dev/null
-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
+++ /dev/null
-CREATE TABLE horde_activesync_state (
- sync_time INTEGER,
- 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 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_user_idx ON horde_activesync_users (device_user);
-CREATE INDEX activesync_device_users_id_idx on horde_activesync_device_users (device_id);
-