UNPKG

@veecode-platform/safira-cli

Version:

Generate a microservice project from your spec.

42 lines (41 loc) 2.23 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.UpdateJava = void 0; const codegen_1 = require("../../generate/codegen/codegen"); const java_controller_creator_1 = require("../../generate/java/java-controller-creator"); const java_framework_enum_1 = require("../../generate/java/java-framework-enum"); const file_system_utils_1 = require("../../utils/file-system-utils"); const file_compare_1 = require("../file-compare"); const quarkus_update_1 = require("./quarkus/quarkus-update"); const springboot_update_1 = require("./springboot/springboot-update"); const sync_java_file_1 = require("./sync-java-file"); class UpdateJava { constructor() { } async update(framework, openapiFile, destinyFolder, tmpFolder, packageName) { const enumFramework = java_framework_enum_1.JavaFrameworksEnum[framework]; await codegen_1.CodeGenUtils.selectCodeGen(framework).generate(openapiFile, tmpFolder, { packageName }); const basePath = this._getLanguageUpdate(enumFramework).getBaseUpdate(destinyFolder, tmpFolder); await new sync_java_file_1.JavaUpdateSyncFiles().syncFiles(basePath.tmpBasePath, basePath.projectBasePath, false, file_compare_1.FileCompare.instance.compareContent); const currentPath = file_system_utils_1.FileSystemUtils.getCurrentPath(); await java_controller_creator_1.JavaControllerCreator.switchFrameworkControllerCreator(currentPath, enumFramework); } _getLanguageUpdate(framework) { switch (framework) { case java_framework_enum_1.JavaFrameworksEnum.springboot: console.log("Updating Java Spring-boot project"); return springboot_update_1.ProjectSpringbootUpdate.instance; case java_framework_enum_1.JavaFrameworksEnum.quarkus: console.log("Updating Java Quarkus project"); return quarkus_update_1.ProjectQuarkusUpdate.instance; default: throw new Error(`Framework ${framework} not supported`); } } static get instance() { if (!this._instance) { this._instance = new this(); } return this._instance; } } exports.UpdateJava = UpdateJava;