Skip to content

Commit 26e5350

Browse files
irinaAbramova-devirinaP-local
authored andcommitted
#RI-4815 fix getting value
1 parent aba348f commit 26e5350

File tree

1 file changed

+39
-6
lines changed

1 file changed

+39
-6
lines changed

redisinsight/api/src/modules/browser/services/string-business/string-business.service.ts

Lines changed: 39 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -79,21 +79,22 @@ export class StringBusinessService {
7979
let result: GetStringValueResponse;
8080

8181
try {
82+
let value;
8283
if (end) {
83-
const value = await this.browserTool.execCommand(
84+
value = await this.browserTool.execCommand(
8485
clientMetadata,
8586
BrowserToolStringCommands.Getrange,
8687
[keyName, `${start}`, `${end}`],
8788
);
88-
result = { value, keyName };
8989
} else {
90-
const value = await this.browserTool.execCommand(
90+
value = await this.browserTool.execCommand(
9191
clientMetadata,
9292
BrowserToolStringCommands.Get,
9393
[keyName],
9494
);
95-
result = { value, keyName };
9695
}
96+
97+
result = { value, keyName };
9798
} catch (error) {
9899
this.logger.error('Failed to get string value.', error);
99100
if (error.message.includes(RedisErrorCodes.WrongType)) {
@@ -123,10 +124,42 @@ export class StringBusinessService {
123124
clientMetadata: ClientMetadata,
124125
dto: GetKeyInfoDto,
125126
): 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(
127158
clientMetadata,
128-
dto,
159+
RECOMMENDATION_NAMES.STRING_TO_JSON,
160+
{ value: result.value, keyName: result.keyName },
129161
);
162+
this.logger.log('Succeed to get string value.');
130163

131164
const stream = Readable.from(result.value);
132165
return { stream };

0 commit comments

Comments
 (0)