/[drupal]/contributions/modules/daemon/daemon.install
ViewVC logotype

Contents of /contributions/modules/daemon/daemon.install

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.4 - (show annotations) (download) (as text)
Fri Feb 15 22:11:57 2008 UTC (21 months, 1 week ago) by aymerick
Branch: MAIN
CVS Tags: HEAD
Changes since 1.3: +43 -0 lines
File MIME type: text/x-php
Added timers feature
1 <?php
2 // $Id$
3
4 // Implements hook_install().
5 function daemon_install() {
6 switch ($GLOBALS['db_type']) {
7 case 'mysqli':
8 case 'mysql':
9 db_query("CREATE TABLE {daemon_daemon} (
10 did int(10) unsigned NOT NULL default '0',
11 name varchar(32) NOT NULL UNIQUE,
12 description varchar(255),
13 PRIMARY KEY (did),
14 KEY (name)
15 ) /*!40100 DEFAULT CHARACTER SET utf8 */");
16
17 db_query("CREATE TABLE {daemon_listener} (
18 did int(10) unsigned NOT NULL default '0',
19 module varchar(64) NOT NULL,
20 id varchar(64) NOT NULL,
21 type varchar(5) NOT NULL,
22 port smallint unsigned NOT NULL,
23 KEY (did)
24 ) /*!40100 DEFAULT CHARACTER SET utf8 */");
25
26 db_query("CREATE TABLE {daemon_timer} (
27 tid int(10) unsigned NOT NULL default '0',
28 name varchar(32) NOT NULL,
29 description varchar(255),
30 timeout int unsigned NOT NULL,
31 php text NOT NULL,
32 PRIMARY KEY (name)
33 ) /*!40100 DEFAULT CHARACTER SET utf8 */");
34
35 db_query("CREATE TABLE {daemon_timer_daemon} (
36 did int(10) unsigned NOT NULL default '0',
37 tid int(10) unsigned NOT NULL default '0',
38 KEY (did),
39 KEY (tid),
40 PRIMARY KEY (tid, did)
41 ) /*!40100 DEFAULT CHARACTER SET utf8 */");
42 break;
43
44 case 'pgsql':
45 db_query("CREATE TABLE {daemon_daemon} (
46 did SERIAL,
47 name varchar(32) NOT NULL UNIQUE,
48 description varchar(255),
49 PRIMARY KEY (did)
50 )");
51 db_query("CREATE INDEX {daemon_daemon}_name_idx ON {daemon_daemon} (name)");
52
53 db_query("CREATE TABLE {daemon_listener} (
54 did integer NOT NULL default '0',
55 module varchar(64) NOT NULL,
56 id varchar(64) NOT NULL,
57 type varchar(5) NOT NULL,
58 port smallint_unsigned NOT NULL
59 )");
60 db_query("CREATE INDEX {daemon_listener}_did_idx ON {daemon_listener} (did)");
61
62 db_query("CREATE TABLE {daemon_timer} (
63 tid SERIAL,
64 name varchar(32) NOT NULL UNIQUE,
65 description varchar(255),
66 timeout int_unsigned NOT NULL,
67 php text NOT NULL,
68 PRIMARY KEY (tid)
69 )");
70 db_query("CREATE INDEX {daemon_timer}_name_idx ON {daemon_timer} (name)");
71
72 db_query("CREATE TABLE {daemon_timer_daemon} (
73 did integer NOT NULL default '0',
74 tid integer NOT NULL default '0',
75 PRIMARY KEY (tid, did)
76 )");
77 db_query("CREATE INDEX {daemon_timer_daemon}_did_idx ON {daemon_timer_daemon} (did)");
78 db_query("CREATE INDEX {daemon_timer_daemon}_tid_idx ON {daemon_timer_daemon} (tid)");
79 break;
80 }
81 }
82
83 // Implements hook_uninstall().
84 function daemon_uninstall() {
85 if (db_table_exists('daemon_daemon')) {
86 db_query("DROP TABLE {daemon_daemon}");
87 }
88
89 if (db_table_exists('daemon_listener')) {
90 db_query("DROP TABLE {daemon_listener}");
91 }
92
93 if (db_table_exists('daemon_timer')) {
94 db_query("DROP TABLE {daemon_timer}");
95 }
96
97 if (db_table_exists('daemon_timer_daemon')) {
98 db_query("DROP TABLE {daemon_timer_daemon}");
99 }
100 }

  ViewVC Help
Powered by ViewVC 1.1.2