From 7d8713e88c7872b195f7e4d02ac4812536ae196b Mon Sep 17 00:00:00 2001
From: rsanchez <rsanchez@curisit.net>
Date: Tue, 22 Sep 2015 13:53:51 +0000
Subject: [PATCH] #2756 feature - Added lic activation using activationCode

---
 src/main/java/net/curisit/securis/License.java |  277 ++++++++++++++++++++++++++++---------------------------
 1 files changed, 140 insertions(+), 137 deletions(-)

diff --git a/src/main/java/net/curisit/securis/License.java b/src/main/java/net/curisit/securis/License.java
index f06a177..08e7781 100644
--- a/src/main/java/net/curisit/securis/License.java
+++ b/src/main/java/net/curisit/securis/License.java
@@ -41,163 +41,166 @@
  */
 public class License {
 
-	private static final Logger LOG = LogManager.getLogger(License.class);
+    private static final Logger LOG = LogManager.getLogger(License.class);
 
-	/**
-	 * Aplication entry point when it used as CLI
-	 * 
-	 * @param args
-	 * @throws URISyntaxException
-	 */
-	public static void main(String[] args) throws URISyntaxException {
+    /**
+     * Aplication entry point when it used as CLI
+     * 
+     * @param args
+     * @throws URISyntaxException
+     */
+    public static void main(String[] args) throws URISyntaxException {
 
-		LOG.debug("SeCuris client tool init ");
+        LOG.debug("SeCuris client tool init ");
 
-		checkConfigFile();
-		CommandLine cmd = getCommandLine(args);
+        checkConfigFile();
+        CommandLine cmd = getCommandLine(args);
 
-		try {
-			if (cmd.hasOption('g')) {
-				String filename = cmd.getOptionValue("rfile");
-				if (filename == null)
-					filename = "./license.req";
-				File file = new File(filename);
-				LicenseManager.getInstance().createRequestFile(file);
-				LOG.info("Request file {} generated OK", file.getAbsolutePath());
-				System.exit(0);
-			}
+        try {
+            if (cmd.hasOption('g')) {
+                String filename = cmd.getOptionValue("rfile");
+                if (filename == null)
+                    filename = "./license.req";
+                File file = new File(filename);
+                LicenseManager.getInstance().createRequestFile(file);
+                LOG.info("Request file {} generated OK", file.getAbsolutePath());
+                System.exit(0);
+            }
 
-			if (cmd.hasOption('l')) {
-				String filename = cmd.getOptionValue("validate");
-				if (filename == null)
-					filename = "./license.lic";
-				File file = new File(filename);
-				if (!file.exists()) {
-					throw new SeCurisException("The license file doesn't exist: " + file.getAbsolutePath());
-				}
-				try {
-					LicenseManager.getInstance().validateLicense(file);
-					LOG.info("License file {} is valid", file.getAbsolutePath());
-				} catch (SeCurisException e) {
-					LOG.info("License file {} is NOT valid", file.getAbsolutePath());
-					LOG.info("Reason: {}", e.toString());
-				}
+            if (cmd.hasOption('l')) {
+                String filename = cmd.getOptionValue("validate");
+                if (filename == null)
+                    filename = "./license.lic";
+                File file = new File(filename);
+                if (!file.exists()) {
+                    throw new SeCurisException("The license file doesn't exist: " + file.getAbsolutePath());
+                }
+                try {
+                    LicenseManager.getInstance().validateLicense(file);
+                    LOG.info("License file {} is valid", file.getAbsolutePath());
+                } catch (SeCurisException e) {
+                    LOG.info("License file {} is NOT valid", file.getAbsolutePath());
+                    LOG.info("Reason: {}", e.toString());
+                }
 
-				System.exit(0);
-			}
+                System.exit(0);
+            }
 
-			if (cmd.hasOption('c')) {
-				// TODO: Change CLI to get name and email in license request
-				SignedLicenseBean lic = LicenseManager.getInstance().requestLicense(null, null);
-				String filename = cmd.getOptionValue("c");
-				if (filename == null) {
-					filename = "./license.lic";
-				}
-				File file = new File(filename);
-				LicenseManager.getInstance().save(lic, file);
-				LOG.info("License file sucessfully saved in file: {}", file.getAbsolutePath());
-				System.exit(0);
-			}
+            if (cmd.hasOption('c')) {
+                // TODO: Change CLI to get name and email in license request
+                SignedLicenseBean lic = LicenseManager.getInstance().requestLicense(null, null);
+                String filename = cmd.getOptionValue("c");
+                if (filename == null) {
+                    filename = "./license.lic";
+                }
+                File file = new File(filename);
+                LicenseManager.getInstance().save(lic, file);
+                LOG.info("License file sucessfully saved in file: {}", file.getAbsolutePath());
+                System.exit(0);
+            }
 
-			if (cmd.hasOption('t')) {
-				LicenseManager.getInstance().testServer();
-				LOG.info("Server is OK, url: {}", Params.get(Params.KEYS.LICENSE_SERVER_URL, Params.DEFAUT_SERVER_URL));
+            if (cmd.hasOption('t')) {
+                LicenseManager.getInstance().testServer();
+                LOG.info("Server is OK, url: {}", Params.get(Params.KEYS.LICENSE_SERVER_URL, Params.DEFAUT_SERVER_URL));
 
-				System.exit(0);
-			}
+                System.exit(0);
+            }
 
-			if (cmd.hasOption('r')) {
-				String licFilename = cmd.getOptionValue("renew");
-				checkMandatoryParameter(licFilename, "renew");
-				File file = new File(licFilename);
-				if (!file.exists()) {
-					throw new SeCurisException("The license file doesn't exist: " + file.getAbsolutePath());
-				}
-				SignedLicenseBean newLic = LicenseManager.getInstance().renew(file);
-				File oldLicFile = new File(file.getAbsoluteFile() + ".old");
-				file.renameTo(oldLicFile);
-				LOG.info("Old license file has been renamed to: {}", oldLicFile.getAbsolutePath());
-				LicenseManager.getInstance().save(newLic, file);
-				LOG.info("New license file saved as: {}", file.getAbsolutePath());
-				System.exit(0);
-			}
+            if (cmd.hasOption('r')) {
+                String licFilename = cmd.getOptionValue("renew");
+                checkMandatoryParameter(licFilename, "renew");
+                File file = new File(licFilename);
+                if (!file.exists()) {
+                    throw new SeCurisException("The license file doesn't exist: " + file.getAbsolutePath());
+                }
+                SignedLicenseBean newLic = LicenseManager.getInstance().renew(file);
+                File oldLicFile = new File(file.getAbsoluteFile() + ".old");
+                file.renameTo(oldLicFile);
+                LOG.info("Old license file has been renamed to: {}", oldLicFile.getAbsolutePath());
+                LicenseManager.getInstance().save(newLic, file);
+                LOG.info("New license file saved as: {}", file.getAbsolutePath());
+                System.exit(0);
+            }
 
-		} catch (SeCurisException e) {
-			LOG.error("The command generated an error: {}", e.toString());
-		}
-	}
+        } catch (SeCurisException e) {
+            LOG.error("The command generated an error: {}", e.toString());
+        }
+    }
 
-	private static void checkMandatoryParameter(String value, String param) {
-		if (value == null) {
-			LOG.error("Parameter {} is mandatory. Use --help to get information about parameters", param);
-			System.exit(-5);
-		}
-	}
+    private static void checkMandatoryParameter(String value, String param) {
+        if (value == null) {
+            LOG.error("Parameter {} is mandatory. Use --help to get information about parameters", param);
+            System.exit(-5);
+        }
+    }
 
-	/**
-	 * Checks that config file exists and contains mandatory parameters
-	 */
-	private static void checkConfigFile() {
-		if (Params.get(Params.KEYS.LIC_TYPE_CODE) == null && Params.get(Params.KEYS.APPLICATION_CODE) == null) {
-			LOG.error("Manadatory parameter {} is not set in config file", Params.KEYS.LIC_TYPE_CODE);
-			System.exit(-3);
-		}
-		if (Params.get(Params.KEYS.CUSTOMER_CODE) == null) {
-			LOG.error("Manadatory parameter {} is not set in config file", Params.KEYS.CUSTOMER_CODE);
-			System.exit(-4);
-		}
-		if (Params.get(Params.KEYS.PACK_CODE) == null) {
-			LOG.error("Manadatory parameter {} is not set in config file", Params.KEYS.PACK_CODE);
-			System.exit(-6);
-		}
-	}
+    /**
+     * Checks that config file exists and contains mandatory parameters
+     */
+    private static void checkConfigFile() {
+        if (Params.get(Params.KEYS.APPLICATION_CODE) == null) {
 
-	private static CommandLine getCommandLine(String[] args) {
-		Options ops = prepareOptionCLI();
-		if (args.length == 0) {
-			printHelp(ops);
-		}
-		CommandLineParser parser = new PosixParser();
-		CommandLine cmd = null;
-		try {
-			cmd = parser.parse(ops, args);
-		} catch (ParseException e) {
-			printHelp(ops);
-		}
+            if (Params.get(Params.KEYS.LIC_TYPE_CODE) == null) {
+                LOG.error("Manadatory parameter {} is not set in config file", Params.KEYS.LIC_TYPE_CODE);
+                System.exit(-3);
+            }
+            if (Params.get(Params.KEYS.CUSTOMER_CODE) == null) {
+                LOG.error("Manadatory parameter {} is not set in config file", Params.KEYS.CUSTOMER_CODE);
+                System.exit(-4);
+            }
+            if (Params.get(Params.KEYS.PACK_CODE) == null) {
+                LOG.error("Manadatory parameter {} is not set in config file", Params.KEYS.PACK_CODE);
+                System.exit(-6);
+            }
+        } // else: The license will be got using activationCode
+    }
 
-		if (cmd.hasOption('h')) {
-			printHelp(ops);
-		}
+    private static CommandLine getCommandLine(String[] args) {
+        Options ops = prepareOptionCLI();
+        if (args.length == 0) {
+            printHelp(ops);
+        }
+        CommandLineParser parser = new PosixParser();
+        CommandLine cmd = null;
+        try {
+            cmd = parser.parse(ops, args);
+        } catch (ParseException e) {
+            printHelp(ops);
+        }
 
-		return cmd;
-	}
+        if (cmd.hasOption('h')) {
+            printHelp(ops);
+        }
 
-	private static void printHelp(Options ops) {
-		HelpFormatter formatter = new HelpFormatter();
-		formatter.printHelp("securis-client", ops, true);
-		System.exit(-1);
-	}
+        return cmd;
+    }
 
-	@SuppressWarnings("static-access")
-	private static Options prepareOptionCLI() {
-		Options options = new Options();
+    private static void printHelp(Options ops) {
+        HelpFormatter formatter = new HelpFormatter();
+        formatter.printHelp("securis-client", ops, true);
+        System.exit(-1);
+    }
 
-		options.addOption("h", "help", false, "Show help.");
-		options.addOption(OptionBuilder.withArgName("req_file").withLongOpt("rfile")
-				.withDescription("Set request file for its generation or for license requesting.").hasArg(true).create('r'));
-		// options.addOption(OptionBuilder.withArgName("url_license_server").withLongOpt("server").withDescription("License server url.").hasArg(true).create('s'));
-		options.addOption(OptionBuilder.withArgName("lic_file").withLongOpt("validate").withDescription("Validate lic file.").hasArg(true)
-				.create('l'));
+    @SuppressWarnings("static-access")
+    private static Options prepareOptionCLI() {
+        Options options = new Options();
 
-		options.addOption("g", "gen_request", false,
-				"Generate request file. If --rfile parameter is missing then It is generated in current directory.");
-		options.addOption(OptionBuilder.withArgName("lic_file").withLongOpt("create").withDescription("Request a license file to server.")
-				.hasArg(true).hasOptionalArg().create('c'));
-		options.addOption("t", "test_lc", false, "Test if License Server (LC) is available. ");
-		options.addOption(OptionBuilder.withArgName("lic_file").withLongOpt("renew").withDescription("Synchronize/renew the current license file.")
-				.hasArg(true).create('r'));
+        options.addOption("h", "help", false, "Show help.");
+        options.addOption(OptionBuilder.withArgName("req_file").withLongOpt("rfile")
+                .withDescription("Set request file for its generation or for license requesting.").hasArg(true).create('r'));
+        // options.addOption(OptionBuilder.withArgName("url_license_server").withLongOpt("server").withDescription("License server url.").hasArg(true).create('s'));
+        options.addOption(OptionBuilder.withArgName("lic_file").withLongOpt("validate").withDescription("Validate lic file.").hasArg(true)
+                .create('l'));
 
-		return options;
-	}
+        options.addOption("g", "gen_request", false,
+                "Generate request file. If --rfile parameter is missing then It is generated in current directory.");
+        options.addOption(OptionBuilder.withArgName("lic_file").withLongOpt("create").withDescription("Request a license file to server.")
+                .hasArg(true).hasOptionalArg().create('c'));
+        options.addOption("t", "test_lc", false, "Test if License Server (LC) is available. ");
+        options.addOption(OptionBuilder.withArgName("lic_file").withLongOpt("renew").withDescription("Synchronize/renew the current license file.")
+                .hasArg(true).create('r'));
+
+        return options;
+    }
 
 }

--
Gitblit v1.3.2