From 3de8fa2128c740e131676683dec649bb44c8ea73 Mon Sep 17 00:00:00 2001
From: Roberto Sánchez <roberto.sanchez@curisit.net>
Date: Mon, 24 Feb 2014 13:22:01 +0000
Subject: [PATCH] #593 feature - Changed log lib to log4j2 and bugfixing
---
src/patch/java/net/curisit/securis/LicenseGenerator.java | 25 ++++++++++++++++++-------
1 files changed, 18 insertions(+), 7 deletions(-)
diff --git a/src/patch/java/net/curisit/securis/LicenseGenerator.java b/src/patch/java/net/curisit/securis/LicenseGenerator.java
index cd696ff..72da188 100644
--- a/src/patch/java/net/curisit/securis/LicenseGenerator.java
+++ b/src/patch/java/net/curisit/securis/LicenseGenerator.java
@@ -8,21 +8,22 @@
import java.nio.file.StandardOpenOption;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
-import java.security.NoSuchProviderException;
import java.security.Signature;
import java.security.SignatureException;
import java.security.spec.InvalidKeySpecException;
import java.text.MessageFormat;
import java.util.Date;
import java.util.Map;
+import java.util.TreeMap;
import net.curisit.securis.beans.LicenseBean;
import net.curisit.securis.beans.RequestBean;
+import net.curisit.securis.beans.SignedLicenseBean;
import net.curisit.securis.utils.JsonUtils;
import org.apache.commons.net.util.Base64;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
/**
* License generator and signer
@@ -31,7 +32,7 @@
*/
public class LicenseGenerator {
- private static final Logger log = LoggerFactory.getLogger(LicenseGenerator.class);
+ private static final Logger log = LogManager.getLogger(LicenseGenerator.class);
private static LicenseGenerator singleton = new LicenseGenerator();
@@ -55,9 +56,10 @@
* @return
* @throws SeCurisException
*/
- public LicenseBean generateLicense(RequestBean req, Map<String, Object> metadata, Date expirationDate, String licenseCode) throws SeCurisException {
+ public LicenseBean generateLicense(RequestBean req, Map<String, Object> metadata, Date expirationDate, String licenseType, String licenseCode) throws SeCurisException {
log.info(MessageFormat.format("Generating license: MAC: {0}, Customer code: {1}, AppCode: {2}", req.getMacAddresses(), req.getCustomerCode(), req.getAppCode()));
LicenseBean license = new LicenseBean(req);
+ license.setLicenseType(licenseType);
license.setLicenseCode(licenseCode);
license.setExpirationDate(expirationDate);
license.setMetadata(metadata);
@@ -74,9 +76,10 @@
* @throws SeCurisException
*/
public void save(LicenseBean license, File file) throws SeCurisException {
+ SignedLicenseBean signedLic = new SignedLicenseBean(license);
byte[] json;
try {
- json = JsonUtils.toJSON(license, true).getBytes("utf-8");
+ json = JsonUtils.toJSON(signedLic, true).getBytes("utf-8");
Files.write(Paths.get(file.toURI()), json, StandardOpenOption.CREATE);
} catch (UnsupportedEncodingException e) {
log.error("Error creating json doc from license: " + license, e);
@@ -128,7 +131,15 @@
throw new SeCurisException("License could not be generated");
}
- public static void main(String[] args) throws IOException, NoSuchAlgorithmException, InvalidKeySpecException, NoSuchProviderException, InvalidKeyException, SignatureException {
+ public static void main(String[] args) throws SeCurisException {
+ Paths.get(new File("/Users/cproberto/Documents/wsCurisIT/SeCurisClient/license.req").toURI());
+
+ RequestBean req = ReqGenerator.getInstance().loadRequest(new File("/Users/cproberto/Documents/wsCurisIT/SeCurisClient/license.req"));
+ Map<String, Object> metadata = new TreeMap<>();
+ metadata.put("maxUsers", 23);
+ metadata.put("maxInstances", 12);
+ LicenseBean lic = LicenseGenerator.getInstance().generateLicense(req, metadata, new Date(new Date().getTime() + 3600 * 1000), "L01", "LIC-9812987123-12837129873");
+ LicenseGenerator.getInstance().save(lic, new File("/Users/cproberto/Documents/wsCurisIT/SeCurisClient/license.lic"));
System.out.print("os.arch: " + System.getProperty("os.arch") + " " + System.getProperty("os.name"));
--
Gitblit v1.3.2