From 36edce38f6b17f73322fa38404d6e01818a44fd2 Mon Sep 17 00:00:00 2001
From: rsanchez <rsanchez@curisit.net>
Date: Thu, 11 Dec 2014 19:08:16 +0000
Subject: [PATCH] #2140 fix - Added renew period to pack, change on DB schema, fixed pack selection in listing, upgrade angular to 1.3.6 and other minor issues

---
 securis/src/main/java/net/curisit/securis/services/LicenseResource.java |   24 ++++--------------------
 1 files changed, 4 insertions(+), 20 deletions(-)

diff --git a/securis/src/main/java/net/curisit/securis/services/LicenseResource.java b/securis/src/main/java/net/curisit/securis/services/LicenseResource.java
index f829f34..fa162eb 100644
--- a/securis/src/main/java/net/curisit/securis/services/LicenseResource.java
+++ b/securis/src/main/java/net/curisit/securis/services/LicenseResource.java
@@ -4,10 +4,7 @@
 import java.io.IOException;
 import java.text.MessageFormat;
 import java.util.Date;
-import java.util.HashMap;
 import java.util.List;
-import java.util.Map;
-import java.util.Set;
 
 import javax.inject.Inject;
 import javax.inject.Provider;
@@ -42,7 +39,6 @@
 import net.curisit.securis.db.LicenseHistory;
 import net.curisit.securis.db.LicenseStatus;
 import net.curisit.securis.db.Pack;
-import net.curisit.securis.db.PackMetadata;
 import net.curisit.securis.db.PackStatus;
 import net.curisit.securis.db.User;
 import net.curisit.securis.security.BasicSecurityContext;
@@ -380,10 +376,7 @@
         if (lic.getRequestData() != null) {
             License existingLicense = License.findLicenseByRequestData(lic.getRequestData(), em);
             if (existingLicense != null) {
-                return Response.status(DefaultExceptionHandler.DEFAULT_APP_ERROR_STATUS_CODE)
-                        .header(DefaultExceptionHandler.ERROR_CODE_MESSAGE_HEADER, ErrorCodes.DUPLICATED_REQUEST_DATA)
-                        .header(DefaultExceptionHandler.ERROR_MESSAGE_HEADER, "There is already an active license for current request data")
-                        .type(MediaType.APPLICATION_JSON).entity(existingLicense).build();
+                throw new SeCurisServiceException(ErrorCodes.DUPLICATED_REQUEST_DATA, "There is already an active license for current request data");
             }
 
             if (pack.getNumAvailables() > 0) {
@@ -414,7 +407,7 @@
         em.persist(lic);
         em.persist(licenseHelper.createLicenseHistoryAction(lic, createdBy, LicenseHistory.Actions.CREATE));
         if (lic.getStatus() == LicenseStatus.ACTIVE) {
-            em.persist(licenseHelper.createLicenseHistoryAction(lic, createdBy, LicenseHistory.Actions.CREATE, "Activated on creation"));
+            em.persist(licenseHelper.createLicenseHistoryAction(lic, createdBy, LicenseHistory.Actions.ACTIVATE, "Activated on creation"));
         }
 
         return Response.ok(lic).build();
@@ -425,22 +418,13 @@
         Pack pack = em.find(Pack.class, license.getPackId());
         RequestBean rb = validateRequestData(pack, license.getRequestData());
         try {
-            LicenseBean lb = licenseGenerator.generateLicense(rb, extractPackMetadata(pack.getMetadata()), license.getExpirationDate(),
-                    pack.getLicenseTypeCode(), license.getCode());
+            LicenseBean lb = licenseGenerator.generateLicense(rb, licenseHelper.extractPackMetadata(pack.getMetadata()),
+                    licenseHelper.getExpirationDateFromPack(pack, false), license.getCode(), pack.getAppName());
             sl = new SignedLicenseBean(lb);
         } catch (SeCurisException e) {
             throw new SeCurisServiceException(ErrorCodes.INVALID_LICENSE_REQUEST_DATA, "Error generating license: " + e.toString());
         }
         return sl;
-    }
-
-    private Map<String, Object> extractPackMetadata(Set<PackMetadata> packMetadata) {
-        Map<String, Object> metadata = new HashMap<>();
-        for (PackMetadata md : packMetadata) {
-            metadata.put(md.getKey(), md.getValue());
-        }
-
-        return metadata;
     }
 
     /**

--
Gitblit v1.3.2