diff options
| author | Endi S. Dewata <edewata@redhat.com> | 2017-03-24 00:24:48 +0100 |
|---|---|---|
| committer | Endi S. Dewata <edewata@redhat.com> | 2017-03-24 16:39:35 +0100 |
| commit | 5e74874f37a739b194b2a7917bc0e8568bd10593 (patch) | |
| tree | c0f96388cddb296b848850c9b8bfae0361695e23 /base/java-tools | |
| parent | 784180f3bce1adb5c914a0fa530e252044038ed1 (diff) | |
| download | pki-5e74874f37a739b194b2a7917bc0e8568bd10593.tar.gz pki-5e74874f37a739b194b2a7917bc0e8568bd10593.tar.xz pki-5e74874f37a739b194b2a7917bc0e8568bd10593.zip | |
Refactored GroupCLI.
The CertCLI and its submodules have been modified to use lazy
initialization to get the PKIClient object.
Diffstat (limited to 'base/java-tools')
11 files changed, 43 insertions, 28 deletions
diff --git a/base/java-tools/src/com/netscape/cmstools/group/GroupAddCLI.java b/base/java-tools/src/com/netscape/cmstools/group/GroupAddCLI.java index 0ae506f3f..5a9da5668 100644 --- a/base/java-tools/src/com/netscape/cmstools/group/GroupAddCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/group/GroupAddCLI.java @@ -23,6 +23,7 @@ import java.util.Arrays; import org.apache.commons.cli.CommandLine; import org.apache.commons.cli.Option; +import com.netscape.certsrv.group.GroupClient; import com.netscape.certsrv.group.GroupData; import com.netscape.cmstools.cli.CLI; import com.netscape.cmstools.cli.MainCLI; @@ -72,7 +73,8 @@ public class GroupAddCLI extends CLI { groupData.setGroupID(groupID); groupData.setDescription(cmd.getOptionValue("description")); - groupData = groupCLI.groupClient.addGroup(groupData); + GroupClient groupClient = groupCLI.getGroupClient(); + groupData = groupClient.addGroup(groupData); MainCLI.printMessage("Added group \""+groupID+"\""); diff --git a/base/java-tools/src/com/netscape/cmstools/group/GroupCLI.java b/base/java-tools/src/com/netscape/cmstools/group/GroupCLI.java index ca151301e..bd4651d9e 100644 --- a/base/java-tools/src/com/netscape/cmstools/group/GroupCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/group/GroupCLI.java @@ -21,6 +21,7 @@ package com.netscape.cmstools.group; import org.apache.commons.lang.StringUtils; import org.jboss.resteasy.plugins.providers.atom.Link; +import com.netscape.certsrv.client.PKIClient; import com.netscape.certsrv.group.GroupClient; import com.netscape.certsrv.group.GroupData; import com.netscape.cmstools.cli.CLI; @@ -59,22 +60,20 @@ public class GroupCLI extends CLI { return "pki-group"; } - public void execute(String[] args) throws Exception { + public GroupClient getGroupClient() throws Exception { - client = parent.getClient(); - groupClient = (GroupClient)parent.getClient("group"); + if (groupClient != null) return groupClient; - // if this is a top-level command - if (groupClient == null) { - // determine the subsystem - String subsystem = client.getSubsystem(); - if (subsystem == null) subsystem = "ca"; + PKIClient client = getClient(); - // create new group client - groupClient = new GroupClient(client, subsystem); - } + // determine the subsystem + String subsystem = client.getSubsystem(); + if (subsystem == null) subsystem = "ca"; + + // create new group client + groupClient = new GroupClient(client, subsystem); - super.execute(args); + return groupClient; } public static void printGroup(GroupData groupData) { diff --git a/base/java-tools/src/com/netscape/cmstools/group/GroupFindCLI.java b/base/java-tools/src/com/netscape/cmstools/group/GroupFindCLI.java index dda3dacbc..1ff577f0b 100644 --- a/base/java-tools/src/com/netscape/cmstools/group/GroupFindCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/group/GroupFindCLI.java @@ -24,6 +24,7 @@ import java.util.Collection; import org.apache.commons.cli.CommandLine; import org.apache.commons.cli.Option; +import com.netscape.certsrv.group.GroupClient; import com.netscape.certsrv.group.GroupCollection; import com.netscape.certsrv.group.GroupData; import com.netscape.cmstools.cli.CLI; @@ -75,7 +76,8 @@ public class GroupFindCLI extends CLI { s = cmd.getOptionValue("size"); Integer size = s == null ? null : Integer.valueOf(s); - GroupCollection response = groupCLI.groupClient.findGroups(filter, start, size); + GroupClient groupClient = groupCLI.getGroupClient(); + GroupCollection response = groupClient.findGroups(filter, start, size); MainCLI.printMessage(response.getTotal() + " entries matched"); if (response.getTotal() == 0) return; diff --git a/base/java-tools/src/com/netscape/cmstools/group/GroupMemberAddCLI.java b/base/java-tools/src/com/netscape/cmstools/group/GroupMemberAddCLI.java index cc0041773..eab9e232e 100644 --- a/base/java-tools/src/com/netscape/cmstools/group/GroupMemberAddCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/group/GroupMemberAddCLI.java @@ -22,6 +22,7 @@ import java.util.Arrays; import org.apache.commons.cli.CommandLine; +import com.netscape.certsrv.group.GroupClient; import com.netscape.certsrv.group.GroupMemberData; import com.netscape.cmstools.cli.CLI; import com.netscape.cmstools.cli.MainCLI; @@ -60,7 +61,8 @@ public class GroupMemberAddCLI extends CLI { String groupID = cmdArgs[0]; String memberID = cmdArgs[1]; - GroupMemberData groupMemberData = groupMemberCLI.groupClient.addGroupMember(groupID, memberID); + GroupClient groupClient = groupMemberCLI.getGroupClient(); + GroupMemberData groupMemberData = groupClient.addGroupMember(groupID, memberID); MainCLI.printMessage("Added group member \""+memberID+"\""); diff --git a/base/java-tools/src/com/netscape/cmstools/group/GroupMemberCLI.java b/base/java-tools/src/com/netscape/cmstools/group/GroupMemberCLI.java index 1df404bc5..527c37290 100644 --- a/base/java-tools/src/com/netscape/cmstools/group/GroupMemberCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/group/GroupMemberCLI.java @@ -29,11 +29,13 @@ import com.netscape.cmstools.cli.CLI; */ public class GroupMemberCLI extends CLI { - public GroupClient groupClient; + GroupCLI parent; public GroupMemberCLI(GroupCLI parent) { super("member", "Group member management commands", parent); + this.parent = parent; + addModule(new GroupMemberFindCLI(this)); addModule(new GroupMemberShowCLI(this)); addModule(new GroupMemberAddCLI(this)); @@ -45,12 +47,8 @@ public class GroupMemberCLI extends CLI { return "pki-group-member"; } - public void execute(String[] args) throws Exception { - - client = parent.getClient(); - groupClient = ((GroupCLI)parent).groupClient; - - super.execute(args); + public GroupClient getGroupClient() throws Exception { + return parent.getGroupClient(); } public static void printGroupMember(GroupMemberData groupMemberData) { diff --git a/base/java-tools/src/com/netscape/cmstools/group/GroupMemberFindCLI.java b/base/java-tools/src/com/netscape/cmstools/group/GroupMemberFindCLI.java index 788827abf..d4f3a4b27 100644 --- a/base/java-tools/src/com/netscape/cmstools/group/GroupMemberFindCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/group/GroupMemberFindCLI.java @@ -24,6 +24,7 @@ import java.util.Collection; import org.apache.commons.cli.CommandLine; import org.apache.commons.cli.Option; +import com.netscape.certsrv.group.GroupClient; import com.netscape.certsrv.group.GroupMemberCollection; import com.netscape.certsrv.group.GroupMemberData; import com.netscape.cmstools.cli.CLI; @@ -81,7 +82,8 @@ public class GroupMemberFindCLI extends CLI { s = cmd.getOptionValue("size"); Integer size = s == null ? null : Integer.valueOf(s); - GroupMemberCollection response = groupMemberCLI.groupClient.findGroupMembers(groupID, filter, start, size); + GroupClient groupClient = groupMemberCLI.getGroupClient(); + GroupMemberCollection response = groupClient.findGroupMembers(groupID, filter, start, size); MainCLI.printMessage(response.getTotal() + " entries matched"); if (response.getTotal() == 0) return; diff --git a/base/java-tools/src/com/netscape/cmstools/group/GroupMemberRemoveCLI.java b/base/java-tools/src/com/netscape/cmstools/group/GroupMemberRemoveCLI.java index 89cb66855..b737d059c 100644 --- a/base/java-tools/src/com/netscape/cmstools/group/GroupMemberRemoveCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/group/GroupMemberRemoveCLI.java @@ -22,6 +22,7 @@ import java.util.Arrays; import org.apache.commons.cli.CommandLine; +import com.netscape.certsrv.group.GroupClient; import com.netscape.cmstools.cli.CLI; import com.netscape.cmstools.cli.MainCLI; @@ -59,7 +60,8 @@ public class GroupMemberRemoveCLI extends CLI { String groupID = cmdArgs[0]; String memberID = cmdArgs[1]; - groupMemberCLI.groupClient.removeGroupMember(groupID, memberID); + GroupClient groupClient = groupMemberCLI.getGroupClient(); + groupClient.removeGroupMember(groupID, memberID); MainCLI.printMessage("Deleted group member \""+memberID+"\""); } diff --git a/base/java-tools/src/com/netscape/cmstools/group/GroupMemberShowCLI.java b/base/java-tools/src/com/netscape/cmstools/group/GroupMemberShowCLI.java index a0e9f2231..9579de379 100644 --- a/base/java-tools/src/com/netscape/cmstools/group/GroupMemberShowCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/group/GroupMemberShowCLI.java @@ -22,6 +22,7 @@ import java.util.Arrays; import org.apache.commons.cli.CommandLine; +import com.netscape.certsrv.group.GroupClient; import com.netscape.certsrv.group.GroupMemberData; import com.netscape.cmstools.cli.CLI; import com.netscape.cmstools.cli.MainCLI; @@ -60,7 +61,8 @@ public class GroupMemberShowCLI extends CLI { String groupID = cmdArgs[0]; String memberID = cmdArgs[1]; - GroupMemberData groupMemberData = groupMemberCLI.groupClient.getGroupMember(groupID, memberID); + GroupClient groupClient = groupMemberCLI.getGroupClient(); + GroupMemberData groupMemberData = groupClient.getGroupMember(groupID, memberID); MainCLI.printMessage("Group member \""+memberID+"\""); diff --git a/base/java-tools/src/com/netscape/cmstools/group/GroupModifyCLI.java b/base/java-tools/src/com/netscape/cmstools/group/GroupModifyCLI.java index f3dd2f951..d4d81c579 100644 --- a/base/java-tools/src/com/netscape/cmstools/group/GroupModifyCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/group/GroupModifyCLI.java @@ -23,6 +23,7 @@ import java.util.Arrays; import org.apache.commons.cli.CommandLine; import org.apache.commons.cli.Option; +import com.netscape.certsrv.group.GroupClient; import com.netscape.certsrv.group.GroupData; import com.netscape.cmstools.cli.CLI; import com.netscape.cmstools.cli.MainCLI; @@ -72,7 +73,8 @@ public class GroupModifyCLI extends CLI { groupData.setID(groupID); groupData.setDescription(cmd.getOptionValue("description")); - groupData = groupCLI.groupClient.modifyGroup(groupID, groupData); + GroupClient groupClient = groupCLI.getGroupClient(); + groupData = groupClient.modifyGroup(groupID, groupData); MainCLI.printMessage("Modified group \""+groupID+"\""); diff --git a/base/java-tools/src/com/netscape/cmstools/group/GroupRemoveCLI.java b/base/java-tools/src/com/netscape/cmstools/group/GroupRemoveCLI.java index 68a17483e..be6565491 100644 --- a/base/java-tools/src/com/netscape/cmstools/group/GroupRemoveCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/group/GroupRemoveCLI.java @@ -22,6 +22,7 @@ import java.util.Arrays; import org.apache.commons.cli.CommandLine; +import com.netscape.certsrv.group.GroupClient; import com.netscape.cmstools.cli.CLI; import com.netscape.cmstools.cli.MainCLI; @@ -59,7 +60,8 @@ public class GroupRemoveCLI extends CLI { String groupID = cmdArgs[0]; - groupCLI.groupClient.removeGroup(groupID); + GroupClient groupClient = groupCLI.getGroupClient(); + groupClient.removeGroup(groupID); MainCLI.printMessage("Deleted group \""+groupID+"\""); } diff --git a/base/java-tools/src/com/netscape/cmstools/group/GroupShowCLI.java b/base/java-tools/src/com/netscape/cmstools/group/GroupShowCLI.java index 39cc66b03..6f096af53 100644 --- a/base/java-tools/src/com/netscape/cmstools/group/GroupShowCLI.java +++ b/base/java-tools/src/com/netscape/cmstools/group/GroupShowCLI.java @@ -22,6 +22,7 @@ import java.util.Arrays; import org.apache.commons.cli.CommandLine; +import com.netscape.certsrv.group.GroupClient; import com.netscape.certsrv.group.GroupData; import com.netscape.cmstools.cli.CLI; import com.netscape.cmstools.cli.MainCLI; @@ -59,7 +60,8 @@ public class GroupShowCLI extends CLI { String groupID = cmdArgs[0]; - GroupData groupData = groupCLI.groupClient.getGroup(groupID); + GroupClient groupClient = groupCLI.getGroupClient(); + GroupData groupData = groupClient.getGroup(groupID); MainCLI.printMessage("Group \""+groupID+"\""); |
