CreateTrackerTablesRelations   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 180
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 1

Importance

Changes 0
Metric Value
wmc 2
lcom 1
cbo 1
dl 0
loc 180
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
B migrateUp() 0 162 1
A migrateDown() 0 4 1
1
<?php
2
3
use PragmaRX\Tracker\Support\Migration;
4
5
class CreateTrackerTablesRelations extends Migration
6
{
7
    /**
8
     * Run the migrations.
9
     *
10
     * @return void
11
     */
12
    public function migrateUp()
13
    {
14
        $this->builder->table('tracker_query_arguments', function ($table) {
15
            $table->foreign('query_id')
16
                ->references('id')
17
                ->on('tracker_queries')
18
                ->onUpdate('cascade')
19
                ->onDelete('cascade');
20
        });
21
22
        $this->builder->table('tracker_route_paths', function ($table) {
23
            $table->foreign('route_id')
24
                ->references('id')
25
                ->on('tracker_routes')
26
                ->onUpdate('cascade')
27
                ->onDelete('cascade');
28
        });
29
30
        $this->builder->table('tracker_route_path_parameters', function ($table) {
31
            $table->foreign('route_path_id')
32
                ->references('id')
33
                ->on('tracker_route_paths')
34
                ->onUpdate('cascade')
35
                ->onDelete('cascade');
36
        });
37
38
        $this->builder->table('tracker_referers', function ($table) {
39
            $table->foreign('domain_id')
40
                ->references('id')
41
                ->on('tracker_domains')
42
                ->onUpdate('cascade')
43
                ->onDelete('cascade');
44
        });
45
46
        $this->builder->table('tracker_sessions', function ($table) {
47
            $table->foreign('device_id')
48
                ->references('id')
49
                ->on('tracker_devices')
50
                ->onUpdate('cascade')
51
                ->onDelete('cascade');
52
        });
53
54
        $this->builder->table('tracker_sessions', function ($table) {
55
            $table->foreign('agent_id')
56
                ->references('id')
57
                ->on('tracker_agents')
58
                ->onUpdate('cascade')
59
                ->onDelete('cascade');
60
        });
61
62
        $this->builder->table('tracker_sessions', function ($table) {
63
            $table->foreign('referer_id')
64
                ->references('id')
65
                ->on('tracker_referers')
66
                ->onUpdate('cascade')
67
                ->onDelete('cascade');
68
        });
69
70
        $this->builder->table('tracker_sessions', function ($table) {
71
            $table->foreign('cookie_id')
72
                ->references('id')
73
                ->on('tracker_cookies')
74
                ->onUpdate('cascade')
75
                ->onDelete('cascade');
76
        });
77
78
        $this->builder->table('tracker_sessions', function ($table) {
79
            $table->foreign('geoip_id')
80
                ->references('id')
81
                ->on('tracker_geoip')
82
                ->onUpdate('cascade')
83
                ->onDelete('cascade');
84
        });
85
86
        $this->builder->table('tracker_log', function ($table) {
87
            $table->foreign('session_id')
88
                ->references('id')
89
                ->on('tracker_sessions')
90
                ->onUpdate('cascade')
91
                ->onDelete('cascade');
92
        });
93
94
        $this->builder->table('tracker_log', function ($table) {
95
            $table->foreign('path_id')
96
                ->references('id')
97
                ->on('tracker_paths')
98
                ->onUpdate('cascade')
99
                ->onDelete('cascade');
100
        });
101
102
        $this->builder->table('tracker_log', function ($table) {
103
            $table->foreign('query_id')
104
                ->references('id')
105
                ->on('tracker_queries')
106
                ->onUpdate('cascade')
107
                ->onDelete('cascade');
108
        });
109
110
        $this->builder->table('tracker_log', function ($table) {
111
            $table->foreign('route_path_id')
112
                ->references('id')
113
                ->on('tracker_route_paths')
114
                ->onUpdate('cascade')
115
                ->onDelete('cascade');
116
        });
117
118
        $this->builder->table('tracker_log', function ($table) {
119
            $table->foreign('error_id')
120
                ->references('id')
121
                ->on('tracker_errors')
122
                ->onUpdate('cascade')
123
                ->onDelete('cascade');
124
        });
125
126
        $this->builder->table('tracker_events_log', function ($table) {
127
            $table->foreign('event_id')
128
                ->references('id')
129
                ->on('tracker_events')
130
                ->onUpdate('cascade')
131
                ->onDelete('cascade');
132
        });
133
134
        $this->builder->table('tracker_events_log', function ($table) {
135
            $table->foreign('class_id')
136
                ->references('id')
137
                ->on('tracker_system_classes')
138
                ->onUpdate('cascade')
139
                ->onDelete('cascade');
140
        });
141
142
        $this->builder->table('tracker_events_log', function ($table) {
143
            $table->foreign('log_id')
144
                ->references('id')
145
                ->on('tracker_log')
146
                ->onUpdate('cascade')
147
                ->onDelete('cascade');
148
        });
149
150
        $this->builder->table('tracker_sql_query_bindings_parameters', function ($table) {
151
            $table->foreign('sql_query_bindings_id', 'tracker_sqlqb_parameters')
152
                ->references('id')
153
                ->on('tracker_sql_query_bindings')
154
                ->onUpdate('cascade')
155
                ->onDelete('cascade');
156
        });
157
158
        $this->builder->table('tracker_sql_queries_log', function ($table) {
159
            $table->foreign('log_id')
160
                ->references('id')
161
                ->on('tracker_log')
162
                ->onUpdate('cascade')
163
                ->onDelete('cascade');
164
        });
165
166
        $this->builder->table('tracker_sql_queries_log', function ($table) {
167
            $table->foreign('sql_query_id')
168
                ->references('id')
169
                ->on('tracker_sql_queries')
170
                ->onUpdate('cascade')
171
                ->onDelete('cascade');
172
        });
173
    }
174
175
    /**
176
     * Reverse the migrations.
177
     *
178
     * @return void
179
     */
180
    public function migrateDown()
181
    {
182
        // Tables will be dropped in the correct order... :)
183
    }
184
}
185