From 6d8aff7b3657332020ef215eb1b2fc16017e4cc8 Mon Sep 17 00:00:00 2001
From: Roberto Sánchez <roberto.sanchez@curisit.net>
Date: Sun, 26 Jan 2014 13:34:03 +0000
Subject: [PATCH] #395 feature - Added license history entity and new angular directive to load file content
---
securis/src/main/java/net/curisit/securis/services/LicenseResource.java | 32 ++++++++++++++++++++++++++++++--
1 files changed, 30 insertions(+), 2 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 005ef97..f9cb7c3 100644
--- a/securis/src/main/java/net/curisit/securis/services/LicenseResource.java
+++ b/securis/src/main/java/net/curisit/securis/services/LicenseResource.java
@@ -1,5 +1,6 @@
package net.curisit.securis.services;
+import java.io.IOException;
import java.util.Date;
import java.util.List;
@@ -21,6 +22,7 @@
import javax.ws.rs.core.Response;
import javax.ws.rs.core.Response.Status;
+import net.curisit.integrity.commons.JsonUtils;
import net.curisit.integrity.commons.Utils;
import net.curisit.integrity.exception.CurisException;
import net.curisit.securis.DefaultExceptionHandler;
@@ -31,6 +33,7 @@
import net.curisit.securis.security.Securable;
import net.curisit.securis.utils.TokenHelper;
+import org.jboss.resteasy.plugins.providers.multipart.MultipartFormDataInput;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -124,7 +127,7 @@
{ MediaType.APPLICATION_JSON })
@Transactional
public Response create(License lic, @Context BasicSecurityContext bsc) {
- log.info("Creating new organization");
+ log.info("Creating new license from create()");
EntityManager em = emProvider.get();
Pack pack = null;
if (lic.getPackId() != null) {
@@ -143,7 +146,7 @@
}
try {
- User createdBy = getUser(lic.getCreatedById(), em);
+ User createdBy = getUser(bsc.getUserPrincipal().getName(), em);
lic.setCreatedBy(createdBy);
} catch (CurisException ex) {
String createdByUsername = lic.getCreatedById();
@@ -161,6 +164,31 @@
return Response.ok(lic).build();
}
+ @POST
+ @Path("/")
+ @Consumes(MediaType.MULTIPART_FORM_DATA)
+ @Securable
+ @Produces(
+ { MediaType.APPLICATION_JSON })
+ @Transactional
+ public Response createWithFile(MultipartFormDataInput mpfdi, @Context BasicSecurityContext bsc) throws IOException {
+ License lic = new License();
+ lic.setCode(mpfdi.getFormDataPart("code", String.class, null));
+ lic.setRequestData(mpfdi.getFormDataPart("request_data", String.class, null));
+ lic.setPackId(mpfdi.getFormDataPart("pack_id", Integer.class, null));
+ lic.setFullName(mpfdi.getFormDataPart("full_name", String.class, null));
+ lic.setEmail(mpfdi.getFormDataPart("email", String.class, null));
+ lic.setComments(mpfdi.getFormDataPart("comments", String.class, null));
+ try {
+ log.info("File content: {}", lic.getRequestData());
+ log.info("License read from multipart: {}", JsonUtils.toJSON(lic));
+ } catch (CurisException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ return create(lic, bsc);
+ }
+
private User getUser(String username, EntityManager em) throws CurisException {
User user = null;
if (username != null) {
--
Gitblit v1.3.2