UNPKG

@sap/cli-core

Version:

Command-Line Interface (CLI) Core Module

71 lines (70 loc) 2 kB
import fs from "fs-extra"; import { get } from "../logger/index.js"; import { getPath } from "./utils.js"; const getLogger = () => get("cache"); export const init = async () => { const { trace } = getLogger(); try { trace("initializing cache"); await fs.mkdir(getPath(), { recursive: true }); } catch (err) { trace("error while initializing cache", err.toString()); throw err; } }; export const readFile = async (file) => { const { trace, debug } = getLogger(); try { trace("reading file %s from cache", file); return await fs.readFile(getPath(file), "utf-8"); } catch (err) { debug("error while reading file %s from cache", file, err.toString()); throw err; } }; export const writeFile = async (file, data) => { const { trace, debug } = getLogger(); try { trace("writing file %s to cache", file); await fs.writeFile(getPath(file), data, "utf-8"); } catch (err) { debug("error while writing file %s to cache", file, err.toString()); throw err; } }; export const deleteFile = async (file) => { const { trace, debug } = getLogger(); try { trace("deleting file %s from cache", file); await fs.remove(getPath(file)); } catch (err) { debug("error while deleting file %s from cache", file, err.toString()); throw err; } }; export const cleanCache = async () => { const { trace, debug } = getLogger(); try { trace("cleaning cache"); await fs.remove(getPath()); } catch (err) { debug("error while cleaning cache", err.toString()); throw err; } }; export const getFiles = async () => { const { trace, debug } = getLogger(); try { trace("reading existing files"); return await fs.readdir(getPath(), "utf-8"); } catch (err) { debug("error while reading existing files", err.toString()); throw err; } };