@@ -79,21 +79,22 @@ export class StringBusinessService {
79
79
let result : GetStringValueResponse ;
80
80
81
81
try {
82
+ let value ;
82
83
if ( end ) {
83
- const value = await this . browserTool . execCommand (
84
+ value = await this . browserTool . execCommand (
84
85
clientMetadata ,
85
86
BrowserToolStringCommands . Getrange ,
86
87
[ keyName , `${ start } ` , `${ end } ` ] ,
87
88
) ;
88
- result = { value, keyName } ;
89
89
} else {
90
- const value = await this . browserTool . execCommand (
90
+ value = await this . browserTool . execCommand (
91
91
clientMetadata ,
92
92
BrowserToolStringCommands . Get ,
93
93
[ keyName ] ,
94
94
) ;
95
- result = { value, keyName } ;
96
95
}
96
+
97
+ result = { value, keyName } ;
97
98
} catch ( error ) {
98
99
this . logger . error ( 'Failed to get string value.' , error ) ;
99
100
if ( error . message . includes ( RedisErrorCodes . WrongType ) ) {
@@ -123,10 +124,42 @@ export class StringBusinessService {
123
124
clientMetadata : ClientMetadata ,
124
125
dto : GetKeyInfoDto ,
125
126
) : Promise < { stream : Readable } > {
126
- const result = await this . getStringValue (
127
+ // const result = await this.getStringValue(
128
+ // clientMetadata,
129
+ // dto,
130
+ // );
131
+
132
+ const { keyName } = dto ;
133
+ let result : GetStringValueResponse ;
134
+
135
+ try {
136
+ const value = await this . browserTool . execCommand (
137
+ clientMetadata ,
138
+ BrowserToolStringCommands . Get ,
139
+ [ keyName ] ,
140
+ ) ;
141
+ result = { value, keyName } ;
142
+ } catch ( error ) {
143
+ this . logger . error ( 'Failed to get string value.' , error ) ;
144
+ if ( error . message . includes ( RedisErrorCodes . WrongType ) ) {
145
+ throw new BadRequestException ( error . message ) ;
146
+ }
147
+ catchAclError ( error ) ;
148
+ }
149
+
150
+ if ( result . value === null ) {
151
+ this . logger . error (
152
+ `Failed to get string value. Not Found key: ${ keyName } .` ,
153
+ ) ;
154
+ throw new NotFoundException ( ) ;
155
+ }
156
+
157
+ this . recommendationService . check (
127
158
clientMetadata ,
128
- dto ,
159
+ RECOMMENDATION_NAMES . STRING_TO_JSON ,
160
+ { value : result . value , keyName : result . keyName } ,
129
161
) ;
162
+ this . logger . log ( 'Succeed to get string value.' ) ;
130
163
131
164
const stream = Readable . from ( result . value ) ;
132
165
return { stream } ;
0 commit comments