4
4
5
5
use MySQLReplication \Definitions \ConstEventsNames ;
6
6
use MySQLReplication \Event \EventInfo ;
7
+ use MySQLReplication \Event \RowEvent \TableMap ;
7
8
8
9
/**
9
10
* Class TableMapDTO
10
11
* @package MySQLReplication\DTO
11
12
*/
12
13
class TableMapDTO extends EventDTO implements \JsonSerializable
13
14
{
14
- /**
15
- * @var int
16
- */
17
- private $ tableId ;
18
- /**
19
- * @var string
20
- */
21
- private $ database ;
22
15
/**
23
16
* @var string
24
17
*/
25
- private $ table ;
18
+ private $ type = ConstEventsNames:: TABLE_MAP ;
26
19
/**
27
- * @var
20
+ * @var TableMap
28
21
*/
29
- private $ columns ;
22
+ private $ tableMap ;
30
23
31
24
/**
32
25
* TableMapDTO constructor.
33
26
* @param EventInfo $eventInfo
34
- * @param $tableId
35
- * @param $database
36
- * @param $table
37
- * @param $columns
27
+ * @param TableMap $tableMap
38
28
*/
39
29
public function __construct (
40
30
EventInfo $ eventInfo ,
41
- $ tableId ,
42
- $ database ,
43
- $ table ,
44
- $ columns
31
+ TableMap $ tableMap
45
32
) {
46
33
parent ::__construct ($ eventInfo );
47
34
48
- $ this ->tableId = $ tableId ;
49
- $ this ->database = $ database ;
50
- $ this ->table = $ table ;
51
- $ this ->columns = $ columns ;
52
- }
53
-
54
- /**
55
- * @return int
56
- */
57
- public function getTableId ()
58
- {
59
- return $ this ->tableId ;
60
- }
61
-
62
- /**
63
- * @return string
64
- */
65
- public function getDatabase ()
66
- {
67
- return $ this ->database ;
35
+ $ this ->tableMap = $ tableMap ;
68
36
}
69
37
70
38
/**
71
39
* @return string
72
40
*/
73
- public function getTable ()
74
- {
75
- return $ this ->table ;
76
- }
77
-
78
- /**
79
- * @return int
80
- */
81
- public function getColumns ()
41
+ public function __toString ()
82
42
{
83
- return $ this ->columns ;
43
+ return PHP_EOL .
44
+ '=== Event ' . $ this ->getType () . ' === ' . PHP_EOL .
45
+ 'Date: ' . $ this ->eventInfo ->getDateTime () . PHP_EOL .
46
+ 'Log position: ' . $ this ->eventInfo ->getPos () . PHP_EOL .
47
+ 'Event size: ' . $ this ->eventInfo ->getSize () . PHP_EOL .
48
+ 'Table: ' . $ this ->tableMap ->getTable () . PHP_EOL .
49
+ 'Database: ' . $ this ->tableMap ->getDatabase () . PHP_EOL .
50
+ 'Table Id: ' . $ this ->tableMap ->getTableId () . PHP_EOL .
51
+ 'Columns amount: ' . $ this ->tableMap ->getColumnsAmount () . PHP_EOL ;
84
52
}
85
53
86
54
/**
87
55
* @return string
88
56
*/
89
57
public function getType ()
90
58
{
91
- return ConstEventsNames::TABLE_MAP ;
92
- }
93
-
94
- /**
95
- * @return string
96
- */
97
- public function __toString ()
98
- {
99
- return PHP_EOL .
100
- '=== Event ' . $ this ->getType () . ' === ' . PHP_EOL .
101
- 'Date: ' . $ this ->eventInfo ->getDateTime () . PHP_EOL .
102
- 'Log position: ' . $ this ->eventInfo ->getPos () . PHP_EOL .
103
- 'Event size: ' . $ this ->eventInfo ->getSize () . PHP_EOL .
104
- 'Table: ' . $ this ->table . PHP_EOL .
105
- 'Database: ' . $ this ->database . PHP_EOL .
106
- 'Table Id: ' . $ this ->tableId . PHP_EOL .
107
- 'Columns: ' . print_r ($ this ->columns , true ) . PHP_EOL ;
59
+ return $ this ->type ;
108
60
}
109
61
110
62
/**
@@ -118,4 +70,12 @@ public function jsonSerialize()
118
70
{
119
71
return get_object_vars ($ this );
120
72
}
73
+
74
+ /**
75
+ * @return TableMap
76
+ */
77
+ public function getTableMap ()
78
+ {
79
+ return $ this ->tableMap ;
80
+ }
121
81
}
0 commit comments