You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by ds...@apache.org on 2017/08/31 01:25:40 UTC
[03/47] geode git commit: GEODE-3436: Restore refactoring of
MemberCommands
GEODE-3436: Restore refactoring of MemberCommands
* See initial commit GEODE-3264 (d27f8b956de7d9c5d95ebdc68dfc67ee8b2d7b51)
Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/33870085
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/33870085
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/33870085
Branch: refs/heads/feature/GEODE-3543
Commit: 33870085adbefa488b626361f82c4994e4682af5
Parents: 21c1fb9
Author: YehEmily <em...@gmail.com>
Authored: Tue Aug 22 10:57:05 2017 -0700
Committer: Jinmei Liao <ji...@pivotal.io>
Committed: Tue Aug 29 09:27:22 2017 -0700
----------------------------------------------------------------------
.../cli/commands/DescribeMemberCommand.java | 132 +++++++++++++
.../cli/commands/ListMemberCommand.java | 77 ++++++++
.../internal/cli/commands/MemberCommands.java | 195 -------------------
.../controllers/MemberCommandsController.java | 23 +--
.../internal/security/TestCommand.java | 2 +-
5 files changed, 215 insertions(+), 214 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/geode/blob/33870085/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/DescribeMemberCommand.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/DescribeMemberCommand.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/DescribeMemberCommand.java
new file mode 100644
index 0000000..9f742ef
--- /dev/null
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/DescribeMemberCommand.java
@@ -0,0 +1,132 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
+ * agreements. See the NOTICE file distributed with this work for additional information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied. See the License for the specific language governing permissions and limitations under
+ * the License.
+ */
+
+package org.apache.geode.management.internal.cli.commands;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+import org.springframework.shell.core.annotation.CliCommand;
+import org.springframework.shell.core.annotation.CliOption;
+
+import org.apache.geode.cache.CacheClosedException;
+import org.apache.geode.cache.execute.ResultCollector;
+import org.apache.geode.distributed.DistributedMember;
+import org.apache.geode.management.cli.CliMetaData;
+import org.apache.geode.management.cli.ConverterHint;
+import org.apache.geode.management.cli.Result;
+import org.apache.geode.management.internal.cli.CliUtil;
+import org.apache.geode.management.internal.cli.domain.CacheServerInfo;
+import org.apache.geode.management.internal.cli.domain.MemberInformation;
+import org.apache.geode.management.internal.cli.functions.GetMemberInformationFunction;
+import org.apache.geode.management.internal.cli.i18n.CliStrings;
+import org.apache.geode.management.internal.cli.result.CompositeResultData;
+import org.apache.geode.management.internal.cli.result.ResultBuilder;
+import org.apache.geode.management.internal.security.ResourceOperation;
+import org.apache.geode.security.ResourcePermission;
+
+public class DescribeMemberCommand implements GfshCommand {
+ private static final GetMemberInformationFunction getMemberInformation =
+ new GetMemberInformationFunction();
+
+ @CliCommand(value = {CliStrings.DESCRIBE_MEMBER}, help = CliStrings.DESCRIBE_MEMBER__HELP)
+ @CliMetaData(relatedTopic = CliStrings.TOPIC_GEODE_SERVER)
+ @ResourceOperation(resource = ResourcePermission.Resource.CLUSTER,
+ operation = ResourcePermission.Operation.READ)
+ public Result describeMember(@CliOption(key = CliStrings.DESCRIBE_MEMBER__IDENTIFIER,
+ optionContext = ConverterHint.ALL_MEMBER_IDNAME, help = CliStrings.DESCRIBE_MEMBER__HELP,
+ mandatory = true) String memberNameOrId) {
+ Result result = null;
+
+ try {
+ DistributedMember memberToBeDescribed =
+ CliUtil.getDistributedMemberByNameOrId(memberNameOrId);
+
+ if (memberToBeDescribed != null) {
+ ResultCollector<?, ?> rc =
+ CliUtil.executeFunction(getMemberInformation, null, memberToBeDescribed);
+
+ ArrayList<?> output = (ArrayList<?>) rc.getResult();
+ Object obj = output.get(0);
+
+ if (obj != null && (obj instanceof MemberInformation)) {
+
+ CompositeResultData crd = ResultBuilder.createCompositeResultData();
+
+ MemberInformation memberInformation = (MemberInformation) obj;
+ memberInformation.setName(memberToBeDescribed.getName());
+ memberInformation.setId(memberToBeDescribed.getId());
+ memberInformation.setHost(memberToBeDescribed.getHost());
+ memberInformation.setProcessId("" + memberToBeDescribed.getProcessId());
+
+ CompositeResultData.SectionResultData section = crd.addSection();
+ section.addData("Name", memberInformation.getName());
+ section.addData("Id", memberInformation.getId());
+ section.addData("Host", memberInformation.getHost());
+ section.addData("Regions",
+ CliUtil.convertStringSetToString(memberInformation.getHostedRegions(), '\n'));
+ section.addData("PID", memberInformation.getProcessId());
+ section.addData("Groups", memberInformation.getGroups());
+ section.addData("Used Heap", memberInformation.getHeapUsage() + "M");
+ section.addData("Max Heap", memberInformation.getMaxHeapSize() + "M");
+
+ String offHeapMemorySize = memberInformation.getOffHeapMemorySize();
+ if (offHeapMemorySize != null && !offHeapMemorySize.isEmpty()) {
+ section.addData("Off Heap Size", offHeapMemorySize);
+ }
+
+ section.addData("Working Dir", memberInformation.getWorkingDirPath());
+ section.addData("Log file", memberInformation.getLogFilePath());
+
+ section.addData("Locators", memberInformation.getLocators());
+
+ if (memberInformation.isServer()) {
+ CompositeResultData.SectionResultData clientServiceSection = crd.addSection();
+ List<CacheServerInfo> csList = memberInformation.getCacheServeInfo();
+
+ if (csList != null) {
+ Iterator<CacheServerInfo> iters = csList.iterator();
+ clientServiceSection.setHeader("Cache Server Information");
+
+ while (iters.hasNext()) {
+ CacheServerInfo cacheServerInfo = iters.next();
+ clientServiceSection.addData("Server Bind", cacheServerInfo.getBindAddress());
+ clientServiceSection.addData("Server Port", cacheServerInfo.getPort());
+ clientServiceSection.addData("Running", cacheServerInfo.isRunning());
+ }
+
+ clientServiceSection.addData("Client Connections",
+ memberInformation.getClientCount());
+ }
+ }
+ result = ResultBuilder.buildResult(crd);
+
+ } else {
+ result = ResultBuilder.createInfoResult(CliStrings.format(
+ CliStrings.DESCRIBE_MEMBER__MSG__INFO_FOR__0__COULD_NOT_BE_RETRIEVED,
+ new Object[] {memberNameOrId}));
+ }
+ } else {
+ result = ResultBuilder.createInfoResult(CliStrings
+ .format(CliStrings.DESCRIBE_MEMBER__MSG__NOT_FOUND, new Object[] {memberNameOrId}));
+ }
+ } catch (CacheClosedException ignored) {
+ } catch (Exception e) {
+ result = ResultBuilder.createGemFireErrorResult(e.getMessage());
+ }
+ return result;
+ }
+}
http://git-wip-us.apache.org/repos/asf/geode/blob/33870085/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListMemberCommand.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListMemberCommand.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListMemberCommand.java
new file mode 100644
index 0000000..ea88c69
--- /dev/null
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ListMemberCommand.java
@@ -0,0 +1,77 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
+ * agreements. See the NOTICE file distributed with this work for additional information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
+ * or implied. See the License for the specific language governing permissions and limitations under
+ * the License.
+ */
+
+package org.apache.geode.management.internal.cli.commands;
+
+import java.util.Set;
+import java.util.TreeSet;
+
+import org.springframework.shell.core.annotation.CliCommand;
+import org.springframework.shell.core.annotation.CliOption;
+
+import org.apache.geode.distributed.DistributedMember;
+import org.apache.geode.internal.cache.InternalCache;
+import org.apache.geode.management.cli.CliMetaData;
+import org.apache.geode.management.cli.ConverterHint;
+import org.apache.geode.management.cli.Result;
+import org.apache.geode.management.internal.cli.CliUtil;
+import org.apache.geode.management.internal.cli.LogWrapper;
+import org.apache.geode.management.internal.cli.i18n.CliStrings;
+import org.apache.geode.management.internal.cli.result.ResultBuilder;
+import org.apache.geode.management.internal.cli.result.TabularResultData;
+import org.apache.geode.management.internal.security.ResourceOperation;
+import org.apache.geode.security.ResourcePermission;
+
+public class ListMemberCommand implements GfshCommand {
+ @CliCommand(value = {CliStrings.LIST_MEMBER}, help = CliStrings.LIST_MEMBER__HELP)
+ @CliMetaData(relatedTopic = CliStrings.TOPIC_GEODE_SERVER)
+ @ResourceOperation(resource = ResourcePermission.Resource.CLUSTER,
+ operation = ResourcePermission.Operation.READ)
+ public Result listMember(@CliOption(key = {CliStrings.GROUP}, unspecifiedDefaultValue = "",
+ optionContext = ConverterHint.MEMBERGROUP,
+ help = CliStrings.LIST_MEMBER__GROUP__HELP) String group) {
+ Result result;
+
+ // TODO: Add the code for identifying the system services
+ try {
+ Set<DistributedMember> memberSet = new TreeSet<>();
+ InternalCache cache = getCache();
+
+ // default get all the members in the DS
+ if (group.isEmpty()) {
+ memberSet.addAll(CliUtil.getAllMembers(cache));
+ } else {
+ memberSet.addAll(cache.getDistributedSystem().getGroupMembers(group));
+ }
+
+ if (memberSet.isEmpty()) {
+ result = ResultBuilder.createInfoResult(CliStrings.LIST_MEMBER__MSG__NO_MEMBER_FOUND);
+ } else {
+ TabularResultData resultData = ResultBuilder.createTabularResultData();
+ for (DistributedMember member : memberSet) {
+ resultData.accumulate("Name", member.getName());
+ resultData.accumulate("Id", member.getId());
+ }
+
+ result = ResultBuilder.buildResult(resultData);
+ }
+ } catch (Exception e) {
+ result = ResultBuilder
+ .createGemFireErrorResult("Could not fetch the list of members. " + e.getMessage());
+ LogWrapper.getInstance().warning(e.getMessage(), e);
+ }
+ return result;
+ }
+}
http://git-wip-us.apache.org/repos/asf/geode/blob/33870085/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/MemberCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/MemberCommands.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/MemberCommands.java
deleted file mode 100644
index 45642f6..0000000
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/MemberCommands.java
+++ /dev/null
@@ -1,195 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
- * agreements. See the NOTICE file distributed with this work for additional information regarding
- * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance with the License. You may obtain a
- * copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software distributed under the License
- * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
- * or implied. See the License for the specific language governing permissions and limitations under
- * the License.
- */
-package org.apache.geode.management.internal.cli.commands;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Set;
-import java.util.TreeSet;
-
-import org.springframework.shell.core.annotation.CliCommand;
-import org.springframework.shell.core.annotation.CliOption;
-
-import org.apache.geode.cache.CacheClosedException;
-import org.apache.geode.cache.execute.FunctionInvocationTargetException;
-import org.apache.geode.cache.execute.ResultCollector;
-import org.apache.geode.distributed.DistributedMember;
-import org.apache.geode.internal.cache.InternalCache;
-import org.apache.geode.management.cli.CliMetaData;
-import org.apache.geode.management.cli.ConverterHint;
-import org.apache.geode.management.cli.Result;
-import org.apache.geode.management.internal.cli.CliUtil;
-import org.apache.geode.management.internal.cli.LogWrapper;
-import org.apache.geode.management.internal.cli.domain.CacheServerInfo;
-import org.apache.geode.management.internal.cli.domain.MemberInformation;
-import org.apache.geode.management.internal.cli.functions.GetMemberInformationFunction;
-import org.apache.geode.management.internal.cli.i18n.CliStrings;
-import org.apache.geode.management.internal.cli.result.CompositeResultData;
-import org.apache.geode.management.internal.cli.result.CompositeResultData.SectionResultData;
-import org.apache.geode.management.internal.cli.result.ResultBuilder;
-import org.apache.geode.management.internal.cli.result.TabularResultData;
-import org.apache.geode.management.internal.security.ResourceOperation;
-import org.apache.geode.security.ResourcePermission.Operation;
-import org.apache.geode.security.ResourcePermission.Resource;
-
-/**
- * @since GemFire 7.0
- */
-public class MemberCommands implements GfshCommand {
-
- private static final GetMemberInformationFunction getMemberInformation =
- new GetMemberInformationFunction();
-
- @CliCommand(value = {CliStrings.LIST_MEMBER}, help = CliStrings.LIST_MEMBER__HELP)
- @CliMetaData(relatedTopic = CliStrings.TOPIC_GEODE_SERVER)
- @ResourceOperation(resource = Resource.CLUSTER, operation = Operation.READ)
- public Result listMember(@CliOption(key = {CliStrings.GROUP}, unspecifiedDefaultValue = "",
- optionContext = ConverterHint.MEMBERGROUP,
- help = CliStrings.LIST_MEMBER__GROUP__HELP) String group) {
- Result result = null;
-
- // TODO: Add the code for identifying the system services
- try {
- Set<DistributedMember> memberSet = new TreeSet<DistributedMember>();
- InternalCache cache = getCache();
-
- // default get all the members in the DS
- if (group.isEmpty()) {
- memberSet.addAll(CliUtil.getAllMembers(cache));
- } else {
- memberSet.addAll(cache.getDistributedSystem().getGroupMembers(group));
- }
-
- if (memberSet.isEmpty()) {
- result = ResultBuilder.createInfoResult(CliStrings.LIST_MEMBER__MSG__NO_MEMBER_FOUND);
- } else {
- TabularResultData resultData = ResultBuilder.createTabularResultData();
- Iterator<DistributedMember> memberIters = memberSet.iterator();
- while (memberIters.hasNext()) {
- DistributedMember member = memberIters.next();
- resultData.accumulate("Name", member.getName());
- resultData.accumulate("Id", member.getId());
- }
-
- result = ResultBuilder.buildResult(resultData);
- }
- } catch (Exception e) {
-
- result = ResultBuilder
- .createGemFireErrorResult("Could not fetch the list of members. " + e.getMessage());
- LogWrapper.getInstance().warning(e.getMessage(), e);
- }
-
- return result;
- }
-
- @CliCommand(value = {CliStrings.DESCRIBE_MEMBER}, help = CliStrings.DESCRIBE_MEMBER__HELP)
- @CliMetaData(relatedTopic = CliStrings.TOPIC_GEODE_SERVER)
- @ResourceOperation(resource = Resource.CLUSTER, operation = Operation.READ)
- public Result describeMember(@CliOption(key = CliStrings.DESCRIBE_MEMBER__IDENTIFIER,
- optionContext = ConverterHint.ALL_MEMBER_IDNAME, help = CliStrings.DESCRIBE_MEMBER__HELP,
- mandatory = true) String memberNameOrId) {
- Result result = null;
-
- try {
- DistributedMember memberToBeDescribed =
- CliUtil.getDistributedMemberByNameOrId(memberNameOrId);
-
- if (memberToBeDescribed != null) {
- // This information should be available through the MBeans too. We might not need
- // the function.
-
- // Yes, but then the command is subject to Mbean availability, which would be
- // affected once MBean filters are used.
-
- ResultCollector<?, ?> rc =
- CliUtil.executeFunction(getMemberInformation, null, memberToBeDescribed);
-
- ArrayList<?> output = (ArrayList<?>) rc.getResult();
- Object obj = output.get(0);
-
- if (obj != null && (obj instanceof MemberInformation)) {
-
- CompositeResultData crd = ResultBuilder.createCompositeResultData();
-
- MemberInformation memberInformation = (MemberInformation) obj;
- memberInformation.setName(memberToBeDescribed.getName());
- memberInformation.setId(memberToBeDescribed.getId());
- memberInformation.setHost(memberToBeDescribed.getHost());
- memberInformation.setProcessId("" + memberToBeDescribed.getProcessId());
-
- SectionResultData section = crd.addSection();
- section.addData("Name", memberInformation.getName());
- section.addData("Id", memberInformation.getId());
- section.addData("Host", memberInformation.getHost());
- section.addData("Regions",
- CliUtil.convertStringSetToString(memberInformation.getHostedRegions(), '\n'));
- section.addData("PID", memberInformation.getProcessId());
- section.addData("Groups", memberInformation.getGroups());
- section.addData("Used Heap", memberInformation.getHeapUsage() + "M");
- section.addData("Max Heap", memberInformation.getMaxHeapSize() + "M");
-
- String offHeapMemorySize = memberInformation.getOffHeapMemorySize();
- if (offHeapMemorySize != null && !offHeapMemorySize.isEmpty()) {
- section.addData("Off Heap Size", offHeapMemorySize);
- }
-
- section.addData("Working Dir", memberInformation.getWorkingDirPath());
- section.addData("Log file", memberInformation.getLogFilePath());
-
- section.addData("Locators", memberInformation.getLocators());
-
- if (memberInformation.isServer()) {
- SectionResultData clientServiceSection = crd.addSection();
- List<CacheServerInfo> csList = memberInformation.getCacheServeInfo();
-
- if (csList != null) {
- Iterator<CacheServerInfo> iters = csList.iterator();
- clientServiceSection.setHeader("Cache Server Information");
-
- while (iters.hasNext()) {
- CacheServerInfo cacheServerInfo = iters.next();
- clientServiceSection.addData("Server Bind", cacheServerInfo.getBindAddress());
- clientServiceSection.addData("Server Port", cacheServerInfo.getPort());
- clientServiceSection.addData("Running", cacheServerInfo.isRunning());
- }
-
- clientServiceSection.addData("Client Connections",
- memberInformation.getClientCount());
- }
- }
- result = ResultBuilder.buildResult(crd);
-
- } else {
- result = ResultBuilder.createInfoResult(CliStrings.format(
- CliStrings.DESCRIBE_MEMBER__MSG__INFO_FOR__0__COULD_NOT_BE_RETRIEVED,
- new Object[] {memberNameOrId}));
- }
- } else {
- result = ResultBuilder.createInfoResult(CliStrings
- .format(CliStrings.DESCRIBE_MEMBER__MSG__NOT_FOUND, new Object[] {memberNameOrId}));
- }
- } catch (CacheClosedException e) {
-
- } catch (FunctionInvocationTargetException e) {
- result = ResultBuilder.createGemFireErrorResult(e.getMessage());
- } catch (Exception e) {
- result = ResultBuilder.createGemFireErrorResult(e.getMessage());
- }
- return result;
- }
-
-}
http://git-wip-us.apache.org/repos/asf/geode/blob/33870085/geode-core/src/main/java/org/apache/geode/management/internal/web/controllers/MemberCommandsController.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/web/controllers/MemberCommandsController.java b/geode-core/src/main/java/org/apache/geode/management/internal/web/controllers/MemberCommandsController.java
index 66e82ee..ba5c788 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/web/controllers/MemberCommandsController.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/web/controllers/MemberCommandsController.java
@@ -14,9 +14,6 @@
*/
package org.apache.geode.management.internal.web.controllers;
-import org.apache.geode.management.internal.cli.i18n.CliStrings;
-import org.apache.geode.management.internal.cli.util.CommandStringBuilder;
-
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -24,12 +21,16 @@ import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
+import org.apache.geode.management.internal.cli.i18n.CliStrings;
+import org.apache.geode.management.internal.cli.util.CommandStringBuilder;
+
/**
* The MemberCommandsController class implements GemFire Management REST API web service endpoints
* for the Gfsh Member Commands.
* <p/>
*
- * @see org.apache.geode.management.internal.cli.commands.MemberCommands
+ * @see org.apache.geode.management.internal.cli.commands.ListMemberCommand
+ * @see org.apache.geode.management.internal.cli.commands.DescribeMemberCommand
* @see org.apache.geode.management.internal.web.controllers.AbstractCommandsController
* @see org.springframework.stereotype.Controller
* @see org.springframework.web.bind.annotation.PathVariable
@@ -46,25 +47,12 @@ public class MemberCommandsController extends AbstractCommandsController {
@RequestMapping(method = RequestMethod.GET, value = "/members")
@ResponseBody
- // public String listMembers(@RequestBody MultiValueMap<String, String> requestParameters) {
- // public String listMembers(@RequestParam(value = "group", required = false) final String
- // groupName,
- // @RequestParam(value = "group", required = false) final String[] groupNames) {
public String listMembers(
@RequestParam(value = CliStrings.GROUP, required = false) final String groupName) {
CommandStringBuilder command = new CommandStringBuilder(CliStrings.LIST_MEMBER);
-
- // logger.info(String.format("Request Body: %1$s", requestParameters));
- // logger.info(String.format("Request Parameter (group): %1$s", groupName));
- // logger.info(String.format("Request Parameter (group) as array: %1$s",
- // ArrayUtils.toString(groupNames)));
-
- // final String groupName = requestParameters.getFirst("group");
-
if (hasValue(groupName)) {
command.addOption(CliStrings.GROUP, groupName);
}
-
return processCommand(command.toString());
}
@@ -75,5 +63,4 @@ public class MemberCommandsController extends AbstractCommandsController {
command.addOption(CliStrings.DESCRIBE_MEMBER__IDENTIFIER, decode(memberNameId));
return processCommand(command.toString());
}
-
}
http://git-wip-us.apache.org/repos/asf/geode/blob/33870085/geode-core/src/test/java/org/apache/geode/management/internal/security/TestCommand.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/management/internal/security/TestCommand.java b/geode-core/src/test/java/org/apache/geode/management/internal/security/TestCommand.java
index f380d88..3456e8c 100644
--- a/geode-core/src/test/java/org/apache/geode/management/internal/security/TestCommand.java
+++ b/geode-core/src/test/java/org/apache/geode/management/internal/security/TestCommand.java
@@ -216,7 +216,7 @@ public class TestCommand {
// createTestCommand("stop locator --name=locator1", clusterManage);
// createTestCommand("stop server --name=server1", clusterManage);
- // MemberCommands
+ // DescribeMemberCommand, ListMemberCommand
createTestCommand("describe member --name=server1", clusterRead);
createTestCommand("list members", clusterRead);