(filename, cache)
| 326 | } |
| 327 | |
| 328 | async loadCommand(filename, cache) { |
| 329 | filename = path.resolve(filename); |
| 330 | |
| 331 | const { name: scriptName } = splitFilename(filename); |
| 332 | let script = cache ? cache.get(scriptName) : undefined; |
| 333 | if (!script) { |
| 334 | const content = (await readFile(filename)).toString(); |
| 335 | script = await this.parseScript(filename, content, cache); |
| 336 | } |
| 337 | |
| 338 | const lua = removeEmptyLines(this.interpolate(script)); |
| 339 | const { name, numberOfKeys } = script; |
| 340 | |
| 341 | return { |
| 342 | name, |
| 343 | options: { numberOfKeys: numberOfKeys, lua } |
| 344 | }; |
| 345 | } |
| 346 | |
| 347 | /** |
| 348 | * Load redis lua scripts. |
no test coverage detected