From 043aa471f9e243faad58917e9e055affdb694c79 Mon Sep 17 00:00:00 2001 From: "Endi S. Dewata" Date: Fri, 24 Mar 2017 02:02:51 +0100 Subject: Refactored AuthorityCLI. The AuthorityCLI and its submodules have been modified to use lazy initialization to get the PKIClient object. --- .../src/com/netscape/cmstools/authority/AuthorityCLI.java | 11 ++++++++--- .../com/netscape/cmstools/authority/AuthorityCreateCLI.java | 4 +++- .../com/netscape/cmstools/authority/AuthorityDisableCLI.java | 4 +++- .../com/netscape/cmstools/authority/AuthorityEnableCLI.java | 4 +++- .../src/com/netscape/cmstools/authority/AuthorityFindCLI.java | 4 +++- .../com/netscape/cmstools/authority/AuthorityRemoveCLI.java | 4 +++- .../src/com/netscape/cmstools/authority/AuthorityShowCLI.java | 4 +++- 7 files changed, 26 insertions(+), 9 deletions(-) (limited to 'base/java-tools/src/com/netscape') diff --git a/base/java-tools/src/com/netscape/cmstools/authority/AuthorityCLI.java b/base/java-tools/src/com/netscape/cmstools/authority/AuthorityCLI.java index a3fccbb02..c8d469937 100644 --- a/base/java-tools/src/com/netscape/cmstools/authority/AuthorityCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/authority/AuthorityCLI.java @@ -4,6 +4,7 @@ import java.math.BigInteger; import com.netscape.certsrv.authority.AuthorityClient; import com.netscape.certsrv.authority.AuthorityData; +import com.netscape.certsrv.client.PKIClient; import com.netscape.cmstools.cli.CLI; import com.netscape.cmstools.cli.MainCLI; @@ -32,10 +33,14 @@ public class AuthorityCLI extends CLI { } } - public void execute(String[] args) throws Exception { - client = parent.getClient(); + public AuthorityClient getAuthorityClient() throws Exception { + + if (authorityClient != null) return authorityClient; + + PKIClient client = getClient(); authorityClient = new AuthorityClient(client, "ca"); - super.execute(args); + + return authorityClient; } protected static void printAuthorityData(AuthorityData data) { diff --git a/base/java-tools/src/com/netscape/cmstools/authority/AuthorityCreateCLI.java b/base/java-tools/src/com/netscape/cmstools/authority/AuthorityCreateCLI.java index 9cea963bf..e39a126e0 100644 --- a/base/java-tools/src/com/netscape/cmstools/authority/AuthorityCreateCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/authority/AuthorityCreateCLI.java @@ -5,6 +5,7 @@ import java.util.Arrays; import org.apache.commons.cli.CommandLine; import org.apache.commons.cli.Option; +import com.netscape.certsrv.authority.AuthorityClient; import com.netscape.certsrv.authority.AuthorityData; import com.netscape.certsrv.ca.AuthorityID; import com.netscape.cmstools.cli.CLI; @@ -67,7 +68,8 @@ public class AuthorityCreateCLI extends CLI { String dn = cmdArgs[0]; AuthorityData data = new AuthorityData( null, dn, null, parentAIDString, null, null, true /* enabled */, desc, null); - AuthorityData newData = authorityCLI.authorityClient.createCA(data); + AuthorityClient authorityClient = authorityCLI.getAuthorityClient(); + AuthorityData newData = authorityClient.createCA(data); AuthorityCLI.printAuthorityData(newData); } diff --git a/base/java-tools/src/com/netscape/cmstools/authority/AuthorityDisableCLI.java b/base/java-tools/src/com/netscape/cmstools/authority/AuthorityDisableCLI.java index 7c5da13de..bae8ada73 100644 --- a/base/java-tools/src/com/netscape/cmstools/authority/AuthorityDisableCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/authority/AuthorityDisableCLI.java @@ -4,6 +4,7 @@ import java.util.Arrays; import org.apache.commons.cli.CommandLine; +import com.netscape.certsrv.authority.AuthorityClient; import com.netscape.certsrv.authority.AuthorityData; import com.netscape.cmstools.cli.CLI; @@ -37,7 +38,8 @@ public class AuthorityDisableCLI extends CLI { AuthorityData data = new AuthorityData( null, null, cmdArgs[0], null, null, null, false, null, null); - data = authorityCLI.authorityClient.modifyCA(data); + AuthorityClient authorityClient = authorityCLI.getAuthorityClient(); + data = authorityClient.modifyCA(data); AuthorityCLI.printAuthorityData(data); } diff --git a/base/java-tools/src/com/netscape/cmstools/authority/AuthorityEnableCLI.java b/base/java-tools/src/com/netscape/cmstools/authority/AuthorityEnableCLI.java index 7ff25a450..2b2eac1f0 100644 --- a/base/java-tools/src/com/netscape/cmstools/authority/AuthorityEnableCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/authority/AuthorityEnableCLI.java @@ -4,6 +4,7 @@ import java.util.Arrays; import org.apache.commons.cli.CommandLine; +import com.netscape.certsrv.authority.AuthorityClient; import com.netscape.certsrv.authority.AuthorityData; import com.netscape.cmstools.cli.CLI; @@ -37,7 +38,8 @@ public class AuthorityEnableCLI extends CLI { AuthorityData data = new AuthorityData( null, null, cmdArgs[0], null, null, null, true, null, null); - data = authorityCLI.authorityClient.modifyCA(data); + AuthorityClient authorityClient = authorityCLI.getAuthorityClient(); + data = authorityClient.modifyCA(data); AuthorityCLI.printAuthorityData(data); } diff --git a/base/java-tools/src/com/netscape/cmstools/authority/AuthorityFindCLI.java b/base/java-tools/src/com/netscape/cmstools/authority/AuthorityFindCLI.java index 2b96e3aab..6cd06be9f 100644 --- a/base/java-tools/src/com/netscape/cmstools/authority/AuthorityFindCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/authority/AuthorityFindCLI.java @@ -5,6 +5,7 @@ import java.util.List; import org.apache.commons.cli.CommandLine; +import com.netscape.certsrv.authority.AuthorityClient; import com.netscape.certsrv.authority.AuthorityData; import com.netscape.cmstools.cli.CLI; import com.netscape.cmstools.cli.MainCLI; @@ -32,7 +33,8 @@ public class AuthorityFindCLI extends CLI { @SuppressWarnings("unused") CommandLine cmd = parser.parse(options, args); - List datas = authorityCLI.authorityClient.listCAs(); + AuthorityClient authorityClient = authorityCLI.getAuthorityClient(); + List datas = authorityClient.listCAs(); MainCLI.printMessage(datas.size() + " entries matched"); if (datas.size() == 0) return; diff --git a/base/java-tools/src/com/netscape/cmstools/authority/AuthorityRemoveCLI.java b/base/java-tools/src/com/netscape/cmstools/authority/AuthorityRemoveCLI.java index f69948aaf..343a0bc57 100644 --- a/base/java-tools/src/com/netscape/cmstools/authority/AuthorityRemoveCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/authority/AuthorityRemoveCLI.java @@ -6,6 +6,7 @@ import java.util.Arrays; import org.apache.commons.cli.CommandLine; +import com.netscape.certsrv.authority.AuthorityClient; import com.netscape.cmstools.cli.CLI; import com.netscape.cmstools.cli.MainCLI; @@ -54,7 +55,8 @@ public class AuthorityRemoveCLI extends CLI { } String aidString = cmdArgs[0]; - authorityCLI.authorityClient.deleteCA(aidString); + AuthorityClient authorityClient = authorityCLI.getAuthorityClient(); + authorityClient.deleteCA(aidString); MainCLI.printMessage("Deleted authority \"" + aidString + "\""); } diff --git a/base/java-tools/src/com/netscape/cmstools/authority/AuthorityShowCLI.java b/base/java-tools/src/com/netscape/cmstools/authority/AuthorityShowCLI.java index b26371070..5bf06319d 100644 --- a/base/java-tools/src/com/netscape/cmstools/authority/AuthorityShowCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/authority/AuthorityShowCLI.java @@ -5,6 +5,7 @@ import java.util.Arrays; import org.apache.commons.cli.CommandLine; import org.apache.commons.cli.Option; +import com.netscape.certsrv.authority.AuthorityClient; import com.netscape.certsrv.authority.AuthorityData; import com.netscape.certsrv.authority.AuthorityResource; import com.netscape.cmstools.cli.CLI; @@ -57,7 +58,8 @@ public class AuthorityShowCLI extends CLI { throw new Exception("No ID specified."); } - AuthorityData data = authorityCLI.authorityClient.getCA(caIDString); + AuthorityClient authorityClient = authorityCLI.getAuthorityClient(); + AuthorityData data = authorityClient.getCA(caIDString); AuthorityCLI.printAuthorityData(data); } -- cgit