From f7be2173201d6ef2d559ef4e8fdfef5534eee29e Mon Sep 17 00:00:00 2001
From: Roberto Sánchez <roberto.sanchez@curisit.net>
Date: Mon, 24 Feb 2014 10:10:05 +0000
Subject: [PATCH] #593 feature - Added basic functionality (without server sync) to validate licenses and create request files

---
 src/main/java/net/curisit/securis/ReqGenerator.java |   29 +++++++++++++++++++++++++++++
 1 files changed, 29 insertions(+), 0 deletions(-)

diff --git a/src/main/java/net/curisit/securis/ReqGenerator.java b/src/main/java/net/curisit/securis/ReqGenerator.java
index 665b54a..a329031 100644
--- a/src/main/java/net/curisit/securis/ReqGenerator.java
+++ b/src/main/java/net/curisit/securis/ReqGenerator.java
@@ -1,10 +1,15 @@
 package net.curisit.securis;
 
+import java.io.File;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.UnsupportedEncodingException;
+import java.nio.file.Files;
+import java.nio.file.Paths;
+import java.nio.file.StandardOpenOption;
 
 import net.curisit.securis.beans.RequestBean;
+import net.curisit.securis.utils.JsonUtils;
 import net.curisit.securis.utils.LicUtils;
 
 import org.apache.commons.io.IOUtils;
@@ -45,6 +50,30 @@
 		return req;
 	}
 
+	/**
+	 * Generate a request file using a {@link RequestBean}
+	 * 
+	 * @param req
+	 * @param file
+	 * @throws SeCurisException
+	 */
+	public void save(RequestBean req, File file) throws SeCurisException {
+		byte[] json;
+		try {
+			json = JsonUtils.toJSON(req, true).getBytes("utf-8");
+			Files.write(Paths.get(file.toURI()), json, StandardOpenOption.CREATE);
+		} catch (UnsupportedEncodingException e) {
+			log.error("Error creating json doc from request: " + req, e);
+			throw new SeCurisException("Error creating json doc from request: " + req, e);
+		} catch (IOException e) {
+			log.error("Error creating request file: " + file, e);
+			throw new SeCurisException("Error creating request file: " + file, e);
+		}
+
+		log.info("License saved in {}", file);
+
+	}
+
 	private String getCrcLogo() {
 		String logResource = "images/logo_customer.png";
 		InputStream is = getClass().getClassLoader().getResourceAsStream(logResource);

--
Gitblit v1.3.2