UNPKG

@veecode-platform/safira-cli

Version:

Generate a microservice project from your spec.

37 lines (36 loc) 1.78 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.UpdateProject = void 0; const tslib_1 = require("tslib"); const safira_settings_1 = require("../safira-project/safira-settings"); const file_system_utils_1 = require("../utils/file-system-utils"); const language_support_1 = require("../language-support"); const java_update_1 = require("./java/java-update"); const uuid = tslib_1.__importStar(require("uuid")); class UpdateProject { async updateProject(openapi) { const currentPath = file_system_utils_1.FileSystemUtils.getCurrentPath(); const tmpFolder = file_system_utils_1.FileSystemUtils.buildPath(currentPath, ".safira", "tmp"); const random = uuid.v4(); const tmpKeyFolder = file_system_utils_1.FileSystemUtils.buildPath(tmpFolder, random); file_system_utils_1.FileSystemUtils.createFolder(tmpKeyFolder); const settings = safira_settings_1.SafiraSettings.instance(currentPath).loadSettingsFile(); await this._getLanguageUpdate(settings.project.language).update(settings.project.framework, file_system_utils_1.FileSystemUtils.fullPath(openapi), currentPath, tmpKeyFolder, settings.project.java.package); } _getLanguageUpdate(language) { switch (language) { case language_support_1.LanguageSupportEnum.java: console.log("Updating Project Java project"); return java_update_1.UpdateJava.instance; default: throw new Error(`Language ${language} not supported`); } } static get instance() { if (!UpdateProject._instance) { UpdateProject._instance = new this(); } return UpdateProject._instance; } } exports.UpdateProject = UpdateProject;