17
17
use seregazhuk \React \Memcached \Protocol \Response \VersionResponse ;
18
18
use seregazhuk \React \Memcached \Protocol \Response \WriteResponse ;
19
19
20
- class Parser
20
+ final class Parser
21
21
{
22
- const RESPONSE_END = 'END ' ;
23
- const RESPONSE_STORED = 'STORED ' ;
24
- const RESPONSE_NOT_STORED = 'NOT_STORED ' ;
25
- const RESPONSE_DELETED = 'DELETED ' ;
26
- const RESPONSE_NOT_FOUND = 'NOT_FOUND ' ;
27
- const RESPONSE_OK = ' OK ' ;
28
- const RESPONSE_EXISTS = 'EXISTS ' ;
29
- const RESPONSE_ERROR = 'ERROR ' ;
30
- const RESPONSE_RESET = 'RESET ' ;
31
- const RESPONSE_VERSION = 'VERSION ' ;
32
- const RESPONSE_VALUE = 'VALUE ' ;
33
- const RESPONSE_TOUCHED = 'TOUCHED ' ;
34
-
35
- const RESPONSE_ENDS = [
22
+ public const RESPONSE_STORED = 'STORED ' ;
23
+ public const RESPONSE_DELETED = 'DELETED ' ;
24
+ public const RESPONSE_NOT_FOUND = 'NOT_FOUND ' ;
25
+ public const RESPONSE_OK = 'OK ' ;
26
+ public const RESPONSE_VERSION = 'VERSION ' ;
27
+
28
+ private const RESPONSE_NOT_STORED = 'NOT_STORED ' ;
29
+ private const RESPONSE_END = 'END ' ;
30
+ private const RESPONSE_EXISTS = 'EXISTS ' ;
31
+ public const RESPONSE_TOUCHED = 'TOUCHED ' ;
32
+ private const RESPONSE_ERROR = 'ERROR ' ;
33
+ private const RESPONSE_RESET = 'RESET ' ;
34
+
35
+ private const RESPONSE_ENDS = [
36
36
self ::RESPONSE_END ,
37
37
self ::RESPONSE_DELETED ,
38
38
self ::RESPONSE_NOT_FOUND ,
@@ -45,60 +45,49 @@ class Parser
45
45
self ::RESPONSE_TOUCHED ,
46
46
];
47
47
48
- const COMMAND_SET = 'set ' ;
48
+ private const COMMAND_SET = 'set ' ;
49
49
50
- const COMMAND_SEPARATOR = "\r\n" ;
50
+ public const COMMAND_SEPARATOR = "\r\n" ;
51
51
52
- const STORAGE_COMMANDS = [
52
+ private const STORAGE_COMMANDS = [
53
53
self ::COMMAND_SET ,
54
54
self ::COMMAND_ADD ,
55
55
self ::COMMAND_REPLACE ,
56
56
];
57
57
58
- const COMMAND_GET = 'get ' ;
59
-
60
- const RETRIEVAL_COMMANDS = [
61
- self ::COMMAND_GET ,
62
- ];
63
-
64
- const WRITE_RESPONSE_ENDS = [
65
- self ::RESPONSE_STORED ,
66
- self ::RESPONSE_NOT_STORED ,
67
- self ::RESPONSE_EXISTS ,
68
- self ::RESPONSE_NOT_FOUND ,
69
- ];
70
-
71
- const COMMAND_VERSION = 'version ' ;
72
- const COMMAND_STATS = 'stats ' ;
73
- const COMMAND_TOUCH = 'touch ' ;
74
- const COMMAND_DELETE = 'delete ' ;
75
- const COMMAND_INCREMENT = 'incr ' ;
76
- const COMMAND_DECREMENT = 'decr ' ;
77
- const COMMAND_ADD = 'add ' ;
78
- const COMMAND_REPLACE = 'replace ' ;
79
- const COMMAND_VERBOSITY = 'verbosity ' ;
80
- const COMMAND_FLUSH_ALL = 'flushAll ' ;
81
-
82
- const COMMANDS = [
83
- self ::COMMAND_ADD ,
84
- self ::COMMAND_DECREMENT ,
85
- self ::COMMAND_DELETE ,
86
- self ::COMMAND_FLUSH_ALL ,
87
- self ::COMMAND_GET ,
88
- self ::COMMAND_INCREMENT ,
89
- self ::COMMAND_REPLACE ,
90
- self ::COMMAND_SET ,
91
- self ::COMMAND_STATS ,
92
- self ::COMMAND_TOUCH ,
93
- self ::COMMAND_VERBOSITY ,
94
- self ::COMMAND_VERSION ,
95
- ];
58
+ private const COMMAND_GET = 'get ' ;
59
+
60
+ private const COMMAND_VERSION = 'version ' ;
61
+ private const COMMAND_STATS = 'stats ' ;
62
+ private const COMMAND_TOUCH = 'touch ' ;
63
+ private const COMMAND_DELETE = 'delete ' ;
64
+ private const COMMAND_INCREMENT = 'incr ' ;
65
+ private const COMMAND_DECREMENT = 'decr ' ;
66
+ private const COMMAND_ADD = 'add ' ;
67
+ private const COMMAND_REPLACE = 'replace ' ;
68
+ private const COMMAND_VERBOSITY = 'verbosity ' ;
69
+ private const COMMAND_FLUSH_ALL = 'flushAll ' ;
70
+
71
+ private const COMMANDS = [
72
+ self ::COMMAND_ADD ,
73
+ self ::COMMAND_DECREMENT ,
74
+ self ::COMMAND_DELETE ,
75
+ self ::COMMAND_FLUSH_ALL ,
76
+ self ::COMMAND_GET ,
77
+ self ::COMMAND_INCREMENT ,
78
+ self ::COMMAND_REPLACE ,
79
+ self ::COMMAND_SET ,
80
+ self ::COMMAND_STATS ,
81
+ self ::COMMAND_TOUCH ,
82
+ self ::COMMAND_VERBOSITY ,
83
+ self ::COMMAND_VERSION ,
84
+ ];
96
85
97
86
/**
98
87
* @param string $data
99
88
* @return string[]
100
89
*/
101
- public function parseRawResponse ($ data = '' )
90
+ public function parseRawResponse (string $ data = '' ): array
102
91
{
103
92
$ data = substr ($ data , 0 , strlen ($ data ) - strlen (self ::COMMAND_SEPARATOR ));
104
93
$ lines = explode (self ::COMMAND_SEPARATOR , $ data );
0 commit comments