You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by je...@apache.org on 2018/11/04 04:04:06 UTC
[geode] branch develop updated: GEODE-5971: Refactor gateway
receiver/gateway sender commands to extend SingleGfshCommand base type
(#2769)
This is an automated email from the ASF dual-hosted git repository.
jensdeppe pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/geode.git
The following commit(s) were added to refs/heads/develop by this push:
new 2b4313a GEODE-5971: Refactor gateway receiver/gateway sender commands to extend SingleGfshCommand base type (#2769)
2b4313a is described below
commit 2b4313aff2d418d73814f966fc8d207706cec6a0
Author: Aditya Anchuri <aa...@pivotal.io>
AuthorDate: Sat Nov 3 21:03:51 2018 -0700
GEODE-5971: Refactor gateway receiver/gateway sender commands to extend SingleGfshCommand base type (#2769)
* GEODE-5971 Refactor gateway receiver/gateway sender commands to extend SingleGfshCommand base type
Signed-off-by: Aditya Anchuri <aa...@pivotal.io>
---
.../geode/cache/configuration/CacheConfig.java | 6 +-
.../apache/geode/management/cli/GfshCommand.java | 5 +
.../geode/management/cli/SingleGfshCommand.java | 4 +-
.../cli/commands/CreateGatewaySenderCommand.java | 101 ++++++++++++++++-----
.../cli/commands/DestroyGatewaySenderCommand.java | 36 +++-----
.../cli/commands/GatewayCommandsUtils.java | 29 ------
.../commands/LoadBalanceGatewaySenderCommand.java | 79 ++++++++--------
.../cli/commands/PauseGatewaySenderCommand.java | 34 +++----
.../cli/commands/ResumeGatewaySenderCommand.java | 36 ++++----
.../cli/commands/StartGatewayReceiverCommand.java | 32 +++----
.../cli/commands/StartGatewaySenderCommand.java | 32 +++----
.../cli/commands/StatusGatewayReceiverCommand.java | 43 ++++-----
.../cli/commands/StatusGatewaySenderCommand.java | 40 ++++----
.../cli/commands/StopGatewayReceiverCommand.java | 32 +++----
.../cli/commands/StopGatewaySenderCommand.java | 29 +++---
.../functions/GatewayReceiverCreateFunction.java | 5 +-
.../cli/functions/GatewaySenderCreateFunction.java | 15 ++-
.../cli/functions/GatewaySenderFunctionArgs.java | 76 +++++++++-------
.../cli/result/model/TabularResultModel.java | 8 ++
.../sanctioned-geode-core-serializables.txt | 2 +-
.../commands/CreateGatewaySenderCommandTest.java | 84 ++++++++++-------
.../commands/DestroyGatewaySenderCommandTest.java | 72 +++++----------
...CreateDestroyGatewaySenderCommandDUnitTest.java | 31 ++++---
.../DestroyGatewaySenderCommandDUnitTest.java | 8 +-
.../PauseGatewaySenderCommandDUnitTest.java | 35 +++----
.../ResumeGatewaySenderCommandDUnitTest.java | 35 +++----
.../StartGatewayReceiverCommandDUnitTest.java | 36 ++++----
.../StartGatewaySenderCommandDUnitTest.java | 52 +++++------
.../StatusGatewayReceiverCommandDUnitTest.java | 70 +++++++-------
.../StatusGatewaySenderCommandDUnitTest.java | 93 +++++++++----------
.../StopGatewayReceiverCommandDUnitTest.java | 35 +++----
.../StopGatewaySenderCommandDUnitTest.java | 36 ++++----
32 files changed, 612 insertions(+), 619 deletions(-)
diff --git a/geode-core/src/main/java/org/apache/geode/cache/configuration/CacheConfig.java b/geode-core/src/main/java/org/apache/geode/cache/configuration/CacheConfig.java
index 899de35..285184f 100644
--- a/geode-core/src/main/java/org/apache/geode/cache/configuration/CacheConfig.java
+++ b/geode-core/src/main/java/org/apache/geode/cache/configuration/CacheConfig.java
@@ -437,7 +437,7 @@ public class CacheConfig {
*/
public List<CacheConfig.GatewaySender> getGatewaySenders() {
if (gatewaySenders == null) {
- gatewaySenders = new ArrayList<CacheConfig.GatewaySender>();
+ gatewaySenders = new ArrayList<>();
}
return this.gatewaySenders;
}
@@ -2870,7 +2870,7 @@ public class CacheConfig {
*/
public List<DeclarableType> getGatewayEventFilters() {
if (gatewayEventFilters == null) {
- gatewayEventFilters = new ArrayList<DeclarableType>();
+ gatewayEventFilters = new ArrayList<>();
}
return this.gatewayEventFilters;
}
@@ -2922,7 +2922,7 @@ public class CacheConfig {
*/
public List<DeclarableType> getGatewayTransportFilters() {
if (gatewayTransportFilters == null) {
- gatewayTransportFilters = new ArrayList<DeclarableType>();
+ gatewayTransportFilters = new ArrayList<>();
}
return this.gatewayTransportFilters;
}
diff --git a/geode-core/src/main/java/org/apache/geode/management/cli/GfshCommand.java b/geode-core/src/main/java/org/apache/geode/management/cli/GfshCommand.java
index 71565a2..c3f0665 100644
--- a/geode-core/src/main/java/org/apache/geode/management/cli/GfshCommand.java
+++ b/geode-core/src/main/java/org/apache/geode/management/cli/GfshCommand.java
@@ -32,6 +32,7 @@ import org.apache.geode.distributed.DistributedMember;
import org.apache.geode.distributed.internal.InternalLocator;
import org.apache.geode.internal.Version;
import org.apache.geode.internal.cache.InternalCache;
+import org.apache.geode.management.ManagementService;
import org.apache.geode.management.internal.cli.CliUtil;
import org.apache.geode.management.internal.cli.exceptions.EntityNotFoundException;
import org.apache.geode.management.internal.cli.functions.CliFunctionResult;
@@ -78,6 +79,10 @@ public abstract class GfshCommand implements CommandMarker {
return cache;
}
+ public <T extends ManagementService> T getManagementService() {
+ return (T) ManagementService.getExistingManagementService(cache);
+ }
+
public ConfigurationPersistenceService getConfigurationPersistenceService() {
InternalLocator locator = InternalLocator.getLocator();
return locator == null ? null : locator.getConfigurationPersistenceService();
diff --git a/geode-core/src/main/java/org/apache/geode/management/cli/SingleGfshCommand.java b/geode-core/src/main/java/org/apache/geode/management/cli/SingleGfshCommand.java
index ef5c1bc..edcf3e9 100644
--- a/geode-core/src/main/java/org/apache/geode/management/cli/SingleGfshCommand.java
+++ b/geode-core/src/main/java/org/apache/geode/management/cli/SingleGfshCommand.java
@@ -41,5 +41,7 @@ public abstract class SingleGfshCommand extends GfshCommand {
*
* it should throw some RuntimeException if update failed.
*/
- public abstract void updateClusterConfig(String group, CacheConfig config, Object configObject);
+ public void updateClusterConfig(String group, CacheConfig config, Object configObject) {
+ // Default is a no-op
+ }
}
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/CreateGatewaySenderCommand.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/CreateGatewaySenderCommand.java
index c428574..078054a 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/CreateGatewaySenderCommand.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/CreateGatewaySenderCommand.java
@@ -15,39 +15,43 @@
package org.apache.geode.management.internal.cli.commands;
+import java.util.Arrays;
import java.util.List;
+import java.util.Optional;
import java.util.Set;
+import java.util.stream.Collectors;
import org.springframework.shell.core.annotation.CliCommand;
import org.springframework.shell.core.annotation.CliOption;
+import org.apache.geode.cache.configuration.CacheConfig;
+import org.apache.geode.cache.configuration.DeclarableType;
import org.apache.geode.cache.wan.GatewaySender.OrderPolicy;
import org.apache.geode.distributed.DistributedMember;
-import org.apache.geode.distributed.internal.InternalConfigurationPersistenceService;
import org.apache.geode.distributed.internal.membership.InternalDistributedMember;
import org.apache.geode.internal.Version;
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.cli.SingleGfshCommand;
import org.apache.geode.management.internal.cli.AbstractCliAroundInterceptor;
import org.apache.geode.management.internal.cli.GfshParseResult;
import org.apache.geode.management.internal.cli.functions.CliFunctionResult;
import org.apache.geode.management.internal.cli.functions.GatewaySenderCreateFunction;
import org.apache.geode.management.internal.cli.functions.GatewaySenderFunctionArgs;
import org.apache.geode.management.internal.cli.i18n.CliStrings;
-import org.apache.geode.management.internal.cli.result.CommandResult;
import org.apache.geode.management.internal.cli.result.ResultBuilder;
-import org.apache.geode.management.internal.configuration.domain.XmlEntity;
+import org.apache.geode.management.internal.cli.result.model.ResultModel;
import org.apache.geode.management.internal.security.ResourceOperation;
import org.apache.geode.security.ResourcePermission;
-public class CreateGatewaySenderCommand extends InternalGfshCommand {
+public class CreateGatewaySenderCommand extends SingleGfshCommand {
@CliCommand(value = CliStrings.CREATE_GATEWAYSENDER, help = CliStrings.CREATE_GATEWAYSENDER__HELP)
@CliMetaData(relatedTopic = CliStrings.TOPIC_GEODE_WAN,
interceptor = "org.apache.geode.management.internal.cli.commands.CreateGatewaySenderCommand$Interceptor")
@ResourceOperation(resource = ResourcePermission.Resource.CLUSTER,
operation = ResourcePermission.Operation.MANAGE, target = ResourcePermission.Target.GATEWAY)
- public Result createGatewaySender(@CliOption(key = {CliStrings.GROUP, CliStrings.GROUPS},
+ public ResultModel createGatewaySender(@CliOption(key = {CliStrings.GROUP, CliStrings.GROUPS},
optionContext = ConverterHint.MEMBERGROUP,
help = CliStrings.CREATE_GATEWAYSENDER__GROUP__HELP) String[] onGroups,
@@ -110,18 +114,20 @@ public class CreateGatewaySenderCommand extends InternalGfshCommand {
@CliOption(key = CliStrings.CREATE_GATEWAYSENDER__GATEWAYTRANSPORTFILTER,
help = CliStrings.CREATE_GATEWAYSENDER__GATEWAYTRANSPORTFILTER__HELP) String[] gatewayTransportFilter) {
- GatewaySenderFunctionArgs gatewaySenderFunctionArgs =
- new GatewaySenderFunctionArgs(id, remoteDistributedSystemId, parallel, manualStart,
+ CacheConfig.GatewaySender configuration =
+ buildConfiguration(id, remoteDistributedSystemId, parallel, manualStart,
socketBufferSize, socketReadTimeout, enableBatchConflation, batchSize,
batchTimeInterval, enablePersistence, diskStoreName, diskSynchronous, maxQueueMemory,
alertThreshold, dispatcherThreads, orderPolicy == null ? null : orderPolicy.name(),
gatewayEventFilters, gatewayTransportFilter);
+ GatewaySenderFunctionArgs gatewaySenderFunctionArgs =
+ new GatewaySenderFunctionArgs(configuration);
Set<DistributedMember> membersToCreateGatewaySenderOn = getMembers(onGroups, onMember);
// Don't allow sender to be created if all members are not the current version.
if (!verifyAllCurrentVersion(membersToCreateGatewaySenderOn)) {
- return ResultBuilder.createUserErrorResult(
+ return ResultModel.createError(
CliStrings.CREATE_GATEWAYSENDER__MSG__CAN_NOT_CREATE_DIFFERENT_VERSIONS);
}
@@ -129,24 +135,15 @@ public class CreateGatewaySenderCommand extends InternalGfshCommand {
executeAndGetFunctionResult(GatewaySenderCreateFunction.INSTANCE, gatewaySenderFunctionArgs,
membersToCreateGatewaySenderOn);
- CommandResult result = ResultBuilder.buildResult(gatewaySenderCreateResults);
- XmlEntity xmlEntity = findXmlEntity(gatewaySenderCreateResults);
-
- // no xml needs to be updated, simply return
- if (xmlEntity == null) {
- return result;
- }
+ ResultModel resultModel = ResultModel.createMemberStatusResult(gatewaySenderCreateResults);
+ resultModel.setConfigObject(configuration);
- // has xml but unable to persist to cluster config, need to print warning message and return
- if (onMember != null || getConfigurationPersistenceService() == null) {
- result.setCommandPersisted(false);
- return result;
- }
+ return resultModel;
+ }
- // update cluster config
- ((InternalConfigurationPersistenceService) getConfigurationPersistenceService())
- .addXmlEntity(xmlEntity, onGroups);
- return result;
+ @Override
+ public void updateClusterConfig(String group, CacheConfig config, Object configObject) {
+ config.getGatewaySenders().add((CacheConfig.GatewaySender) configObject);
}
private boolean verifyAllCurrentVersion(Set<DistributedMember> members) {
@@ -154,6 +151,62 @@ public class CreateGatewaySenderCommand extends InternalGfshCommand {
member -> ((InternalDistributedMember) member).getVersionObject().equals(Version.CURRENT));
}
+ private CacheConfig.GatewaySender buildConfiguration(String id, Integer remoteDSId,
+ Boolean parallel,
+ Boolean manualStart,
+ Integer socketBufferSize,
+ Integer socketReadTimeout,
+ Boolean enableBatchConflation,
+ Integer batchSize,
+ Integer batchTimeInterval,
+ Boolean enablePersistence,
+ String diskStoreName,
+ Boolean diskSynchronous,
+ Integer maxQueueMemory,
+ Integer alertThreshold,
+ Integer dispatcherThreads,
+ String orderPolicy,
+ String[] gatewayEventFilters,
+ String[] gatewayTransportFilters) {
+ CacheConfig.GatewaySender sender = new CacheConfig.GatewaySender();
+ sender.setId(id);
+ sender.setRemoteDistributedSystemId(int2string(remoteDSId));
+ sender.setParallel(parallel);
+ sender.setManualStart(manualStart);
+ sender.setSocketBufferSize(int2string(socketBufferSize));
+ sender.setSocketReadTimeout(int2string(socketReadTimeout));
+ sender.setEnableBatchConflation(enableBatchConflation);
+ sender.setBatchSize(int2string(batchSize));
+ sender.setBatchTimeInterval(int2string(batchTimeInterval));
+ sender.setEnablePersistence(enablePersistence);
+ sender.setDiskStoreName(diskStoreName);
+ sender.setDiskSynchronous(diskSynchronous);
+ sender.setMaximumQueueMemory(int2string(maxQueueMemory));
+ sender.setAlertThreshold(int2string(alertThreshold));
+ sender.setDispatcherThreads(int2string(dispatcherThreads));
+ sender.setOrderPolicy(orderPolicy);
+ if (gatewayEventFilters != null) {
+ sender.getGatewayEventFilters().addAll((stringsToDeclarableTypes(gatewayEventFilters)));
+ }
+ if (gatewayTransportFilters != null) {
+ sender.getGatewayTransportFilters().addAll(stringsToDeclarableTypes(gatewayTransportFilters));
+ }
+
+ return sender;
+ }
+
+ private List<DeclarableType> stringsToDeclarableTypes(String[] objects) {
+ return Arrays.stream(objects).map(fullyQualifiedClassName -> {
+ DeclarableType thisFilter = new DeclarableType();
+ thisFilter.setClassName(fullyQualifiedClassName);
+ return thisFilter;
+ }).collect(Collectors.toList());
+ }
+
+ private String int2string(Integer i) {
+ return Optional.ofNullable(i).map(in -> in.toString()).orElse(null);
+ }
+
public static class Interceptor extends AbstractCliAroundInterceptor {
@Override
public Result preExecution(GfshParseResult parseResult) {
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/DestroyGatewaySenderCommand.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/DestroyGatewaySenderCommand.java
index cc838f8..dd77207 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/DestroyGatewaySenderCommand.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/DestroyGatewaySenderCommand.java
@@ -22,23 +22,21 @@ import org.apache.logging.log4j.Logger;
import org.springframework.shell.core.annotation.CliCommand;
import org.springframework.shell.core.annotation.CliOption;
+import org.apache.geode.cache.configuration.CacheConfig;
import org.apache.geode.distributed.DistributedMember;
-import org.apache.geode.distributed.internal.InternalConfigurationPersistenceService;
import org.apache.geode.internal.logging.LogService;
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.cli.SingleGfshCommand;
import org.apache.geode.management.internal.cli.functions.CliFunctionResult;
import org.apache.geode.management.internal.cli.functions.GatewaySenderDestroyFunction;
import org.apache.geode.management.internal.cli.functions.GatewaySenderDestroyFunctionArgs;
import org.apache.geode.management.internal.cli.i18n.CliStrings;
-import org.apache.geode.management.internal.cli.result.CommandResult;
-import org.apache.geode.management.internal.cli.result.ResultBuilder;
-import org.apache.geode.management.internal.configuration.domain.XmlEntity;
+import org.apache.geode.management.internal.cli.result.model.ResultModel;
import org.apache.geode.management.internal.security.ResourceOperation;
import org.apache.geode.security.ResourcePermission;
-public class DestroyGatewaySenderCommand extends InternalGfshCommand {
+public class DestroyGatewaySenderCommand extends SingleGfshCommand {
private static final Logger logger = LogService.getLogger();
@CliCommand(value = CliStrings.DESTROY_GATEWAYSENDER,
@@ -46,7 +44,7 @@ public class DestroyGatewaySenderCommand extends InternalGfshCommand {
@CliMetaData(relatedTopic = CliStrings.TOPIC_GEODE_WAN)
@ResourceOperation(resource = ResourcePermission.Resource.CLUSTER,
operation = ResourcePermission.Operation.MANAGE, target = ResourcePermission.Target.GATEWAY)
- public Result destroyGatewaySender(
+ public ResultModel destroyGatewaySender(
@CliOption(key = {CliStrings.GROUP, CliStrings.GROUPS},
optionContext = ConverterHint.MEMBERGROUP,
help = CliStrings.DESTROY_GATEWAYSENDER__GROUP__HELP) String[] onGroups,
@@ -67,23 +65,13 @@ public class DestroyGatewaySenderCommand extends InternalGfshCommand {
List<CliFunctionResult> functionResults = executeAndGetFunctionResult(
GatewaySenderDestroyFunction.INSTANCE, gatewaySenderDestroyFunctionArgs, members);
- CommandResult result = ResultBuilder.buildResult(functionResults);
- XmlEntity xmlEntity = findXmlEntity(functionResults);
-
- // no xml needs to be updated, simply return
- if (xmlEntity == null) {
- return result;
- }
-
- // has xml but unable to persist to cluster config, need to print warning message and return
- if (onMember != null || getConfigurationPersistenceService() == null) {
- result.setCommandPersisted(false);
- return result;
- }
+ ResultModel resultModel = ResultModel.createMemberStatusResult(functionResults);
+ resultModel.setConfigObject(id);
+ return resultModel;
+ }
- // update cluster config
- ((InternalConfigurationPersistenceService) getConfigurationPersistenceService())
- .deleteXmlEntity(xmlEntity, onGroups);
- return result;
+ @Override
+ public void updateClusterConfig(String group, CacheConfig config, Object id) {
+ config.getGatewaySenders().removeIf((sender) -> sender.getId().equals(id));
}
}
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/GatewayCommandsUtils.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/GatewayCommandsUtils.java
deleted file mode 100644
index 2e317cb..0000000
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/GatewayCommandsUtils.java
+++ /dev/null
@@ -1,29 +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 org.apache.geode.management.internal.cli.result.TabularResultData;
-
-public class GatewayCommandsUtils {
- public static void accumulateStartResult(TabularResultData resultData, String member,
- String Status, String message) {
- if (member != null) {
- resultData.accumulate("Member", member);
- }
- resultData.accumulate("Result", Status);
- resultData.accumulate("Message", message);
- }
-}
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/LoadBalanceGatewaySenderCommand.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/LoadBalanceGatewaySenderCommand.java
index 647fac6..ccb33ab 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/LoadBalanceGatewaySenderCommand.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/LoadBalanceGatewaySenderCommand.java
@@ -27,68 +27,69 @@ import org.apache.geode.distributed.DistributedMember;
import org.apache.geode.management.GatewaySenderMXBean;
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.cli.SingleGfshCommand;
import org.apache.geode.management.internal.SystemManagementService;
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.cli.result.model.ResultModel;
+import org.apache.geode.management.internal.cli.result.model.TabularResultModel;
import org.apache.geode.management.internal.security.ResourceOperation;
import org.apache.geode.security.ResourcePermission;
-public class LoadBalanceGatewaySenderCommand extends InternalGfshCommand {
+public class LoadBalanceGatewaySenderCommand extends SingleGfshCommand {
@CliCommand(value = CliStrings.LOAD_BALANCE_GATEWAYSENDER,
help = CliStrings.LOAD_BALANCE_GATEWAYSENDER__HELP)
@CliMetaData(relatedTopic = CliStrings.TOPIC_GEODE_WAN)
@ResourceOperation(resource = ResourcePermission.Resource.CLUSTER,
operation = ResourcePermission.Operation.MANAGE, target = ResourcePermission.Target.GATEWAY)
- public Result loadBalanceGatewaySender(@CliOption(key = CliStrings.LOAD_BALANCE_GATEWAYSENDER__ID,
- mandatory = true, optionContext = ConverterHint.GATEWAY_SENDER_ID,
- help = CliStrings.LOAD_BALANCE_GATEWAYSENDER__ID__HELP) String senderId) {
+ public ResultModel loadBalanceGatewaySender(
+ @CliOption(key = CliStrings.LOAD_BALANCE_GATEWAYSENDER__ID,
+ mandatory = true, optionContext = ConverterHint.GATEWAY_SENDER_ID,
+ help = CliStrings.LOAD_BALANCE_GATEWAYSENDER__ID__HELP) String senderId) {
- Result result;
if (senderId != null) {
senderId = senderId.trim();
}
Cache cache = getCache();
- SystemManagementService service = (SystemManagementService) getManagementService();
- TabularResultData resultData = ResultBuilder.createTabularResultData();
- Set<DistributedMember> dsMembers = getAllNormalMembers();
+ SystemManagementService service = getManagementService();
+ Set<DistributedMember> dsMembers = getAllNormalMembers();
if (dsMembers.isEmpty()) {
- result = ResultBuilder.createInfoResult(CliStrings.GATEWAY_MSG_MEMBERS_NOT_FOUND);
- } else {
- boolean gatewaySenderExists = false;
- for (DistributedMember member : dsMembers) {
- GatewaySenderMXBean bean;
- if (cache.getDistributedSystem().getDistributedMember().getId().equals(member.getId())) {
- bean = service.getLocalGatewaySenderMXBean(senderId);
- } else {
- ObjectName objectName = service.getGatewaySenderMBeanName(member, senderId);
- bean = service.getMBeanProxy(objectName, GatewaySenderMXBean.class);
- }
- if (bean != null) {
- gatewaySenderExists = true;
- bean.rebalance();
- GatewayCommandsUtils.accumulateStartResult(resultData, member.getId(),
- CliStrings.GATEWAY_OK, CliStrings.format(
- CliStrings.GATEWAY_SENDER_0_IS_REBALANCED_ON_MEMBER_1, senderId, member.getId()));
- } else {
- GatewayCommandsUtils.accumulateStartResult(resultData, member.getId(),
- CliStrings.GATEWAY_ERROR,
- CliStrings.format(CliStrings.GATEWAY_SENDER_0_IS_NOT_AVAILABLE_ON_MEMBER_1, senderId,
- member.getId()));
- }
+ return ResultModel.createInfo(CliStrings.GATEWAY_MSG_MEMBERS_NOT_FOUND);
+ }
+
+ ResultModel resultModel = new ResultModel();
+ TabularResultModel resultData = resultModel.addTable(CliStrings.LOAD_BALANCE_GATEWAYSENDER);
+
+ boolean gatewaySenderExists = false;
+ for (DistributedMember member : dsMembers) {
+ GatewaySenderMXBean bean;
+ if (cache.getDistributedSystem().getDistributedMember().getId().equals(member.getId())) {
+ bean = service.getLocalGatewaySenderMXBean(senderId);
+ } else {
+ ObjectName objectName = service.getGatewaySenderMBeanName(member, senderId);
+ bean = service.getMBeanProxy(objectName, GatewaySenderMXBean.class);
}
- if (gatewaySenderExists) {
- result = ResultBuilder.buildResult(resultData);
+ if (bean != null) {
+ gatewaySenderExists = true;
+ bean.rebalance();
+ resultData.addMemberStatusResultRow(member.getId(),
+ CliStrings.GATEWAY_OK, CliStrings.format(
+ CliStrings.GATEWAY_SENDER_0_IS_REBALANCED_ON_MEMBER_1, senderId, member.getId()));
} else {
- result = ResultBuilder.createInfoResult(CliStrings.format(
- CliStrings.GATEWAY_SENDER_0_IS_NOT_FOUND_ON_ANY_MEMBER, new Object[] {senderId}));
+ resultData.addMemberStatusResultRow(member.getId(),
+ CliStrings.GATEWAY_ERROR,
+ CliStrings.format(CliStrings.GATEWAY_SENDER_0_IS_NOT_AVAILABLE_ON_MEMBER_1, senderId,
+ member.getId()));
}
}
- return result;
+ if (!gatewaySenderExists) {
+ return ResultModel.createInfo(CliStrings.format(
+ CliStrings.GATEWAY_SENDER_0_IS_NOT_FOUND_ON_ANY_MEMBER, new Object[] {senderId}));
+ }
+
+ return resultModel;
}
}
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/PauseGatewaySenderCommand.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/PauseGatewaySenderCommand.java
index 80e1f86..f7a5778 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/PauseGatewaySenderCommand.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/PauseGatewaySenderCommand.java
@@ -27,21 +27,21 @@ import org.apache.geode.distributed.DistributedMember;
import org.apache.geode.management.GatewaySenderMXBean;
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.cli.SingleGfshCommand;
import org.apache.geode.management.internal.SystemManagementService;
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.cli.result.model.ResultModel;
+import org.apache.geode.management.internal.cli.result.model.TabularResultModel;
import org.apache.geode.management.internal.security.ResourceOperation;
import org.apache.geode.security.ResourcePermission;
-public class PauseGatewaySenderCommand extends InternalGfshCommand {
+public class PauseGatewaySenderCommand extends SingleGfshCommand {
@CliCommand(value = CliStrings.PAUSE_GATEWAYSENDER, help = CliStrings.PAUSE_GATEWAYSENDER__HELP)
@CliMetaData(relatedTopic = CliStrings.TOPIC_GEODE_WAN)
@ResourceOperation(resource = ResourcePermission.Resource.CLUSTER,
operation = ResourcePermission.Operation.MANAGE, target = ResourcePermission.Target.GATEWAY)
- public Result pauseGatewaySender(@CliOption(key = CliStrings.PAUSE_GATEWAYSENDER__ID,
+ public ResultModel pauseGatewaySender(@CliOption(key = CliStrings.PAUSE_GATEWAYSENDER__ID,
mandatory = true, optionContext = ConverterHint.GATEWAY_SENDER_ID,
help = CliStrings.PAUSE_GATEWAYSENDER__ID__HELP) String senderId,
@@ -53,24 +53,21 @@ public class PauseGatewaySenderCommand extends InternalGfshCommand {
optionContext = ConverterHint.MEMBERIDNAME,
help = CliStrings.PAUSE_GATEWAYSENDER__MEMBER__HELP) String[] onMember) {
- Result result;
if (senderId != null) {
senderId = senderId.trim();
}
- Cache cache = getCache();
- SystemManagementService service = (SystemManagementService) getManagementService();
+ final Cache cache = getCache();
+ final SystemManagementService service = getManagementService();
GatewaySenderMXBean bean;
-
- TabularResultData resultData = ResultBuilder.createTabularResultData();
-
Set<DistributedMember> dsMembers = findMembers(onGroup, onMember);
-
if (dsMembers.isEmpty()) {
- return ResultBuilder.createUserErrorResult(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
+ return ResultModel.createError(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
}
+ ResultModel resultModel = new ResultModel();
+ TabularResultModel resultData = resultModel.addTable(CliStrings.PAUSE_GATEWAYSENDER);
for (DistributedMember member : dsMembers) {
if (cache.getDistributedSystem().getDistributedMember().getId().equals(member.getId())) {
bean = service.getLocalGatewaySenderMXBean(senderId);
@@ -81,31 +78,30 @@ public class PauseGatewaySenderCommand extends InternalGfshCommand {
if (bean != null) {
if (bean.isRunning()) {
if (bean.isPaused()) {
- GatewayCommandsUtils.accumulateStartResult(resultData, member.getId(),
+ resultData.addMemberStatusResultRow(member.getId(),
CliStrings.GATEWAY_ERROR,
CliStrings.format(CliStrings.GATEWAY_SENDER_0_IS_ALREADY_PAUSED_ON_MEMBER_1,
senderId, member.getId()));
} else {
bean.pause();
- GatewayCommandsUtils.accumulateStartResult(resultData, member.getId(),
+ resultData.addMemberStatusResultRow(member.getId(),
CliStrings.GATEWAY_OK, CliStrings.format(
CliStrings.GATEWAY_SENDER_0_IS_PAUSED_ON_MEMBER_1, senderId, member.getId()));
}
} else {
- GatewayCommandsUtils.accumulateStartResult(resultData, member.getId(),
+ resultData.addMemberStatusResultRow(member.getId(),
CliStrings.GATEWAY_ERROR,
CliStrings.format(CliStrings.GATEWAY_SENDER_0_IS_NOT_RUNNING_ON_MEMBER_1, senderId,
member.getId()));
}
} else {
- GatewayCommandsUtils.accumulateStartResult(resultData, member.getId(),
+ resultData.addMemberStatusResultRow(member.getId(),
CliStrings.GATEWAY_ERROR,
CliStrings.format(CliStrings.GATEWAY_SENDER_0_IS_NOT_AVAILABLE_ON_MEMBER_1, senderId,
member.getId()));
}
}
- result = ResultBuilder.buildResult(resultData);
- return result;
+ return resultModel;
}
}
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ResumeGatewaySenderCommand.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ResumeGatewaySenderCommand.java
index 3203eab..41c13c3 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ResumeGatewaySenderCommand.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ResumeGatewaySenderCommand.java
@@ -27,21 +27,21 @@ import org.apache.geode.distributed.DistributedMember;
import org.apache.geode.management.GatewaySenderMXBean;
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.cli.SingleGfshCommand;
import org.apache.geode.management.internal.SystemManagementService;
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.cli.result.model.ResultModel;
+import org.apache.geode.management.internal.cli.result.model.TabularResultModel;
import org.apache.geode.management.internal.security.ResourceOperation;
import org.apache.geode.security.ResourcePermission;
-public class ResumeGatewaySenderCommand extends InternalGfshCommand {
+public class ResumeGatewaySenderCommand extends SingleGfshCommand {
@CliCommand(value = CliStrings.RESUME_GATEWAYSENDER, help = CliStrings.RESUME_GATEWAYSENDER__HELP)
@CliMetaData(relatedTopic = CliStrings.TOPIC_GEODE_WAN)
@ResourceOperation(resource = ResourcePermission.Resource.CLUSTER,
operation = ResourcePermission.Operation.MANAGE, target = ResourcePermission.Target.GATEWAY)
- public Result resumeGatewaySender(@CliOption(key = CliStrings.RESUME_GATEWAYSENDER__ID,
+ public ResultModel resumeGatewaySender(@CliOption(key = CliStrings.RESUME_GATEWAYSENDER__ID,
mandatory = true, optionContext = ConverterHint.GATEWAY_SENDER_ID,
help = CliStrings.RESUME_GATEWAYSENDER__ID__HELP) String senderId,
@@ -52,24 +52,21 @@ public class ResumeGatewaySenderCommand extends InternalGfshCommand {
optionContext = ConverterHint.MEMBERIDNAME,
help = CliStrings.RESUME_GATEWAYSENDER__MEMBER__HELP) String[] onMember) {
- Result result;
if (senderId != null) {
senderId = senderId.trim();
}
- Cache cache = getCache();
- SystemManagementService service = (SystemManagementService) getManagementService();
-
- GatewaySenderMXBean bean;
-
- TabularResultData resultData = ResultBuilder.createTabularResultData();
+ final Cache cache = getCache();
+ final SystemManagementService service = getManagementService();
Set<DistributedMember> dsMembers = findMembers(onGroup, onMember);
-
if (dsMembers.isEmpty()) {
- return ResultBuilder.createUserErrorResult(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
+ return ResultModel.createError(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
}
+ GatewaySenderMXBean bean;
+ ResultModel resultModel = new ResultModel();
+ TabularResultModel resultData = resultModel.addTable(CliStrings.RESUME_GATEWAYSENDER);
for (DistributedMember member : dsMembers) {
if (cache.getDistributedSystem().getDistributedMember().getId().equals(member.getId())) {
bean = service.getLocalGatewaySenderMXBean(senderId);
@@ -81,30 +78,29 @@ public class ResumeGatewaySenderCommand extends InternalGfshCommand {
if (bean.isRunning()) {
if (bean.isPaused()) {
bean.resume();
- GatewayCommandsUtils.accumulateStartResult(resultData, member.getId(),
+ resultData.addMemberStatusResultRow(member.getId(),
CliStrings.GATEWAY_OK, CliStrings.format(
CliStrings.GATEWAY_SENDER_0_IS_RESUMED_ON_MEMBER_1, senderId, member.getId()));
} else {
- GatewayCommandsUtils.accumulateStartResult(resultData, member.getId(),
+ resultData.addMemberStatusResultRow(member.getId(),
CliStrings.GATEWAY_ERROR,
CliStrings.format(CliStrings.GATEWAY_SENDER_0_IS_NOT_PAUSED_ON_MEMBER_1, senderId,
member.getId()));
}
} else {
- GatewayCommandsUtils.accumulateStartResult(resultData, member.getId(),
+ resultData.addMemberStatusResultRow(member.getId(),
CliStrings.GATEWAY_ERROR,
CliStrings.format(CliStrings.GATEWAY_SENDER_0_IS_NOT_RUNNING_ON_MEMBER_1, senderId,
member.getId()));
}
} else {
- GatewayCommandsUtils.accumulateStartResult(resultData, member.getId(),
+ resultData.addMemberStatusResultRow(member.getId(),
CliStrings.GATEWAY_ERROR,
CliStrings.format(CliStrings.GATEWAY_SENDER_0_IS_NOT_AVAILABLE_ON_MEMBER_1, senderId,
member.getId()));
}
}
- result = ResultBuilder.buildResult(resultData);
- return result;
+ return resultModel;
}
}
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/StartGatewayReceiverCommand.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/StartGatewayReceiverCommand.java
index abf6e04..73936b4 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/StartGatewayReceiverCommand.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/StartGatewayReceiverCommand.java
@@ -26,23 +26,23 @@ import org.apache.geode.distributed.DistributedMember;
import org.apache.geode.management.GatewayReceiverMXBean;
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.cli.SingleGfshCommand;
import org.apache.geode.management.internal.MBeanJMXAdapter;
import org.apache.geode.management.internal.SystemManagementService;
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.cli.result.model.ResultModel;
+import org.apache.geode.management.internal.cli.result.model.TabularResultModel;
import org.apache.geode.management.internal.security.ResourceOperation;
import org.apache.geode.security.ResourcePermission;
-public class StartGatewayReceiverCommand extends InternalGfshCommand {
+public class StartGatewayReceiverCommand extends SingleGfshCommand {
@CliCommand(value = CliStrings.START_GATEWAYRECEIVER,
help = CliStrings.START_GATEWAYRECEIVER__HELP)
@CliMetaData(relatedTopic = CliStrings.TOPIC_GEODE_WAN)
@ResourceOperation(resource = ResourcePermission.Resource.CLUSTER,
operation = ResourcePermission.Operation.MANAGE, target = ResourcePermission.Target.GATEWAY)
- public Result startGatewayReceiver(@CliOption(key = {CliStrings.GROUP, CliStrings.GROUPS},
+ public ResultModel startGatewayReceiver(@CliOption(key = {CliStrings.GROUP, CliStrings.GROUPS},
optionContext = ConverterHint.MEMBERGROUP,
help = CliStrings.START_GATEWAYRECEIVER__GROUP__HELP) String[] onGroup,
@@ -50,20 +50,17 @@ public class StartGatewayReceiverCommand extends InternalGfshCommand {
optionContext = ConverterHint.MEMBERIDNAME,
help = CliStrings.START_GATEWAYRECEIVER__MEMBER__HELP) String[] onMember)
throws Exception {
- Result result;
-
- SystemManagementService service = (SystemManagementService) getManagementService();
+ SystemManagementService service = getManagementService();
GatewayReceiverMXBean receiverBean;
-
- TabularResultData resultData = ResultBuilder.createTabularResultData();
-
Set<DistributedMember> dsMembers = findMembers(onGroup, onMember);
if (dsMembers.isEmpty()) {
- return ResultBuilder.createUserErrorResult(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
+ return ResultModel.createError(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
}
+ ResultModel resultModel = new ResultModel();
+ TabularResultModel resultData = resultModel.addTable(CliStrings.START_GATEWAYRECEIVER);
for (DistributedMember member : dsMembers) {
ObjectName gatewayReceiverObjectName = MBeanJMXAdapter.getGatewayReceiverMBeanName(member);
@@ -72,32 +69,31 @@ public class StartGatewayReceiverCommand extends InternalGfshCommand {
service.getMBeanProxy(gatewayReceiverObjectName, GatewayReceiverMXBean.class);
if (receiverBean != null) {
if (receiverBean.isRunning()) {
- GatewayCommandsUtils.accumulateStartResult(resultData, member.getId(),
+ resultData.addMemberStatusResultRow(member.getId(),
CliStrings.GATEWAY_ERROR,
CliStrings.format(CliStrings.GATEWAY_RECEIVER_IS_ALREADY_STARTED_ON_MEMBER_0,
new Object[] {member.getId()}));
} else {
receiverBean.start();
- GatewayCommandsUtils.accumulateStartResult(resultData, member.getId(),
+ resultData.addMemberStatusResultRow(member.getId(),
CliStrings.GATEWAY_OK,
CliStrings.format(CliStrings.GATEWAY_RECEIVER_IS_STARTED_ON_MEMBER_0,
new Object[] {member.getId()}));
}
} else {
- GatewayCommandsUtils.accumulateStartResult(resultData, member.getId(),
+ resultData.addMemberStatusResultRow(member.getId(),
CliStrings.GATEWAY_ERROR,
CliStrings.format(CliStrings.GATEWAY_RECEIVER_IS_NOT_AVAILABLE_ON_MEMBER_0,
new Object[] {member.getId()}));
}
} else {
- GatewayCommandsUtils.accumulateStartResult(resultData, member.getId(),
+ resultData.addMemberStatusResultRow(member.getId(),
CliStrings.GATEWAY_ERROR,
CliStrings.format(CliStrings.GATEWAY_RECEIVER_IS_NOT_AVAILABLE_ON_MEMBER_0,
new Object[] {member.getId()}));
}
}
- result = ResultBuilder.buildResult(resultData);
- return result;
+ return resultModel;
}
}
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/StartGatewaySenderCommand.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/StartGatewaySenderCommand.java
index a3c466f..f8923bf 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/StartGatewaySenderCommand.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/StartGatewaySenderCommand.java
@@ -35,21 +35,21 @@ import org.apache.geode.internal.logging.LoggingExecutors;
import org.apache.geode.management.GatewaySenderMXBean;
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.cli.SingleGfshCommand;
import org.apache.geode.management.internal.SystemManagementService;
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.cli.result.model.ResultModel;
+import org.apache.geode.management.internal.cli.result.model.TabularResultModel;
import org.apache.geode.management.internal.security.ResourceOperation;
import org.apache.geode.security.ResourcePermission;
-public class StartGatewaySenderCommand extends InternalGfshCommand {
+public class StartGatewaySenderCommand extends SingleGfshCommand {
@CliCommand(value = CliStrings.START_GATEWAYSENDER, help = CliStrings.START_GATEWAYSENDER__HELP)
@CliMetaData(relatedTopic = CliStrings.TOPIC_GEODE_WAN)
@ResourceOperation(resource = ResourcePermission.Resource.CLUSTER,
operation = ResourcePermission.Operation.MANAGE, target = ResourcePermission.Target.GATEWAY)
- public Result startGatewaySender(@CliOption(key = CliStrings.START_GATEWAYSENDER__ID,
+ public ResultModel startGatewaySender(@CliOption(key = CliStrings.START_GATEWAYSENDER__ID,
mandatory = true, optionContext = ConverterHint.GATEWAY_SENDER_ID,
help = CliStrings.START_GATEWAYSENDER__ID__HELP) String senderId,
@@ -61,18 +61,15 @@ public class StartGatewaySenderCommand extends InternalGfshCommand {
optionContext = ConverterHint.MEMBERIDNAME,
help = CliStrings.START_GATEWAYSENDER__MEMBER__HELP) String[] onMember) {
- Result result;
final String id = senderId.trim();
final Cache cache = getCache();
- final SystemManagementService service = (SystemManagementService) getManagementService();
-
- TabularResultData resultData = ResultBuilder.createTabularResultData();
+ final SystemManagementService service = getManagementService();
Set<DistributedMember> dsMembers = findMembers(onGroup, onMember);
if (dsMembers.isEmpty()) {
- return ResultBuilder.createUserErrorResult(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
+ return ResultModel.createError(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
}
ExecutorService execService =
@@ -117,33 +114,36 @@ public class StartGatewaySenderCommand extends InternalGfshCommand {
}
Iterator<DistributedMember> memberIterator = dsMembers.iterator();
- List<Future<List>> futures = null;
+ List<Future<List>> futures;
try {
futures = execService.invokeAll(callables);
} catch (InterruptedException ite) {
- GatewayCommandsUtils.accumulateStartResult(resultData, null, CliStrings.GATEWAY_ERROR,
+ return ResultModel.createError(
CliStrings.format(CliStrings.GATEWAY_SENDER_0_COULD_NOT_BE_INVOKED_DUE_TO_1, id,
ite.getMessage()));
+ } finally {
+ execService.shutdown();
}
+ ResultModel resultModel = new ResultModel();
+ TabularResultModel resultData = resultModel.addTable(CliStrings.START_GATEWAYSENDER);
for (Future<List> future : futures) {
DistributedMember member = memberIterator.next();
List<String> memberStatus;
try {
memberStatus = future.get();
- GatewayCommandsUtils.accumulateStartResult(resultData, memberStatus.get(0),
+ resultData.addMemberStatusResultRow(memberStatus.get(0),
memberStatus.get(1), memberStatus.get(2));
} catch (InterruptedException | ExecutionException ite) {
- GatewayCommandsUtils.accumulateStartResult(resultData, member.getId(),
+ resultData.addMemberStatusResultRow(member.getId(),
CliStrings.GATEWAY_ERROR,
CliStrings.format(CliStrings.GATEWAY_SENDER_0_COULD_NOT_BE_STARTED_ON_MEMBER_DUE_TO_1,
id, ite.getMessage()));
}
}
execService.shutdown();
- result = ResultBuilder.buildResult(resultData);
- return result;
+ return resultModel;
}
}
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/StatusGatewayReceiverCommand.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/StatusGatewayReceiverCommand.java
index 892b121..aea698f 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/StatusGatewayReceiverCommand.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/StatusGatewayReceiverCommand.java
@@ -26,23 +26,22 @@ import org.apache.geode.distributed.DistributedMember;
import org.apache.geode.management.GatewayReceiverMXBean;
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.cli.SingleGfshCommand;
import org.apache.geode.management.internal.MBeanJMXAdapter;
import org.apache.geode.management.internal.SystemManagementService;
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.cli.result.TabularResultData;
+import org.apache.geode.management.internal.cli.result.model.ResultModel;
+import org.apache.geode.management.internal.cli.result.model.TabularResultModel;
import org.apache.geode.management.internal.security.ResourceOperation;
import org.apache.geode.security.ResourcePermission;
-public class StatusGatewayReceiverCommand extends InternalGfshCommand {
+public class StatusGatewayReceiverCommand extends SingleGfshCommand {
@CliCommand(value = CliStrings.STATUS_GATEWAYRECEIVER,
help = CliStrings.STATUS_GATEWAYRECEIVER__HELP)
@CliMetaData(relatedTopic = CliStrings.TOPIC_GEODE_WAN)
@ResourceOperation(resource = ResourcePermission.Resource.CLUSTER,
operation = ResourcePermission.Operation.READ)
- public Result statusGatewayReceiver(@CliOption(key = {CliStrings.GROUP, CliStrings.GROUPS},
+ public ResultModel statusGatewayReceiver(@CliOption(key = {CliStrings.GROUP, CliStrings.GROUPS},
optionContext = ConverterHint.MEMBERGROUP,
help = CliStrings.STATUS_GATEWAYRECEIVER__GROUP__HELP) String[] onGroup,
@@ -50,25 +49,20 @@ public class StatusGatewayReceiverCommand extends InternalGfshCommand {
optionContext = ConverterHint.MEMBERIDNAME,
help = CliStrings.STATUS_GATEWAYRECEIVER__MEMBER__HELP) String[] onMember) {
- Result result;
-
- SystemManagementService service = (SystemManagementService) getManagementService();
-
- CompositeResultData crd = ResultBuilder.createCompositeResultData();
- TabularResultData availableReceiverData =
- crd.addSection(CliStrings.SECTION_GATEWAY_RECEIVER_AVAILABLE)
- .addTable(CliStrings.TABLE_GATEWAY_RECEIVER);
-
- TabularResultData notAvailableReceiverData =
- crd.addSection(CliStrings.SECTION_GATEWAY_RECEIVER_NOT_AVAILABLE)
- .addTable(CliStrings.TABLE_GATEWAY_RECEIVER);
+ SystemManagementService service = getManagementService();
Set<DistributedMember> dsMembers = findMembers(onGroup, onMember);
-
if (dsMembers.isEmpty()) {
- return ResultBuilder.createUserErrorResult(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
+ return ResultModel.createError(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
}
+ ResultModel crd = new ResultModel();
+ TabularResultModel availableReceiverData =
+ crd.addTable(CliStrings.SECTION_GATEWAY_RECEIVER_AVAILABLE);
+
+ TabularResultModel notAvailableReceiverData =
+ crd.addTable(CliStrings.SECTION_GATEWAY_RECEIVER_NOT_AVAILABLE);
+
for (DistributedMember member : dsMembers) {
ObjectName gatewayReceiverObjectName = MBeanJMXAdapter.getGatewayReceiverMBeanName(member);
if (gatewayReceiverObjectName != null) {
@@ -81,16 +75,15 @@ public class StatusGatewayReceiverCommand extends InternalGfshCommand {
}
buildReceiverStatus(member.getId(), null, notAvailableReceiverData);
}
- result = ResultBuilder.buildResult(crd);
- return result;
+ return crd;
}
- private TabularResultData buildReceiverStatus(String memberId, GatewayReceiverMXBean bean,
- TabularResultData resultData) {
+ private TabularResultModel buildReceiverStatus(String memberId, GatewayReceiverMXBean bean,
+ TabularResultModel resultData) {
resultData.accumulate(CliStrings.RESULT_HOST_MEMBER, memberId);
if (bean != null) {
- resultData.accumulate(CliStrings.RESULT_PORT, bean.getPort());
+ resultData.accumulate(CliStrings.RESULT_PORT, Integer.toString(bean.getPort()));
resultData.accumulate(CliStrings.RESULT_STATUS,
bean.isRunning() ? CliStrings.GATEWAY_RUNNING : CliStrings.GATEWAY_NOT_RUNNING);
} else {
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/StatusGatewaySenderCommand.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/StatusGatewaySenderCommand.java
index 650bbe6..cb07ec3 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/StatusGatewaySenderCommand.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/StatusGatewaySenderCommand.java
@@ -27,21 +27,20 @@ import org.apache.geode.distributed.DistributedMember;
import org.apache.geode.management.GatewaySenderMXBean;
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.cli.SingleGfshCommand;
import org.apache.geode.management.internal.SystemManagementService;
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.cli.result.TabularResultData;
+import org.apache.geode.management.internal.cli.result.model.ResultModel;
+import org.apache.geode.management.internal.cli.result.model.TabularResultModel;
import org.apache.geode.management.internal.security.ResourceOperation;
import org.apache.geode.security.ResourcePermission;
-public class StatusGatewaySenderCommand extends InternalGfshCommand {
+public class StatusGatewaySenderCommand extends SingleGfshCommand {
@CliCommand(value = CliStrings.STATUS_GATEWAYSENDER, help = CliStrings.STATUS_GATEWAYSENDER__HELP)
@CliMetaData(relatedTopic = CliStrings.TOPIC_GEODE_WAN)
@ResourceOperation(resource = ResourcePermission.Resource.CLUSTER,
operation = ResourcePermission.Operation.READ)
- public Result statusGatewaySender(@CliOption(key = CliStrings.STATUS_GATEWAYSENDER__ID,
+ public ResultModel statusGatewaySender(@CliOption(key = CliStrings.STATUS_GATEWAYSENDER__ID,
mandatory = true, optionContext = ConverterHint.GATEWAY_SENDER_ID,
help = CliStrings.STATUS_GATEWAYSENDER__ID__HELP) String senderId,
@@ -53,31 +52,28 @@ public class StatusGatewaySenderCommand extends InternalGfshCommand {
optionContext = ConverterHint.MEMBERIDNAME,
help = CliStrings.STATUS_GATEWAYSENDER__MEMBER__HELP) String[] onMember) {
- Result result;
if (senderId != null) {
senderId = senderId.trim();
}
Cache cache = getCache();
- SystemManagementService service = (SystemManagementService) getManagementService();
+ SystemManagementService service = getManagementService();
GatewaySenderMXBean bean;
- CompositeResultData crd = ResultBuilder.createCompositeResultData();
- TabularResultData availableSenderData =
- crd.addSection(CliStrings.SECTION_GATEWAY_SENDER_AVAILABLE)
- .addTable(CliStrings.TABLE_GATEWAY_SENDER);
-
- TabularResultData notAvailableSenderData =
- crd.addSection(CliStrings.SECTION_GATEWAY_SENDER_NOT_AVAILABLE)
- .addTable(CliStrings.TABLE_GATEWAY_SENDER);
-
+ ResultModel crd = new ResultModel();
Set<DistributedMember> dsMembers = findMembers(onGroup, onMember);
if (dsMembers.isEmpty()) {
- return ResultBuilder.createUserErrorResult(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
+ return ResultModel.createError(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
}
+ TabularResultModel availableSenderData =
+ crd.addTable(CliStrings.SECTION_GATEWAY_SENDER_AVAILABLE);
+
+ TabularResultModel notAvailableSenderData =
+ crd.addTable(CliStrings.SECTION_GATEWAY_SENDER_NOT_AVAILABLE);
+
for (DistributedMember member : dsMembers) {
if (cache.getDistributedSystem().getDistributedMember().getId().equals(member.getId())) {
bean = service.getLocalGatewaySenderMXBean(senderId);
@@ -91,12 +87,12 @@ public class StatusGatewaySenderCommand extends InternalGfshCommand {
buildSenderStatus(member.getId(), bean, notAvailableSenderData);
}
}
- result = ResultBuilder.buildResult(crd);
- return result;
+
+ return crd;
}
- private TabularResultData buildSenderStatus(String memberId, GatewaySenderMXBean bean,
- TabularResultData resultData) {
+ private TabularResultModel buildSenderStatus(String memberId, GatewaySenderMXBean bean,
+ TabularResultModel resultData) {
resultData.accumulate(CliStrings.RESULT_HOST_MEMBER, memberId);
if (bean != null) {
resultData.accumulate(CliStrings.RESULT_TYPE,
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/StopGatewayReceiverCommand.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/StopGatewayReceiverCommand.java
index 7fb20aa..8c5a046 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/StopGatewayReceiverCommand.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/StopGatewayReceiverCommand.java
@@ -26,21 +26,21 @@ import org.apache.geode.distributed.DistributedMember;
import org.apache.geode.management.GatewayReceiverMXBean;
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.cli.SingleGfshCommand;
import org.apache.geode.management.internal.MBeanJMXAdapter;
import org.apache.geode.management.internal.SystemManagementService;
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.cli.result.model.ResultModel;
+import org.apache.geode.management.internal.cli.result.model.TabularResultModel;
import org.apache.geode.management.internal.security.ResourceOperation;
import org.apache.geode.security.ResourcePermission;
-public class StopGatewayReceiverCommand extends InternalGfshCommand {
+public class StopGatewayReceiverCommand extends SingleGfshCommand {
@CliCommand(value = CliStrings.STOP_GATEWAYRECEIVER, help = CliStrings.STOP_GATEWAYRECEIVER__HELP)
@CliMetaData(relatedTopic = CliStrings.TOPIC_GEODE_WAN)
@ResourceOperation(resource = ResourcePermission.Resource.CLUSTER,
operation = ResourcePermission.Operation.MANAGE, target = ResourcePermission.Target.GATEWAY)
- public Result stopGatewayReceiver(@CliOption(key = {CliStrings.GROUP, CliStrings.GROUPS},
+ public ResultModel stopGatewayReceiver(@CliOption(key = {CliStrings.GROUP, CliStrings.GROUPS},
optionContext = ConverterHint.MEMBERGROUP,
help = CliStrings.STOP_GATEWAYRECEIVER__GROUP__HELP) String[] onGroup,
@@ -49,20 +49,17 @@ public class StopGatewayReceiverCommand extends InternalGfshCommand {
help = CliStrings.STOP_GATEWAYRECEIVER__MEMBER__HELP) String[] onMember)
throws Exception {
- Result result;
-
- SystemManagementService service = (SystemManagementService) getManagementService();
+ SystemManagementService service = getManagementService();
GatewayReceiverMXBean receiverBean;
- TabularResultData resultData = ResultBuilder.createTabularResultData();
-
Set<DistributedMember> dsMembers = findMembers(onGroup, onMember);
-
if (dsMembers.isEmpty()) {
- return ResultBuilder.createUserErrorResult(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
+ return ResultModel.createError(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
}
+ ResultModel resultModel = new ResultModel();
+ TabularResultModel resultData = resultModel.addTable(CliStrings.STOP_GATEWAYRECEIVER);
for (DistributedMember member : dsMembers) {
ObjectName gatewayReceiverObjectName = MBeanJMXAdapter.getGatewayReceiverMBeanName(member);
@@ -72,31 +69,30 @@ public class StopGatewayReceiverCommand extends InternalGfshCommand {
if (receiverBean != null) {
if (receiverBean.isRunning()) {
receiverBean.stop();
- GatewayCommandsUtils.accumulateStartResult(resultData, member.getId(),
+ resultData.addMemberStatusResultRow(member.getId(),
CliStrings.GATEWAY_OK,
CliStrings.format(CliStrings.GATEWAY_RECEIVER_IS_STOPPED_ON_MEMBER_0,
new Object[] {member.getId()}));
} else {
- GatewayCommandsUtils.accumulateStartResult(resultData, member.getId(),
+ resultData.addMemberStatusResultRow(member.getId(),
CliStrings.GATEWAY_ERROR,
CliStrings.format(CliStrings.GATEWAY_RECEIVER_IS_NOT_RUNNING_ON_MEMBER_0,
new Object[] {member.getId()}));
}
} else {
- GatewayCommandsUtils.accumulateStartResult(resultData, member.getId(),
+ resultData.addMemberStatusResultRow(member.getId(),
CliStrings.GATEWAY_ERROR,
CliStrings.format(CliStrings.GATEWAY_RECEIVER_IS_NOT_AVAILABLE_ON_MEMBER_0,
new Object[] {member.getId()}));
}
} else {
- GatewayCommandsUtils.accumulateStartResult(resultData, member.getId(),
+ resultData.addMemberStatusResultRow(member.getId(),
CliStrings.GATEWAY_ERROR,
CliStrings.format(CliStrings.GATEWAY_RECEIVER_IS_NOT_AVAILABLE_ON_MEMBER_0,
new Object[] {member.getId()}));
}
}
- result = ResultBuilder.buildResult(resultData);
- return result;
+ return resultModel;
}
}
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/StopGatewaySenderCommand.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/StopGatewaySenderCommand.java
index f340e4e..6113933 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/StopGatewaySenderCommand.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/StopGatewaySenderCommand.java
@@ -27,21 +27,21 @@ import org.apache.geode.internal.cache.InternalCache;
import org.apache.geode.management.GatewaySenderMXBean;
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.cli.SingleGfshCommand;
import org.apache.geode.management.internal.SystemManagementService;
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.cli.result.model.ResultModel;
+import org.apache.geode.management.internal.cli.result.model.TabularResultModel;
import org.apache.geode.management.internal.security.ResourceOperation;
import org.apache.geode.security.ResourcePermission;
-public class StopGatewaySenderCommand extends InternalGfshCommand {
+public class StopGatewaySenderCommand extends SingleGfshCommand {
@CliCommand(value = CliStrings.STOP_GATEWAYSENDER, help = CliStrings.STOP_GATEWAYSENDER__HELP)
@CliMetaData(relatedTopic = CliStrings.TOPIC_GEODE_WAN)
@ResourceOperation(resource = ResourcePermission.Resource.CLUSTER,
operation = ResourcePermission.Operation.MANAGE, target = ResourcePermission.Target.GATEWAY)
- public Result stopGatewaySender(@CliOption(key = CliStrings.STOP_GATEWAYSENDER__ID,
+ public ResultModel stopGatewaySender(@CliOption(key = CliStrings.STOP_GATEWAYSENDER__ID,
mandatory = true, optionContext = ConverterHint.GATEWAY_SENDER_ID,
help = CliStrings.STOP_GATEWAYSENDER__ID__HELP) String senderId,
@@ -53,24 +53,22 @@ public class StopGatewaySenderCommand extends InternalGfshCommand {
optionContext = ConverterHint.MEMBERIDNAME,
help = CliStrings.STOP_GATEWAYSENDER__MEMBER__HELP) String[] onMember) {
- Result result;
if (senderId != null) {
senderId = senderId.trim();
}
InternalCache cache = (InternalCache) getCache();
- SystemManagementService service = (SystemManagementService) getManagementService();
+ SystemManagementService service = getManagementService();
GatewaySenderMXBean bean;
- TabularResultData resultData = ResultBuilder.createTabularResultData();
-
Set<DistributedMember> dsMembers = findMembers(onGroup, onMember);
-
if (dsMembers.isEmpty()) {
- return ResultBuilder.createUserErrorResult(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
+ return ResultModel.createError(CliStrings.NO_MEMBERS_FOUND_MESSAGE);
}
+ ResultModel resultModel = new ResultModel();
+ TabularResultModel resultData = resultModel.addTable(CliStrings.STOP_GATEWAYSENDER);
for (DistributedMember member : dsMembers) {
if (cache.getDistributedSystem().getDistributedMember().getId().equals(member.getId())) {
bean = service.getLocalGatewaySenderMXBean(senderId);
@@ -81,25 +79,24 @@ public class StopGatewaySenderCommand extends InternalGfshCommand {
if (bean != null) {
if (bean.isRunning()) {
bean.stop();
- GatewayCommandsUtils.accumulateStartResult(resultData, member.getId(),
+ resultData.addMemberStatusResultRow(member.getId(),
CliStrings.GATEWAY_OK, CliStrings.format(
CliStrings.GATEWAY_SENDER_0_IS_STOPPED_ON_MEMBER_1, senderId, member.getId()));
} else {
- GatewayCommandsUtils.accumulateStartResult(resultData, member.getId(),
+ resultData.addMemberStatusResultRow(member.getId(),
CliStrings.GATEWAY_ERROR,
CliStrings.format(CliStrings.GATEWAY_SENDER_0_IS_NOT_RUNNING_ON_MEMBER_1, senderId,
member.getId()));
}
} else {
- GatewayCommandsUtils.accumulateStartResult(resultData, member.getId(),
+ resultData.addMemberStatusResultRow(member.getId(),
CliStrings.GATEWAY_ERROR,
CliStrings.format(CliStrings.GATEWAY_SENDER_0_IS_NOT_AVAILABLE_ON_MEMBER_1, senderId,
member.getId()));
}
}
- result = ResultBuilder.buildResult(resultData);
- return result;
+ return resultModel;
}
}
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewayReceiverCreateFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewayReceiverCreateFunction.java
index 0a0a2e9..f37a46e 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewayReceiverCreateFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewayReceiverCreateFunction.java
@@ -60,7 +60,7 @@ public class GatewayReceiverCreateFunction implements InternalFunction {
if (gatewayReceiverExists(cache)) {
CliFunctionResult result;
if (gatewayReceiverCreateArgs.getIfNotExists()) {
- result = new CliFunctionResult(memberNameOrId, true,
+ result = new CliFunctionResult(memberNameOrId, CliFunctionResult.StatusState.OK,
"Skipping: " + A_GATEWAY_RECEIVER_ALREADY_EXISTS_ON_THIS_MEMBER);
} else {
Exception illegalState =
@@ -76,7 +76,8 @@ public class GatewayReceiverCreateFunction implements InternalFunction {
GatewayReceiver createdGatewayReceiver =
createGatewayReceiver(cache, gatewayReceiverCreateArgs);
- resultSender.lastResult(new CliFunctionResult(memberNameOrId, true,
+ resultSender.lastResult(new CliFunctionResult(memberNameOrId,
+ CliFunctionResult.StatusState.OK,
CliStrings.format(
CliStrings.CREATE_GATEWAYRECEIVER__MSG__GATEWAYRECEIVER_CREATED_ON_0_ONPORT_1,
memberNameOrId, Integer.toString(createdGatewayReceiver.getPort()))));
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewaySenderCreateFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewaySenderCreateFunction.java
index 9945da9..d1942fb 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewaySenderCreateFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewaySenderCreateFunction.java
@@ -14,6 +14,8 @@
*/
package org.apache.geode.management.internal.cli.functions;
+import java.util.List;
+
import org.apache.logging.log4j.Logger;
import org.apache.geode.cache.Cache;
@@ -26,10 +28,8 @@ import org.apache.geode.cache.wan.GatewaySenderFactory;
import org.apache.geode.cache.wan.GatewayTransportFilter;
import org.apache.geode.internal.ClassPathLoader;
import org.apache.geode.internal.cache.execute.InternalFunction;
-import org.apache.geode.internal.cache.xmlcache.CacheXml;
import org.apache.geode.internal.logging.LogService;
import org.apache.geode.management.internal.cli.i18n.CliStrings;
-import org.apache.geode.management.internal.configuration.domain.XmlEntity;
public class GatewaySenderCreateFunction implements InternalFunction {
@@ -54,10 +54,9 @@ public class GatewaySenderCreateFunction implements InternalFunction {
try {
GatewaySender createdGatewaySender = createGatewaySender(cache, gatewaySenderCreateArgs);
- XmlEntity xmlEntity =
- new XmlEntity(CacheXml.GATEWAY_SENDER, "id", gatewaySenderCreateArgs.getId());
- resultSender.lastResult(new CliFunctionResult(memberNameOrId, xmlEntity,
- CliStrings.format(CliStrings.CREATE_GATEWAYSENDER__MSG__GATEWAYSENDER_0_CREATED_ON_1,
+ resultSender.lastResult(new CliFunctionResult(memberNameOrId,
+ CliFunctionResult.StatusState.OK, CliStrings.format(
+ CliStrings.CREATE_GATEWAYSENDER__MSG__GATEWAYSENDER_0_CREATED_ON_1,
new Object[] {createdGatewaySender.getId(), memberNameOrId})));
} catch (Exception e) {
logger.error(e.getMessage(), e);
@@ -141,7 +140,7 @@ public class GatewaySenderCreateFunction implements InternalFunction {
gateway.setDiskSynchronous(isDiskSynchronous);
}
- String[] gatewayEventFilters = gatewaySenderCreateArgs.getGatewayEventFilter();
+ List<String> gatewayEventFilters = gatewaySenderCreateArgs.getGatewayEventFilter();
if (gatewayEventFilters != null) {
for (String gatewayEventFilter : gatewayEventFilters) {
Class gatewayEventFilterKlass =
@@ -151,7 +150,7 @@ public class GatewaySenderCreateFunction implements InternalFunction {
}
}
- String[] gatewayTransportFilters = gatewaySenderCreateArgs.getGatewayTransportFilter();
+ List<String> gatewayTransportFilters = gatewaySenderCreateArgs.getGatewayTransportFilter();
if (gatewayTransportFilters != null) {
for (String gatewayTransportFilter : gatewayTransportFilters) {
Class gatewayTransportFilterKlass = forName(gatewayTransportFilter,
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewaySenderFunctionArgs.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewaySenderFunctionArgs.java
index 0e4f635..3a59b82 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewaySenderFunctionArgs.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewaySenderFunctionArgs.java
@@ -15,10 +15,16 @@
package org.apache.geode.management.internal.cli.functions;
import java.io.Serializable;
+import java.util.List;
+import java.util.Optional;
+import java.util.stream.Collectors;
+
+import org.apache.geode.cache.configuration.CacheConfig;
+import org.apache.geode.cache.configuration.DeclarableType;
public class GatewaySenderFunctionArgs implements Serializable {
- private static final long serialVersionUID = -5158224572470173267L;
+ private static final long serialVersionUID = 4636678328980816780L;
private final String id;
private final Integer remoteDSId;
@@ -37,34 +43,42 @@ public class GatewaySenderFunctionArgs implements Serializable {
private final Integer dispatcherThreads;
private final String orderPolicy;
// array of fully qualified class names of the filters
- private final String[] gatewayEventFilters;
- private final String[] gatewayTransportFilters;
-
- public GatewaySenderFunctionArgs(String id, Integer remoteDSId, Boolean parallel,
- Boolean manualStart, Integer socketBufferSize, Integer socketReadTimeout,
- Boolean enableBatchConflation, Integer batchSize, Integer batchTimeInterval,
- Boolean enablePersistence, String diskStoreName, Boolean diskSynchronous,
- Integer maxQueueMemory, Integer alertThreshold, Integer dispatcherThreads, String orderPolicy,
- String[] gatewayEventFilters, String[] gatewayTransportFilters) {
-
- this.id = id;
- this.remoteDSId = remoteDSId;
- this.parallel = parallel;
- this.manualStart = manualStart;
- this.socketBufferSize = socketBufferSize;
- this.socketReadTimeout = socketReadTimeout;
- this.enableBatchConflation = enableBatchConflation;
- this.batchSize = batchSize;
- this.batchTimeInterval = batchTimeInterval;
- this.enablePersistence = enablePersistence;
- this.diskStoreName = diskStoreName;
- this.diskSynchronous = diskSynchronous;
- this.maxQueueMemory = maxQueueMemory;
- this.alertThreshold = alertThreshold;
- this.dispatcherThreads = dispatcherThreads;
- this.orderPolicy = orderPolicy;
- this.gatewayEventFilters = gatewayEventFilters;
- this.gatewayTransportFilters = gatewayTransportFilters;
+ private final List<String> gatewayEventFilters;
+ private final List<String> gatewayTransportFilters;
+
+ public GatewaySenderFunctionArgs(CacheConfig.GatewaySender sender) {
+ this.id = sender.getId();
+ this.remoteDSId = string2int(sender.getRemoteDistributedSystemId());
+ this.parallel = sender.isParallel();
+ this.manualStart = sender.isManualStart();
+ this.socketBufferSize = string2int(sender.getSocketBufferSize());
+ this.socketReadTimeout = string2int(sender.getSocketReadTimeout());
+ this.enableBatchConflation = sender.isEnableBatchConflation();
+ this.batchSize = string2int(sender.getBatchSize());
+ this.batchTimeInterval = string2int(sender.getBatchTimeInterval());
+ this.enablePersistence = sender.isEnablePersistence();
+ this.diskStoreName = sender.getDiskStoreName();
+ this.diskSynchronous = sender.isDiskSynchronous();
+ this.maxQueueMemory = string2int(sender.getMaximumQueueMemory());
+ this.alertThreshold = string2int(sender.getAlertThreshold());
+ this.dispatcherThreads = string2int(sender.getDispatcherThreads());
+ this.orderPolicy = sender.getOrderPolicy();
+ this.gatewayEventFilters =
+ Optional.of(sender.getGatewayEventFilters())
+ .map(filters -> filters
+ .stream().map(DeclarableType::getClassName)
+ .collect(Collectors.toList()))
+ .orElse(null);
+ this.gatewayTransportFilters =
+ Optional.of(sender.getGatewayTransportFilters())
+ .map(filters -> filters
+ .stream().map(DeclarableType::getClassName)
+ .collect(Collectors.toList()))
+ .orElse(null);
+ }
+
+ private Integer string2int(String x) {
+ return Optional.ofNullable(x).map(Integer::valueOf).orElse(null);
}
public String getId() {
@@ -131,11 +145,11 @@ public class GatewaySenderFunctionArgs implements Serializable {
return this.orderPolicy;
}
- public String[] getGatewayEventFilter() {
+ public List<String> getGatewayEventFilter() {
return this.gatewayEventFilters;
}
- public String[] getGatewayTransportFilter() {
+ public List<String> getGatewayTransportFilter() {
return this.gatewayTransportFilters;
}
}
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/result/model/TabularResultModel.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/result/model/TabularResultModel.java
index 9bd5fe5..47e2d19 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/result/model/TabularResultModel.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/result/model/TabularResultModel.java
@@ -43,6 +43,14 @@ public class TabularResultModel extends AbstractResultModel {
return this;
}
+ public void addMemberStatusResultRow(String member, String result, String message) {
+ if (member != null) {
+ accumulate("Member", member);
+ }
+ accumulate("Result", result);
+ accumulate("Message", message);
+ }
+
@Override
public Map<String, List<String>> getContent() {
return table;
diff --git a/geode-core/src/main/resources/org/apache/geode/internal/sanctioned-geode-core-serializables.txt b/geode-core/src/main/resources/org/apache/geode/internal/sanctioned-geode-core-serializables.txt
index e9874d0..6987220 100644
--- a/geode-core/src/main/resources/org/apache/geode/internal/sanctioned-geode-core-serializables.txt
+++ b/geode-core/src/main/resources/org/apache/geode/internal/sanctioned-geode-core-serializables.txt
@@ -561,7 +561,7 @@ org/apache/geode/management/internal/cli/functions/GatewayReceiverFunctionArgs,t
org/apache/geode/management/internal/cli/functions/GatewaySenderCreateFunction,true,8746830191680509335
org/apache/geode/management/internal/cli/functions/GatewaySenderDestroyFunction,true,1
org/apache/geode/management/internal/cli/functions/GatewaySenderDestroyFunctionArgs,true,3848480256348119530,id:java/lang/String,ifExists:boolean
-org/apache/geode/management/internal/cli/functions/GatewaySenderFunctionArgs,true,-5158224572470173267,alertThreshold:java/lang/Integer,batchSize:java/lang/Integer,batchTimeInterval:java/lang/Integer,diskStoreName:java/lang/String,diskSynchronous:java/lang/Boolean,dispatcherThreads:java/lang/Integer,enableBatchConflation:java/lang/Boolean,enablePersistence:java/lang/Boolean,gatewayEventFilters:java/lang/String[],gatewayTransportFilters:java/lang/String[],id:java/lang/String,manualStart:j [...]
+org/apache/geode/management/internal/cli/functions/GatewaySenderFunctionArgs,true,4636678328980816780,alertThreshold:java/lang/Integer,batchSize:java/lang/Integer,batchTimeInterval:java/lang/Integer,diskStoreName:java/lang/String,diskSynchronous:java/lang/Boolean,dispatcherThreads:java/lang/Integer,enableBatchConflation:java/lang/Boolean,enablePersistence:java/lang/Boolean,gatewayEventFilters:java/util/List,gatewayTransportFilters:java/util/List,id:java/lang/String,manualStart:java/lang/ [...]
org/apache/geode/management/internal/cli/functions/GetMemberConfigInformationFunction,true,1
org/apache/geode/management/internal/cli/functions/GetMemberInformationFunction,true,1
org/apache/geode/management/internal/cli/functions/GetRegionDescriptionFunction,true,1
diff --git a/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/CreateGatewaySenderCommandTest.java b/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/CreateGatewaySenderCommandTest.java
index c15ae97..8e0567a 100644
--- a/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/CreateGatewaySenderCommandTest.java
+++ b/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/CreateGatewaySenderCommandTest.java
@@ -19,7 +19,6 @@ import static org.assertj.core.api.Assertions.assertThat;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.never;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
@@ -32,15 +31,18 @@ import java.util.Set;
import org.junit.Before;
import org.junit.ClassRule;
import org.junit.Test;
+import org.mockito.ArgumentCaptor;
+import org.apache.geode.cache.configuration.CacheConfig;
+import org.apache.geode.cache.wan.GatewaySender;
import org.apache.geode.distributed.DistributedMember;
-import org.apache.geode.distributed.internal.InternalConfigurationPersistenceService;
import org.apache.geode.distributed.internal.membership.InternalDistributedMember;
import org.apache.geode.internal.Version;
import org.apache.geode.internal.cache.InternalCache;
import org.apache.geode.management.internal.cli.functions.CliFunctionResult;
+import org.apache.geode.management.internal.cli.functions.GatewaySenderFunctionArgs;
import org.apache.geode.management.internal.cli.i18n.CliStrings;
-import org.apache.geode.management.internal.configuration.domain.XmlEntity;
+import org.apache.geode.management.internal.cli.result.model.ResultModel;
import org.apache.geode.test.junit.rules.GfshParserRule;
@@ -51,21 +53,18 @@ public class CreateGatewaySenderCommandTest {
private CreateGatewaySenderCommand command;
private InternalCache cache;
private List<CliFunctionResult> functionResults;
- private InternalConfigurationPersistenceService ccService;
- private CliFunctionResult result1, result2;
- private XmlEntity xmlEntity;
+ private CliFunctionResult cliFunctionResult;
+ ArgumentCaptor<GatewaySenderFunctionArgs> argsArgumentCaptor =
+ ArgumentCaptor.forClass(GatewaySenderFunctionArgs.class);
@Before
public void before() {
command = spy(CreateGatewaySenderCommand.class);
- ccService = mock(InternalConfigurationPersistenceService.class);
- xmlEntity = mock(XmlEntity.class);
cache = mock(InternalCache.class);
doReturn(cache).when(command).getCache();
- doReturn(ccService).when(command).getConfigurationPersistenceService();
functionResults = new ArrayList<>();
- doReturn(functionResults).when(command).executeAndGetFunctionResult(any(), any(),
- any(Set.class));
+ doReturn(functionResults).when(command).executeAndGetFunctionResult(any(),
+ any(), any(Set.class));
}
@Test
@@ -114,41 +113,56 @@ public class CreateGatewaySenderCommandTest {
}
@Test
- public void whenNoCCService() {
+ public void whenCommandOnMember() {
doReturn(mock(Set.class)).when(command).getMembers(any(), any());
- doReturn(null).when(command).getConfigurationPersistenceService();
- result1 = new CliFunctionResult("member", xmlEntity, "result1");
- functionResults.add(result1);
+ cliFunctionResult = new CliFunctionResult("member",
+ CliFunctionResult.StatusState.OK, "cliFunctionResult");
+ functionResults.add(cliFunctionResult);
gfsh.executeAndAssertThat(command,
- "create gateway-sender --id=1 --remote-distributed-system-id=1").statusIsSuccess()
- .hasFailToPersistError();
- verify(ccService, never()).deleteXmlEntity(any(), any());
+ "create gateway-sender --member=xyz --id=1 --remote-distributed-system-id=1")
+ .statusIsSuccess();
}
@Test
- public void whenCommandOnMember() {
+ public void testFunctionArgs() {
doReturn(mock(Set.class)).when(command).getMembers(any(), any());
- doReturn(ccService).when(command).getConfigurationPersistenceService();
- result1 = new CliFunctionResult("member", xmlEntity, "result1");
- functionResults.add(result1);
+ cliFunctionResult = new CliFunctionResult("member",
+ CliFunctionResult.StatusState.OK, "cliFunctionResult");
+ functionResults.add(cliFunctionResult);
gfsh.executeAndAssertThat(command,
- "create gateway-sender --member=xyz --id=1 --remote-distributed-system-id=1")
- .statusIsSuccess().hasFailToPersistError();
- verify(ccService, never()).deleteXmlEntity(any(), any());
+ "create gateway-sender --member=xyz --id=1 --remote-distributed-system-id=1"
+ + " --order-policy=thread --dispatcher-threads=2 "
+ + "--gateway-event-filter=test1,test2 --gateway-transport-filter=test1,test2")
+ .statusIsSuccess();
+ verify(command).executeAndGetFunctionResult(any(), argsArgumentCaptor.capture(),
+ any(Set.class));
+ assertThat(argsArgumentCaptor.getValue().getOrderPolicy()).isEqualTo(
+ GatewaySender.OrderPolicy.THREAD.toString());
+ assertThat(argsArgumentCaptor.getValue().getRemoteDistributedSystemId()).isEqualTo(1);
+ assertThat(argsArgumentCaptor.getValue().getDispatcherThreads()).isEqualTo(2);
+ assertThat(argsArgumentCaptor.getValue().getGatewayEventFilter()).containsExactly("test1",
+ "test2");
+ assertThat(argsArgumentCaptor.getValue().getGatewayTransportFilter()).containsExactly("test1",
+ "test2");
}
@Test
- public void whenNoXml() {
+ public void testReturnsConfigInResultModel() {
doReturn(mock(Set.class)).when(command).getMembers(any(), any());
- doReturn(ccService).when(command).getConfigurationPersistenceService();
- result1 = new CliFunctionResult("member", false, "result1");
- functionResults.add(result1);
-
- // does not delete because command failed, so hasNoFailToPersistError should still be true
- gfsh.executeAndAssertThat(command,
- "create gateway-sender --id=1 --remote-distributed-system-id=1").statusIsError()
- .hasNoFailToPersistError();
- verify(ccService, never()).deleteXmlEntity(any(), any());
+ cliFunctionResult = new CliFunctionResult("member", CliFunctionResult.StatusState.OK,
+ "cliFunctionResult");
+ functionResults.add(cliFunctionResult);
+ ResultModel resultModel = gfsh.executeAndAssertThat(command,
+ "create gateway-sender --group=xyz --id=1 --remote-distributed-system-id=1"
+ + " --order-policy=thread --dispatcher-threads=2 "
+ + "--gateway-event-filter=test1,test2 --gateway-transport-filter=test1,test2")
+ .getResultModel();
+
+ assertThat(resultModel.getConfigObject()).isNotNull();
+ CacheConfig.GatewaySender sender = (CacheConfig.GatewaySender) resultModel.getConfigObject();
+ assertThat(sender.getId()).isEqualTo("1");
+ assertThat(sender.getRemoteDistributedSystemId()).isEqualTo("1");
+ assertThat(sender.getOrderPolicy()).isEqualTo("THREAD");
}
@Test
diff --git a/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/DestroyGatewaySenderCommandTest.java b/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/DestroyGatewaySenderCommandTest.java
index 28daa69..6d53158 100644
--- a/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/DestroyGatewaySenderCommandTest.java
+++ b/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/DestroyGatewaySenderCommandTest.java
@@ -19,9 +19,7 @@ import static org.assertj.core.api.Assertions.assertThat;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.never;
import static org.mockito.Mockito.spy;
-import static org.mockito.Mockito.verify;
import java.util.ArrayList;
import java.util.List;
@@ -31,10 +29,8 @@ import org.junit.Before;
import org.junit.ClassRule;
import org.junit.Test;
-import org.apache.geode.distributed.internal.InternalConfigurationPersistenceService;
import org.apache.geode.internal.cache.InternalCache;
import org.apache.geode.management.internal.cli.functions.CliFunctionResult;
-import org.apache.geode.management.internal.configuration.domain.XmlEntity;
import org.apache.geode.test.junit.rules.GfshParserRule;
@@ -46,18 +42,13 @@ public class DestroyGatewaySenderCommandTest {
private DestroyGatewaySenderCommand command;
private InternalCache cache;
private List<CliFunctionResult> functionResults;
- private InternalConfigurationPersistenceService ccService;
private CliFunctionResult result1, result2;
- private XmlEntity xmlEntity;
@Before
public void before() throws Exception {
command = spy(DestroyGatewaySenderCommand.class);
- ccService = mock(InternalConfigurationPersistenceService.class);
- xmlEntity = mock(XmlEntity.class);
cache = mock(InternalCache.class);
doReturn(cache).when(command).getCache();
- doReturn(ccService).when(command).getConfigurationPersistenceService();
functionResults = new ArrayList<>();
doReturn(functionResults).when(command).executeAndGetFunctionResult(any(), any(),
any(Set.class));
@@ -70,77 +61,58 @@ public class DestroyGatewaySenderCommandTest {
@Test
public void allFunctionReturnsOK() throws Exception {
- result1 = new CliFunctionResult("member", xmlEntity, "result1");
- result2 = new CliFunctionResult("member", xmlEntity, "result2");
+ result1 = new CliFunctionResult("member", CliFunctionResult.StatusState.OK,
+ "result1");
+ result2 = new CliFunctionResult("member", CliFunctionResult.StatusState.OK,
+ "result2");
functionResults.add(result1);
functionResults.add(result2);
doReturn(mock(Set.class)).when(command).getMembers(any(), any());
parser.executeAndAssertThat(command, "destroy gateway-sender --id=1").statusIsSuccess()
- .tableHasColumnWithValuesContaining("Status", "result1", "result2");
-
- verify(ccService).deleteXmlEntity(any(), any());
+ .tableHasColumnWithValuesContaining("Message", "result1", "result2");
}
@Test
public void oneFunctionReturnsError() throws Exception {
- result1 = new CliFunctionResult("member", true, "result1");
- result2 = new CliFunctionResult("member", false, "result2");
+ result1 = new CliFunctionResult("member", CliFunctionResult.StatusState.OK,
+ "result1");
+ result2 = new CliFunctionResult("member", CliFunctionResult.StatusState.ERROR,
+ "result2");
functionResults.add(result1);
functionResults.add(result2);
doReturn(mock(Set.class)).when(command).getMembers(any(), any());
parser.executeAndAssertThat(command, "destroy gateway-sender --id=1").statusIsSuccess()
- .tableHasColumnWithValuesContaining("Status", "result1", "ERROR: result2");
-
+ .tableHasColumnWithValuesContaining("Message", "result1", "result2");
}
@Test
public void oneFunctionThrowsGeneralException() throws Exception {
- result1 = new CliFunctionResult("member", true, "result1");
+ result1 = new CliFunctionResult("member", CliFunctionResult.StatusState.OK, "result1");
result2 = new CliFunctionResult("member", new Exception("something happened"), null);
functionResults.add(result1);
functionResults.add(result2);
doReturn(mock(Set.class)).when(command).getMembers(any(), any());
parser.executeAndAssertThat(command, "destroy gateway-sender --id=1").statusIsSuccess()
- .tableHasColumnWithValuesContaining("Status", "result1",
- "ERROR: java.lang.Exception: something happened");
+ .tableHasColumnWithValuesContaining("Message", "result1",
+ "java.lang.Exception: something happened");
}
@Test
- public void whenNoCCService() {
- doReturn(mock(Set.class)).when(command).getMembers(any(), any());
- doReturn(null).when(command).getConfigurationPersistenceService();
- result1 = new CliFunctionResult("member", xmlEntity, "result1");
+ public void putsIdOfDestroyedSenderInResult() throws Exception {
+ result1 = new CliFunctionResult("member", CliFunctionResult.StatusState.OK,
+ "result1");
functionResults.add(result1);
- parser.executeAndAssertThat(command, "destroy gateway-sender --id=1").statusIsSuccess()
- .hasFailToPersistError();
- verify(ccService, never()).deleteXmlEntity(any(), any());
- }
- @Test
- public void whenCommandOnMember() {
doReturn(mock(Set.class)).when(command).getMembers(any(), any());
- doReturn(ccService).when(command).getConfigurationPersistenceService();
- result1 = new CliFunctionResult("member", xmlEntity, "result1");
- functionResults.add(result1);
- parser.executeAndAssertThat(command, "destroy gateway-sender --member=xyz --id=1")
- .statusIsSuccess().hasFailToPersistError();
- verify(ccService, never()).deleteXmlEntity(any(), any());
- }
-
- @Test
- public void whenNoXml() {
- doReturn(mock(Set.class)).when(command).getMembers(any(), any());
- doReturn(ccService).when(command).getConfigurationPersistenceService();
- result1 = new CliFunctionResult("member", false, "result1");
- functionResults.add(result1);
-
- // does not delete because command failed, so hasNoFailToPersistError should still be true
- parser.executeAndAssertThat(command, "destroy gateway-sender --id=1").statusIsError()
- .hasNoFailToPersistError();
- verify(ccService, never()).deleteXmlEntity(any(), any());
+ String id = (String) parser
+ .executeAndAssertThat(command, "destroy gateway-sender --id=1")
+ .statusIsSuccess()
+ .getResultModel()
+ .getConfigObject();
+ assertThat(id).isEqualTo("1");
}
}
diff --git a/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/CreateDestroyGatewaySenderCommandDUnitTest.java b/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/CreateDestroyGatewaySenderCommandDUnitTest.java
index 6503b8b..f5000d2 100644
--- a/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/CreateDestroyGatewaySenderCommandDUnitTest.java
+++ b/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/CreateDestroyGatewaySenderCommandDUnitTest.java
@@ -96,7 +96,7 @@ public class CreateDestroyGatewaySenderCommandDUnitTest implements Serializable
@Test
public void testCreateDestroyGatewaySenderWithDefault() throws Exception {
gfsh.executeAndAssertThat(CREATE).statusIsSuccess().tableHasColumnWithExactValuesInAnyOrder(
- "Status", "GatewaySender \"ln\" created on \"" + SERVER_3 + "\"",
+ "Message", "GatewaySender \"ln\" created on \"" + SERVER_3 + "\"",
"GatewaySender \"ln\" created on \"" + SERVER_4 + "\"",
"GatewaySender \"ln\" created on \"" + SERVER_5 + "\"");
@@ -106,12 +106,13 @@ public class CreateDestroyGatewaySenderCommandDUnitTest implements Serializable
locatorSite1.invoke(() -> {
String xml = ClusterStartupRule.getLocator().getConfigurationPersistenceService()
.getConfiguration("cluster").getCacheXmlContent();
- assertThat(xml).contains("<gateway-sender id=\"ln\" remote-distributed-system-id=\"2\"/>");
+ assertThat(xml).contains("<gateway-sender id=\"ln\" remote-distributed-system-id=\"2\""
+ + " parallel=\"false\"/>");
});
// destroy gateway sender and verify AEQs cleaned up
gfsh.executeAndAssertThat(DESTROY).statusIsSuccess().tableHasColumnWithExactValuesInAnyOrder(
- "Status", "GatewaySender \"ln\" destroyed on \"" + SERVER_3 + "\"",
+ "Message", "GatewaySender \"ln\" destroyed on \"" + SERVER_3 + "\"",
"GatewaySender \"ln\" destroyed on \"" + SERVER_4 + "\"",
"GatewaySender \"ln\" destroyed on \"" + SERVER_5 + "\"");
@@ -147,7 +148,7 @@ public class CreateDestroyGatewaySenderCommandDUnitTest implements Serializable
+ CliStrings.CREATE_GATEWAYSENDER__DISPATCHERTHREADS + "=2" + " --"
+ CliStrings.CREATE_GATEWAYSENDER__ORDERPOLICY + "=THREAD";
gfsh.executeAndAssertThat(command).statusIsSuccess().tableHasColumnWithExactValuesInAnyOrder(
- "Status", "GatewaySender \"ln\" created on \"" + SERVER_3 + "\"",
+ "Message", "GatewaySender \"ln\" created on \"" + SERVER_3 + "\"",
"GatewaySender \"ln\" created on \"" + SERVER_4 + "\"",
"GatewaySender \"ln\" created on \"" + SERVER_5 + "\"");
@@ -159,7 +160,7 @@ public class CreateDestroyGatewaySenderCommandDUnitTest implements Serializable
// destroy gateway sender and verify AEQs cleaned up
gfsh.executeAndAssertThat(DESTROY).statusIsSuccess().tableHasColumnWithExactValuesInAnyOrder(
- "Status", "GatewaySender \"ln\" destroyed on \"" + SERVER_3 + "\"",
+ "Message", "GatewaySender \"ln\" destroyed on \"" + SERVER_3 + "\"",
"GatewaySender \"ln\" destroyed on \"" + SERVER_4 + "\"",
"GatewaySender \"ln\" destroyed on \"" + SERVER_5 + "\"");
@@ -192,7 +193,7 @@ public class CreateDestroyGatewaySenderCommandDUnitTest implements Serializable
+ "=org.apache.geode.cache30.MyGatewayEventFilter1,org.apache.geode.cache30.MyGatewayEventFilter2";
gfsh.executeAndAssertThat(command).statusIsSuccess().tableHasColumnWithExactValuesInAnyOrder(
- "Status", "GatewaySender \"ln\" created on \"" + SERVER_3 + "\"",
+ "Message", "GatewaySender \"ln\" created on \"" + SERVER_3 + "\"",
"GatewaySender \"ln\" created on \"" + SERVER_4 + "\"",
"GatewaySender \"ln\" created on \"" + SERVER_5 + "\"");
@@ -208,7 +209,7 @@ public class CreateDestroyGatewaySenderCommandDUnitTest implements Serializable
// destroy gateway sender and verify AEQs cleaned up
gfsh.executeAndAssertThat(DESTROY).statusIsSuccess().tableHasColumnWithExactValuesInAnyOrder(
- "Status", "GatewaySender \"ln\" destroyed on \"" + SERVER_3 + "\"",
+ "Message", "GatewaySender \"ln\" destroyed on \"" + SERVER_3 + "\"",
"GatewaySender \"ln\" destroyed on \"" + SERVER_4 + "\"",
"GatewaySender \"ln\" destroyed on \"" + SERVER_5 + "\"");
@@ -240,7 +241,7 @@ public class CreateDestroyGatewaySenderCommandDUnitTest implements Serializable
+ CliStrings.CREATE_GATEWAYSENDER__GATEWAYTRANSPORTFILTER
+ "=org.apache.geode.cache30.MyGatewayTransportFilter1";
gfsh.executeAndAssertThat(command).statusIsSuccess().tableHasColumnWithExactValuesInAnyOrder(
- "Status", "GatewaySender \"ln\" created on \"" + SERVER_3 + "\"",
+ "Message", "GatewaySender \"ln\" created on \"" + SERVER_3 + "\"",
"GatewaySender \"ln\" created on \"" + SERVER_4 + "\"",
"GatewaySender \"ln\" created on \"" + SERVER_5 + "\"");
@@ -255,7 +256,7 @@ public class CreateDestroyGatewaySenderCommandDUnitTest implements Serializable
// destroy gateway sender and verify AEQs cleaned up
gfsh.executeAndAssertThat(DESTROY).statusIsSuccess().tableHasColumnWithExactValuesInAnyOrder(
- "Status", "GatewaySender \"ln\" destroyed on \"" + SERVER_3 + "\"",
+ "Message", "GatewaySender \"ln\" destroyed on \"" + SERVER_3 + "\"",
"GatewaySender \"ln\" destroyed on \"" + SERVER_4 + "\"",
"GatewaySender \"ln\" destroyed on \"" + SERVER_5 + "\"");
@@ -269,7 +270,7 @@ public class CreateDestroyGatewaySenderCommandDUnitTest implements Serializable
@Test
public void testCreateDestroyGatewaySender_OnMember() throws Exception {
gfsh.executeAndAssertThat(CREATE + " --member=" + server1.getName()).statusIsSuccess()
- .tableHasColumnWithExactValuesInAnyOrder("Status",
+ .tableHasColumnWithExactValuesInAnyOrder("Message",
"GatewaySender \"ln\" created on \"" + SERVER_3 + "\"");
server1.invoke(() -> {
@@ -279,7 +280,7 @@ public class CreateDestroyGatewaySenderCommandDUnitTest implements Serializable
VMProvider.invokeInEveryMember(() -> verifySenderDoesNotExist("ln", false), server2, server3);
gfsh.executeAndAssertThat(DESTROY + " --member=" + server1.getName()).statusIsSuccess()
- .tableHasColumnWithExactValuesInAnyOrder("Status",
+ .tableHasColumnWithExactValuesInAnyOrder("Message",
"GatewaySender \"ln\" destroyed on \"" + SERVER_3 + "\"");
VMProvider.invokeInEveryMember(() -> verifySenderDoesNotExist("ln", false), server1);
@@ -291,7 +292,7 @@ public class CreateDestroyGatewaySenderCommandDUnitTest implements Serializable
@Test
public void testCreateDestroyGatewaySender_Group() throws Exception {
gfsh.executeAndAssertThat(CREATE + " --group=senderGroup1").statusIsSuccess()
- .tableHasColumnWithExactValuesInAnyOrder("Status",
+ .tableHasColumnWithExactValuesInAnyOrder("Message",
"GatewaySender \"ln\" created on \"" + SERVER_3 + "\"");
server1.invoke(() -> {
@@ -301,7 +302,7 @@ public class CreateDestroyGatewaySenderCommandDUnitTest implements Serializable
VMProvider.invokeInEveryMember(() -> verifySenderDoesNotExist("ln", false), server2, server3);
gfsh.executeAndAssertThat(DESTROY + " --group=senderGroup1").statusIsSuccess()
- .tableHasColumnWithExactValuesInAnyOrder("Status",
+ .tableHasColumnWithExactValuesInAnyOrder("Message",
"GatewaySender \"ln\" destroyed on \"" + SERVER_3 + "\"");
VMProvider.invokeInEveryMember(() -> verifySenderDoesNotExist("ln", false), server1);
@@ -313,14 +314,14 @@ public class CreateDestroyGatewaySenderCommandDUnitTest implements Serializable
@Test
public void testCreateDestroyParallelGatewaySender() throws Exception {
gfsh.executeAndAssertThat(CREATE + " --parallel").statusIsSuccess()
- .tableHasColumnWithExactValuesInAnyOrder("Status",
+ .tableHasColumnWithExactValuesInAnyOrder("Message",
"GatewaySender \"ln\" created on \"" + SERVER_3 + "\"",
"GatewaySender \"ln\" created on \"" + SERVER_4 + "\"",
"GatewaySender \"ln\" created on \"" + SERVER_5 + "\"");
// destroy gateway sender and verify AEQs cleaned up
gfsh.executeAndAssertThat(DESTROY).statusIsSuccess().tableHasColumnWithExactValuesInAnyOrder(
- "Status", "GatewaySender \"ln\" destroyed on \"" + SERVER_3 + "\"",
+ "Message", "GatewaySender \"ln\" destroyed on \"" + SERVER_3 + "\"",
"GatewaySender \"ln\" destroyed on \"" + SERVER_4 + "\"",
"GatewaySender \"ln\" destroyed on \"" + SERVER_5 + "\"");
diff --git a/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/DestroyGatewaySenderCommandDUnitTest.java b/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/DestroyGatewaySenderCommandDUnitTest.java
index 8b5826f..82ee09e 100644
--- a/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/DestroyGatewaySenderCommandDUnitTest.java
+++ b/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/DestroyGatewaySenderCommandDUnitTest.java
@@ -72,13 +72,13 @@ public class DestroyGatewaySenderCommandDUnitTest {
@Test
public void testCreateDestroySerialGatewaySenderWithDefault() throws Exception {
gfsh.executeAndAssertThat(CREATE).statusIsSuccess().tableHasColumnWithExactValuesInAnyOrder(
- "Status", "GatewaySender \"sender\" created on \"happyserver1\"");
+ "Message", "GatewaySender \"sender\" created on \"happyserver1\"");
locatorSite1.waitUntilGatewaySendersAreReadyOnExactlyThisManyServers(1);
// destroy gateway sender and verify AEQs cleaned up
gfsh.executeAndAssertThat(DESTROY).statusIsSuccess().tableHasColumnWithExactValuesInAnyOrder(
- "Status", "GatewaySender \"sender\" destroyed on \"happyserver1\"");
+ "Message", "GatewaySender \"sender\" destroyed on \"happyserver1\"");
locatorSite1.waitUntilGatewaySendersAreReadyOnExactlyThisManyServers(0);
@@ -89,14 +89,14 @@ public class DestroyGatewaySenderCommandDUnitTest {
@Test
public void testCreateDestroyParallellGatewaySenderWithDefault() throws Exception {
gfsh.executeAndAssertThat(CREATE + " --parallel").statusIsSuccess()
- .tableHasColumnWithExactValuesInAnyOrder("Status",
+ .tableHasColumnWithExactValuesInAnyOrder("Message",
"GatewaySender \"sender\" created on \"happyserver1\"");
locatorSite1.waitUntilGatewaySendersAreReadyOnExactlyThisManyServers(1);
// destroy gateway sender and verify AEQs cleaned up
gfsh.executeAndAssertThat(DESTROY).statusIsSuccess().tableHasColumnWithExactValuesInAnyOrder(
- "Status", "GatewaySender \"sender\" destroyed on \"happyserver1\"");
+ "Message", "GatewaySender \"sender\" destroyed on \"happyserver1\"");
locatorSite1.waitUntilGatewaySendersAreReadyOnExactlyThisManyServers(0);
diff --git a/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/PauseGatewaySenderCommandDUnitTest.java b/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/PauseGatewaySenderCommandDUnitTest.java
index 5b3c2db..4558c9b 100644
--- a/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/PauseGatewaySenderCommandDUnitTest.java
+++ b/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/PauseGatewaySenderCommandDUnitTest.java
@@ -37,7 +37,8 @@ import org.apache.geode.distributed.DistributedMember;
import org.apache.geode.management.cli.Result;
import org.apache.geode.management.internal.cli.i18n.CliStrings;
import org.apache.geode.management.internal.cli.result.CommandResult;
-import org.apache.geode.management.internal.cli.result.TabularResultData;
+import org.apache.geode.management.internal.cli.result.model.ResultModel;
+import org.apache.geode.management.internal.cli.result.model.TabularResultModel;
import org.apache.geode.test.dunit.rules.ClusterStartupRule;
import org.apache.geode.test.dunit.rules.MemberVM;
import org.apache.geode.test.junit.categories.WanTest;
@@ -111,9 +112,11 @@ public class PauseGatewaySenderCommandDUnitTest implements Serializable {
CommandResult cmdResult = gfsh.executeCommand(command);
assertThat(cmdResult).isNotNull();
- String strCmdResult = cmdResult.toString();
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- assertThat(strCmdResult).contains("is paused on member");
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.PAUSE_GATEWAYSENDER);
+ List<String> messages = resultData.getValuesInColumn("Message");
+ assertThat(messages.get(0)).contains("is paused on member");
locatorSite1.invoke(
() -> validateGatewaySenderMXBeanProxy(getMember(server1.getVM()), "ln", true, true));
@@ -155,10 +158,10 @@ public class PauseGatewaySenderCommandDUnitTest implements Serializable {
assertThat(cmdResult).isNotNull();
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- TabularResultData resultData = (TabularResultData) cmdResult.getResultData();
- List<String> status = resultData.retrieveAllValues("Result");
- assertThat(status).hasSize(3);
- assertThat(status).contains("OK");
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.PAUSE_GATEWAYSENDER);
+ List<String> status = resultData.getValuesInColumn("Result");
+ assertThat(status).containsExactlyInAnyOrder("OK", "OK", "OK");
locatorSite1.invoke(
() -> validateGatewaySenderMXBeanProxy(getMember(server1.getVM()), "ln", true, true));
@@ -210,11 +213,10 @@ public class PauseGatewaySenderCommandDUnitTest implements Serializable {
assertThat(cmdResult).isNotNull();
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- TabularResultData resultData = (TabularResultData) cmdResult.getResultData();
- List<String> status = resultData.retrieveAllValues("Result");
- assertThat(status).hasSize(3);
- assertThat(status).doesNotContain("Error");
- assertThat(status).contains("OK");
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.PAUSE_GATEWAYSENDER);
+ List<String> status = resultData.getValuesInColumn("Result");
+ assertThat(status).containsExactlyInAnyOrder("OK", "OK", "OK");
locatorSite1.invoke(
() -> validateGatewaySenderMXBeanProxy(getMember(server1.getVM()), "ln", true, true));
@@ -278,11 +280,10 @@ public class PauseGatewaySenderCommandDUnitTest implements Serializable {
assertThat(cmdResult).isNotNull();
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- TabularResultData resultData = (TabularResultData) cmdResult.getResultData();
- List<String> status = resultData.retrieveAllValues("Result");
- assertThat(status).hasSize(4);
- assertThat(status).doesNotContain("Error");
- assertThat(status).contains("OK");
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.PAUSE_GATEWAYSENDER);
+ List<String> status = resultData.getValuesInColumn("Result");
+ assertThat(status).containsExactlyInAnyOrder("OK", "OK", "OK", "OK");
locatorSite1.invoke(
() -> validateGatewaySenderMXBeanProxy(getMember(server1.getVM()), "ln", true, true));
diff --git a/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/ResumeGatewaySenderCommandDUnitTest.java b/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/ResumeGatewaySenderCommandDUnitTest.java
index be64ffd..f7e4651 100644
--- a/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/ResumeGatewaySenderCommandDUnitTest.java
+++ b/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/ResumeGatewaySenderCommandDUnitTest.java
@@ -38,7 +38,8 @@ import org.apache.geode.distributed.DistributedMember;
import org.apache.geode.management.cli.Result;
import org.apache.geode.management.internal.cli.i18n.CliStrings;
import org.apache.geode.management.internal.cli.result.CommandResult;
-import org.apache.geode.management.internal.cli.result.TabularResultData;
+import org.apache.geode.management.internal.cli.result.model.ResultModel;
+import org.apache.geode.management.internal.cli.result.model.TabularResultModel;
import org.apache.geode.test.dunit.rules.ClusterStartupRule;
import org.apache.geode.test.dunit.rules.MemberVM;
import org.apache.geode.test.junit.categories.WanTest;
@@ -135,10 +136,10 @@ public class ResumeGatewaySenderCommandDUnitTest implements Serializable {
assertThat(cmdResult).isNotNull();
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- TabularResultData resultData = (TabularResultData) cmdResult.getResultData();
- List<String> status = resultData.retrieveAllValues("Result");
- assertThat(status).hasSize(3);
- assertThat(status).contains("OK");
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.RESUME_GATEWAYSENDER);
+ List<String> status = resultData.getValuesInColumn("Result");
+ assertThat(status).containsExactlyInAnyOrder("OK", "OK", "OK");
locatorSite1.invoke(
() -> validateGatewaySenderMXBeanProxy(getMember(server1.getVM()), "ln", true, false));
@@ -181,7 +182,11 @@ public class ResumeGatewaySenderCommandDUnitTest implements Serializable {
String strCmdResult = cmdResult.toString();
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- assertThat(strCmdResult).contains("is resumed on member");
+
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.RESUME_GATEWAYSENDER);
+ List<String> messages = resultData.getValuesInColumn("Message");
+ assertThat(messages.get(0)).contains("is resumed on member");
locatorSite1.invoke(
() -> validateGatewaySenderMXBeanProxy(getMember(server1.getVM()), "ln", true, false));
@@ -234,11 +239,10 @@ public class ResumeGatewaySenderCommandDUnitTest implements Serializable {
assertThat(cmdResult).isNotNull();
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- TabularResultData resultData = (TabularResultData) cmdResult.getResultData();
- List<String> status = resultData.retrieveAllValues("Result");
- assertThat(status).hasSize(3);
- assertThat(status).doesNotContain("Error");
- assertThat(status).contains("OK");
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.RESUME_GATEWAYSENDER);
+ List<String> status = resultData.getValuesInColumn("Result");
+ assertThat(status).containsExactlyInAnyOrder("OK", "OK", "OK");
locatorSite1.invoke(
() -> validateGatewaySenderMXBeanProxy(getMember(server1.getVM()), "ln", true, false));
@@ -313,11 +317,10 @@ public class ResumeGatewaySenderCommandDUnitTest implements Serializable {
assertThat(cmdResult).isNotNull();
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- TabularResultData resultData = (TabularResultData) cmdResult.getResultData();
- List<String> status = resultData.retrieveAllValues("Result");
- assertThat(status).hasSize(4);
- assertThat(status).doesNotContain("Error");
- assertThat(status).contains("OK");
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.RESUME_GATEWAYSENDER);
+ List<String> status = resultData.getValuesInColumn("Result");
+ assertThat(status).containsExactlyInAnyOrder("OK", "OK", "OK", "OK");
locatorSite1.invoke(
() -> validateGatewaySenderMXBeanProxy(getMember(server1.getVM()), "ln", true, false));
diff --git a/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/StartGatewayReceiverCommandDUnitTest.java b/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/StartGatewayReceiverCommandDUnitTest.java
index be3eed1..73e990c 100644
--- a/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/StartGatewayReceiverCommandDUnitTest.java
+++ b/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/StartGatewayReceiverCommandDUnitTest.java
@@ -36,7 +36,8 @@ import org.apache.geode.distributed.DistributedMember;
import org.apache.geode.management.cli.Result;
import org.apache.geode.management.internal.cli.i18n.CliStrings;
import org.apache.geode.management.internal.cli.result.CommandResult;
-import org.apache.geode.management.internal.cli.result.TabularResultData;
+import org.apache.geode.management.internal.cli.result.model.ResultModel;
+import org.apache.geode.management.internal.cli.result.model.TabularResultModel;
import org.apache.geode.test.dunit.rules.ClusterStartupRule;
import org.apache.geode.test.dunit.rules.MemberVM;
import org.apache.geode.test.junit.categories.WanTest;
@@ -120,11 +121,10 @@ public class StartGatewayReceiverCommandDUnitTest implements Serializable {
CommandResult cmdResult = gfsh.executeCommand(command);
assertThat(cmdResult).isNotNull();
- TabularResultData resultData = (TabularResultData) cmdResult.getResultData();
- List<String> status = resultData.retrieveAllValues("Result");
- assertThat(status).hasSize(3);
- assertThat(status).doesNotContain("Error");
- assertThat(status).contains("OK");
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.START_GATEWAYRECEIVER);
+ List<String> status = resultData.getValuesInColumn("Result");
+ assertThat(status).containsExactlyInAnyOrder("OK", "OK", "OK");
locatorSite1.invoke(() -> validateGatewayReceiverMXBeanProxy(getMember(server1.getVM()), true));
locatorSite1.invoke(() -> validateGatewayReceiverMXBeanProxy(getMember(server2.getVM()), true));
@@ -170,7 +170,11 @@ public class StartGatewayReceiverCommandDUnitTest implements Serializable {
String strCmdResult = cmdResult.toString();
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- assertThat(strCmdResult).contains("is started on member");
+
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.START_GATEWAYRECEIVER);
+ List<String> messages = resultData.getValuesInColumn("Message");
+ assertThat(messages.get(0)).contains("is started on member");
locatorSite1.invoke(() -> validateGatewayReceiverMXBeanProxy(getMember(server1.getVM()), true));
locatorSite1
@@ -215,11 +219,10 @@ public class StartGatewayReceiverCommandDUnitTest implements Serializable {
assertThat(cmdResult).isNotNull();
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- TabularResultData resultData = (TabularResultData) cmdResult.getResultData();
- List<String> status = resultData.retrieveAllValues("Result");
- assertThat(status).hasSize(3);
- assertThat(status).doesNotContain("Error");
- assertThat(status).contains("OK");
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.START_GATEWAYRECEIVER);
+ List<String> status = resultData.getValuesInColumn("Result");
+ assertThat(status).containsExactlyInAnyOrder("OK", "OK", "OK");
locatorSite1.invoke(() -> validateGatewayReceiverMXBeanProxy(getMember(server1.getVM()), true));
locatorSite1.invoke(() -> validateGatewayReceiverMXBeanProxy(getMember(server2.getVM()), true));
@@ -273,11 +276,10 @@ public class StartGatewayReceiverCommandDUnitTest implements Serializable {
assertThat(cmdResult).isNotNull();
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- TabularResultData resultData = (TabularResultData) cmdResult.getResultData();
- List<String> status = resultData.retrieveAllValues("Result");
- assertThat(status).hasSize(4);
- assertThat(status).doesNotContain("Error");
- assertThat(status).contains("OK");
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.START_GATEWAYRECEIVER);
+ List<String> status = resultData.getValuesInColumn("Result");
+ assertThat(status).containsExactlyInAnyOrder("OK", "OK", "OK", "OK");
locatorSite1.invoke(() -> validateGatewayReceiverMXBeanProxy(getMember(server1.getVM()), true));
locatorSite1.invoke(() -> validateGatewayReceiverMXBeanProxy(getMember(server2.getVM()), true));
diff --git a/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/StartGatewaySenderCommandDUnitTest.java b/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/StartGatewaySenderCommandDUnitTest.java
index 6a43b5f..e3a39c2 100644
--- a/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/StartGatewaySenderCommandDUnitTest.java
+++ b/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/StartGatewaySenderCommandDUnitTest.java
@@ -36,7 +36,8 @@ import org.apache.geode.distributed.DistributedMember;
import org.apache.geode.management.cli.Result;
import org.apache.geode.management.internal.cli.i18n.CliStrings;
import org.apache.geode.management.internal.cli.result.CommandResult;
-import org.apache.geode.management.internal.cli.result.TabularResultData;
+import org.apache.geode.management.internal.cli.result.model.ResultModel;
+import org.apache.geode.management.internal.cli.result.model.TabularResultModel;
import org.apache.geode.test.dunit.IgnoredException;
import org.apache.geode.test.dunit.rules.ClusterStartupRule;
import org.apache.geode.test.dunit.rules.MemberVM;
@@ -80,7 +81,7 @@ public class StartGatewaySenderCommandDUnitTest implements Serializable {
* or group.
*/
@Test
- public void testStartGatewaySender_ErrorConditions() throws Exception {
+ public void testStartGatewaySender_ErrorConditions() {
Integer locator1Port = locatorSite1.getPort();
// setup servers in Site #1
@@ -126,10 +127,10 @@ public class StartGatewaySenderCommandDUnitTest implements Serializable {
assertThat(cmdResult).isNotNull();
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- TabularResultData resultData = (TabularResultData) cmdResult.getResultData();
- List<String> status = resultData.retrieveAllValues("Result");
- assertThat(status).hasSize(3);
- assertThat(status).contains("OK");
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.START_GATEWAYSENDER);
+ List<String> status = resultData.getValuesInColumn("Result");
+ assertThat(status).containsExactlyInAnyOrder("OK", "OK", "OK");
locatorSite1.invoke(
() -> validateGatewaySenderMXBeanProxy(getMember(server1.getVM()), "ln", true, false));
@@ -165,9 +166,10 @@ public class StartGatewaySenderCommandDUnitTest implements Serializable {
CommandResult cmdResult = executeCommandWithIgnoredExceptions(command);
assertThat(cmdResult).isNotNull();
- String strCmdResult = cmdResult.toString();
- assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- assertThat(strCmdResult).contains("is started on member");
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.START_GATEWAYSENDER);
+ List<String> messages = resultData.getValuesInColumn("Message");
+ assertThat(messages.get(0)).contains("is started on member");
locatorSite1.invoke(
() -> validateGatewaySenderMXBeanProxy(getMember(server1.getVM()), "ln", true, false));
@@ -208,11 +210,10 @@ public class StartGatewaySenderCommandDUnitTest implements Serializable {
assertThat(cmdResult).isNotNull();
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- TabularResultData resultData = (TabularResultData) cmdResult.getResultData();
- List<String> status = resultData.retrieveAllValues("Result");
- assertThat(status).hasSize(3);
- assertThat(status).doesNotContain("Error");
- assertThat(status).contains("OK");
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.START_GATEWAYSENDER);
+ List<String> status = resultData.getValuesInColumn("Result");
+ assertThat(status).containsExactlyInAnyOrder("OK", "OK", "OK");
locatorSite1.invoke(
() -> validateGatewaySenderMXBeanProxy(getMember(server1.getVM()), "ln", true, false));
@@ -270,11 +271,10 @@ public class StartGatewaySenderCommandDUnitTest implements Serializable {
assertThat(cmdResult).isNotNull();
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- TabularResultData resultData = (TabularResultData) cmdResult.getResultData();
- List<String> status = resultData.retrieveAllValues("Result");
- assertThat(status).hasSize(4);
- assertThat(status).doesNotContain("Error");
- assertThat(status).contains("OK");
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.START_GATEWAYSENDER);
+ assertThat(resultData.getValuesInColumn("Result"))
+ .containsExactlyInAnyOrder("OK", "OK", "OK", "OK");
locatorSite1.invoke(
() -> validateGatewaySenderMXBeanProxy(getMember(server1.getVM()), "ln", true, false));
@@ -322,16 +322,10 @@ public class StartGatewaySenderCommandDUnitTest implements Serializable {
CommandResult cmdResult = executeCommandWithIgnoredExceptions(command);
assertThat(cmdResult).isNotNull();
- String strCmdResult = cmdResult.toString();
- assertThat(strCmdResult).contains("Error");
- assertThat(strCmdResult).contains("is not available");
- assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
-
- TabularResultData resultData = (TabularResultData) cmdResult.getResultData();
- List<String> status = resultData.retrieveAllValues("Result");
- assertThat(status).hasSize(3);
- assertThat(status).contains("Error");
- assertThat(status).contains("OK");
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.START_GATEWAYSENDER);
+ List<String> status = resultData.getValuesInColumn("Result");
+ assertThat(status).containsExactlyInAnyOrder("Error", "OK", "OK");
locatorSite1.invoke(
() -> validateGatewaySenderMXBeanProxy(getMember(server1.getVM()), "ln", true, false));
diff --git a/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/StatusGatewayReceiverCommandDUnitTest.java b/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/StatusGatewayReceiverCommandDUnitTest.java
index ffd000e..39e3ff6 100644
--- a/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/StatusGatewayReceiverCommandDUnitTest.java
+++ b/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/StatusGatewayReceiverCommandDUnitTest.java
@@ -35,8 +35,8 @@ import org.apache.geode.distributed.DistributedMember;
import org.apache.geode.management.cli.Result;
import org.apache.geode.management.internal.cli.i18n.CliStrings;
import org.apache.geode.management.internal.cli.result.CommandResult;
-import org.apache.geode.management.internal.cli.result.CompositeResultData;
-import org.apache.geode.management.internal.cli.result.TabularResultData;
+import org.apache.geode.management.internal.cli.result.model.ResultModel;
+import org.apache.geode.management.internal.cli.result.model.TabularResultModel;
import org.apache.geode.test.dunit.rules.ClusterStartupRule;
import org.apache.geode.test.dunit.rules.MemberVM;
import org.apache.geode.test.junit.categories.WanTest;
@@ -104,12 +104,11 @@ public class StatusGatewayReceiverCommandDUnitTest implements Serializable {
assertThat(cmdResult).isNotNull();
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- TabularResultData tableResultData = ((CompositeResultData) cmdResult.getResultData())
- .retrieveSection(CliStrings.SECTION_GATEWAY_RECEIVER_AVAILABLE)
- .retrieveTable(CliStrings.TABLE_GATEWAY_RECEIVER);
- List<String> result_Status = tableResultData.retrieveAllValues(CliStrings.RESULT_STATUS);
- assertThat(result_Status).hasSize(3);
- assertThat(result_Status).doesNotContain(CliStrings.GATEWAY_NOT_RUNNING);
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.SECTION_GATEWAY_RECEIVER_AVAILABLE);
+ List<String> status = resultData.getValuesInColumn(CliStrings.RESULT_STATUS);
+ assertThat(status).hasSize(3);
+ assertThat(status).doesNotContain(CliStrings.GATEWAY_NOT_RUNNING);
server1.invoke(WANCommandUtils::stopReceivers);
server2.invoke(WANCommandUtils::stopReceivers);
@@ -127,12 +126,11 @@ public class StatusGatewayReceiverCommandDUnitTest implements Serializable {
assertThat(cmdResult).isNotNull();
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- tableResultData = ((CompositeResultData) cmdResult.getResultData())
- .retrieveSection(CliStrings.SECTION_GATEWAY_RECEIVER_AVAILABLE)
- .retrieveTable(CliStrings.TABLE_GATEWAY_RECEIVER);
- result_Status = tableResultData.retrieveAllValues(CliStrings.RESULT_STATUS);
- assertThat(result_Status).hasSize(3);
- assertThat(result_Status).doesNotContain(CliStrings.GATEWAY_RUNNING);
+ resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.SECTION_GATEWAY_RECEIVER_AVAILABLE);
+ status = resultData.getValuesInColumn(CliStrings.RESULT_STATUS);
+ assertThat(status).hasSize(3);
+ assertThat(status).doesNotContain(CliStrings.GATEWAY_RUNNING);
}
@Test
@@ -167,12 +165,11 @@ public class StatusGatewayReceiverCommandDUnitTest implements Serializable {
assertThat(cmdResult).isNotNull();
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- TabularResultData tableResultData = ((CompositeResultData) cmdResult.getResultData())
- .retrieveSection(CliStrings.SECTION_GATEWAY_RECEIVER_AVAILABLE)
- .retrieveTable(CliStrings.TABLE_GATEWAY_RECEIVER);
- List<String> result_Status = tableResultData.retrieveAllValues(CliStrings.RESULT_STATUS);
- assertThat(result_Status).hasSize(1);
- assertThat(result_Status).doesNotContain(CliStrings.GATEWAY_NOT_RUNNING);
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.SECTION_GATEWAY_RECEIVER_AVAILABLE);
+ List<String> status = resultData.getValuesInColumn(CliStrings.RESULT_STATUS);
+ assertThat(status).hasSize(1);
+ assertThat(status).doesNotContain(CliStrings.GATEWAY_NOT_RUNNING);
server1.invoke(WANCommandUtils::stopReceivers);
server2.invoke(WANCommandUtils::stopReceivers);
@@ -190,12 +187,11 @@ public class StatusGatewayReceiverCommandDUnitTest implements Serializable {
cmdResult = gfsh.executeCommand(command);
assertThat(cmdResult).isNotNull();
- tableResultData = ((CompositeResultData) cmdResult.getResultData())
- .retrieveSection(CliStrings.SECTION_GATEWAY_RECEIVER_AVAILABLE)
- .retrieveTable(CliStrings.TABLE_GATEWAY_RECEIVER);
- result_Status = tableResultData.retrieveAllValues(CliStrings.RESULT_STATUS);
- assertThat(result_Status).hasSize(1);
- assertThat(result_Status).doesNotContain(CliStrings.GATEWAY_RUNNING);
+ resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.SECTION_GATEWAY_RECEIVER_AVAILABLE);
+ status = resultData.getValuesInColumn(CliStrings.RESULT_STATUS);
+ assertThat(status).hasSize(1);
+ assertThat(status).doesNotContain(CliStrings.GATEWAY_RUNNING);
}
@Test
@@ -231,12 +227,11 @@ public class StatusGatewayReceiverCommandDUnitTest implements Serializable {
assertThat(cmdResult).isNotNull();
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- TabularResultData tableResultData = ((CompositeResultData) cmdResult.getResultData())
- .retrieveSection(CliStrings.SECTION_GATEWAY_RECEIVER_AVAILABLE)
- .retrieveTable(CliStrings.TABLE_GATEWAY_RECEIVER);
- List<String> result_Status = tableResultData.retrieveAllValues(CliStrings.RESULT_STATUS);
- assertThat(result_Status).hasSize(3);
- assertThat(result_Status).doesNotContain(CliStrings.GATEWAY_NOT_RUNNING);
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.SECTION_GATEWAY_RECEIVER_AVAILABLE);
+ List<String> status = resultData.getValuesInColumn(CliStrings.RESULT_STATUS);
+ assertThat(status).hasSize(3);
+ assertThat(status).doesNotContain(CliStrings.GATEWAY_NOT_RUNNING);
server1.invoke(WANCommandUtils::stopReceivers);
server2.invoke(WANCommandUtils::stopReceivers);
@@ -254,12 +249,11 @@ public class StatusGatewayReceiverCommandDUnitTest implements Serializable {
assertThat(cmdResult).isNotNull();
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- tableResultData = ((CompositeResultData) cmdResult.getResultData())
- .retrieveSection(CliStrings.SECTION_GATEWAY_RECEIVER_AVAILABLE)
- .retrieveTable(CliStrings.TABLE_GATEWAY_RECEIVER);
- result_Status = tableResultData.retrieveAllValues(CliStrings.RESULT_STATUS);
- assertThat(result_Status).hasSize(3);
- assertThat(result_Status).doesNotContain(CliStrings.GATEWAY_RUNNING);
+ resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.SECTION_GATEWAY_RECEIVER_AVAILABLE);
+ status = resultData.getValuesInColumn(CliStrings.RESULT_STATUS);
+ assertThat(status).hasSize(3);
+ assertThat(status).doesNotContain(CliStrings.GATEWAY_RUNNING);
}
private MemberVM startServerWithGroups(int index, String groups, int locPort) {
diff --git a/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/StatusGatewaySenderCommandDUnitTest.java b/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/StatusGatewaySenderCommandDUnitTest.java
index 05863b7..ff5ec27 100644
--- a/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/StatusGatewaySenderCommandDUnitTest.java
+++ b/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/StatusGatewaySenderCommandDUnitTest.java
@@ -37,8 +37,8 @@ import org.apache.geode.distributed.DistributedMember;
import org.apache.geode.management.cli.Result;
import org.apache.geode.management.internal.cli.i18n.CliStrings;
import org.apache.geode.management.internal.cli.result.CommandResult;
-import org.apache.geode.management.internal.cli.result.CompositeResultData;
-import org.apache.geode.management.internal.cli.result.TabularResultData;
+import org.apache.geode.management.internal.cli.result.model.ResultModel;
+import org.apache.geode.management.internal.cli.result.model.TabularResultModel;
import org.apache.geode.test.dunit.rules.ClusterStartupRule;
import org.apache.geode.test.dunit.rules.MemberVM;
import org.apache.geode.test.junit.categories.WanTest;
@@ -120,12 +120,12 @@ public class StatusGatewaySenderCommandDUnitTest implements Serializable {
CommandResult cmdResult = gfsh.executeCommand(command);
assertThat(cmdResult).isNotNull();
- TabularResultData tableResultData = ((CompositeResultData) cmdResult.getResultData())
- .retrieveSection(CliStrings.SECTION_GATEWAY_SENDER_AVAILABLE)
- .retrieveTable(CliStrings.TABLE_GATEWAY_SENDER);
- List<String> result_Status = tableResultData.retrieveAllValues(CliStrings.RESULT_STATUS);
- assertThat(result_Status).hasSize(3);
- assertThat(result_Status).doesNotContain(CliStrings.GATEWAY_RUNNING);
+ TabularResultModel tableResultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.SECTION_GATEWAY_SENDER_AVAILABLE);
+
+ List<String> resultStatus = tableResultData.getValuesInColumn(CliStrings.RESULT_STATUS);
+ assertThat(resultStatus).hasSize(3);
+ assertThat(resultStatus).doesNotContain(CliStrings.GATEWAY_RUNNING);
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
server1.invoke(() -> startSender("ln_Serial"));
@@ -157,12 +157,12 @@ public class StatusGatewaySenderCommandDUnitTest implements Serializable {
cmdResult = gfsh.executeCommand(command);
assertThat(cmdResult).isNotNull();
- tableResultData = ((CompositeResultData) cmdResult.getResultData())
- .retrieveSection(CliStrings.SECTION_GATEWAY_SENDER_AVAILABLE)
- .retrieveTable(CliStrings.TABLE_GATEWAY_SENDER);
- result_Status = tableResultData.retrieveAllValues(CliStrings.RESULT_STATUS);
- assertThat(result_Status).hasSize(3);
- assertThat(result_Status).doesNotContain(CliStrings.GATEWAY_NOT_RUNNING);
+ tableResultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.SECTION_GATEWAY_SENDER_AVAILABLE);
+
+ resultStatus = tableResultData.getValuesInColumn(CliStrings.RESULT_STATUS);
+ assertThat(resultStatus).hasSize(3);
+ assertThat(resultStatus).doesNotContain(CliStrings.GATEWAY_NOT_RUNNING);
}
@Test
@@ -210,12 +210,11 @@ public class StatusGatewaySenderCommandDUnitTest implements Serializable {
CommandResult cmdResult = gfsh.executeCommand(command);
assertThat(cmdResult).isNotNull();
- TabularResultData tableResultData = ((CompositeResultData) cmdResult.getResultData())
- .retrieveSection(CliStrings.SECTION_GATEWAY_SENDER_AVAILABLE)
- .retrieveTable(CliStrings.TABLE_GATEWAY_SENDER);
- List<String> result_Status = tableResultData.retrieveAllValues(CliStrings.RESULT_STATUS);
- assertThat(result_Status).hasSize(1);
- assertThat(result_Status).doesNotContain(CliStrings.GATEWAY_RUNNING);
+ TabularResultModel tableResultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.SECTION_GATEWAY_SENDER_AVAILABLE);
+ List<String> resultStatus = tableResultData.getValuesInColumn(CliStrings.RESULT_STATUS);
+ assertThat(resultStatus).hasSize(1);
+ assertThat(resultStatus).doesNotContain(CliStrings.GATEWAY_RUNNING);
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
server1.invoke(() -> startSender("ln_Serial"));
@@ -244,12 +243,11 @@ public class StatusGatewaySenderCommandDUnitTest implements Serializable {
cmdResult = gfsh.executeCommand(command);
assertThat(cmdResult).isNotNull();
- tableResultData = ((CompositeResultData) cmdResult.getResultData())
- .retrieveSection(CliStrings.SECTION_GATEWAY_SENDER_AVAILABLE)
- .retrieveTable(CliStrings.TABLE_GATEWAY_SENDER);
- result_Status = tableResultData.retrieveAllValues(CliStrings.RESULT_STATUS);
- assertThat(result_Status).hasSize(1);
- assertThat(result_Status).doesNotContain(CliStrings.GATEWAY_NOT_RUNNING);
+ tableResultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.SECTION_GATEWAY_SENDER_AVAILABLE);
+ resultStatus = tableResultData.getValuesInColumn(CliStrings.RESULT_STATUS);
+ assertThat(resultStatus).hasSize(1);
+ assertThat(resultStatus).doesNotContain(CliStrings.GATEWAY_NOT_RUNNING);
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
DistributedMember server3DM = getMember(server3.getVM());
@@ -304,17 +302,16 @@ public class StatusGatewaySenderCommandDUnitTest implements Serializable {
CommandResult cmdResult = gfsh.executeCommand(command);
assertThat(cmdResult).isNotNull();
- TabularResultData tableResultData = ((CompositeResultData) cmdResult.getResultData())
- .retrieveSection(CliStrings.SECTION_GATEWAY_SENDER_AVAILABLE)
- .retrieveTable(CliStrings.TABLE_GATEWAY_SENDER);
- List<String> result_Status = tableResultData.retrieveAllValues(CliStrings.RESULT_STATUS);
- assertThat(result_Status).hasSize(2);
- assertThat(result_Status).doesNotContain(CliStrings.GATEWAY_RUNNING);
- tableResultData = ((CompositeResultData) cmdResult.getResultData())
- .retrieveSection(CliStrings.SECTION_GATEWAY_SENDER_NOT_AVAILABLE)
- .retrieveTable(CliStrings.TABLE_GATEWAY_SENDER);
- List<String> result_hosts = tableResultData.retrieveAllValues(CliStrings.RESULT_HOST_MEMBER);
- assertThat(result_hosts).hasSize(1);
+ TabularResultModel tableResultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.SECTION_GATEWAY_SENDER_AVAILABLE);
+ List<String> resultStatus = tableResultData.getValuesInColumn(CliStrings.RESULT_STATUS);
+ assertThat(resultStatus).hasSize(2);
+ assertThat(resultStatus).doesNotContain(CliStrings.GATEWAY_RUNNING);
+
+ tableResultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.SECTION_GATEWAY_SENDER_NOT_AVAILABLE);
+ List<String> resultHosts = tableResultData.getValuesInColumn(CliStrings.RESULT_HOST_MEMBER);
+ assertThat(resultHosts).hasSize(1);
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
server1.invoke(() -> startSender("ln_Serial"));
@@ -343,18 +340,16 @@ public class StatusGatewaySenderCommandDUnitTest implements Serializable {
cmdResult = gfsh.executeCommand(command);
assertThat(cmdResult).isNotNull();
- tableResultData = ((CompositeResultData) cmdResult.getResultData())
- .retrieveSection(CliStrings.SECTION_GATEWAY_SENDER_AVAILABLE)
- .retrieveTable(CliStrings.TABLE_GATEWAY_SENDER);
- result_Status = tableResultData.retrieveAllValues(CliStrings.RESULT_STATUS);
- assertThat(result_Status).hasSize(2);
- assertThat(result_Status).doesNotContain(CliStrings.GATEWAY_NOT_RUNNING);
-
- tableResultData = ((CompositeResultData) cmdResult.getResultData())
- .retrieveSection(CliStrings.SECTION_GATEWAY_SENDER_NOT_AVAILABLE)
- .retrieveTable(CliStrings.TABLE_GATEWAY_SENDER);
- result_hosts = tableResultData.retrieveAllValues(CliStrings.RESULT_HOST_MEMBER);
- assertThat(result_hosts).hasSize(1);
+ tableResultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.SECTION_GATEWAY_SENDER_AVAILABLE);
+ resultStatus = tableResultData.getValuesInColumn(CliStrings.RESULT_STATUS);
+ assertThat(resultStatus).hasSize(2);
+ assertThat(resultStatus).doesNotContain(CliStrings.GATEWAY_NOT_RUNNING);
+
+ tableResultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.SECTION_GATEWAY_SENDER_NOT_AVAILABLE);
+ resultHosts = tableResultData.getValuesInColumn(CliStrings.RESULT_HOST_MEMBER);
+ assertThat(resultHosts).hasSize(1);
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
}
diff --git a/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/StopGatewayReceiverCommandDUnitTest.java b/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/StopGatewayReceiverCommandDUnitTest.java
index 0b365f1..b3737ed 100644
--- a/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/StopGatewayReceiverCommandDUnitTest.java
+++ b/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/StopGatewayReceiverCommandDUnitTest.java
@@ -37,7 +37,8 @@ import org.apache.geode.distributed.DistributedMember;
import org.apache.geode.management.cli.Result;
import org.apache.geode.management.internal.cli.i18n.CliStrings;
import org.apache.geode.management.internal.cli.result.CommandResult;
-import org.apache.geode.management.internal.cli.result.TabularResultData;
+import org.apache.geode.management.internal.cli.result.model.ResultModel;
+import org.apache.geode.management.internal.cli.result.model.TabularResultModel;
import org.apache.geode.test.dunit.rules.ClusterStartupRule;
import org.apache.geode.test.dunit.rules.MemberVM;
import org.apache.geode.test.junit.categories.WanTest;
@@ -120,10 +121,10 @@ public class StopGatewayReceiverCommandDUnitTest implements Serializable {
CommandResult cmdResult = gfsh.executeCommand(command);
assertThat(cmdResult).isNotNull();
- TabularResultData resultData = (TabularResultData) cmdResult.getResultData();
- List<String> status = resultData.retrieveAllValues("Result");
- assertThat(status).hasSize(3);
- assertThat(status).contains("OK");
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.STOP_GATEWAYRECEIVER);
+ List<String> status = resultData.getValuesInColumn("Result");
+ assertThat(status).containsExactlyInAnyOrder("OK", "OK", "OK");
locatorSite1
.invoke(() -> validateGatewayReceiverMXBeanProxy(getMember(server1.getVM()), false));
@@ -169,7 +170,11 @@ public class StopGatewayReceiverCommandDUnitTest implements Serializable {
String strCmdResult = cmdResult.toString();
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- assertThat(strCmdResult).contains("stopped on member");
+
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.STOP_GATEWAYRECEIVER);
+ List<String> messages = resultData.getValuesInColumn("Message");
+ assertThat(messages.get(0)).contains("is stopped on member");
locatorSite1
.invoke(() -> validateGatewayReceiverMXBeanProxy(getMember(server1.getVM()), false));
@@ -210,11 +215,10 @@ public class StopGatewayReceiverCommandDUnitTest implements Serializable {
assertThat(cmdResult).isNotNull();
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- TabularResultData resultData = (TabularResultData) cmdResult.getResultData();
- List<String> status = resultData.retrieveAllValues("Result");
- assertThat(status).hasSize(3);
- assertThat(status).doesNotContain("Error");
- assertThat(status).contains("OK");
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.STOP_GATEWAYRECEIVER);
+ List<String> status = resultData.getValuesInColumn("Result");
+ assertThat(status).containsExactlyInAnyOrder("OK", "OK", "OK");
locatorSite1
.invoke(() -> validateGatewayReceiverMXBeanProxy(getMember(server1.getVM()), false));
@@ -267,11 +271,10 @@ public class StopGatewayReceiverCommandDUnitTest implements Serializable {
assertThat(cmdResult).isNotNull();
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- TabularResultData resultData = (TabularResultData) cmdResult.getResultData();
- List<String> status = resultData.retrieveAllValues("Result");
- assertThat(status).hasSize(4);
- assertThat(status).doesNotContain("Error");
- assertThat(status).contains("OK");
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.STOP_GATEWAYRECEIVER);
+ List<String> status = resultData.getValuesInColumn("Result");
+ assertThat(status).containsExactlyInAnyOrder("OK", "OK", "OK", "OK");
locatorSite1
.invoke(() -> validateGatewayReceiverMXBeanProxy(getMember(server1.getVM()), false));
diff --git a/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/StopGatewaySenderCommandDUnitTest.java b/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/StopGatewaySenderCommandDUnitTest.java
index 5bc61bd..f31f5b2 100644
--- a/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/StopGatewaySenderCommandDUnitTest.java
+++ b/geode-wan/src/distributedTest/java/org/apache/geode/internal/cache/wan/wancommand/StopGatewaySenderCommandDUnitTest.java
@@ -37,7 +37,8 @@ import org.apache.geode.distributed.DistributedMember;
import org.apache.geode.management.cli.Result;
import org.apache.geode.management.internal.cli.i18n.CliStrings;
import org.apache.geode.management.internal.cli.result.CommandResult;
-import org.apache.geode.management.internal.cli.result.TabularResultData;
+import org.apache.geode.management.internal.cli.result.model.ResultModel;
+import org.apache.geode.management.internal.cli.result.model.TabularResultModel;
import org.apache.geode.test.dunit.IgnoredException;
import org.apache.geode.test.dunit.rules.ClusterStartupRule;
import org.apache.geode.test.dunit.rules.MemberVM;
@@ -127,10 +128,10 @@ public class StopGatewaySenderCommandDUnitTest implements Serializable {
assertThat(cmdResult).isNotNull();
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- TabularResultData resultData = (TabularResultData) cmdResult.getResultData();
- List<String> status = resultData.retrieveAllValues("Result");
- assertThat(status).hasSize(3);
- assertThat(status).contains("OK");
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.STOP_GATEWAYSENDER);
+ List<String> status = resultData.getValuesInColumn("Result");
+ assertThat(status).containsExactlyInAnyOrder("OK", "OK", "OK");
locatorSite1.invoke(
() -> validateGatewaySenderMXBeanProxy(getMember(server1.getVM()), "ln", false, false));
@@ -167,9 +168,12 @@ public class StopGatewaySenderCommandDUnitTest implements Serializable {
CommandResult cmdResult = executeCommandWithIgnoredExceptions(command);
assertThat(cmdResult).isNotNull();
- String strCmdResult = cmdResult.toString();
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- assertThat(strCmdResult).contains("is stopped on member");
+
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.STOP_GATEWAYSENDER);
+ List<String> messages = resultData.getValuesInColumn("Message");
+ assertThat(messages.get(0)).contains("is stopped on member");
locatorSite1.invoke(
() -> validateGatewaySenderMXBeanProxy(getMember(server1.getVM()), "ln", false, false));
@@ -214,11 +218,10 @@ public class StopGatewaySenderCommandDUnitTest implements Serializable {
assertThat(cmdResult).isNotNull();
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- TabularResultData resultData = (TabularResultData) cmdResult.getResultData();
- List<String> status = resultData.retrieveAllValues("Result");
- assertThat(status).hasSize(3);
- assertThat(status).doesNotContain("Error");
- assertThat(status).contains("OK");
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.STOP_GATEWAYSENDER);
+ List<String> status = resultData.getValuesInColumn("Result");
+ assertThat(status).containsExactlyInAnyOrder("OK", "OK", "OK");
locatorSite1.invoke(
() -> validateGatewaySenderMXBeanProxy(getMember(server1.getVM()), "ln", false, false));
@@ -282,11 +285,10 @@ public class StopGatewaySenderCommandDUnitTest implements Serializable {
assertThat(cmdResult).isNotNull();
assertThat(cmdResult.getStatus()).isSameAs(Result.Status.OK);
- TabularResultData resultData = (TabularResultData) cmdResult.getResultData();
- List<String> status = resultData.retrieveAllValues("Result");
- assertThat(status).hasSize(4);
- assertThat(status).doesNotContain("Error");
- assertThat(status).contains("OK");
+ TabularResultModel resultData = ((ResultModel) cmdResult.getResultData())
+ .getTableSection(CliStrings.STOP_GATEWAYSENDER);
+ List<String> status = resultData.getValuesInColumn("Result");
+ assertThat(status).containsExactlyInAnyOrder("OK", "OK", "OK", "OK");
locatorSite1.invoke(
() -> validateGatewaySenderMXBeanProxy(getMember(server1.getVM()), "ln", false, false));