package com.se.system.domain.vo; import com.se.system.utils.ParamInitUtils; import de.schlichtherle.license.LicenseContent; import de.schlichtherle.license.LicenseManager; import de.schlichtherle.license.LicenseParam; import java.io.File; import java.text.MessageFormat; @SuppressWarnings("ALL") public class LicenseCreatorMg { public LicenseCreatorMg() { } private LicenseCreatorParamVo param; public LicenseCreatorMg(LicenseCreatorParamVo param) { this.param = param; } /** *

生成License证书

* * @return GxLicenseResult 证书生成结果 */ public LicenseResultVo generateLicense() { try { // 1、根据外部传入的创建Lic的参数信息初始化lic参数(秘钥部分) LicenseParam licenseParam = ParamInitUtils.initLicenseParam(param); // 2、根据外部传入的创建Lic的属性信息初始化lic内容(除了truelicense自带的还包括自己定义的) LicenseContent licenseContent = ParamInitUtils.initLicenseContent(param); // 3、构建Lic管理器 LicenseManager licenseManager = new LicenseCustomMg(licenseParam); // 4、根据param传入的lic生成的路径创建空文件 File licenseFile = new File(this.param.getLicensePath()); // 5、通过Lic管理器,将内容写入Lic文件中 licenseManager.store(licenseContent, licenseFile); return new LicenseResultVo("证书生成成功!", licenseContent); } catch (Exception e) { System.out.println(e.getMessage()); String message = MessageFormat.format("证书生成失败!:{0}", param); System.out.println("message = " + message); e.printStackTrace(); return new LicenseResultVo(String.format("证书文件生成失败!原因:%s", e.getMessage()), e); } } }