You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by kl...@apache.org on 2017/07/24 19:45:24 UTC
[1/3] geode git commit: Convert to use FunctionContext.getCache()
Repository: geode
Updated Branches:
refs/heads/FunctionContext [created] 96e50e7e3
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/MembersForRegionFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/MembersForRegionFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/MembersForRegionFunction.java
index 72d37e7..d0668b7 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/MembersForRegionFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/MembersForRegionFunction.java
@@ -38,13 +38,11 @@ public class MembersForRegionFunction implements Function, InternalEntity {
private static final long serialVersionUID = 8746830191680509335L;
- private static final String ID = MembersForRegionFunction.class.getName();
-
@Override
public void execute(FunctionContext context) {
Map<String, String> resultMap = new HashMap<String, String>();
try {
- Cache cache = CacheFactory.getAnyInstance();
+ Cache cache = context.getCache();
String memberNameOrId = cache.getDistributedSystem().getDistributedMember().getId();
Object args = (Object) context.getArguments();
String regionName = ((String) args);
@@ -71,11 +69,6 @@ public class MembersForRegionFunction implements Function, InternalEntity {
}
@Override
- public String getId() {
- return MembersForRegionFunction.ID;
- }
-
- @Override
public boolean isHA() {
return false;
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/NetstatFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/NetstatFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/NetstatFunction.java
index 5c1cb29..7ee42cf 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/NetstatFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/NetstatFunction.java
@@ -14,7 +14,12 @@
*/
package org.apache.geode.management.internal.cli.functions;
-import static org.apache.geode.internal.lang.SystemUtils.*;
+import static org.apache.geode.internal.lang.SystemUtils.getOsArchitecture;
+import static org.apache.geode.internal.lang.SystemUtils.getOsName;
+import static org.apache.geode.internal.lang.SystemUtils.getOsVersion;
+import static org.apache.geode.internal.lang.SystemUtils.isLinux;
+import static org.apache.geode.internal.lang.SystemUtils.isMacOSX;
+import static org.apache.geode.internal.lang.SystemUtils.isSolaris;
import java.io.BufferedReader;
import java.io.IOException;
@@ -29,7 +34,6 @@ import org.apache.logging.log4j.Logger;
import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.distributed.DistributedSystem;
-import org.apache.geode.distributed.internal.InternalDistributedSystem;
import org.apache.geode.internal.InternalEntity;
import org.apache.geode.internal.logging.LogService;
import org.apache.geode.management.internal.cli.CliUtil;
@@ -42,14 +46,11 @@ import org.apache.geode.management.internal.cli.i18n.CliStrings;
*
* @since GemFire 7.0
*/
-@SuppressWarnings({"serial"})
public class NetstatFunction implements Function, InternalEntity {
- private static final Logger logger = LogService.getLogger();
- private static final long serialVersionUID = 1L;
- public static final NetstatFunction INSTANCE = new NetstatFunction();
+ private static final long serialVersionUID = 1L;
- private static final String ID = NetstatFunction.class.getName();
+ private static final Logger logger = LogService.getLogger();
private static final String NETSTAT_COMMAND = "netstat";
private static final String LSOF_COMMAND = "lsof";
@@ -61,7 +62,7 @@ public class NetstatFunction implements Function, InternalEntity {
@Override
public void execute(final FunctionContext context) {
- DistributedSystem ds = InternalDistributedSystem.getConnectedInstance();
+ DistributedSystem ds = context.getCache().getDistributedSystem();
if (ds == null || !ds.isConnected()) {
return;
}
@@ -139,6 +140,7 @@ public class NetstatFunction implements Function, InternalEntity {
// TODO: move to finally-block
netstat.destroy();
+
} catch (IOException e) {
// TODO: change this to keep the full stack trace
netstatInfo.append(CliStrings.format(CliStrings.NETSTAT__MSG__COULD_NOT_EXECUTE_0_REASON_1,
@@ -154,7 +156,6 @@ public class NetstatFunction implements Function, InternalEntity {
.append(" output ###################").append(lineSeparator);
if (isLinux() || isMacOSX() || isSolaris()) {
-
ProcessBuilder procBuilder = new ProcessBuilder(LSOF_COMMAND);
try {
Process lsof = procBuilder.start();
@@ -167,6 +168,7 @@ public class NetstatFunction implements Function, InternalEntity {
}
// TODO: move this to finally-block
lsof.destroy();
+
} catch (IOException e) {
// TODO: change this to keep the full stack trace
String message = e.getMessage();
@@ -201,11 +203,6 @@ public class NetstatFunction implements Function, InternalEntity {
}
@Override
- public String getId() {
- return ID;
- }
-
- @Override
public boolean optimizeForWrite() {
return false;
}
@@ -221,6 +218,7 @@ public class NetstatFunction implements Function, InternalEntity {
}
public static class NetstatFunctionArgument implements Serializable {
+
private static final long serialVersionUID = 1L;
private final String lineSeparator;
@@ -241,6 +239,7 @@ public class NetstatFunction implements Function, InternalEntity {
}
public static class NetstatFunctionResult implements Serializable {
+
private static final long serialVersionUID = 1L;
private final String host;
@@ -266,4 +265,5 @@ public class NetstatFunction implements Function, InternalEntity {
return compressedBytes;
}
}
+
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RebalanceFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RebalanceFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RebalanceFunction.java
index 218f212..a914d07 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RebalanceFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RebalanceFunction.java
@@ -21,7 +21,6 @@ import java.util.concurrent.CancellationException;
import org.apache.logging.log4j.Logger;
import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.CacheFactory;
import org.apache.geode.cache.control.RebalanceFactory;
import org.apache.geode.cache.control.RebalanceOperation;
import org.apache.geode.cache.control.RebalanceResults;
@@ -32,23 +31,15 @@ import org.apache.geode.cache.partition.PartitionRebalanceInfo;
import org.apache.geode.internal.InternalEntity;
import org.apache.geode.internal.logging.LogService;
-
-
public class RebalanceFunction implements Function, InternalEntity {
- private static final Logger logger = LogService.getLogger();
-
- public static final String ID = RebalanceFunction.class.getName();
-
private static final long serialVersionUID = 1L;
+ private static final Logger logger = LogService.getLogger();
+
@Override
public void execute(FunctionContext context) {
-
- RebalanceOperation op = null;
- String[] str = new String[0];
-
- Cache cache = CacheFactory.getAnyInstance();
+ Cache cache = context.getCache();
ResourceManager manager = cache.getResourceManager();
Object[] args = (Object[]) context.getArguments();
String simulate = ((String) args[0]);
@@ -59,6 +50,7 @@ public class RebalanceFunction implements Function, InternalEntity {
rbFactory.includeRegions(includeRegionNames);
RebalanceResults results = null;
+ RebalanceOperation op;
if (simulate.equals("true")) {
op = rbFactory.simulate();
} else {
@@ -81,8 +73,10 @@ public class RebalanceFunction implements Function, InternalEntity {
PartitionRebalanceInfo rgn = (PartitionRebalanceInfo) it.next();
str1.append(rgn.getRegionPath() + ",");
}
+
logger.info("Starting RebalanceFunction str1={}", str1);
context.getResultSender().lastResult(str1.toString());
+
} catch (CancellationException e) {
logger.info("Starting RebalanceFunction CancellationException: ", e.getMessage(), e);
context.getResultSender().lastResult("CancellationException1 " + e.getMessage());
@@ -93,11 +87,6 @@ public class RebalanceFunction implements Function, InternalEntity {
}
@Override
- public String getId() {
- return RebalanceFunction.ID;
- }
-
- @Override
public boolean hasResult() {
return true;
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RegionAlterFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RegionAlterFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RegionAlterFunction.java
index 79dcbd4..05228af 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RegionAlterFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RegionAlterFunction.java
@@ -21,14 +21,13 @@ import org.apache.logging.log4j.Logger;
import org.apache.geode.SystemFailure;
import org.apache.geode.cache.AttributesMutator;
import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.CacheFactory;
import org.apache.geode.cache.CacheListener;
import org.apache.geode.cache.CacheLoader;
import org.apache.geode.cache.CacheWriter;
import org.apache.geode.cache.ExpirationAction;
import org.apache.geode.cache.ExpirationAttributes;
import org.apache.geode.cache.Region;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.cache.execute.ResultSender;
import org.apache.geode.internal.ClassPathLoader;
@@ -46,11 +45,12 @@ import org.apache.geode.management.internal.configuration.domain.XmlEntity;
*
* @since GemFire 8.0
*/
-public class RegionAlterFunction extends FunctionAdapter implements InternalEntity {
- private static final Logger logger = LogService.getLogger();
+public class RegionAlterFunction implements InternalEntity, Function {
private static final long serialVersionUID = -4846425364943216425L;
+ private static final Logger logger = LogService.getLogger();
+
@Override
public boolean isHA() {
return false;
@@ -60,7 +60,7 @@ public class RegionAlterFunction extends FunctionAdapter implements InternalEnti
public void execute(FunctionContext context) {
ResultSender<Object> resultSender = context.getResultSender();
- Cache cache = CacheFactory.getAnyInstance();
+ Cache cache = context.getCache();
String memberNameOrId =
CliUtil.getMemberNameOrId(cache.getDistributedSystem().getDistributedMember());
@@ -313,7 +313,6 @@ public class RegionAlterFunction extends FunctionAdapter implements InternalEnti
return new ExpirationAttributes(timeout, action);
}
- @SuppressWarnings("unchecked")
private static <K> Class<K> forName(String classToLoadName, String neededFor) {
Class<K> loadedClass = null;
try {
@@ -337,7 +336,7 @@ public class RegionAlterFunction extends FunctionAdapter implements InternalEnti
}
private static <K> K newInstance(Class<K> klass, String neededFor) {
- K instance = null;
+ K instance;
try {
instance = klass.newInstance();
} catch (InstantiationException e) {
@@ -354,8 +353,4 @@ public class RegionAlterFunction extends FunctionAdapter implements InternalEnti
return instance;
}
- @Override
- public String getId() {
- return RegionAlterFunction.class.getName();
- }
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RegionCreateFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RegionCreateFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RegionCreateFunction.java
index 6ae10a3..a976157 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RegionCreateFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RegionCreateFunction.java
@@ -20,7 +20,6 @@ import org.apache.commons.lang.StringUtils;
import org.apache.logging.log4j.Logger;
import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.CacheFactory;
import org.apache.geode.cache.CacheListener;
import org.apache.geode.cache.CacheLoader;
import org.apache.geode.cache.CacheWriter;
@@ -33,7 +32,7 @@ import org.apache.geode.cache.RegionAttributes;
import org.apache.geode.cache.RegionExistsException;
import org.apache.geode.cache.RegionFactory;
import org.apache.geode.cache.RegionShortcut;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.cache.execute.ResultSender;
import org.apache.geode.compression.Compressor;
@@ -50,18 +49,13 @@ import org.apache.geode.management.internal.cli.util.RegionPath;
import org.apache.geode.management.internal.configuration.domain.XmlEntity;
/**
- *
* @since GemFire 7.0
*/
-public class RegionCreateFunction extends FunctionAdapter implements InternalEntity {
-
- private static final Logger logger = LogService.getLogger();
+public class RegionCreateFunction implements InternalEntity, Function {
private static final long serialVersionUID = 8746830191680509335L;
- private static final String ID = RegionCreateFunction.class.getName();
-
- public static RegionCreateFunction INSTANCE = new RegionCreateFunction();
+ private static final Logger logger = LogService.getLogger();
@Override
public boolean isHA() {
@@ -72,7 +66,7 @@ public class RegionCreateFunction extends FunctionAdapter implements InternalEnt
public void execute(FunctionContext context) {
ResultSender<Object> resultSender = context.getResultSender();
- Cache cache = CacheFactory.getAnyInstance();
+ Cache cache = context.getCache();
String memberNameOrId =
CliUtil.getMemberNameOrId(cache.getDistributedSystem().getDistributedMember());
@@ -95,6 +89,7 @@ public class RegionCreateFunction extends FunctionAdapter implements InternalEnt
resultSender.lastResult(new CliFunctionResult(memberNameOrId, xmlEntity,
CliStrings.format(CliStrings.CREATE_REGION__MSG__REGION_0_CREATED_ON_1,
new Object[] {createdRegion.getFullPath(), memberNameOrId})));
+
} catch (IllegalStateException e) {
String exceptionMsg = e.getMessage();
String localizedString =
@@ -136,8 +131,6 @@ public class RegionCreateFunction extends FunctionAdapter implements InternalEnt
}
public static <K, V> Region<?, ?> createRegion(Cache cache, RegionFunctionArgs regionCreateArgs) {
- Region<K, V> createdRegion = null;
-
final String regionPath = regionCreateArgs.getRegionPath();
final RegionShortcut regionShortcut = regionCreateArgs.getRegionShortcut();
final String useAttributesFrom = regionCreateArgs.getUseAttributesFrom();
@@ -352,6 +345,7 @@ public class RegionCreateFunction extends FunctionAdapter implements InternalEnt
String regionName = regionPathData.getName();
+ Region<K, V> createdRegion = null;
if (parentRegion != null) {
createdRegion = factory.createSubregion(parentRegion, regionName);
} else {
@@ -361,7 +355,6 @@ public class RegionCreateFunction extends FunctionAdapter implements InternalEnt
return createdRegion;
}
- @SuppressWarnings("unchecked")
private static <K, V> PartitionAttributes<K, V> extractPartitionAttributes(Cache cache,
RegionAttributes<K, V> regionAttributes, RegionFunctionArgs regionCreateArgs) {
RegionFunctionArgs.PartitionArgs partitionArgs = regionCreateArgs.getPartitionArgs();
@@ -418,7 +411,6 @@ public class RegionCreateFunction extends FunctionAdapter implements InternalEnt
return prAttrFactory.create();
}
-
private static Class<PartitionResolver> forName(String className, String neededFor) {
if (StringUtils.isBlank(className)) {
throw new IllegalArgumentException(
@@ -452,8 +444,4 @@ public class RegionCreateFunction extends FunctionAdapter implements InternalEnt
}
}
- @Override
- public String getId() {
- return ID;
- }
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RegionDestroyFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RegionDestroyFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RegionDestroyFunction.java
index 5e4af3d..0b69000 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RegionDestroyFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RegionDestroyFunction.java
@@ -15,7 +15,6 @@
package org.apache.geode.management.internal.cli.functions;
import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.CacheFactory;
import org.apache.geode.cache.Region;
import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
@@ -25,15 +24,11 @@ import org.apache.geode.management.internal.cli.i18n.CliStrings;
import org.apache.geode.management.internal.configuration.domain.XmlEntity;
/**
- *
* @since GemFire 7.0
*/
public class RegionDestroyFunction implements Function, InternalEntity {
- private static final long serialVersionUID = 9172773671865750685L;
-
- public static final RegionDestroyFunction INSTANCE = new RegionDestroyFunction();
- private static final String ID = RegionDestroyFunction.class.getName();
+ private static final long serialVersionUID = 9172773671865750685L;
@Override
public boolean hasResult() {
@@ -49,7 +44,7 @@ public class RegionDestroyFunction implements Function, InternalEntity {
Object arguments = context.getArguments();
if (arguments != null) {
regionPath = (String) arguments;
- Cache cache = CacheFactory.getAnyInstance();
+ Cache cache = context.getCache();
Region<?, ?> region = cache.getRegion(regionPath);
region.destroyRegion();
String regionName =
@@ -59,8 +54,10 @@ public class RegionDestroyFunction implements Function, InternalEntity {
}
}
context.getResultSender().lastResult(new CliFunctionResult("", false, "FAILURE"));
+
} catch (IllegalStateException e) {
context.getResultSender().lastResult(new CliFunctionResult("", e, null));
+
} catch (Exception ex) {
context.getResultSender()
.lastResult(new CliFunctionResult("",
@@ -72,11 +69,6 @@ public class RegionDestroyFunction implements Function, InternalEntity {
}
@Override
- public String getId() {
- return ID;
- }
-
- @Override
public boolean optimizeForWrite() {
return false;
}
@@ -85,4 +77,5 @@ public class RegionDestroyFunction implements Function, InternalEntity {
public boolean isHA() {
return false;
}
+
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RegionFunctionArgs.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RegionFunctionArgs.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RegionFunctionArgs.java
index 3af79eb..3d0ba12 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RegionFunctionArgs.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/RegionFunctionArgs.java
@@ -36,6 +36,7 @@ import org.apache.geode.management.internal.cli.i18n.CliStrings;
* @since GemFire 7.0
*/
public class RegionFunctionArgs implements Serializable {
+
private static final long serialVersionUID = -5158224572470173267L;
private final String regionPath;
@@ -93,6 +94,7 @@ public class RegionFunctionArgs implements Serializable {
Long prRecoveryDelay, Integer prRedundantCopies, Long prStartupRecoveryDelay,
Long prTotalMaxMemory, Integer prTotalNumBuckets, Integer evictionMax, String compressor,
Boolean offHeap, Boolean mcastEnabled, final String partitionResolver) {
+
this.regionPath = regionPath;
this.regionShortcut = regionShortcut;
this.useAttributesFrom = useAttributesFrom;
@@ -506,12 +508,12 @@ public class RegionFunctionArgs implements Serializable {
/**
* @return the regionAttributes
*/
- @SuppressWarnings("unchecked")
public <K, V> RegionAttributes<K, V> getRegionAttributes() {
return (RegionAttributes<K, V>) this.regionAttributes;
}
public static class ExpirationAttrs implements Serializable {
+
private static final long serialVersionUID = 1474255033398008062L;
private ExpirationFor type;
@@ -596,6 +598,7 @@ public class RegionFunctionArgs implements Serializable {
}
public static class PartitionArgs implements Serializable {
+
private static final long serialVersionUID = 5907052187323280919L;
private final String prColocatedWith;
@@ -775,4 +778,5 @@ public class RegionFunctionArgs implements Serializable {
return isSetPRTotalNumBuckets;
}
}
+
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ShowMissingDiskStoresFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ShowMissingDiskStoresFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ShowMissingDiskStoresFunction.java
index 2a1b746..18def96 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ShowMissingDiskStoresFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ShowMissingDiskStoresFunction.java
@@ -19,11 +19,10 @@ import java.util.List;
import java.util.Map;
import java.util.Set;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.distributed.DistributedMember;
import org.apache.geode.internal.InternalEntity;
-import org.apache.geode.internal.cache.GemFireCacheImpl;
import org.apache.geode.internal.cache.InternalCache;
import org.apache.geode.internal.cache.PartitionedRegion;
import org.apache.geode.internal.cache.partitioned.ColocatedRegionDetails;
@@ -31,16 +30,17 @@ import org.apache.geode.internal.cache.persistence.PersistentMemberID;
import org.apache.geode.internal.cache.persistence.PersistentMemberManager;
import org.apache.geode.internal.cache.persistence.PersistentMemberPattern;
-public class ShowMissingDiskStoresFunction extends FunctionAdapter implements InternalEntity {
+public class ShowMissingDiskStoresFunction implements InternalEntity, Function {
@Override
public void execute(FunctionContext context) {
- final Set<PersistentMemberPattern> memberMissingIDs = new HashSet<PersistentMemberPattern>();
- Set<ColocatedRegionDetails> missingColocatedRegions = new HashSet<ColocatedRegionDetails>();
-
if (context == null) {
throw new RuntimeException();
}
+
+ final Set<PersistentMemberPattern> memberMissingIDs = new HashSet<>();
+ Set<ColocatedRegionDetails> missingColocatedRegions = new HashSet<>();
+
try {
final InternalCache cache = (InternalCache) context.getCache();
@@ -80,13 +80,10 @@ public class ShowMissingDiskStoresFunction extends FunctionAdapter implements In
context.getResultSender().lastResult(missingColocatedRegions);
}
}
+
} catch (Exception e) {
context.getResultSender().sendException(e);
}
}
- @Override
- public String getId() {
- return getClass().getName();
- }
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ShutDownFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ShutDownFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ShutDownFunction.java
index 83d694f..8fcc6fe 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ShutDownFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ShutDownFunction.java
@@ -14,56 +14,52 @@
*/
package org.apache.geode.management.internal.cli.functions;
+import java.util.concurrent.ExecutionException;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Executors;
+import java.util.concurrent.Future;
+
+import org.apache.logging.log4j.Logger;
+
+import org.apache.geode.cache.Cache;
import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
-import org.apache.geode.distributed.internal.InternalDistributedSystem;
+import org.apache.geode.distributed.DistributedSystem;
import org.apache.geode.internal.InternalEntity;
import org.apache.geode.internal.logging.LogService;
import org.apache.geode.internal.tcp.ConnectionTable;
-import org.apache.logging.log4j.Logger;
-
-import java.util.concurrent.ExecutionException;
-import java.util.concurrent.ExecutorService;
-import java.util.concurrent.Executors;
-import java.util.concurrent.Future;
/**
- *
* Class for Shutdown function
- *
- *
- *
*/
public class ShutDownFunction implements Function, InternalEntity {
- private static final Logger logger = LogService.getLogger();
- public static final String ID = ShutDownFunction.class.getName();
private static final long serialVersionUID = 1L;
+ private static final Logger logger = LogService.getLogger();
+
@Override
public void execute(FunctionContext context) {
try {
- final InternalDistributedSystem system = InternalDistributedSystem.getConnectedInstance();
- if (system == null) {
- return;
- }
- String memberName = system.getDistributedMember().getId();
+ Cache cache = context.getCache();
+ String memberName = cache.getDistributedSystem().getDistributedMember().getId();
logger.info("Received GFSH shutdown. Shutting down member " + memberName);
- disconnectInNonDaemonThread(system);
+ disconnectInNonDaemonThread(cache.getDistributedSystem());
context.getResultSender().lastResult("SUCCESS: succeeded in shutting down " + memberName);
+
} catch (Exception ex) {
logger.warn("Error during shutdown", ex);
context.getResultSender().lastResult("FAILURE: failed in shutting down " + ex.getMessage());
}
}
- /*
+ /**
* The shutdown is performed in a separate, non-daemon thread so that the JVM does not shut down
* prematurely before the full process has completed.
*/
- private void disconnectInNonDaemonThread(final InternalDistributedSystem ids)
+ private void disconnectInNonDaemonThread(final DistributedSystem ids)
throws InterruptedException, ExecutionException {
ExecutorService exec = Executors.newSingleThreadExecutor();
Future future = exec.submit(() -> {
@@ -80,12 +76,6 @@ public class ShutDownFunction implements Function, InternalEntity {
}
@Override
- public String getId() {
- return ShutDownFunction.ID;
-
- }
-
- @Override
public boolean hasResult() {
return true;
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/SizeExportLogsFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/SizeExportLogsFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/SizeExportLogsFunction.java
index fbb60a0..02ae1ac 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/SizeExportLogsFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/SizeExportLogsFunction.java
@@ -17,9 +17,6 @@ package org.apache.geode.management.internal.cli.functions;
import java.io.File;
import java.io.IOException;
-import org.apache.geode.management.ManagementException;
-import org.apache.geode.management.internal.cli.util.BytesToString;
-import org.apache.geode.management.internal.cli.util.LogExporter;
import org.apache.logging.log4j.Logger;
import org.apache.geode.cache.execute.Function;
@@ -27,15 +24,19 @@ import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.distributed.DistributedMember;
import org.apache.geode.distributed.internal.DistributionConfig;
import org.apache.geode.internal.InternalEntity;
-import org.apache.geode.internal.cache.GemFireCacheImpl;
import org.apache.geode.internal.cache.InternalCache;
import org.apache.geode.internal.logging.LogService;
+import org.apache.geode.management.ManagementException;
+import org.apache.geode.management.internal.cli.util.BytesToString;
+import org.apache.geode.management.internal.cli.util.LogExporter;
import org.apache.geode.management.internal.cli.util.LogFilter;
public class SizeExportLogsFunction extends ExportLogsFunction implements Function, InternalEntity {
- private static final Logger LOGGER = LogService.getLogger();
+
private static final long serialVersionUID = 1L;
+ private static final Logger logger = LogService.getLogger();
+
@Override
public void execute(final FunctionContext context) {
try {
@@ -58,8 +59,7 @@ public class SizeExportLogsFunction extends ExportLogsFunction implements Functi
}
} catch (Exception e) {
- e.printStackTrace();
- LOGGER.error(e.getMessage());
+ logger.error(e);
context.getResultSender().sendException(e);
}
}
@@ -70,8 +70,8 @@ public class SizeExportLogsFunction extends ExportLogsFunction implements Functi
long estimateLogFileSize(final DistributedMember member, final File logFile,
final File statArchive, final Args args) throws IOException {
- if (LOGGER.isDebugEnabled()) {
- LOGGER.debug("SizeExportLogsFunction started for member {}", member);
+ if (logger.isDebugEnabled()) {
+ logger.debug("SizeExportLogsFunction started for member {}", member);
}
File baseLogFile = null;
@@ -90,8 +90,9 @@ public class SizeExportLogsFunction extends ExportLogsFunction implements Functi
long estimatedSize =
new LogExporter(logFilter, baseLogFile, baseStatsFile).estimateFilteredSize();
- LOGGER.info("Estimated log file size: " + estimatedSize);
+ logger.info("Estimated log file size: " + estimatedSize);
return estimatedSize;
}
+
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/UndeployFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/UndeployFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/UndeployFunction.java
index 031c855..6f9e0e0 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/UndeployFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/UndeployFunction.java
@@ -16,34 +16,27 @@ package org.apache.geode.management.internal.cli.functions;
import java.util.ArrayList;
import java.util.List;
-import java.util.StringTokenizer;
import org.apache.commons.lang.ArrayUtils;
-import org.apache.geode.internal.ClassPathLoader;
import org.apache.logging.log4j.Logger;
import org.apache.geode.SystemFailure;
+import org.apache.geode.cache.Cache;
import org.apache.geode.cache.CacheClosedException;
-import org.apache.geode.cache.CacheFactory;
import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.distributed.DistributedMember;
-import org.apache.geode.internal.InternalEntity;
+import org.apache.geode.internal.ClassPathLoader;
import org.apache.geode.internal.DeployedJar;
+import org.apache.geode.internal.InternalEntity;
import org.apache.geode.internal.JarDeployer;
-import org.apache.geode.internal.cache.InternalCache;
import org.apache.geode.internal.logging.LogService;
public class UndeployFunction implements Function, InternalEntity {
- private static final Logger logger = LogService.getLogger();
-
- public static final String ID = UndeployFunction.class.getName();
private static final long serialVersionUID = 1L;
- private InternalCache getCache() {
- return (InternalCache) CacheFactory.getAnyInstance();
- }
+ private static final Logger logger = LogService.getLogger();
@Override
public void execute(FunctionContext context) {
@@ -53,7 +46,7 @@ public class UndeployFunction implements Function, InternalEntity {
try {
final Object[] args = (Object[]) context.getArguments();
final String[] jarFilenameList = (String[]) args[0]; // Comma separated
- InternalCache cache = getCache();
+ Cache cache = context.getCache();
final JarDeployer jarDeployer = ClassPathLoader.getLatest().getJarDeployer();
@@ -114,11 +107,6 @@ public class UndeployFunction implements Function, InternalEntity {
}
@Override
- public String getId() {
- return ID;
- }
-
- @Override
public boolean hasResult() {
return true;
}
@@ -132,4 +120,5 @@ public class UndeployFunction implements Function, InternalEntity {
public boolean isHA() {
return false;
}
+
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/UnregisterFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/UnregisterFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/UnregisterFunction.java
index 18e16ac..7471586 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/UnregisterFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/UnregisterFunction.java
@@ -14,26 +14,16 @@
*/
package org.apache.geode.management.internal.cli.functions;
-import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.CacheFactory;
import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.cache.execute.FunctionService;
-import org.apache.geode.distributed.internal.InternalDistributedSystem;
import org.apache.geode.internal.InternalEntity;
-import org.apache.geode.internal.admin.remote.ShutdownAllRequest;
/**
- *
* Class for Unregister function
- *
- *
- *
*/
-
-
public class UnregisterFunction implements Function, InternalEntity {
- public static final String ID = UnregisterFunction.class.getName();
+
private static final long serialVersionUID = 1L;
@Override
@@ -42,16 +32,11 @@ public class UnregisterFunction implements Function, InternalEntity {
String functionId = (String) args[0];
try {
FunctionService.unregisterFunction(functionId);
+ context.getResultSender().lastResult("Succeeded in unregistering");
+
} catch (Exception e) {
context.getResultSender().lastResult("Failed in unregistering " + e.getMessage());
}
- context.getResultSender().lastResult("Succeeded in unregistering");
- }
-
- @Override
- public String getId() {
- return UnregisterFunction.ID;
-
}
@Override
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/UserFunctionExecution.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/UserFunctionExecution.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/UserFunctionExecution.java
index 1f9a607..ad86393 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/UserFunctionExecution.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/UserFunctionExecution.java
@@ -19,7 +19,6 @@ import java.util.List;
import java.util.Set;
import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.CacheFactory;
import org.apache.geode.cache.Region;
import org.apache.geode.cache.execute.Execution;
import org.apache.geode.cache.execute.Function;
@@ -33,18 +32,16 @@ import org.apache.geode.management.internal.cli.GfshParser;
import org.apache.geode.management.internal.cli.i18n.CliStrings;
/**
- *
* @since GemFire 7.0
*/
public class UserFunctionExecution implements Function, InternalEntity {
- public static final String ID = UserFunctionExecution.class.getName();
private static final long serialVersionUID = 1L;
@Override
public void execute(FunctionContext context) {
try {
- Cache cache = CacheFactory.getAnyInstance();
+ Cache cache = context.getCache();
DistributedMember member = cache.getDistributedSystem().getDistributedMember();
String[] functionArgs = null;
Object[] args = (Object[]) context.getArguments();
@@ -146,11 +143,6 @@ public class UserFunctionExecution implements Function, InternalEntity {
}
@Override
- public String getId() {
- return UserFunctionExecution.ID;
- }
-
- @Override
public boolean hasResult() {
return true;
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/util/TimeParser.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/util/TimeParser.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/util/TimeParser.java
new file mode 100644
index 0000000..7cb00d6
--- /dev/null
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/util/TimeParser.java
@@ -0,0 +1,49 @@
+/*
+ * 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.util;
+
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.time.LocalDateTime;
+import java.time.ZoneId;
+
+import org.apache.geode.management.internal.cli.commands.ExportLogsCommand;
+
+/**
+ * Extracted from {@link org.apache.geode.management.internal.cli.functions.ExportLogsFunction}.
+ */
+public class TimeParser {
+
+ public static LocalDateTime parseTime(String dateString) {
+ if (dateString == null) {
+ return null;
+ }
+
+ try {
+ SimpleDateFormat df = new SimpleDateFormat(ExportLogsCommand.FORMAT);
+ return df.parse(dateString).toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime();
+ } catch (ParseException e) {
+ try {
+ SimpleDateFormat df = new SimpleDateFormat(ExportLogsCommand.ONLY_DATE_FORMAT);
+ return df.parse(dateString).toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime();
+ } catch (ParseException e1) {
+ return null;
+ }
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/DescribeDiskStoreFunctionJUnitTest.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/DescribeDiskStoreFunctionJUnitTest.java b/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/DescribeDiskStoreFunctionJUnitTest.java
index 4c1f2cb..9d6ff52 100644
--- a/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/DescribeDiskStoreFunctionJUnitTest.java
+++ b/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/DescribeDiskStoreFunctionJUnitTest.java
@@ -48,7 +48,6 @@ import org.apache.geode.cache.execute.ResultSender;
import org.apache.geode.cache.server.CacheServer;
import org.apache.geode.cache.server.ClientSubscriptionConfig;
import org.apache.geode.cache.wan.GatewaySender;
-import org.apache.geode.distributed.DistributedMember;
import org.apache.geode.distributed.internal.membership.InternalDistributedMember;
import org.apache.geode.internal.cache.InternalCache;
import org.apache.geode.internal.lang.Filter;
@@ -204,8 +203,8 @@ public class DescribeDiskStoreFunctionJUnitTest {
return cacheServerDetails;
}
- private DescribeDiskStoreFunction createDescribeDiskStoreFunction(final Cache cache) {
- return new TestDescribeDiskStoreFunction(cache);
+ private DescribeDiskStoreFunction createDescribeDiskStoreFunction() {
+ return new DescribeDiskStoreFunction();
}
private File[] createFileArray(final String... locations) {
@@ -520,6 +519,8 @@ public class DescribeDiskStoreFunctionJUnitTest {
will(returnValue(diskStoreName));
oneOf(mockFunctionContext).getResultSender();
will(returnValue(testResultSender));
+ allowing(mockFunctionContext).getCache();
+ will(returnValue(mockCache));
}
});
@@ -535,7 +536,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
final Set<DiskStoreDetails.AsyncEventQueueDetails> expectedAsyncEventQueueDetails =
setupAsyncEventQueuesForTestExecute(mockCache, diskStoreName);
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(mockCache);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
function.execute(mockFunctionContext);
@@ -585,32 +586,6 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
@Test
- public void testExecuteOnMemberHavingANonGemFireCache() throws Throwable {
- final Cache mockCache = mockContext.mock(Cache.class, "Cache");
-
- final FunctionContext mockFunctionContext =
- mockContext.mock(FunctionContext.class, "FunctionContext");
-
- final TestResultSender testResultSender = new TestResultSender();
-
- mockContext.checking(new Expectations() {
- {
- exactly(0).of(mockFunctionContext).getResultSender();
- will(returnValue(testResultSender));
- }
- });
-
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(mockCache);
-
- function.execute(mockFunctionContext);
-
- final List<?> results = testResultSender.getResults();
-
- assertNotNull(results);
- assertTrue(results.isEmpty());
- }
-
- @Test
public void testExecuteThrowingDiskStoreNotFoundException() throws Exception {
final String diskStoreName = "testDiskStore";
final String memberId = "mockMemberId";
@@ -640,10 +615,12 @@ public class DescribeDiskStoreFunctionJUnitTest {
will(returnValue(diskStoreName));
oneOf(mockFunctionContext).getResultSender();
will(returnValue(testResultSender));
+ allowing(mockFunctionContext).getCache();
+ will(returnValue(mockCache));
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(mockCache);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
function.execute(mockFunctionContext);
@@ -683,10 +660,12 @@ public class DescribeDiskStoreFunctionJUnitTest {
will(returnValue(diskStoreName));
oneOf(mockFunctionContext).getResultSender();
will(returnValue(testResultSender));
+ allowing(mockFunctionContext).getCache();
+ will(returnValue(mockCache));
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(mockCache);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
function.execute(mockFunctionContext);
@@ -740,10 +719,12 @@ public class DescribeDiskStoreFunctionJUnitTest {
will(returnValue(diskStoreName));
oneOf(mockFunctionContext).getResultSender();
will(returnValue(testResultSender));
+ allowing(mockFunctionContext).getCache();
+ will(returnValue(mockCache));
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(mockCache);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
function.execute(mockFunctionContext);
@@ -769,7 +750,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertEquals(expectedDiskStoreName, function.getDiskStoreName(mockRegion));
}
@@ -789,7 +770,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertEquals(DiskStoreDetails.DEFAULT_DISK_STORE_NAME, function.getDiskStoreName(mockRegion));
}
@@ -813,7 +794,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertFalse(function.isOverflowToDisk(mockRegion));
}
@@ -837,7 +818,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertTrue(function.isOverflowToDisk(mockRegion));
}
@@ -857,7 +838,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertFalse(function.isOverflowToDisk(mockRegion));
}
@@ -877,7 +858,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertTrue(function.isPersistent(mockRegion));
}
@@ -897,7 +878,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertTrue(function.isPersistent(mockRegion));
}
@@ -917,7 +898,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertFalse(function.isPersistent(mockRegion));
}
@@ -937,7 +918,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertFalse(function.isPersistent(mockRegion));
}
@@ -957,7 +938,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertFalse(function.isPersistent(mockRegion));
}
@@ -977,7 +958,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertFalse(function.isPersistent(mockRegion));
}
@@ -1002,7 +983,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertTrue(function.isUsingDiskStore(mockRegion, mockDiskStore));
}
@@ -1029,7 +1010,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertTrue(function.isUsingDiskStore(mockRegion, mockDiskStore));
}
@@ -1062,7 +1043,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertTrue(function.isUsingDiskStore(mockRegion, mockDiskStore));
}
@@ -1087,7 +1068,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertFalse(function.isUsingDiskStore(mockRegion, mockDiskStore));
}
@@ -1237,7 +1218,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
final DiskStoreDetails diskStoreDetails = new DiskStoreDetails(diskStoreName, "memberOne");
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(mockCache);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
function.setRegionDetails(mockCache, mockDiskStore, diskStoreDetails);
@@ -1261,7 +1242,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertEquals(expectedDiskStoreName, function.getDiskStoreName(mockCacheServer));
}
@@ -1281,7 +1262,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertEquals(DiskStoreDetails.DEFAULT_DISK_STORE_NAME,
function.getDiskStoreName(mockCacheServer));
@@ -1298,7 +1279,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertNull(function.getDiskStoreName(mockCacheServer));
}
@@ -1323,7 +1304,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertTrue(function.isUsingDiskStore(mockCacheServer, mockDiskStore));
}
@@ -1346,7 +1327,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertFalse(function.isUsingDiskStore(mockCacheServer, mockDiskStore));
}
@@ -1369,7 +1350,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertTrue(function.isUsingDiskStore(mockCacheServer, mockDiskStore));
}
@@ -1421,7 +1402,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
final DiskStoreDetails diskStoreDetails = new DiskStoreDetails(diskStoreName, "memberOne");
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
function.setCacheServerDetails(mockCache, mockDiskStore, diskStoreDetails);
@@ -1441,7 +1422,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertEquals(expectedDiskStoreName, function.getDiskStoreName(mockGatewaySender));
}
@@ -1457,7 +1438,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertEquals(DiskStoreDetails.DEFAULT_DISK_STORE_NAME,
function.getDiskStoreName(mockGatewaySender));
@@ -1474,7 +1455,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertTrue(function.isPersistent(mockGatewaySender));
}
@@ -1490,7 +1471,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertTrue(function.isPersistent(mockGatewaySender));
}
@@ -1512,7 +1493,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertTrue(function.isUsingDiskStore(mockGatewaySender, mockDiskStore));
}
@@ -1532,7 +1513,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertFalse(function.isUsingDiskStore(mockGatewaySender, mockDiskStore));
}
@@ -1552,7 +1533,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertTrue(function.isUsingDiskStore(mockGatewaySender, mockDiskStore));
}
@@ -1578,7 +1559,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
final DiskStoreDetails diskStoreDetails = new DiskStoreDetails(diskStoreName, "memberOne");
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(mockCache);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
function.setPdxSerializationDetails(mockCache, mockDiskStore, diskStoreDetails);
@@ -1604,7 +1585,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
final DiskStoreDetails diskStoreDetails = new DiskStoreDetails("testDiskStore", "memberOne");
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(mockCache);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
function.setPdxSerializationDetails(mockCache, mockDiskStore, diskStoreDetails);
@@ -1626,7 +1607,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
final DiskStoreDetails diskStoreDetails = new DiskStoreDetails("testDiskStore", "memberOne");
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(mockCache);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
function.setPdxSerializationDetails(mockCache, mockDiskStore, diskStoreDetails);
@@ -1646,7 +1627,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertEquals(expectedDiskStoreName, function.getDiskStoreName(mockQueue));
}
@@ -1662,7 +1643,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertEquals(DiskStoreDetails.DEFAULT_DISK_STORE_NAME, function.getDiskStoreName(mockQueue));
}
@@ -1686,7 +1667,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertTrue(function.isUsingDiskStore(mockQueue, mockDiskStore));
}
@@ -1708,7 +1689,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertFalse(function.isUsingDiskStore(mockQueue, mockDiskStore));
}
@@ -1728,7 +1709,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertFalse(function.isUsingDiskStore(mockQueue, mockDiskStore));
}
@@ -1750,7 +1731,7 @@ public class DescribeDiskStoreFunctionJUnitTest {
}
});
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(null);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
assertTrue(function.isUsingDiskStore(mockQueue, mockDiskStore));
}
@@ -1793,27 +1774,13 @@ public class DescribeDiskStoreFunctionJUnitTest {
final DiskStoreDetails diskStoreDetails = new DiskStoreDetails(diskStoreName, "memberOne");
- final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction(mockCache);
+ final DescribeDiskStoreFunction function = createDescribeDiskStoreFunction();
function.setAsyncEventQueueDetails(mockCache, mockDiskStore, diskStoreDetails);
assertAsyncEventQueueDetails(expectedAsyncEventQueueDetails, diskStoreDetails);
}
- private static class TestDescribeDiskStoreFunction extends DescribeDiskStoreFunction {
-
- private final Cache cache;
-
- public TestDescribeDiskStoreFunction(final Cache cache) {
- this.cache = cache;
- }
-
- @Override
- protected Cache getCache() {
- return this.cache;
- }
- }
-
private static class TestResultSender implements ResultSender {
private final List<Object> results = new LinkedList<>();
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/ListDiskStoresFunctionJUnitTest.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/ListDiskStoresFunctionJUnitTest.java b/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/ListDiskStoresFunctionJUnitTest.java
index a8b9193..67c9503 100644
--- a/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/ListDiskStoresFunctionJUnitTest.java
+++ b/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/ListDiskStoresFunctionJUnitTest.java
@@ -34,11 +34,9 @@ import org.junit.Before;
import org.junit.Test;
import org.junit.experimental.categories.Category;
-import org.apache.geode.cache.Cache;
import org.apache.geode.cache.CacheClosedException;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.cache.execute.ResultSender;
-import org.apache.geode.distributed.DistributedMember;
import org.apache.geode.distributed.internal.membership.InternalDistributedMember;
import org.apache.geode.internal.cache.DiskStoreImpl;
import org.apache.geode.internal.cache.InternalCache;
@@ -85,8 +83,8 @@ public class ListDiskStoresFunctionJUnitTest {
return new DiskStoreDetails(id, name, memberId, memberName);
}
- private ListDiskStoresFunction createListDiskStoresFunction(final Cache cache) {
- return new TestListDiskStoresFunction(cache);
+ private ListDiskStoresFunction createListDiskStoresFunction() {
+ return new ListDiskStoresFunction();
}
@Test
@@ -144,10 +142,12 @@ public class ListDiskStoresFunctionJUnitTest {
will(returnValue("ds-persistence"));
oneOf(mockFunctionContext).getResultSender();
will(returnValue(testResultSender));
+ allowing(mockFunctionContext).getCache();
+ will(returnValue(mockCache));
}
});
- final ListDiskStoresFunction function = createListDiskStoresFunction(mockCache);
+ final ListDiskStoresFunction function = createListDiskStoresFunction();
function.execute(mockFunctionContext);
@@ -171,13 +171,7 @@ public class ListDiskStoresFunctionJUnitTest {
final FunctionContext mockFunctionContext =
mockContext.mock(FunctionContext.class, "MockFunctionContext");
- final ListDiskStoresFunction testListDiskStoresFunction =
- new TestListDiskStoresFunction(mockContext.mock(Cache.class, "MockCache")) {
- @Override
- protected Cache getCache() {
- throw new CacheClosedException("Expected");
- }
- };
+ final ListDiskStoresFunction testListDiskStoresFunction = new ListDiskStoresFunction();
final TestResultSender testResultSender = new TestResultSender();
@@ -185,6 +179,9 @@ public class ListDiskStoresFunctionJUnitTest {
{
oneOf(mockFunctionContext).getResultSender();
will(returnValue(testResultSender));
+
+ allowing(mockFunctionContext).getCache();
+ will(throwException(new CacheClosedException("Expected")));
}
});
@@ -219,10 +216,12 @@ public class ListDiskStoresFunctionJUnitTest {
will(returnValue(Collections.emptyList()));
oneOf(mockFunctionContext).getResultSender();
will(returnValue(testResultSender));
+ allowing(mockFunctionContext).getCache();
+ will(returnValue(mockCache));
}
});
- final ListDiskStoresFunction function = createListDiskStoresFunction(mockCache);
+ final ListDiskStoresFunction function = createListDiskStoresFunction();
function.execute(mockFunctionContext);
@@ -240,7 +239,7 @@ public class ListDiskStoresFunctionJUnitTest {
@Test
@SuppressWarnings("unchecked")
public void testExecuteOnMemberWithANonGemFireCache() throws Throwable {
- final Cache mockCache = mockContext.mock(Cache.class, "Cache");
+ final InternalCache mockCache = mockContext.mock(InternalCache.class, "InternalCache");
final FunctionContext mockFunctionContext =
mockContext.mock(FunctionContext.class, "FunctionContext");
@@ -251,10 +250,14 @@ public class ListDiskStoresFunctionJUnitTest {
{
oneOf(mockFunctionContext).getResultSender();
will(returnValue(testResultSender));
+ allowing(mockFunctionContext).getCache();
+ will(returnValue(mockCache));
+ allowing(mockCache).getMyId();
+ allowing(mockCache).listDiskStoresIncludingRegionOwned();
}
});
- final ListDiskStoresFunction function = createListDiskStoresFunction(mockCache);
+ final ListDiskStoresFunction function = createListDiskStoresFunction();
function.execute(mockFunctionContext);
@@ -289,10 +292,12 @@ public class ListDiskStoresFunctionJUnitTest {
will(throwException(new RuntimeException("expected")));
oneOf(mockFunctionContext).getResultSender();
will(returnValue(testResultSender));
+ allowing(mockFunctionContext).getCache();
+ will(returnValue(mockCache));
}
});
- final ListDiskStoresFunction function = createListDiskStoresFunction(mockCache);
+ final ListDiskStoresFunction function = createListDiskStoresFunction();
function.execute(mockFunctionContext);
@@ -305,21 +310,6 @@ public class ListDiskStoresFunctionJUnitTest {
}
}
- private static class TestListDiskStoresFunction extends ListDiskStoresFunction {
-
- private final Cache cache;
-
- public TestListDiskStoresFunction(final Cache cache) {
- assert cache != null : "The Cache cannot be null!";
- this.cache = cache;
- }
-
- @Override
- protected Cache getCache() {
- return cache;
- }
- }
-
private static class TestResultSender implements ResultSender {
private final List<Object> results = new LinkedList<Object>();
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/ListIndexFunctionJUnitTest.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/ListIndexFunctionJUnitTest.java b/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/ListIndexFunctionJUnitTest.java
index 583aa56..335598c 100644
--- a/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/ListIndexFunctionJUnitTest.java
+++ b/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/ListIndexFunctionJUnitTest.java
@@ -155,8 +155,8 @@ public class ListIndexFunctionJUnitTest {
return indexStatisticsDetails;
}
- private ListIndexFunction createListIndexFunction(final Cache cache) {
- return new TestListIndexFunction(cache);
+ private ListIndexFunction createListIndexFunction() {
+ return new ListIndexFunction();
}
private Index createMockIndex(final IndexDetails indexDetails) {
@@ -297,10 +297,12 @@ public class ListIndexFunctionJUnitTest {
createMockIndex(indexDetailsThree), createMockIndex(indexDetailsFour))));
oneOf(mockFunctionContext).getResultSender();
will(returnValue(testResultSender));
+ allowing(mockFunctionContext).getCache();
+ will(returnValue(mockCache));
}
});
- final ListIndexFunction function = createListIndexFunction(mockCache);
+ final ListIndexFunction function = createListIndexFunction();
function.execute(mockFunctionContext);
@@ -357,10 +359,12 @@ public class ListIndexFunctionJUnitTest {
will(returnValue(Collections.emptyList()));
oneOf(mockFunctionContext).getResultSender();
will(returnValue(testResultSender));
+ allowing(mockFunctionContext).getCache();
+ will(returnValue(mockCache));
}
});
- final ListIndexFunction function = createListIndexFunction(mockCache);
+ final ListIndexFunction function = createListIndexFunction();
function.execute(mockFunctionContext);
@@ -403,10 +407,12 @@ public class ListIndexFunctionJUnitTest {
will(throwException(new RuntimeException("expected")));
oneOf(mockFunctionContext).getResultSender();
will(returnValue(testResultSender));
+ allowing(mockFunctionContext).getCache();
+ will(returnValue(mockCache));
}
});
- final ListIndexFunction function = createListIndexFunction(mockCache);
+ final ListIndexFunction function = createListIndexFunction();
function.execute(mockFunctionContext);
@@ -419,21 +425,6 @@ public class ListIndexFunctionJUnitTest {
}
}
- private static class TestListIndexFunction extends ListIndexFunction {
-
- private final Cache cache;
-
- protected TestListIndexFunction(final Cache cache) {
- assert cache != null : "The Cache cannot be null!";
- this.cache = cache;
- }
-
- @Override
- protected Cache getCache() {
- return this.cache;
- }
- }
-
private static class TestResultSender implements ResultSender {
private final List<Object> results = new LinkedList<Object>();
[2/3] geode git commit: Convert to use FunctionContext.getCache()
Posted by kl...@apache.org.
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/DescribeDiskStoreFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/DescribeDiskStoreFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/DescribeDiskStoreFunction.java
index 68cc2e0..cf870ca 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/DescribeDiskStoreFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/DescribeDiskStoreFunction.java
@@ -12,18 +12,20 @@
* or implied. See the License for the specific language governing permissions and limitations under
* the License.
*/
-
package org.apache.geode.management.internal.cli.functions;
+import java.io.File;
+import java.util.Properties;
+
import org.apache.commons.lang.StringUtils;
+import org.apache.logging.log4j.Logger;
+
import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.CacheFactory;
-import org.apache.geode.cache.DataPolicy;
import org.apache.geode.cache.DiskStore;
import org.apache.geode.cache.EvictionAction;
import org.apache.geode.cache.Region;
import org.apache.geode.cache.asyncqueue.AsyncEventQueue;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.cache.server.CacheServer;
import org.apache.geode.cache.wan.GatewaySender;
@@ -35,12 +37,6 @@ import org.apache.geode.internal.logging.LogService;
import org.apache.geode.internal.util.ArrayUtils;
import org.apache.geode.management.internal.cli.domain.DiskStoreDetails;
import org.apache.geode.management.internal.cli.util.DiskStoreNotFoundException;
-import org.apache.logging.log4j.Logger;
-
-import java.io.File;
-import java.util.HashSet;
-import java.util.Properties;
-import java.util.Set;
/**
* The DescribeDiskStoreFunction class is an implementation of a GemFire Function used to collect
@@ -55,17 +51,10 @@ import java.util.Set;
* @see org.apache.geode.management.internal.cli.domain.DiskStoreDetails
* @since GemFire 7.0
*/
-public class DescribeDiskStoreFunction extends FunctionAdapter implements InternalEntity {
+public class DescribeDiskStoreFunction implements InternalEntity, Function {
private static final Logger logger = LogService.getLogger();
- private static final Set<DataPolicy> PERSISTENT_DATA_POLICIES = new HashSet<>(2);
-
- static {
- PERSISTENT_DATA_POLICIES.add(DataPolicy.PERSISTENT_PARTITION);
- PERSISTENT_DATA_POLICIES.add(DataPolicy.PERSISTENT_REPLICATE);
- }
-
protected static void assertState(final boolean condition, final String message,
final Object... args) {
if (!condition) {
@@ -73,61 +62,46 @@ public class DescribeDiskStoreFunction extends FunctionAdapter implements Intern
}
}
- protected Cache getCache() {
- return CacheFactory.getAnyInstance();
- }
-
- public String getId() {
- return getClass().getName();
- }
-
- @SuppressWarnings("unused")
- public void init(final Properties props) {}
-
public void execute(final FunctionContext context) {
- Cache cache = getCache();
+ InternalCache cache = (InternalCache) context.getCache();
try {
- if (cache instanceof InternalCache) {
- InternalCache gemfireCache = (InternalCache) cache;
-
- DistributedMember member = gemfireCache.getMyId();
-
- String diskStoreName = (String) context.getArguments();
- String memberId = member.getId();
- String memberName = member.getName();
-
- DiskStore diskStore = gemfireCache.findDiskStore(diskStoreName);
-
- if (diskStore != null) {
- DiskStoreDetails diskStoreDetails = new DiskStoreDetails(diskStore.getDiskStoreUUID(),
- diskStore.getName(), memberId, memberName);
-
- diskStoreDetails.setAllowForceCompaction(diskStore.getAllowForceCompaction());
- diskStoreDetails.setAutoCompact(diskStore.getAutoCompact());
- diskStoreDetails.setCompactionThreshold(diskStore.getCompactionThreshold());
- diskStoreDetails.setMaxOplogSize(diskStore.getMaxOplogSize());
- diskStoreDetails.setQueueSize(diskStore.getQueueSize());
- diskStoreDetails.setTimeInterval(diskStore.getTimeInterval());
- diskStoreDetails.setWriteBufferSize(diskStore.getWriteBufferSize());
- diskStoreDetails.setDiskUsageWarningPercentage(diskStore.getDiskUsageWarningPercentage());
- diskStoreDetails
- .setDiskUsageCriticalPercentage(diskStore.getDiskUsageCriticalPercentage());
-
- setDiskDirDetails(diskStore, diskStoreDetails);
- setRegionDetails(gemfireCache, diskStore, diskStoreDetails);
- setCacheServerDetails(gemfireCache, diskStore, diskStoreDetails);
- setGatewayDetails(gemfireCache, diskStore, diskStoreDetails);
- setPdxSerializationDetails(gemfireCache, diskStore, diskStoreDetails);
- setAsyncEventQueueDetails(gemfireCache, diskStore, diskStoreDetails);
-
- context.getResultSender().lastResult(diskStoreDetails);
- } else {
- context.getResultSender()
- .sendException(new DiskStoreNotFoundException(
- String.format("A disk store with name (%1$s) was not found on member (%2$s).",
- diskStoreName, memberName)));
- }
+ DistributedMember member = cache.getMyId();
+
+ String diskStoreName = (String) context.getArguments();
+ String memberId = member.getId();
+ String memberName = member.getName();
+
+ DiskStore diskStore = cache.findDiskStore(diskStoreName);
+
+ if (diskStore != null) {
+ DiskStoreDetails diskStoreDetails = new DiskStoreDetails(diskStore.getDiskStoreUUID(),
+ diskStore.getName(), memberId, memberName);
+
+ diskStoreDetails.setAllowForceCompaction(diskStore.getAllowForceCompaction());
+ diskStoreDetails.setAutoCompact(diskStore.getAutoCompact());
+ diskStoreDetails.setCompactionThreshold(diskStore.getCompactionThreshold());
+ diskStoreDetails.setMaxOplogSize(diskStore.getMaxOplogSize());
+ diskStoreDetails.setQueueSize(diskStore.getQueueSize());
+ diskStoreDetails.setTimeInterval(diskStore.getTimeInterval());
+ diskStoreDetails.setWriteBufferSize(diskStore.getWriteBufferSize());
+ diskStoreDetails.setDiskUsageWarningPercentage(diskStore.getDiskUsageWarningPercentage());
+ diskStoreDetails
+ .setDiskUsageCriticalPercentage(diskStore.getDiskUsageCriticalPercentage());
+
+ setDiskDirDetails(diskStore, diskStoreDetails);
+ setRegionDetails(cache, diskStore, diskStoreDetails);
+ setCacheServerDetails(cache, diskStore, diskStoreDetails);
+ setGatewayDetails(cache, diskStore, diskStoreDetails);
+ setPdxSerializationDetails(cache, diskStore, diskStoreDetails);
+ setAsyncEventQueueDetails(cache, diskStore, diskStoreDetails);
+
+ context.getResultSender().lastResult(diskStoreDetails);
+ } else {
+ context.getResultSender()
+ .sendException(new DiskStoreNotFoundException(
+ String.format("A disk store with name (%1$s) was not found on member (%2$s).",
+ diskStoreName, memberName)));
}
} catch (Exception e) {
logger.error("Error occurred while executing 'describe disk-store': {}!", e.getMessage(), e);
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/DestroyDiskStoreFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/DestroyDiskStoreFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/DestroyDiskStoreFunction.java
index c25a534..9dd3a7d 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/DestroyDiskStoreFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/DestroyDiskStoreFunction.java
@@ -18,9 +18,8 @@ import org.apache.logging.log4j.Logger;
import org.apache.geode.SystemFailure;
import org.apache.geode.cache.CacheClosedException;
-import org.apache.geode.cache.CacheFactory;
import org.apache.geode.cache.DiskStore;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.distributed.DistributedMember;
import org.apache.geode.internal.InternalEntity;
@@ -34,14 +33,11 @@ import org.apache.geode.management.internal.configuration.domain.XmlEntity;
*
* @since GemFire 8.0
*/
-public class DestroyDiskStoreFunction extends FunctionAdapter implements InternalEntity {
- private static final Logger logger = LogService.getLogger();
+public class DestroyDiskStoreFunction implements InternalEntity, Function {
private static final long serialVersionUID = 1L;
- private InternalCache getCache() {
- return (InternalCache) CacheFactory.getAnyInstance();
- }
+ private static final Logger logger = LogService.getLogger();
@Override
public void execute(FunctionContext context) {
@@ -52,7 +48,7 @@ public class DestroyDiskStoreFunction extends FunctionAdapter implements Interna
final Object[] args = (Object[]) context.getArguments();
final String diskStoreName = (String) args[0];
- InternalCache cache = getCache();
+ InternalCache cache = (InternalCache) context.getCache();
DistributedMember member = cache.getDistributedSystem().getDistributedMember();
@@ -95,8 +91,4 @@ public class DestroyDiskStoreFunction extends FunctionAdapter implements Interna
}
}
- @Override
- public String getId() {
- return CreateDiskStoreFunction.class.getName();
- }
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/DestroyIndexFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/DestroyIndexFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/DestroyIndexFunction.java
index 24322bc..be8bcd5 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/DestroyIndexFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/DestroyIndexFunction.java
@@ -18,9 +18,8 @@ import java.util.List;
import org.apache.geode.cache.Cache;
import org.apache.geode.cache.CacheClosedException;
-import org.apache.geode.cache.CacheFactory;
import org.apache.geode.cache.Region;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.cache.query.Index;
import org.apache.geode.cache.query.QueryService;
@@ -30,9 +29,7 @@ import org.apache.geode.management.internal.cli.domain.IndexInfo;
import org.apache.geode.management.internal.cli.i18n.CliStrings;
import org.apache.geode.management.internal.configuration.domain.XmlEntity;
-
-
-public class DestroyIndexFunction extends FunctionAdapter implements InternalEntity {
+public class DestroyIndexFunction implements InternalEntity, Function {
private static final long serialVersionUID = 1L;
@@ -42,7 +39,7 @@ public class DestroyIndexFunction extends FunctionAdapter implements InternalEnt
String memberId = null;
try {
- Cache cache = CacheFactory.getAnyInstance();
+ Cache cache = context.getCache();
memberId = cache.getDistributedSystem().getDistributedMember().getId();
QueryService queryService = cache.getQueryService();
String indexName = indexInfo.getIndexName();
@@ -94,10 +91,7 @@ public class DestroyIndexFunction extends FunctionAdapter implements InternalEnt
}
}
- /***
- *
- * @param name
- * @param queryService
+ /**
* @return true if the index was found and removed/false if the index was not found.
*/
private boolean removeIndexByName(String name, QueryService queryService) {
@@ -115,9 +109,4 @@ public class DestroyIndexFunction extends FunctionAdapter implements InternalEnt
return removed;
}
- @Override
- public String getId() {
- return DestroyIndexFunction.class.getName();
- }
-
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ExportConfigFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ExportConfigFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ExportConfigFunction.java
index 49e27b0..8da4141 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ExportConfigFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ExportConfigFunction.java
@@ -23,7 +23,6 @@ import org.apache.logging.log4j.Logger;
import org.apache.geode.SystemFailure;
import org.apache.geode.cache.Cache;
import org.apache.geode.cache.CacheClosedException;
-import org.apache.geode.cache.CacheFactory;
import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.distributed.DistributedMember;
@@ -35,19 +34,18 @@ import org.apache.geode.internal.cache.xmlcache.CacheXmlGenerator;
import org.apache.geode.internal.logging.LogService;
public class ExportConfigFunction implements Function, InternalEntity {
- private static final Logger logger = LogService.getLogger();
-
- public static final String ID = ExportConfigFunction.class.getName();
private static final long serialVersionUID = 1L;
+ private static final Logger logger = LogService.getLogger();
+
@Override
public void execute(FunctionContext context) {
// Declared here so that it's available when returning a Throwable
String memberId = "";
try {
- Cache cache = CacheFactory.getAnyInstance();
+ Cache cache = context.getCache();
DistributedMember member = cache.getDistributedSystem().getDistributedMember();
memberId = member.getId();
@@ -116,11 +114,6 @@ public class ExportConfigFunction implements Function, InternalEntity {
}
@Override
- public String getId() {
- return ID;
- }
-
- @Override
public boolean hasResult() {
return true;
}
@@ -134,4 +127,5 @@ public class ExportConfigFunction implements Function, InternalEntity {
public boolean isHA() {
return false;
}
+
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ExportDataFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ExportDataFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ExportDataFunction.java
index 537678f..23a648e 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ExportDataFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ExportDataFunction.java
@@ -17,26 +17,20 @@ package org.apache.geode.management.internal.cli.functions;
import java.io.File;
import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.CacheFactory;
import org.apache.geode.cache.Region;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.cache.snapshot.RegionSnapshotService;
import org.apache.geode.cache.snapshot.SnapshotOptions.SnapshotFormat;
import org.apache.geode.internal.InternalEntity;
import org.apache.geode.management.internal.cli.i18n.CliStrings;
-/***
+/**
* Function which carries out the export of a region to a file on a member. Uses the
* RegionSnapshotService to export the data
- *
- *
*/
-public class ExportDataFunction extends FunctionAdapter implements InternalEntity {
+public class ExportDataFunction implements InternalEntity, Function {
- /**
- *
- */
private static final long serialVersionUID = 1L;
public void execute(FunctionContext context) {
@@ -45,7 +39,7 @@ public class ExportDataFunction extends FunctionAdapter implements InternalEntit
final String fileName = args[1];
try {
- Cache cache = CacheFactory.getAnyInstance();
+ Cache cache = context.getCache();
Region<?, ?> region = cache.getRegion(regionName);
String hostName = cache.getDistributedSystem().getDistributedMember().getHost();
if (region != null) {
@@ -65,8 +59,4 @@ public class ExportDataFunction extends FunctionAdapter implements InternalEntit
}
}
- public String getId() {
- return ExportDataFunction.class.getName();
- }
-
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ExportLogsFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ExportLogsFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ExportLogsFunction.java
index b2a7e7e..d88c217 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ExportLogsFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ExportLogsFunction.java
@@ -20,10 +20,7 @@ import java.io.FileInputStream;
import java.io.IOException;
import java.io.Serializable;
import java.nio.file.Path;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
-import java.time.ZoneId;
import java.util.Arrays;
import org.apache.commons.lang.StringUtils;
@@ -38,7 +35,6 @@ import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.distributed.internal.DistributionConfig;
import org.apache.geode.internal.InternalEntity;
-import org.apache.geode.internal.cache.GemFireCacheImpl;
import org.apache.geode.internal.cache.InternalCache;
import org.apache.geode.internal.cache.InternalRegionArguments;
import org.apache.geode.internal.logging.LogService;
@@ -47,21 +43,25 @@ import org.apache.geode.management.internal.cli.commands.ExportLogsCommand;
import org.apache.geode.management.internal.cli.util.ExportLogsCacheWriter;
import org.apache.geode.management.internal.cli.util.LogExporter;
import org.apache.geode.management.internal.cli.util.LogFilter;
+import org.apache.geode.management.internal.cli.util.TimeParser;
import org.apache.geode.management.internal.configuration.domain.Configuration;
/**
- * this function extracts the logs using a LogExporter which creates a zip file, and then writes the
+ * Extracts the logs using a LogExporter which creates a zip file, and then writes the
* zip file bytes into a replicated region, this in effect, "stream" the zip file bytes to the
* locator
*
+ * <p>
* The function only extracts .log and .gfs files under server's working directory
*/
public class ExportLogsFunction implements Function, InternalEntity {
+
+ private static final long serialVersionUID = 1L;
+
private static final Logger logger = LogService.getLogger();
public static final String EXPORT_LOGS_REGION = "__exportLogsRegion";
- private static final long serialVersionUID = 1L;
private static final int BUFFER_SIZE = 1024;
@Override
@@ -155,6 +155,7 @@ public class ExportLogsFunction implements Function, InternalEntity {
}
public static class Args implements Serializable {
+
private LocalDateTime startTime;
private LocalDateTime endTime;
private Level logLevel;
@@ -164,8 +165,8 @@ public class ExportLogsFunction implements Function, InternalEntity {
public Args(String startTime, String endTime, String logLevel, boolean logLevelOnly,
boolean logsOnly, boolean statsOnly) {
- this.startTime = parseTime(startTime);
- this.endTime = parseTime(endTime);
+ this.startTime = TimeParser.parseTime(startTime);
+ this.endTime = TimeParser.parseTime(endTime);
if (StringUtils.isBlank(logLevel)) {
this.logLevel = LogLevel.getLevel(ExportLogsCommand.DEFAULT_EXPORT_LOG_LEVEL);
@@ -203,21 +204,4 @@ public class ExportLogsFunction implements Function, InternalEntity {
}
}
- public static LocalDateTime parseTime(String dateString) {
- if (dateString == null) {
- return null;
- }
-
- try {
- SimpleDateFormat df = new SimpleDateFormat(ExportLogsCommand.FORMAT);
- return df.parse(dateString).toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime();
- } catch (ParseException e) {
- try {
- SimpleDateFormat df = new SimpleDateFormat(ExportLogsCommand.ONLY_DATE_FORMAT);
- return df.parse(dateString).toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime();
- } catch (ParseException e1) {
- return null;
- }
- }
- }
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/FetchRegionAttributesFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/FetchRegionAttributesFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/FetchRegionAttributesFunction.java
index 1173568..8e44ce3 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/FetchRegionAttributesFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/FetchRegionAttributesFunction.java
@@ -20,29 +20,24 @@ import org.apache.logging.log4j.Logger;
import org.apache.geode.cache.AttributesFactory;
import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.CacheFactory;
import org.apache.geode.cache.CacheListener;
import org.apache.geode.cache.CacheLoader;
import org.apache.geode.cache.CacheWriter;
import org.apache.geode.cache.Region;
import org.apache.geode.cache.RegionAttributes;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.internal.logging.LogService;
import org.apache.geode.management.internal.cli.i18n.CliStrings;
/**
- *
* @since GemFire 7.0
*/
-public class FetchRegionAttributesFunction extends FunctionAdapter {
- private static final Logger logger = LogService.getLogger();
+public class FetchRegionAttributesFunction implements Function {
private static final long serialVersionUID = 4366812590788342070L;
- private static final String ID = FetchRegionAttributesFunction.class.getName();
-
- public static FetchRegionAttributesFunction INSTANCE = new FetchRegionAttributesFunction();
+ private static final Logger logger = LogService.getLogger();
@Override
public boolean isHA() {
@@ -57,7 +52,7 @@ public class FetchRegionAttributesFunction extends FunctionAdapter {
throw new IllegalArgumentException(
CliStrings.CREATE_REGION__MSG__SPECIFY_VALID_REGION_PATH);
}
- FetchRegionAttributesFunctionResult<?, ?> result = getRegionAttributes(regionPath);
+ FetchRegionAttributesFunctionResult<?, ?> result = getRegionAttributes(context.getCache(), regionPath);
context.getResultSender().lastResult(result);
} catch (IllegalArgumentException e) {
if (logger.isDebugEnabled()) {
@@ -67,10 +62,8 @@ public class FetchRegionAttributesFunction extends FunctionAdapter {
}
}
- @SuppressWarnings("deprecation")
public static <K, V> FetchRegionAttributesFunctionResult<K, V> getRegionAttributes(
- String regionPath) {
- Cache cache = CacheFactory.getAnyInstance();
+ Cache cache, String regionPath) {
Region<K, V> foundRegion = cache.getRegion(regionPath);
if (foundRegion == null) {
@@ -87,12 +80,8 @@ public class FetchRegionAttributesFunction extends FunctionAdapter {
return result;
}
- @Override
- public String getId() {
- return ID;
- }
-
public static class FetchRegionAttributesFunctionResult<K, V> implements Serializable {
+
private static final long serialVersionUID = -3970828263897978845L;
private RegionAttributes<K, V> regionAttributes;
@@ -143,4 +132,5 @@ public class FetchRegionAttributesFunction extends FunctionAdapter {
return cacheWriterClass;
}
}
+
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/FetchSharedConfigurationStatusFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/FetchSharedConfigurationStatusFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/FetchSharedConfigurationStatusFunction.java
index c688d7a..06538ab 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/FetchSharedConfigurationStatusFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/FetchSharedConfigurationStatusFunction.java
@@ -15,24 +15,23 @@
package org.apache.geode.management.internal.cli.functions;
import org.apache.commons.lang.StringUtils;
-import org.apache.geode.cache.execute.FunctionAdapter;
+
+import org.apache.geode.cache.Cache;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.distributed.DistributedMember;
import org.apache.geode.distributed.internal.InternalLocator;
import org.apache.geode.internal.InternalEntity;
-import org.apache.geode.internal.cache.GemFireCacheImpl;
-import org.apache.geode.internal.cache.InternalCache;
import org.apache.geode.management.internal.configuration.domain.SharedConfigurationStatus;
-public class FetchSharedConfigurationStatusFunction extends FunctionAdapter
- implements InternalEntity {
+public class FetchSharedConfigurationStatusFunction implements InternalEntity, Function {
private static final long serialVersionUID = 1L;
@Override
public void execute(FunctionContext context) {
InternalLocator locator = InternalLocator.getLocator();
- InternalCache cache = GemFireCacheImpl.getInstance();
+ Cache cache = context.getCache();
DistributedMember member = cache.getDistributedSystem().getDistributedMember();
SharedConfigurationStatus status = locator.getSharedConfigurationStatus().getStatus();
@@ -45,9 +44,4 @@ public class FetchSharedConfigurationStatusFunction extends FunctionAdapter
context.getResultSender().lastResult(result);
}
- @Override
- public String getId() {
- return FetchSharedConfigurationStatusFunction.class.getName();
- }
-
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GarbageCollectionFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GarbageCollectionFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GarbageCollectionFunction.java
index 46588eb..1d5f420 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GarbageCollectionFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GarbageCollectionFunction.java
@@ -16,8 +16,8 @@ package org.apache.geode.management.internal.cli.functions;
import java.util.HashMap;
import java.util.Map;
+
import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.CacheFactory;
import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.distributed.DistributedMember;
@@ -26,14 +26,9 @@ import org.apache.geode.management.internal.cli.CliUtil;
import org.apache.geode.management.internal.cli.util.BytesToString;
/**
- *
* Class for Garbage collection function
- *
- *
- *
*/
public class GarbageCollectionFunction implements Function, InternalEntity {
- public static final String ID = GarbageCollectionFunction.class.getName();
private static final long serialVersionUID = 1L;
@@ -43,7 +38,7 @@ public class GarbageCollectionFunction implements Function, InternalEntity {
Map<String, String> resultMap = null;
try {
- Cache cache = CacheFactory.getAnyInstance();
+ Cache cache = context.getCache();
DistributedMember member = cache.getDistributedSystem().getDistributedMember();
long freeMemoryBeforeGC = Runtime.getRuntime().freeMemory();
long totalMemoryBeforeGC = Runtime.getRuntime().totalMemory();
@@ -68,14 +63,10 @@ public class GarbageCollectionFunction implements Function, InternalEntity {
}
@Override
- public String getId() {
- return GarbageCollectionFunction.ID;
- }
-
- @Override
public boolean isHA() {
return false;
}
+
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewayReceiverCreateFunction.java
----------------------------------------------------------------------
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 a7dc7ea..2bf8de5 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
@@ -20,8 +20,7 @@ import java.util.Map;
import org.apache.logging.log4j.Logger;
import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.CacheFactory;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.cache.execute.ResultSender;
import org.apache.geode.cache.wan.GatewayReceiver;
@@ -38,21 +37,17 @@ import org.apache.geode.management.internal.configuration.domain.XmlEntity;
/**
* The function to a create GatewayReceiver using given configuration parameters.
*/
-public class GatewayReceiverCreateFunction extends FunctionAdapter implements InternalEntity {
-
- private static final Logger logger = LogService.getLogger();
+public class GatewayReceiverCreateFunction implements InternalEntity, Function {
private static final long serialVersionUID = 8746830191680509335L;
- private static final String ID = GatewayReceiverCreateFunction.class.getName();
-
- public static GatewayReceiverCreateFunction INSTANCE = new GatewayReceiverCreateFunction();
+ private static final Logger logger = LogService.getLogger();
@Override
public void execute(FunctionContext context) {
ResultSender<Object> resultSender = context.getResultSender();
- Cache cache = CacheFactory.getAnyInstance();
+ Cache cache = context.getCache();
String memberNameOrId =
CliUtil.getMemberNameOrId(cache.getDistributedSystem().getDistributedMember());
@@ -80,7 +75,6 @@ public class GatewayReceiverCreateFunction extends FunctionAdapter implements In
CliStrings.CREATE_GATEWAYRECEIVER__MSG__GATEWAYRECEIVER_CREATED_ON_0_ONPORT_1,
new Object[] {memberNameOrId, createdGatewayReceiver.getPort()})));
-
} catch (IllegalStateException e) {
resultSender.lastResult(handleException(memberNameOrId, e.getMessage(), e));
} catch (Exception e) {
@@ -90,7 +84,6 @@ public class GatewayReceiverCreateFunction extends FunctionAdapter implements In
}
resultSender.lastResult(handleException(memberNameOrId, exceptionMsg, e));
}
-
}
private CliFunctionResult handleException(final String memberNameOrId, final String exceptionMsg,
@@ -107,10 +100,6 @@ public class GatewayReceiverCreateFunction extends FunctionAdapter implements In
/**
* GatewayReceiver creation happens here.
- *
- * @param cache
- * @param gatewayReceiverCreateArgs
- * @return GatewayReceiver
*/
private static GatewayReceiver createGatewayReceiver(Cache cache,
GatewayReceiverFunctionArgs gatewayReceiverCreateArgs) {
@@ -160,7 +149,6 @@ public class GatewayReceiverCreateFunction extends FunctionAdapter implements In
return gatewayReceiverFactory.create();
}
- @SuppressWarnings("unchecked")
private static Class forName(String classToLoadName, String neededFor) {
Class loadedClass = null;
try {
@@ -199,9 +187,4 @@ public class GatewayReceiverCreateFunction extends FunctionAdapter implements In
return instance;
}
- @Override
- public String getId() {
- return ID;
- }
-
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewayReceiverFunctionArgs.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewayReceiverFunctionArgs.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewayReceiverFunctionArgs.java
index 2084af9..c190f45 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewayReceiverFunctionArgs.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewayReceiverFunctionArgs.java
@@ -20,20 +20,15 @@ import java.io.Serializable;
* This class stores the arguments provided in the create gateway-receiver command.
*/
public class GatewayReceiverFunctionArgs implements Serializable {
+
private static final long serialVersionUID = -5158224572470173267L;
private final Boolean manualStart;
-
private final Integer startPort;
-
private final Integer endPort;
-
private final String bindAddress;
-
private final Integer socketBufferSize;
-
private final Integer maximumTimeBetweenPings;
-
private final String[] gatewayTransportFilters;
public GatewayReceiverFunctionArgs(Boolean manualStart, Integer startPort, Integer endPort,
@@ -75,4 +70,5 @@ public class GatewayReceiverFunctionArgs implements Serializable {
public String[] getGatewayTransportFilters() {
return this.gatewayTransportFilters;
}
+
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewaySenderCreateFunction.java
----------------------------------------------------------------------
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 33bffd8..d86d89e 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
@@ -17,8 +17,7 @@ package org.apache.geode.management.internal.cli.functions;
import org.apache.logging.log4j.Logger;
import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.CacheFactory;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.cache.execute.ResultSender;
import org.apache.geode.cache.wan.GatewayEventFilter;
@@ -35,22 +34,17 @@ import org.apache.geode.management.internal.cli.CliUtil;
import org.apache.geode.management.internal.cli.i18n.CliStrings;
import org.apache.geode.management.internal.configuration.domain.XmlEntity;
-public class GatewaySenderCreateFunction extends FunctionAdapter implements InternalEntity {
-
- private static final Logger logger = LogService.getLogger();
+public class GatewaySenderCreateFunction implements InternalEntity, Function {
private static final long serialVersionUID = 8746830191680509335L;
- private static final String ID = GatewaySenderCreateFunction.class.getName();
-
- public static GatewaySenderCreateFunction INSTANCE = new GatewaySenderCreateFunction();
-
+ private static final Logger logger = LogService.getLogger();
@Override
public void execute(FunctionContext context) {
ResultSender<Object> resultSender = context.getResultSender();
- Cache cache = CacheFactory.getAnyInstance();
+ Cache cache = context.getCache();
String memberNameOrId =
CliUtil.getMemberNameOrId(cache.getDistributedSystem().getDistributedMember());
@@ -89,10 +83,6 @@ public class GatewaySenderCreateFunction extends FunctionAdapter implements Inte
/**
* Creates the GatewaySender with given configuration.
- *
- * @param cache
- * @param gatewaySenderCreateArgs
- * @return GatewaySender
*/
private static GatewaySender createGatewaySender(Cache cache,
GatewaySenderFunctionArgs gatewaySenderCreateArgs) {
@@ -189,7 +179,6 @@ public class GatewaySenderCreateFunction extends FunctionAdapter implements Inte
gatewaySenderCreateArgs.getRemoteDistributedSystemId());
}
- @SuppressWarnings("unchecked")
private static Class forName(String classToLoadName, String neededFor) {
Class loadedClass = null;
try {
@@ -228,9 +217,4 @@ public class GatewaySenderCreateFunction extends FunctionAdapter implements Inte
return instance;
}
- @Override
- public String getId() {
- return ID;
- }
-
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewaySenderDestroyFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewaySenderDestroyFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewaySenderDestroyFunction.java
index 2873633..ec93eef 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewaySenderDestroyFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewaySenderDestroyFunction.java
@@ -14,9 +14,10 @@
*/
package org.apache.geode.management.internal.cli.functions;
+import org.apache.logging.log4j.Logger;
+
import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.CacheFactory;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.cache.execute.ResultSender;
import org.apache.geode.cache.wan.GatewaySender;
@@ -25,20 +26,18 @@ import org.apache.geode.internal.cache.wan.GatewaySenderException;
import org.apache.geode.internal.logging.LogService;
import org.apache.geode.management.internal.cli.CliUtil;
import org.apache.geode.management.internal.cli.i18n.CliStrings;
-import org.apache.logging.log4j.Logger;
-public class GatewaySenderDestroyFunction extends FunctionAdapter implements InternalEntity {
+public class GatewaySenderDestroyFunction implements InternalEntity, Function {
+
private static final long serialVersionUID = 1L;
private static final Logger logger = LogService.getLogger();
- private static final String ID = GatewaySenderDestroyFunction.class.getName();
- public static GatewaySenderDestroyFunction INSTANCE = new GatewaySenderDestroyFunction();
@Override
public void execute(FunctionContext context) {
ResultSender<Object> resultSender = context.getResultSender();
- Cache cache = CacheFactory.getAnyInstance();
+ Cache cache = context.getCache();
String memberNameOrId =
CliUtil.getMemberNameOrId(cache.getDistributedSystem().getDistributedMember());
@@ -82,9 +81,4 @@ public class GatewaySenderDestroyFunction extends FunctionAdapter implements Int
return new CliFunctionResult(memberNameOrId);
}
- @Override
- public String getId() {
- return ID;
- }
-
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewaySenderDestroyFunctionArgs.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewaySenderDestroyFunctionArgs.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewaySenderDestroyFunctionArgs.java
index cf3fa24..7e34e61 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewaySenderDestroyFunctionArgs.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewaySenderDestroyFunctionArgs.java
@@ -19,8 +19,8 @@ import java.io.Serializable;
public class GatewaySenderDestroyFunctionArgs implements Serializable {
private static final long serialVersionUID = 3848480256348119530L;
- private String id;
+ private final String id;
public GatewaySenderDestroyFunctionArgs(String id) {
this.id = id;
@@ -29,5 +29,6 @@ public class GatewaySenderDestroyFunctionArgs implements Serializable {
public String getId() {
return id;
}
+
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GatewaySenderFunctionArgs.java
----------------------------------------------------------------------
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..0e6e011 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
@@ -16,8 +16,8 @@ package org.apache.geode.management.internal.cli.functions;
import java.io.Serializable;
-
public class GatewaySenderFunctionArgs implements Serializable {
+
private static final long serialVersionUID = -5158224572470173267L;
private final String id;
@@ -36,7 +36,8 @@ public class GatewaySenderFunctionArgs implements Serializable {
private final Integer alertThreshold;
private final Integer dispatcherThreads;
private final String orderPolicy;
- // array of fully qualified class names of the filters
+
+ /** array of fully qualified class names of the filters */
private final String[] gatewayEventFilters;
private final String[] gatewayTransportFilters;
@@ -138,4 +139,5 @@ public class GatewaySenderFunctionArgs implements Serializable {
public String[] getGatewayTransportFilter() {
return this.gatewayTransportFilters;
}
+
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetMemberConfigInformationFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetMemberConfigInformationFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetMemberConfigInformationFunction.java
index 56ba115..e733aa1 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetMemberConfigInformationFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetMemberConfigInformationFunction.java
@@ -14,9 +14,19 @@
*/
package org.apache.geode.management.internal.cli.functions;
+import static org.apache.geode.distributed.ConfigurationProperties.SOCKET_BUFFER_SIZE;
+
+import java.lang.management.ManagementFactory;
+import java.lang.management.RuntimeMXBean;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.CacheFactory;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.cache.server.CacheServer;
import org.apache.geode.distributed.internal.DistributionConfig;
@@ -29,30 +39,16 @@ import org.apache.geode.internal.cache.GemFireCacheImpl;
import org.apache.geode.internal.cache.ha.HARegionQueue;
import org.apache.geode.management.internal.cli.domain.MemberConfigurationInfo;
-import java.lang.management.ManagementFactory;
-import java.lang.management.RuntimeMXBean;
-import java.util.*;
-
-import static org.apache.geode.distributed.ConfigurationProperties.*;
+public class GetMemberConfigInformationFunction implements InternalEntity, Function {
-/****
- *
- *
- */
-public class GetMemberConfigInformationFunction extends FunctionAdapter implements InternalEntity {
-
- /**
- *
- */
private static final long serialVersionUID = 1L;
-
@Override
public void execute(FunctionContext context) {
Object argsObject = context.getArguments();
- boolean hideDefaults = ((Boolean) argsObject).booleanValue();
+ boolean hideDefaults = (Boolean) argsObject;
- Cache cache = CacheFactory.getAnyInstance();
+ Cache cache = context.getCache();
InternalDistributedSystem system = (InternalDistributedSystem) cache.getDistributedSystem();
DistributionConfig config = system.getConfig();
@@ -70,7 +66,7 @@ public class GetMemberConfigInformationFunction extends FunctionAdapter implemen
memberConfigInfo.setGfePropsSetFromFile(distConfigImpl.getConfigPropsDefinedUsingFiles());
// CacheAttributes
- Map<String, String> cacheAttributes = new HashMap<String, String>();
+ Map<String, String> cacheAttributes = new HashMap<>();
cacheAttributes.put("copy-on-read", Boolean.toString(cache.getCopyOnRead()));
cacheAttributes.put("is-server", Boolean.toString(cache.isServer()));
@@ -96,12 +92,12 @@ public class GetMemberConfigInformationFunction extends FunctionAdapter implemen
memberConfigInfo.setCacheAttributes(cacheAttributes);
- List<Map<String, String>> cacheServerAttributesList = new ArrayList<Map<String, String>>();
+ List<Map<String, String>> cacheServerAttributesList = new ArrayList<>();
List<CacheServer> cacheServers = cache.getCacheServers();
if (cacheServers != null)
for (CacheServer cacheServer : cacheServers) {
- Map<String, String> cacheServerAttributes = new HashMap<String, String>();
+ Map<String, String> cacheServerAttributes = new HashMap<>();
cacheServerAttributes.put("bind-address", cacheServer.getBindAddress());
cacheServerAttributes.put("hostname-for-clients", cacheServer.getHostnameForClients());
@@ -134,14 +130,14 @@ public class GetMemberConfigInformationFunction extends FunctionAdapter implemen
context.getResultSender().lastResult(memberConfigInfo);
}
- /****
+ /**
* Gets the default values for the cache attributes
*
* @return a map containing the cache attributes - default values
*/
private Map<String, String> getCacheAttributesDefaultValues() {
String d = CacheConfig.DEFAULT_PDX_DISK_STORE;
- Map<String, String> cacheAttributesDefault = new HashMap<String, String>();
+ Map<String, String> cacheAttributesDefault = new HashMap<>();
cacheAttributesDefault.put("pdx-disk-store", "");
cacheAttributesDefault.put("pdx-read-serialized",
Boolean.toString(CacheConfig.DEFAULT_PDX_READ_SERIALIZED));
@@ -163,13 +159,13 @@ public class GetMemberConfigInformationFunction extends FunctionAdapter implemen
return cacheAttributesDefault;
}
- /***
+ /**
* Gets the default values for the cache attributes
*
* @return a map containing the cache server attributes - default values
*/
private Map<String, String> getCacheServerAttributesDefaultValues() {
- Map<String, String> csAttributesDefault = new HashMap<String, String>();
+ Map<String, String> csAttributesDefault = new HashMap<>();
csAttributesDefault.put("bind-address", CacheServer.DEFAULT_BIND_ADDRESS);
csAttributesDefault.put("hostname-for-clients", CacheServer.DEFAULT_HOSTNAME_FOR_CLIENTS);
csAttributesDefault.put("max-connections",
@@ -189,46 +185,35 @@ public class GetMemberConfigInformationFunction extends FunctionAdapter implemen
csAttributesDefault.put("load-poll-interval",
Long.toString(CacheServer.DEFAULT_LOAD_POLL_INTERVAL));
return csAttributesDefault;
-
}
- /****
+ /**
* Removes the default values from the attributesMap based on defaultAttributesMap
- *
- * @param attributesMap
- * @param defaultAttributesMap
*/
private void removeDefaults(Map<String, String> attributesMap,
Map<String, String> defaultAttributesMap) {
// Make a copy to avoid the CME's
- Set<String> attributesSet = new HashSet<String>(attributesMap.keySet());
-
- if (attributesSet != null) {
- for (String attribute : attributesSet) {
- String attributeValue = attributesMap.get(attribute);
- String defaultValue = defaultAttributesMap.get(attribute);
-
- if (attributeValue != null) {
- if (attributeValue.equals(defaultValue)) {
- attributesMap.remove(attribute);
- }
- } else {
- if (defaultValue == null || defaultValue.equals("")) {
- attributesMap.remove(attribute);
- }
+ Set<String> attributesSet = new HashSet<>(attributesMap.keySet());
+
+ for (String attribute : attributesSet) {
+ String attributeValue = attributesMap.get(attribute);
+ String defaultValue = defaultAttributesMap.get(attribute);
+
+ if (attributeValue != null) {
+ if (attributeValue.equals(defaultValue)) {
+ attributesMap.remove(attribute);
+ }
+ } else {
+ if (defaultValue == null || defaultValue.equals("")) {
+ attributesMap.remove(attribute);
}
}
}
}
- @Override
- public String getId() {
- // TODO Auto-generated method stub
- return GetMemberConfigInformationFunction.class.toString();
- }
-
private List<String> getJvmInputArguments() {
RuntimeMXBean runtimeBean = ManagementFactory.getRuntimeMXBean();
return runtimeBean.getInputArguments();
}
+
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetMemberInformationFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetMemberInformationFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetMemberInformationFunction.java
index 70fa68b..ed66bee 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetMemberInformationFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetMemberInformationFunction.java
@@ -14,61 +14,49 @@
*/
package org.apache.geode.management.internal.cli.functions;
-import org.apache.geode.cache.Cache;
+import java.lang.management.ManagementFactory;
+import java.lang.management.MemoryMXBean;
+import java.lang.management.MemoryUsage;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+
import org.apache.geode.cache.CacheClosedException;
-import org.apache.geode.cache.CacheFactory;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.cache.server.CacheServer;
import org.apache.geode.distributed.internal.DistributionConfig;
import org.apache.geode.distributed.internal.InternalDistributedSystem;
import org.apache.geode.internal.InternalEntity;
import org.apache.geode.internal.cache.CacheClientStatus;
+import org.apache.geode.internal.cache.InternalCache;
import org.apache.geode.internal.cache.tier.InternalClientMembership;
import org.apache.geode.internal.cache.tier.sockets.ClientProxyMembershipID;
import org.apache.geode.management.internal.cli.CliUtil;
import org.apache.geode.management.internal.cli.domain.CacheServerInfo;
import org.apache.geode.management.internal.cli.domain.MemberInformation;
-import java.lang.management.ManagementFactory;
-import java.lang.management.MemoryMXBean;
-import java.lang.management.MemoryUsage;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-/***
- *
- * since 7.0
+/**
+ * @since GemFire 7.0
*/
+public class GetMemberInformationFunction implements InternalEntity, Function {
-public class GetMemberInformationFunction extends FunctionAdapter implements InternalEntity {
- /**
- *
- */
private static final long serialVersionUID = 1L;
@Override
- public String getId() {
- return GetMemberInformationFunction.class.getName();
- }
-
- @Override
-
public boolean hasResult() {
return true;
}
@Override
-
public boolean isHA() {
return true;
}
- @Override
/**
* Read only function
*/
+ @Override
public boolean optimizeForWrite() {
return false;
}
@@ -76,13 +64,11 @@ public class GetMemberInformationFunction extends FunctionAdapter implements Int
@Override
public void execute(FunctionContext functionContext) {
try {
- Cache cache = CacheFactory.getAnyInstance();
+ InternalCache cache = (InternalCache) functionContext.getCache();
- /*
- * TODO: 1) Get the CPU usage%
- */
+ // TODO: 1) Get the CPU usage%
- InternalDistributedSystem system = (InternalDistributedSystem) cache.getDistributedSystem();
+ InternalDistributedSystem system = cache.getInternalDistributedSystem();
DistributionConfig config = system.getConfig();
String serverBindAddress = config.getServerBindAddress();
MemoryMXBean memoryMXBean = ManagementFactory.getMemoryMXBean();
@@ -108,10 +94,7 @@ public class GetMemberInformationFunction extends FunctionAdapter implements Int
// A member is a server only if it has a cacheserver
if (csList != null) {
memberInfo.setServer(true);
- Iterator<CacheServer> iters = csList.iterator();
- while (iters.hasNext()) {
- CacheServer cs = iters.next();
-
+ for (CacheServer cs : csList) {
String bindAddress = cs.getBindAddress();
int port = cs.getPort();
boolean isRunning = cs.isRunning();
@@ -133,6 +116,7 @@ public class GetMemberInformationFunction extends FunctionAdapter implements Int
memberInfo.setServer(false);
}
functionContext.getResultSender().lastResult(memberInfo);
+
} catch (CacheClosedException e) {
functionContext.getResultSender().sendException(e);
} catch (Exception e) {
@@ -143,4 +127,5 @@ public class GetMemberInformationFunction extends FunctionAdapter implements Int
private long bytesToMeg(long bytes) {
return bytes / (1024L * 1024L);
}
+
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetRegionDescriptionFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetRegionDescriptionFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetRegionDescriptionFunction.java
index cbf70ac..00145a1 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetRegionDescriptionFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetRegionDescriptionFunction.java
@@ -14,18 +14,15 @@
*/
package org.apache.geode.management.internal.cli.functions;
-
import org.apache.geode.cache.Cache;
import org.apache.geode.cache.CacheClosedException;
-import org.apache.geode.cache.CacheFactory;
import org.apache.geode.cache.Region;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.internal.InternalEntity;
import org.apache.geode.management.internal.cli.domain.RegionDescriptionPerMember;
-public class GetRegionDescriptionFunction extends FunctionAdapter implements InternalEntity {
-
+public class GetRegionDescriptionFunction implements InternalEntity, Function {
private static final long serialVersionUID = 1L;
@@ -33,7 +30,7 @@ public class GetRegionDescriptionFunction extends FunctionAdapter implements Int
public void execute(FunctionContext context) {
String regionPath = (String) context.getArguments();
try {
- Cache cache = CacheFactory.getAnyInstance();
+ Cache cache = context.getCache();
Region<?, ?> region = cache.getRegion(regionPath);
if (region != null) {
@@ -44,6 +41,7 @@ public class GetRegionDescriptionFunction extends FunctionAdapter implements Int
} else {
context.getResultSender().lastResult(null);
}
+
} catch (CacheClosedException e) {
context.getResultSender().sendException(e);
} catch (Exception e) {
@@ -51,10 +49,4 @@ public class GetRegionDescriptionFunction extends FunctionAdapter implements Int
}
}
- @Override
- public String getId() {
- // TODO Auto-generated method stub
- return GetRegionDescriptionFunction.class.toString();
- }
-
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetRegionsFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetRegionsFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetRegionsFunction.java
index 6571dca..e125ed3 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetRegionsFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetRegionsFunction.java
@@ -32,12 +32,6 @@ public class GetRegionsFunction implements Function, InternalEntity {
private static final long serialVersionUID = 1L;
@Override
- public String getId() {
- // TODO Auto-generated method stub
- return GetRegionsFunction.class.toString();
- }
-
- @Override
public void execute(FunctionContext functionContext) {
try {
Cache cache = functionContext.getCache();
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetStackTracesFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetStackTracesFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetStackTracesFunction.java
index 4e9f9d6..23d8436 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetStackTracesFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetStackTracesFunction.java
@@ -14,23 +14,21 @@
*/
package org.apache.geode.management.internal.cli.functions;
-
import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.CacheFactory;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.internal.InternalEntity;
import org.apache.geode.internal.OSProcess;
import org.apache.geode.management.internal.cli.domain.StackTracesPerMember;
-public class GetStackTracesFunction extends FunctionAdapter implements InternalEntity {
+public class GetStackTracesFunction implements InternalEntity, Function {
private static final long serialVersionUID = 1L;
@Override
public void execute(FunctionContext context) {
try {
- Cache cache = CacheFactory.getAnyInstance();
+ Cache cache = context.getCache();
String memberNameOrId = cache.getDistributedSystem().getDistributedMember().getName();
if (memberNameOrId == null) {
@@ -39,14 +37,10 @@ public class GetStackTracesFunction extends FunctionAdapter implements InternalE
StackTracesPerMember stackTracePerMember =
new StackTracesPerMember(memberNameOrId, OSProcess.zipStacks());
context.getResultSender().lastResult(stackTracePerMember);
+
} catch (Exception e) {
context.getResultSender().sendException(e);
}
}
- @Override
- public String getId() {
- // TODO Auto-generated method stub
- return GetStackTracesFunction.class.getName();
- }
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetSubscriptionQueueSizeFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetSubscriptionQueueSizeFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetSubscriptionQueueSizeFunction.java
index 70b649c..a39c125 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetSubscriptionQueueSizeFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/GetSubscriptionQueueSizeFunction.java
@@ -15,7 +15,7 @@
package org.apache.geode.management.internal.cli.functions;
import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.cache.query.CqQuery;
import org.apache.geode.cache.query.internal.CqQueryVsdStats;
@@ -28,17 +28,16 @@ import org.apache.geode.management.internal.cli.CliUtil;
import org.apache.geode.management.internal.cli.domain.SubscriptionQueueSizeResult;
import org.apache.geode.management.internal.cli.i18n.CliStrings;
-/***
+/**
* Function to get subscription-queue-size
- *
*/
-public class GetSubscriptionQueueSizeFunction extends FunctionAdapter implements InternalEntity {
+public class GetSubscriptionQueueSizeFunction implements InternalEntity, Function {
private static final long serialVersionUID = 1L;
@Override
public void execute(FunctionContext context) {
- final Cache cache = CliUtil.getCacheIfExists();
+ final Cache cache = context.getCache();
final String memberNameOrId =
CliUtil.getMemberNameOrId(cache.getDistributedSystem().getDistributedMember());
String args[] = (String[]) context.getArguments();
@@ -90,6 +89,7 @@ public class GetSubscriptionQueueSizeFunction extends FunctionAdapter implements
} else {
result.setErrorMessage(CliStrings.NO_CLIENT_FOUND);
}
+
} catch (Exception e) {
result.setExceptionMessage(e.getMessage());
} finally {
@@ -97,9 +97,4 @@ public class GetSubscriptionQueueSizeFunction extends FunctionAdapter implements
}
}
- @Override
- public String getId() {
- return GetSubscriptionQueueSizeFunction.class.getName();
- }
-
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ImportDataFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ImportDataFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ImportDataFunction.java
index 13949c8..78b6d38 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ImportDataFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ImportDataFunction.java
@@ -17,9 +17,8 @@ package org.apache.geode.management.internal.cli.functions;
import java.io.File;
import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.CacheFactory;
import org.apache.geode.cache.Region;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.cache.snapshot.RegionSnapshotService;
import org.apache.geode.cache.snapshot.SnapshotOptions;
@@ -27,12 +26,11 @@ import org.apache.geode.cache.snapshot.SnapshotOptions.SnapshotFormat;
import org.apache.geode.internal.InternalEntity;
import org.apache.geode.management.internal.cli.i18n.CliStrings;
-/****
+/**
* Function which carries out the import of a region to a file on a member. Uses the
* RegionSnapshotService to import the data
- *
*/
-public class ImportDataFunction extends FunctionAdapter implements InternalEntity {
+public class ImportDataFunction implements InternalEntity, Function {
private static final long serialVersionUID = 1L;
@@ -46,7 +44,7 @@ public class ImportDataFunction extends FunctionAdapter implements InternalEntit
}
try {
- final Cache cache = CacheFactory.getAnyInstance();
+ final Cache cache = context.getCache();
final Region<?, ?> region = cache.getRegion(regionName);
final String hostName = cache.getDistributedSystem().getDistributedMember().getHost();
if (region != null) {
@@ -68,8 +66,4 @@ public class ImportDataFunction extends FunctionAdapter implements InternalEntit
}
}
- public String getId() {
- return ImportDataFunction.class.getName();
- }
-
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListAsyncEventQueuesFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListAsyncEventQueuesFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListAsyncEventQueuesFunction.java
index 507e9f8..aacd198 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListAsyncEventQueuesFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListAsyncEventQueuesFunction.java
@@ -19,14 +19,12 @@ import java.util.Set;
import org.apache.logging.log4j.Logger;
-import org.apache.geode.LogWriter;
import org.apache.geode.SystemFailure;
import org.apache.geode.cache.Cache;
import org.apache.geode.cache.CacheClosedException;
-import org.apache.geode.cache.CacheFactory;
import org.apache.geode.cache.asyncqueue.AsyncEventListener;
import org.apache.geode.cache.asyncqueue.AsyncEventQueue;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.distributed.DistributedMember;
import org.apache.geode.internal.InternalEntity;
@@ -37,23 +35,14 @@ import org.apache.geode.management.internal.cli.domain.AsyncEventQueueDetails;
/**
* An implementation of GemFire Function interface used to determine all the async event queues that
* exist for the entire cache, distributed across the GemFire distributed system.
- * </p>
- *
+ *
* @since GemFire 8.0
*/
-public class ListAsyncEventQueuesFunction extends FunctionAdapter implements InternalEntity {
- private static final Logger logger = LogService.getLogger();
+public class ListAsyncEventQueuesFunction implements InternalEntity, Function {
private static final long serialVersionUID = 1L;
- @Override
- public String getId() {
- return getClass().getName();
- }
-
- protected Cache getCache() {
- return CacheFactory.getAnyInstance();
- }
+ private static final Logger logger = LogService.getLogger();
@Override
public void execute(final FunctionContext context) {
@@ -61,7 +50,7 @@ public class ListAsyncEventQueuesFunction extends FunctionAdapter implements Int
String memberId = "";
try {
- Cache cache = CacheFactory.getAnyInstance();
+ Cache cache = context.getCache();
DistributedMember member = cache.getDistributedSystem().getDistributedMember();
@@ -105,4 +94,5 @@ public class ListAsyncEventQueuesFunction extends FunctionAdapter implements Int
context.getResultSender().lastResult(result);
}
}
+
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListDeployedFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListDeployedFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListDeployedFunction.java
index 88a77be..16ea3e3 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListDeployedFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListDeployedFunction.java
@@ -16,31 +16,25 @@ package org.apache.geode.management.internal.cli.functions;
import java.util.List;
-import org.apache.geode.internal.ClassPathLoader;
-import org.apache.geode.internal.DeployedJar;
import org.apache.logging.log4j.Logger;
import org.apache.geode.SystemFailure;
+import org.apache.geode.cache.Cache;
import org.apache.geode.cache.CacheClosedException;
-import org.apache.geode.cache.CacheFactory;
import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.distributed.DistributedMember;
+import org.apache.geode.internal.ClassPathLoader;
+import org.apache.geode.internal.DeployedJar;
import org.apache.geode.internal.InternalEntity;
import org.apache.geode.internal.JarDeployer;
-import org.apache.geode.internal.cache.InternalCache;
import org.apache.geode.internal.logging.LogService;
public class ListDeployedFunction implements Function, InternalEntity {
- private static final Logger logger = LogService.getLogger();
-
- public static final String ID = ListDeployedFunction.class.getName();
private static final long serialVersionUID = 1L;
- private InternalCache getCache() {
- return (InternalCache) CacheFactory.getAnyInstance();
- }
+ private static final Logger logger = LogService.getLogger();
@Override
public void execute(FunctionContext context) {
@@ -48,7 +42,7 @@ public class ListDeployedFunction implements Function, InternalEntity {
String memberId = "";
try {
- InternalCache cache = getCache();
+ Cache cache = context.getCache();
final JarDeployer jarDeployer = ClassPathLoader.getLatest().getJarDeployer();
DistributedMember member = cache.getDistributedSystem().getDistributedMember();
@@ -87,11 +81,6 @@ public class ListDeployedFunction implements Function, InternalEntity {
}
@Override
- public String getId() {
- return ID;
- }
-
- @Override
public boolean hasResult() {
return true;
}
@@ -105,4 +94,5 @@ public class ListDeployedFunction implements Function, InternalEntity {
public boolean isHA() {
return false;
}
+
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListDiskStoresFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListDiskStoresFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListDiskStoresFunction.java
index 80c84b5..ae3f34e 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListDiskStoresFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListDiskStoresFunction.java
@@ -16,13 +16,10 @@
package org.apache.geode.management.internal.cli.functions;
import java.util.HashSet;
-import java.util.Properties;
import java.util.Set;
-import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.CacheFactory;
import org.apache.geode.cache.DiskStore;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.distributed.DistributedMember;
import org.apache.geode.internal.InternalEntity;
@@ -33,47 +30,33 @@ import org.apache.geode.management.internal.cli.domain.DiskStoreDetails;
* The ListDiskStoresFunction class is an implementation of GemFire Function interface used to
* determine all the disk stores that exist for the entire cache, distributed across the GemFire
* distributed system.
- * </p>
- *
+ *
* @see org.apache.geode.cache.DiskStore
* @see org.apache.geode.cache.execute.Function
* @see org.apache.geode.cache.execute.FunctionAdapter
* @see org.apache.geode.cache.execute.FunctionContext
* @see org.apache.geode.internal.InternalEntity
* @see org.apache.geode.management.internal.cli.domain.DiskStoreDetails
+ *
* @since GemFire 7.0
*/
-public class ListDiskStoresFunction extends FunctionAdapter implements InternalEntity {
-
- @SuppressWarnings("unused")
- public void init(final Properties props) {}
-
- public String getId() {
- return getClass().getName();
- }
-
- protected Cache getCache() {
- return CacheFactory.getAnyInstance();
- }
+public class ListDiskStoresFunction implements InternalEntity, Function {
public void execute(final FunctionContext context) {
- final Set<DiskStoreDetails> memberDiskStores = new HashSet<DiskStoreDetails>();
+ final Set<DiskStoreDetails> memberDiskStores = new HashSet<>();
try {
- final Cache cache = getCache();
+ final InternalCache cache = (InternalCache) context.getCache();
- if (cache instanceof InternalCache) {
- final InternalCache gemfireCache = (InternalCache) cache;
+ final DistributedMember member = cache.getMyId();
- final DistributedMember member = gemfireCache.getMyId();
-
- for (final DiskStore memberDiskStore : gemfireCache.listDiskStoresIncludingRegionOwned()) {
- memberDiskStores.add(new DiskStoreDetails(memberDiskStore.getDiskStoreUUID(),
- memberDiskStore.getName(), member.getId(), member.getName()));
- }
+ for (final DiskStore memberDiskStore : cache.listDiskStoresIncludingRegionOwned()) {
+ memberDiskStores.add(new DiskStoreDetails(memberDiskStore.getDiskStoreUUID(),
+ memberDiskStore.getName(), member.getId(), member.getName()));
}
context.getResultSender().lastResult(memberDiskStores);
+
} catch (Exception e) {
context.getResultSender().sendException(e);
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListDurableCqNamesFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListDurableCqNamesFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListDurableCqNamesFunction.java
index 434c619..5831df4 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListDurableCqNamesFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListDurableCqNamesFunction.java
@@ -16,12 +16,10 @@
package org.apache.geode.management.internal.cli.functions;
import java.util.ArrayList;
-import java.util.Collections;
import java.util.List;
import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.CacheFactory;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.cache.query.internal.cq.CqService;
import org.apache.geode.distributed.DistributedMember;
@@ -35,30 +33,22 @@ import org.apache.geode.management.internal.cli.i18n.CliStrings;
/**
* The ListDurableCqs class is a GemFire function used to collect all the durable client names on
* the server
- * </p>
- *
+ *
* @see org.apache.geode.cache.Cache
* @see org.apache.geode.cache.execute.Function
* @see org.apache.geode.cache.execute.FunctionAdapter
* @see org.apache.geode.cache.execute.FunctionContext
* @see org.apache.geode.internal.InternalEntity
* @see org.apache.geode.management.internal.cli.domain.IndexDetails
+ *
* @since GemFire 7.0.1
*/
-@SuppressWarnings("unused")
-public class ListDurableCqNamesFunction extends FunctionAdapter implements InternalEntity {
- private static final long serialVersionUID = 1L;
-
- protected Cache getCache() {
- return CacheFactory.getAnyInstance();
- }
+public class ListDurableCqNamesFunction implements InternalEntity, Function {
- public String getId() {
- return ListDurableCqNamesFunction.class.getName();
- }
+ private static final long serialVersionUID = 1L;
public void execute(final FunctionContext context) {
- final Cache cache = getCache();
+ final Cache cache = context.getCache();
final DistributedMember member = cache.getDistributedSystem().getDistributedMember();
String memberNameOrId = CliUtil.getMemberNameOrId(member);
DurableCqNamesResult result = new DurableCqNamesResult(memberNameOrId);
@@ -89,10 +79,12 @@ public class ListDurableCqNamesFunction extends FunctionAdapter implements Inter
} else {
result.setErrorMessage(CliStrings.NO_CLIENT_FOUND);
}
+
} catch (Exception e) {
result.setExceptionMessage(e.getMessage());
} finally {
context.getResultSender().lastResult(result);
}
}
+
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListFunctionFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListFunctionFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListFunctionFunction.java
index a45ed0b..e784da4 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListFunctionFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListFunctionFunction.java
@@ -25,7 +25,6 @@ import org.apache.logging.log4j.Logger;
import org.apache.geode.SystemFailure;
import org.apache.geode.cache.Cache;
import org.apache.geode.cache.CacheClosedException;
-import org.apache.geode.cache.CacheFactory;
import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.cache.execute.FunctionService;
@@ -34,12 +33,11 @@ import org.apache.geode.internal.InternalEntity;
import org.apache.geode.internal.logging.LogService;
public class ListFunctionFunction implements Function, InternalEntity {
- private static final Logger logger = LogService.getLogger();
-
- public static final String ID = ListFunctionFunction.class.getName();
private static final long serialVersionUID = 1L;
+ private static final Logger logger = LogService.getLogger();
+
@Override
public void execute(FunctionContext context) {
// Declared here so that it's available when returning a Throwable
@@ -49,7 +47,7 @@ public class ListFunctionFunction implements Function, InternalEntity {
final Object[] args = (Object[]) context.getArguments();
final String stringPattern = (String) args[0];
- Cache cache = CacheFactory.getAnyInstance();
+ Cache cache = context.getCache();
DistributedMember member = cache.getDistributedSystem().getDistributedMember();
memberId = member.getId();
@@ -92,11 +90,6 @@ public class ListFunctionFunction implements Function, InternalEntity {
}
@Override
- public String getId() {
- return ID;
- }
-
- @Override
public boolean hasResult() {
return true;
}
@@ -110,4 +103,5 @@ public class ListFunctionFunction implements Function, InternalEntity {
public boolean isHA() {
return false;
}
+
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListIndexFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListIndexFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListIndexFunction.java
index f8d302c..fd8bc6b 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListIndexFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ListIndexFunction.java
@@ -19,8 +19,7 @@ import java.util.HashSet;
import java.util.Set;
import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.CacheFactory;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.cache.query.Index;
import org.apache.geode.distributed.DistributedMember;
@@ -30,32 +29,23 @@ import org.apache.geode.management.internal.cli.domain.IndexDetails;
/**
* The ListIndexFunction class is a GemFire function used to collect all the index information on
* all Regions across the entire GemFire Cache (distributed system).
- * </p>
- *
+ *
* @see org.apache.geode.cache.Cache
* @see org.apache.geode.cache.execute.Function
* @see org.apache.geode.cache.execute.FunctionAdapter
* @see org.apache.geode.cache.execute.FunctionContext
* @see org.apache.geode.internal.InternalEntity
* @see org.apache.geode.management.internal.cli.domain.IndexDetails
+ *
* @since GemFire 7.0
*/
-@SuppressWarnings("unused")
-public class ListIndexFunction extends FunctionAdapter implements InternalEntity {
-
- protected Cache getCache() {
- return CacheFactory.getAnyInstance();
- }
-
- public String getId() {
- return ListIndexFunction.class.getName();
- }
+public class ListIndexFunction implements InternalEntity, Function {
public void execute(final FunctionContext context) {
try {
- final Set<IndexDetails> indexDetailsSet = new HashSet<IndexDetails>();
+ final Set<IndexDetails> indexDetailsSet = new HashSet<>();
- final Cache cache = getCache();
+ final Cache cache = context.getCache();
final DistributedMember member = cache.getDistributedSystem().getDistributedMember();
for (final Index index : cache.getQueryService().getIndexes()) {
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/MemberRegionFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/MemberRegionFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/MemberRegionFunction.java
deleted file mode 100644
index c23bcbe..0000000
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/MemberRegionFunction.java
+++ /dev/null
@@ -1,83 +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.functions;
-
-import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.CacheFactory;
-import org.apache.geode.cache.execute.Execution;
-import org.apache.geode.cache.execute.Function;
-import org.apache.geode.cache.execute.FunctionContext;
-import org.apache.geode.cache.execute.FunctionException;
-import org.apache.geode.cache.execute.FunctionService;
-import org.apache.geode.internal.InternalEntity;
-
-
-public class MemberRegionFunction implements Function, InternalEntity {
- public static final String ID = MemberRegionFunction.class.getName();
- private static final long serialVersionUID = 1L;
-
- @Override
- public void execute(FunctionContext context) {
- Object[] args = (Object[]) context.getArguments();
- String region = (String) args[0];
- String functionId = (String) args[1];
- Cache cache = CacheFactory.getAnyInstance();
-
- try {
- Function function = FunctionService.getFunction(functionId);
- if (function == null) {
- context.getResultSender()
- .lastResult("For region on a member did not get function " + functionId);
- }
- Execution execution = FunctionService.onRegion(cache.getRegion(region));
- if (execution == null) {
- context.getResultSender().lastResult("For region on a member could not execute");
- } else {
- execution.execute(function);
- context.getResultSender().lastResult("succeeded in executing on region " + region);
- }
-
- } catch (FunctionException e) {
- context.getResultSender()
- .lastResult("FunctionException in MemberRegionFunction =" + e.getMessage());
- } catch (Exception e) {
- context.getResultSender().lastResult("Exception in MemberRegionFunction =" + e.getMessage());
- }
-
- }
-
- @Override
- public String getId() {
- return MemberRegionFunction.ID;
-
- }
-
- @Override
- public boolean hasResult() {
- return true;
- }
-
- @Override
- public boolean optimizeForWrite() {
- // no need of optimization since read-only.
- return false;
- }
-
- @Override
- public boolean isHA() {
- return false;
- }
-
-}
[3/3] geode git commit: Convert to use FunctionContext.getCache()
Posted by kl...@apache.org.
Convert to use FunctionContext.getCache()
Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/96e50e7e
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/96e50e7e
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/96e50e7e
Branch: refs/heads/FunctionContext
Commit: 96e50e7e30731d6e8c51a1a60ece1e249401f70f
Parents: e502174
Author: Kirk Lund <kl...@apache.org>
Authored: Mon Jul 24 12:44:37 2017 -0700
Committer: Kirk Lund <kl...@apache.org>
Committed: Mon Jul 24 12:44:37 2017 -0700
----------------------------------------------------------------------
.../geode/cache/execute/FunctionContext.java | 17 +-
.../CreateAlterDestroyRegionCommands.java | 14 +-
.../cli/commands/ExportLogsInterceptor.java | 8 +-
.../cli/commands/MiscellaneousCommands.java | 2 +-
.../internal/cli/commands/WanCommands.java | 6 +-
.../functions/AlterRuntimeConfigFunction.java | 30 ++--
.../functions/AsyncEventQueueFunctionArgs.java | 33 ++--
.../cli/functions/ChangeLogLevelFunction.java | 38 ++--
.../cli/functions/CliFunctionResult.java | 35 ++--
.../functions/CloseDurableClientFunction.java | 21 +--
.../cli/functions/CloseDurableCqFunction.java | 23 +--
.../cli/functions/ContinuousQueryFunction.java | 33 ++--
.../CreateAsyncEventQueueFunction.java | 19 +-
.../functions/CreateDefinedIndexesFunction.java | 31 +---
.../cli/functions/CreateDiskStoreFunction.java | 36 ++--
.../cli/functions/CreateIndexFunction.java | 30 ++--
.../cli/functions/DataCommandFunction.java | 177 ++++++++++---------
.../internal/cli/functions/DeployFunction.java | 17 +-
.../functions/DescribeDiskStoreFunction.java | 114 +++++-------
.../cli/functions/DestroyDiskStoreFunction.java | 16 +-
.../cli/functions/DestroyIndexFunction.java | 19 +-
.../cli/functions/ExportConfigFunction.java | 14 +-
.../cli/functions/ExportDataFunction.java | 18 +-
.../cli/functions/ExportLogsFunction.java | 34 +---
.../FetchRegionAttributesFunction.java | 24 +--
.../FetchSharedConfigurationStatusFunction.java | 16 +-
.../functions/GarbageCollectionFunction.java | 15 +-
.../GatewayReceiverCreateFunction.java | 25 +--
.../functions/GatewayReceiverFunctionArgs.java | 8 +-
.../functions/GatewaySenderCreateFunction.java | 24 +--
.../functions/GatewaySenderDestroyFunction.java | 18 +-
.../GatewaySenderDestroyFunctionArgs.java | 3 +-
.../functions/GatewaySenderFunctionArgs.java | 6 +-
.../GetMemberConfigInformationFunction.java | 89 ++++------
.../functions/GetMemberInformationFunction.java | 53 ++----
.../functions/GetRegionDescriptionFunction.java | 16 +-
.../cli/functions/GetRegionsFunction.java | 6 -
.../cli/functions/GetStackTracesFunction.java | 14 +-
.../GetSubscriptionQueueSizeFunction.java | 15 +-
.../cli/functions/ImportDataFunction.java | 14 +-
.../functions/ListAsyncEventQueuesFunction.java | 22 +--
.../cli/functions/ListDeployedFunction.java | 22 +--
.../cli/functions/ListDiskStoresFunction.java | 39 ++--
.../functions/ListDurableCqNamesFunction.java | 24 +--
.../cli/functions/ListFunctionFunction.java | 14 +-
.../cli/functions/ListIndexFunction.java | 22 +--
.../cli/functions/MemberRegionFunction.java | 83 ---------
.../cli/functions/MembersForRegionFunction.java | 9 +-
.../internal/cli/functions/NetstatFunction.java | 28 +--
.../cli/functions/RebalanceFunction.java | 23 +--
.../cli/functions/RegionAlterFunction.java | 17 +-
.../cli/functions/RegionCreateFunction.java | 24 +--
.../cli/functions/RegionDestroyFunction.java | 17 +-
.../cli/functions/RegionFunctionArgs.java | 6 +-
.../ShowMissingDiskStoresFunction.java | 17 +-
.../cli/functions/ShutDownFunction.java | 44 ++---
.../cli/functions/SizeExportLogsFunction.java | 21 +--
.../cli/functions/UndeployFunction.java | 23 +--
.../cli/functions/UnregisterFunction.java | 21 +--
.../cli/functions/UserFunctionExecution.java | 10 +-
.../internal/cli/util/TimeParser.java | 49 +++++
.../DescribeDiskStoreFunctionJUnitTest.java | 141 ++++++---------
.../ListDiskStoresFunctionJUnitTest.java | 52 +++---
.../functions/ListIndexFunctionJUnitTest.java | 31 ++--
64 files changed, 698 insertions(+), 1192 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/cache/execute/FunctionContext.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/cache/execute/FunctionContext.java b/geode-core/src/main/java/org/apache/geode/cache/execute/FunctionContext.java
index 0b4e7f9..00c877b 100755
--- a/geode-core/src/main/java/org/apache/geode/cache/execute/FunctionContext.java
+++ b/geode-core/src/main/java/org/apache/geode/cache/execute/FunctionContext.java
@@ -19,20 +19,21 @@ import org.apache.geode.cache.Cache;
/**
* Defines the execution context of a {@link Function}. It is required by the
* {@link Function#execute(FunctionContext)} to execute a {@link Function} on a particular member.
+ *
* <p>
* A context can be data dependent or data independent. For data dependent functions refer to
* {@link RegionFunctionContext}
- * </p>
+ *
* <p>
* This interface is implemented by GemFire. Instances of it will be passed in to
* {@link Function#execute(FunctionContext)}.
- *
- * @param T1 object type of Arguments
+ *
+ * <p>
+ * T1 object type of Arguments
*
* @since GemFire 6.0
*
* @see RegionFunctionContext
- *
*/
public interface FunctionContext<T1> {
/**
@@ -64,7 +65,6 @@ public interface FunctionContext<T1> {
* @return ResultSender
* @since GemFire 6.0
*/
-
public <T2> ResultSender<T2> getResultSender();
/**
@@ -78,5 +78,12 @@ public interface FunctionContext<T1> {
*/
public boolean isPossibleDuplicate();
+ /**
+ * Returns a reference to the Cache.
+ *
+ * @return a reference to the Cache
+ *
+ * @since Geode 1.2
+ */
public Cache getCache();
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
index 2c61b73..ba67fc7 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
@@ -318,7 +318,7 @@ public class CreateAlterDestroyRegionCommands implements GfshCommand {
return ResultBuilder.createUserErrorResult(CliStrings.NO_CACHING_MEMBERS_FOUND_MESSAGE);
}
- ResultCollector<?, ?> resultCollector = CliUtil.executeFunction(RegionCreateFunction.INSTANCE,
+ ResultCollector<?, ?> resultCollector = CliUtil.executeFunction(new RegionCreateFunction(),
regionFunctionArgs, membersToCreateRegionOn);
@SuppressWarnings("unchecked")
List<CliFunctionResult> regionCreateResults =
@@ -559,7 +559,7 @@ public class CreateAlterDestroyRegionCommands implements GfshCommand {
return result;
}
- private static boolean regionExists(InternalCache cache, String regionPath) {
+ private boolean regionExists(InternalCache cache, String regionPath) {
boolean regionFound = false;
if (regionPath != null && !Region.SEPARATOR.equals(regionPath)) {
ManagementService managementService = ManagementService.getExistingManagementService(cache);
@@ -866,7 +866,7 @@ public class CreateAlterDestroyRegionCommands implements GfshCommand {
return false;
}
- private static <K, V> FetchRegionAttributesFunctionResult<K, V> getRegionAttributes(
+ private <K, V> FetchRegionAttributesFunctionResult<K, V> getRegionAttributes(
InternalCache cache, String regionPath) {
if (!isClusterWideSameConfig(cache, regionPath)) {
throw new IllegalStateException(CliStrings.format(
@@ -878,7 +878,7 @@ public class CreateAlterDestroyRegionCommands implements GfshCommand {
// First check whether the region exists on a this manager, if yes then no
// need to use FetchRegionAttributesFunction to fetch RegionAttributes
try {
- attributes = FetchRegionAttributesFunction.getRegionAttributes(regionPath);
+ attributes = FetchRegionAttributesFunction.getRegionAttributes(cache, regionPath);
} catch (IllegalArgumentException e) {
/* region doesn't exist on the manager */
}
@@ -890,7 +890,7 @@ public class CreateAlterDestroyRegionCommands implements GfshCommand {
if (regionAssociatedMembers != null && !regionAssociatedMembers.isEmpty()) {
DistributedMember distributedMember = regionAssociatedMembers.iterator().next();
ResultCollector<?, ?> resultCollector = CliUtil
- .executeFunction(FetchRegionAttributesFunction.INSTANCE, regionPath, distributedMember);
+ .executeFunction(new FetchRegionAttributesFunction(), regionPath, distributedMember);
List<?> resultsList = (List<?>) resultCollector.getResult();
if (resultsList != null && !resultsList.isEmpty()) {
@@ -920,7 +920,7 @@ public class CreateAlterDestroyRegionCommands implements GfshCommand {
return attributes;
}
- private static boolean isClusterWideSameConfig(InternalCache cache, String regionPath) {
+ private boolean isClusterWideSameConfig(InternalCache cache, String regionPath) {
ManagementService managementService = ManagementService.getExistingManagementService(cache);
DistributedSystemMXBean dsMXBean = managementService.getDistributedSystemMXBean();
@@ -1002,7 +1002,7 @@ public class CreateAlterDestroyRegionCommands implements GfshCommand {
CliFunctionResult destroyRegionResult;
ResultCollector<?, ?> resultCollector =
- CliUtil.executeFunction(RegionDestroyFunction.INSTANCE, regionPath, regionMembersList);
+ CliUtil.executeFunction(new RegionDestroyFunction(), regionPath, regionMembersList);
List<CliFunctionResult> resultsList = (List<CliFunctionResult>) resultCollector.getResult();
String message =
CliStrings.format(CliStrings.DESTROY_REGION__MSG__REGION_0_1_DESTROYED, regionPath, "");
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ExportLogsInterceptor.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ExportLogsInterceptor.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ExportLogsInterceptor.java
index 5f21848..c5ac227 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ExportLogsInterceptor.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ExportLogsInterceptor.java
@@ -21,9 +21,9 @@ import org.apache.geode.internal.logging.log4j.LogLevel;
import org.apache.geode.management.cli.Result;
import org.apache.geode.management.internal.cli.AbstractCliAroundInterceptor;
import org.apache.geode.management.internal.cli.GfshParseResult;
-import org.apache.geode.management.internal.cli.functions.ExportLogsFunction;
import org.apache.geode.management.internal.cli.result.ResultBuilder;
-import org.apache.logging.log4j.Level;
+import org.apache.geode.management.internal.cli.util.TimeParser;
+
import org.apache.logging.log4j.Logger;
import java.io.File;
@@ -61,8 +61,8 @@ public class ExportLogsInterceptor extends AbstractCliAroundInterceptor {
String end = arguments.get("end-time");
if (start != null && end != null) {
// need to make sure end is later than start
- LocalDateTime startTime = ExportLogsFunction.parseTime(start);
- LocalDateTime endTime = ExportLogsFunction.parseTime(end);
+ LocalDateTime startTime = TimeParser.parseTime(start);
+ LocalDateTime endTime = TimeParser.parseTime(end);
if (startTime.isAfter(endTime)) {
return ResultBuilder.createUserErrorResult("start-time has to be earlier than end-time.");
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/MiscellaneousCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/MiscellaneousCommands.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/MiscellaneousCommands.java
index 1415bc6..f7e65b4 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/MiscellaneousCommands.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/MiscellaneousCommands.java
@@ -456,7 +456,7 @@ public class MiscellaneousCommands implements GfshCommand {
if (!hostMemberMap.isEmpty()) {
Set<DistributedMember> membersToExecuteOn = new HashSet<>(hostMemberMap.values());
ResultCollector<?, ?> netstatResult =
- CliUtil.executeFunction(NetstatFunction.INSTANCE, nfa, membersToExecuteOn);
+ CliUtil.executeFunction(new NetstatFunction(), nfa, membersToExecuteOn);
List<?> resultList = (List<?>) netstatResult.getResult();
for (Object aResultList : resultList) {
NetstatFunctionResult netstatFunctionResult = (NetstatFunctionResult) aResultList;
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/WanCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/WanCommands.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/WanCommands.java
index c6fb709..4e4c92e 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/WanCommands.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/WanCommands.java
@@ -152,7 +152,7 @@ public class WanCommands implements GfshCommand {
}
ResultCollector<?, ?> resultCollector =
- CliUtil.executeFunction(GatewaySenderCreateFunction.INSTANCE, gatewaySenderFunctionArgs,
+ CliUtil.executeFunction(new GatewaySenderCreateFunction(), gatewaySenderFunctionArgs,
membersToCreateGatewaySenderOn);
@SuppressWarnings("unchecked")
List<CliFunctionResult> gatewaySenderCreateResults =
@@ -562,7 +562,7 @@ public class WanCommands implements GfshCommand {
}
ResultCollector<?, ?> resultCollector =
- CliUtil.executeFunction(GatewayReceiverCreateFunction.INSTANCE,
+ CliUtil.executeFunction(new GatewayReceiverCreateFunction(),
gatewayReceiverFunctionArgs, membersToCreateGatewayReceiverOn);
@SuppressWarnings("unchecked")
List<CliFunctionResult> gatewayReceiverCreateResults =
@@ -1011,7 +1011,7 @@ public class WanCommands implements GfshCommand {
}
ResultCollector<?, ?> resultCollector =
- CliUtil.executeFunction(GatewaySenderDestroyFunction.INSTANCE,
+ CliUtil.executeFunction(new GatewaySenderDestroyFunction(),
gatewaySenderDestroyFunctionArgs, membersToDestroyGatewaySenderOn);
@SuppressWarnings("unchecked")
List<CliFunctionResult> gatewaySenderDestroyResults =
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/AlterRuntimeConfigFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/AlterRuntimeConfigFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/AlterRuntimeConfigFunction.java
index 53d3ab7..b6c6c5a 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/AlterRuntimeConfigFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/AlterRuntimeConfigFunction.java
@@ -14,9 +14,14 @@
*/
package org.apache.geode.management.internal.cli.functions;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Set;
+
+import org.apache.logging.log4j.Logger;
+
import org.apache.geode.cache.CacheClosedException;
-import org.apache.geode.cache.CacheFactory;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.distributed.internal.DistributionConfig;
import org.apache.geode.internal.ConfigSource;
@@ -25,29 +30,20 @@ import org.apache.geode.internal.cache.InternalCache;
import org.apache.geode.internal.logging.LogService;
import org.apache.geode.management.internal.cli.CliUtil;
import org.apache.geode.management.internal.cli.i18n.CliStrings;
-import org.apache.logging.log4j.Logger;
-import java.util.Map;
-import java.util.Map.Entry;
-import java.util.Set;
-
-public class AlterRuntimeConfigFunction extends FunctionAdapter implements InternalEntity {
+public class AlterRuntimeConfigFunction implements InternalEntity, Function {
private static final long serialVersionUID = 1L;
private static Logger logger = LogService.getLogger();
- private InternalCache getCache() {
- return (InternalCache) CacheFactory.getAnyInstance();
- }
-
@Override
- public void execute(FunctionContext context) {
+ public void execute(final FunctionContext context) {
String memberId = "";
try {
Object arg = context.getArguments();
- InternalCache cache = getCache();
+ InternalCache cache = (InternalCache) context.getCache();
DistributionConfig config = cache.getInternalDistributedSystem().getConfig();
memberId = cache.getDistributedSystem().getDistributedMember().getId();
@@ -82,15 +78,11 @@ public class AlterRuntimeConfigFunction extends FunctionAdapter implements Inter
context.getResultSender().lastResult(result);
} catch (Exception e) {
- logger.error("Exception happened on : " + memberId, e);
+ logger.error("Exception happened on : {}", memberId, e);
CliFunctionResult cliFuncResult =
new CliFunctionResult(memberId, e, CliUtil.stackTraceAsString(e));
context.getResultSender().lastResult(cliFuncResult);
}
}
- @Override
- public String getId() {
- return AlterRuntimeConfigFunction.class.getName();
- }
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/AsyncEventQueueFunctionArgs.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/AsyncEventQueueFunctionArgs.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/AsyncEventQueueFunctionArgs.java
index 2e297bf..fb5fbab 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/AsyncEventQueueFunctionArgs.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/AsyncEventQueueFunctionArgs.java
@@ -24,22 +24,22 @@ public class AsyncEventQueueFunctionArgs implements Serializable {
private static final long serialVersionUID = -6524494645663740872L;
- private String asyncEventQueueId;
- private boolean isParallel;
- private boolean enableBatchConflation;
- private int batchSize;
- private int batchTimeInterval;
- private boolean persistent;
- private String diskStoreName;
- private boolean diskSynchronous;
- private int maxQueueMemory;
- private int dispatcherThreads;
- private String orderPolicy;
- private String[] gatewayEventFilters;
- private String gatewaySubstitutionFilter;
- private String listenerClassName;
- private Properties listenerProperties;
- private boolean forwardExpirationDestroy;
+ private final String asyncEventQueueId;
+ private final boolean isParallel;
+ private final boolean enableBatchConflation;
+ private final int batchSize;
+ private final int batchTimeInterval;
+ private final boolean persistent;
+ private final String diskStoreName;
+ private final boolean diskSynchronous;
+ private final int maxQueueMemory;
+ private final int dispatcherThreads;
+ private final String orderPolicy;
+ private final String[] gatewayEventFilters;
+ private final String gatewaySubstitutionFilter;
+ private final String listenerClassName;
+ private final Properties listenerProperties;
+ private final boolean forwardExpirationDestroy;
public AsyncEventQueueFunctionArgs(String asyncEventQueueId, boolean isParallel,
boolean enableBatchConflation, int batchSize, int batchTimeInterval, boolean persistent,
@@ -127,4 +127,5 @@ public class AsyncEventQueueFunctionArgs implements Serializable {
public boolean isForwardExpirationDestroy() {
return forwardExpirationDestroy;
}
+
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ChangeLogLevelFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ChangeLogLevelFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ChangeLogLevelFunction.java
index 91aabe4..5fd3348 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ChangeLogLevelFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ChangeLogLevelFunction.java
@@ -14,43 +14,40 @@
*/
package org.apache.geode.management.internal.cli.functions;
-import static org.apache.geode.distributed.ConfigurationProperties.*;
+import static org.apache.geode.distributed.ConfigurationProperties.LOG_LEVEL;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.Logger;
import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.CacheFactory;
import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.distributed.internal.DistributionConfig;
import org.apache.geode.internal.InternalEntity;
import org.apache.geode.internal.logging.LogService;
+import org.apache.geode.internal.logging.log4j.LogLevel;
import org.apache.geode.internal.logging.log4j.LogMarker;
import org.apache.geode.internal.logging.log4j.LogWriterLogger;
-import org.apache.geode.internal.logging.log4j.LogLevel;
-import org.apache.logging.log4j.Level;
-import org.apache.logging.log4j.Logger;
-
-import java.util.HashMap;
-import java.util.Map;
-
/**
- *
* Class for change log level function
*
* since 8.0
- *
*/
-
public class ChangeLogLevelFunction implements Function, InternalEntity {
- private static final Logger logger = LogService.getLogger();
- public static final String ID = ChangeLogLevelFunction.class.getName();
private static final long serialVersionUID = 1L;
+ private static final Logger logger = LogService.getLogger();
+
@Override
- public void execute(FunctionContext context) {
- Cache cache = CacheFactory.getAnyInstance();
- Map<String, String> result = new HashMap<String, String>();
+ public void execute(final FunctionContext context) {
+ Cache cache = context.getCache();
+ Map<String, String> result = new HashMap<>();
+
try {
LogWriterLogger logwriterLogger = (LogWriterLogger) cache.getLogger();
Object[] args = (Object[]) context.getArguments();
@@ -63,6 +60,7 @@ public class ChangeLogLevelFunction implements Function, InternalEntity {
result.put(cache.getDistributedSystem().getDistributedMember().getId(),
"New log level is " + log4jLevel);
context.getResultSender().lastResult(result);
+
} catch (Exception ex) {
// LOG:CONFIG:
logger.info(LogMarker.CONFIG, "GFSH Changing log level exception {}", ex.getMessage(), ex);
@@ -73,12 +71,6 @@ public class ChangeLogLevelFunction implements Function, InternalEntity {
}
@Override
- public String getId() {
- return ChangeLogLevelFunction.ID;
-
- }
-
- @Override
public boolean hasResult() {
return true;
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CliFunctionResult.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CliFunctionResult.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CliFunctionResult.java
index 401c1a8..4bc7acc 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CliFunctionResult.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CliFunctionResult.java
@@ -14,11 +14,6 @@
*/
package org.apache.geode.management.internal.cli.functions;
-import org.apache.geode.DataSerializer;
-import org.apache.geode.internal.DataSerializableFixedID;
-import org.apache.geode.internal.Version;
-import org.apache.geode.management.internal.configuration.domain.XmlEntity;
-
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
@@ -28,7 +23,13 @@ import java.util.Arrays;
import java.util.Collections;
import java.util.List;
+import org.apache.geode.DataSerializer;
+import org.apache.geode.internal.DataSerializableFixedID;
+import org.apache.geode.internal.Version;
+import org.apache.geode.management.internal.configuration.domain.XmlEntity;
+
public class CliFunctionResult implements Comparable<CliFunctionResult>, DataSerializableFixedID {
+
private String memberIdOrName;
private Serializable[] serializables = new String[0];
private Throwable throwable;
@@ -36,7 +37,9 @@ public class CliFunctionResult implements Comparable<CliFunctionResult>, DataSer
private XmlEntity xmlEntity;
private byte[] byteData = new byte[0];
- public CliFunctionResult() {}
+ public CliFunctionResult() {
+ // nothing
+ }
public CliFunctionResult(final String memberIdOrName) {
this.memberIdOrName = memberIdOrName;
@@ -65,7 +68,6 @@ public class CliFunctionResult implements Comparable<CliFunctionResult>, DataSer
this.successful = true;
}
-
public CliFunctionResult(final String memberIdOrName, final XmlEntity xmlEntity,
final Serializable[] serializables) {
this.memberIdOrName = memberIdOrName;
@@ -131,7 +133,7 @@ public class CliFunctionResult implements Comparable<CliFunctionResult>, DataSer
}
@Override
- public void toData(DataOutput out) throws IOException {
+ public void toData(final DataOutput out) throws IOException {
DataSerializer.writeString(this.memberIdOrName, out);
DataSerializer.writePrimitiveBoolean(this.successful, out);
DataSerializer.writeObject(this.xmlEntity, out);
@@ -140,14 +142,14 @@ public class CliFunctionResult implements Comparable<CliFunctionResult>, DataSer
DataSerializer.writeByteArray(this.byteData, out);
}
- public void toDataPre_GFE_8_0_0_0(DataOutput out) throws IOException {
+ public void toDataPre_GFE_8_0_0_0(final DataOutput out) throws IOException {
DataSerializer.writeString(this.memberIdOrName, out);
DataSerializer.writeObjectArray(this.serializables, out);
DataSerializer.writeObject(this.throwable, out);
}
@Override
- public void fromData(DataInput in) throws IOException, ClassNotFoundException {
+ public void fromData(final DataInput in) throws IOException, ClassNotFoundException {
this.memberIdOrName = DataSerializer.readString(in);
this.successful = DataSerializer.readPrimitiveBoolean(in);
this.xmlEntity = DataSerializer.readObject(in);
@@ -156,7 +158,7 @@ public class CliFunctionResult implements Comparable<CliFunctionResult>, DataSer
this.byteData = DataSerializer.readByteArray(in);
}
- public void fromDataPre_GFE_8_0_0_0(DataInput in) throws IOException, ClassNotFoundException {
+ public void fromDataPre_GFE_8_0_0_0(final DataInput in) throws IOException, ClassNotFoundException {
this.memberIdOrName = DataSerializer.readString(in);
this.throwable = DataSerializer.readObject(in);
this.serializables = (Serializable[]) DataSerializer.readObjectArray(in);
@@ -175,7 +177,7 @@ public class CliFunctionResult implements Comparable<CliFunctionResult>, DataSer
}
@Override
- public int compareTo(CliFunctionResult o) {
+ public int compareTo(final CliFunctionResult o) {
if (this.memberIdOrName == null && o.memberIdOrName == null) {
return 0;
}
@@ -190,14 +192,14 @@ public class CliFunctionResult implements Comparable<CliFunctionResult>, DataSer
@Override
public int hashCode() {
- final int prime = 31;
+ int prime = 31;
int result = 1;
result = prime * result + ((this.memberIdOrName == null) ? 0 : this.memberIdOrName.hashCode());
return result;
}
@Override
- public boolean equals(Object obj) {
+ public boolean equals(final Object obj) {
if (this == obj)
return true;
if (obj == null)
@@ -227,8 +229,8 @@ public class CliFunctionResult implements Comparable<CliFunctionResult>, DataSer
* @param results The results to clean.
* @return The cleaned results.
*/
- public static List<CliFunctionResult> cleanResults(List<?> results) {
- List<CliFunctionResult> returnResults = new ArrayList<CliFunctionResult>(results.size());
+ public static List<CliFunctionResult> cleanResults(final List<?> results) {
+ List<CliFunctionResult> returnResults = new ArrayList<>(results.size());
for (Object result : results) {
if (result instanceof CliFunctionResult) {
returnResults.add((CliFunctionResult) result);
@@ -243,4 +245,5 @@ public class CliFunctionResult implements Comparable<CliFunctionResult>, DataSer
public Version[] getSerializationVersions() {
return new Version[] {Version.GFE_80};
}
+
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CloseDurableClientFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CloseDurableClientFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CloseDurableClientFunction.java
index 73761c4..6af9d50 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CloseDurableClientFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CloseDurableClientFunction.java
@@ -15,9 +15,8 @@
package org.apache.geode.management.internal.cli.functions;
import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
-import org.apache.geode.distributed.internal.InternalDistributedSystem;
import org.apache.geode.internal.InternalEntity;
import org.apache.geode.internal.cache.tier.sockets.CacheClientNotifier;
import org.apache.geode.internal.cache.tier.sockets.CacheClientProxy;
@@ -25,19 +24,18 @@ import org.apache.geode.management.internal.cli.CliUtil;
import org.apache.geode.management.internal.cli.domain.MemberResult;
import org.apache.geode.management.internal.cli.i18n.CliStrings;
-/***
+/**
* Function to close a durable client
- *
*/
-public class CloseDurableClientFunction extends FunctionAdapter implements InternalEntity {
+public class CloseDurableClientFunction implements InternalEntity, Function {
private static final long serialVersionUID = 1L;
@Override
- public void execute(FunctionContext context) {
+ public void execute(final FunctionContext context) {
String durableClientId = (String) context.getArguments();
- final Cache cache = CliUtil.getCacheIfExists();
- final String memberNameOrId =
+ Cache cache = context.getCache();
+ String memberNameOrId =
CliUtil.getMemberNameOrId(cache.getDistributedSystem().getDistributedMember());
MemberResult memberResult = new MemberResult(memberNameOrId);
@@ -62,16 +60,13 @@ public class CloseDurableClientFunction extends FunctionAdapter implements Inter
} else {
memberResult.setErrorMessage(CliStrings.NO_CLIENT_FOUND);
}
+
} catch (Exception e) {
memberResult.setExceptionMessage(e.getMessage());
+
} finally {
context.getResultSender().lastResult(memberResult);
}
}
- @Override
- public String getId() {
- return CloseDurableClientFunction.class.getName();
- }
-
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CloseDurableCqFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CloseDurableCqFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CloseDurableCqFunction.java
index e526409..ab925de 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CloseDurableCqFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CloseDurableCqFunction.java
@@ -15,29 +15,26 @@
package org.apache.geode.management.internal.cli.functions;
import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.internal.InternalEntity;
import org.apache.geode.internal.cache.tier.sockets.CacheClientNotifier;
import org.apache.geode.internal.cache.tier.sockets.CacheClientProxy;
-import org.apache.geode.internal.cache.tier.sockets.ClientProxyMembershipID;
import org.apache.geode.management.internal.cli.CliUtil;
import org.apache.geode.management.internal.cli.domain.MemberResult;
import org.apache.geode.management.internal.cli.i18n.CliStrings;
-/***
+/**
* Function to close a durable cq
- *
*/
-public class CloseDurableCqFunction extends FunctionAdapter implements InternalEntity {
+public class CloseDurableCqFunction implements InternalEntity, Function {
private static final long serialVersionUID = 1L;
@Override
- public void execute(FunctionContext context) {
-
- final Cache cache = CliUtil.getCacheIfExists();
- final String memberNameOrId =
+ public void execute(final FunctionContext context) {
+ Cache cache = context.getCache();
+ String memberNameOrId =
CliUtil.getMemberNameOrId(cache.getDistributedSystem().getDistributedMember());
CacheClientNotifier cacheClientNotifier = CacheClientNotifier.getInstance();
String[] args = (String[]) context.getArguments();
@@ -45,6 +42,7 @@ public class CloseDurableCqFunction extends FunctionAdapter implements InternalE
String cqName = args[1];
MemberResult memberResult = new MemberResult(memberNameOrId);
+
try {
if (cacheClientNotifier != null) {
CacheClientProxy cacheClientProxy = cacheClientNotifier.getClientProxy(durableClientId);
@@ -64,16 +62,13 @@ public class CloseDurableCqFunction extends FunctionAdapter implements InternalE
} else {
memberResult.setErrorMessage(CliStrings.NO_CLIENT_FOUND);
}
+
} catch (Exception e) {
memberResult.setExceptionMessage(e.getMessage());
+
} finally {
context.getResultSender().lastResult(memberResult);
}
}
- @Override
- public String getId() {
- return CloseDurableCqFunction.class.getName();
- }
-
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ContinuousQueryFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ContinuousQueryFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ContinuousQueryFunction.java
index 1f06a41..b03d00a 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ContinuousQueryFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ContinuousQueryFunction.java
@@ -17,12 +17,12 @@ package org.apache.geode.management.internal.cli.functions;
import java.io.Serializable;
import java.util.Collection;
import java.util.Iterator;
-import org.apache.geode.cache.CacheFactory;
+
+import org.apache.geode.cache.Cache;
import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.internal.InternalEntity;
import org.apache.geode.internal.cache.CacheServerImpl;
-import org.apache.geode.internal.cache.InternalCache;
import org.apache.geode.internal.cache.tier.sockets.AcceptorImpl;
import org.apache.geode.internal.cache.tier.sockets.CacheClientNotifier;
import org.apache.geode.internal.cache.tier.sockets.CacheClientProxy;
@@ -33,19 +33,14 @@ import org.apache.geode.internal.cache.tier.sockets.ServerConnection;
* @since GemFire 8.0
*/
public class ContinuousQueryFunction implements Function, InternalEntity {
- private static final long serialVersionUID = 1L;
- public static final String ID = ContinuousQueryFunction.class.getName();
-
- private InternalCache getCache() {
- return (InternalCache) CacheFactory.getAnyInstance();
- }
+ private static final long serialVersionUID = 1L;
@Override
public void execute(FunctionContext context) {
try {
String clientID = (String) context.getArguments();
- InternalCache cache = getCache();
+ Cache cache = context.getCache();
if (cache.getCacheServers().size() > 0) {
CacheServerImpl server = (CacheServerImpl) cache.getCacheServers().iterator().next();
if (server != null) {
@@ -100,16 +95,13 @@ public class ContinuousQueryFunction implements Function, InternalEntity {
}
}
}
+
} catch (Exception e) {
context.getResultSender()
.lastResult("Exception in ContinuousQueryFunction =" + e.getMessage());
}
- context.getResultSender().lastResult(null);
- }
- @Override
- public String getId() {
- return ContinuousQueryFunction.ID;
+ context.getResultSender().lastResult(null);
}
@Override
@@ -128,13 +120,15 @@ public class ContinuousQueryFunction implements Function, InternalEntity {
}
public class ClientInfo implements Serializable {
+
private static final long serialVersionUID = 1L;
- public String isDurable;
- public String primaryServer;
- public String secondaryServer;
- public ClientInfo(String IsClientDurable, String primaryServerId, String secondaryServerId) {
- isDurable = IsClientDurable;
+ public final String isDurable;
+ public final String primaryServer;
+ public final String secondaryServer;
+
+ public ClientInfo(final String isClientDurable, final String primaryServerId, final String secondaryServerId) {
+ isDurable = isClientDurable;
primaryServer = primaryServerId;
secondaryServer = secondaryServerId;
}
@@ -145,4 +139,5 @@ public class ContinuousQueryFunction implements Function, InternalEntity {
+ ", secondaryServer=" + secondaryServer + "]";
}
}
+
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CreateAsyncEventQueueFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CreateAsyncEventQueueFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CreateAsyncEventQueueFunction.java
index 5696696..5461a49 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CreateAsyncEventQueueFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CreateAsyncEventQueueFunction.java
@@ -23,11 +23,10 @@ import org.apache.logging.log4j.Logger;
import org.apache.geode.SystemFailure;
import org.apache.geode.cache.CacheClosedException;
-import org.apache.geode.cache.CacheFactory;
import org.apache.geode.cache.Declarable;
import org.apache.geode.cache.asyncqueue.AsyncEventListener;
import org.apache.geode.cache.asyncqueue.AsyncEventQueueFactory;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.cache.wan.GatewayEventFilter;
import org.apache.geode.cache.wan.GatewayEventSubstitutionFilter;
@@ -48,25 +47,21 @@ import org.apache.geode.management.internal.configuration.domain.XmlEntity;
*
* @since GemFire 8.0
*/
-public class CreateAsyncEventQueueFunction extends FunctionAdapter implements InternalEntity {
+public class CreateAsyncEventQueueFunction implements InternalEntity, Function {
+
private static final Logger logger = LogService.getLogger();
private static final long serialVersionUID = 1L;
- private InternalCache getCache() {
- return (InternalCache) CacheFactory.getAnyInstance();
- }
-
- @SuppressWarnings("deprecation")
@Override
- public void execute(FunctionContext context) {
+ public void execute(final FunctionContext context) {
// Declared here so that it's available when returning a Throwable
String memberId = "";
try {
AsyncEventQueueFunctionArgs aeqArgs = (AsyncEventQueueFunctionArgs) context.getArguments();
- InternalCache cache = getCache();
+ InternalCache cache = (InternalCache) context.getCache();
DistributedMember member = cache.getDistributedSystem().getDistributedMember();
@@ -179,8 +174,4 @@ public class CreateAsyncEventQueueFunction extends FunctionAdapter implements In
}
}
- @Override
- public String getId() {
- return CreateDiskStoreFunction.class.getName();
- }
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CreateDefinedIndexesFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CreateDefinedIndexesFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CreateDefinedIndexesFunction.java
index 742840c..47017f0 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CreateDefinedIndexesFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CreateDefinedIndexesFunction.java
@@ -14,33 +14,28 @@
*/
package org.apache.geode.management.internal.cli.functions;
-import java.util.Arrays;
-import java.util.List;
import java.util.Map;
import java.util.Set;
import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.CacheFactory;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
-import org.apache.geode.cache.query.Index;
import org.apache.geode.cache.query.MultiIndexCreationException;
import org.apache.geode.cache.query.QueryService;
import org.apache.geode.internal.InternalEntity;
import org.apache.geode.management.internal.cli.domain.IndexInfo;
import org.apache.geode.management.internal.cli.i18n.CliStrings;
-public class CreateDefinedIndexesFunction extends FunctionAdapter implements InternalEntity {
+public class CreateDefinedIndexesFunction implements InternalEntity, Function {
private static final long serialVersionUID = 1L;
@Override
- public void execute(FunctionContext context) {
+ public void execute(final FunctionContext context) {
String memberId = null;
- List<Index> indexes = null;
- Cache cache = null;
+
try {
- cache = CacheFactory.getAnyInstance();
+ Cache cache = context.getCache();
memberId = cache.getDistributedSystem().getDistributedMember().getId();
QueryService queryService = cache.getQueryService();
Set<IndexInfo> indexDefinitions = (Set<IndexInfo>) context.getArguments();
@@ -56,16 +51,18 @@ public class CreateDefinedIndexesFunction extends FunctionAdapter implements Int
queryService.defineIndex(indexName, indexedExpression, regionPath);
}
}
- indexes = queryService.createDefinedIndexes();
+ queryService.createDefinedIndexes();
context.getResultSender().lastResult(new CliFunctionResult(memberId));
+
} catch (MultiIndexCreationException e) {
- StringBuffer sb = new StringBuffer();
+ StringBuilder sb = new StringBuilder();
sb.append("Index creation failed for indexes: ").append("\n");
for (Map.Entry<String, Exception> failedIndex : e.getExceptionsMap().entrySet()) {
sb.append(failedIndex.getKey()).append(" : ").append(failedIndex.getValue().getMessage())
.append("\n");
}
context.getResultSender().lastResult(new CliFunctionResult(memberId, e, sb.toString()));
+
} catch (Exception e) {
String exceptionMessage = CliStrings.format(CliStrings.EXCEPTION_CLASS_AND_MESSAGE,
e.getClass().getName(), e.getMessage());
@@ -73,14 +70,4 @@ public class CreateDefinedIndexesFunction extends FunctionAdapter implements Int
}
}
- public void createCommandObject(IndexInfo info) {
- Cache cache = CacheFactory.getAnyInstance();
- QueryService queryService = cache.getQueryService();
- }
-
- @Override
- public String getId() {
- return CreateDefinedIndexesFunction.class.getName();
- }
-
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CreateDiskStoreFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CreateDiskStoreFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CreateDiskStoreFunction.java
index 3b4679c..9ade960 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CreateDiskStoreFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CreateDiskStoreFunction.java
@@ -14,19 +14,12 @@
*/
package org.apache.geode.management.internal.cli.functions;
-/**
- * Function used by the 'create disk-store' gfsh command to create a disk store on each member.
- *
- * @since GemFire 8.0
- */
-
import org.apache.logging.log4j.Logger;
import org.apache.geode.SystemFailure;
import org.apache.geode.cache.CacheClosedException;
-import org.apache.geode.cache.CacheFactory;
import org.apache.geode.cache.DiskStoreFactory;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.distributed.DistributedMember;
import org.apache.geode.internal.InternalEntity;
@@ -36,25 +29,28 @@ import org.apache.geode.internal.cache.xmlcache.CacheXml;
import org.apache.geode.internal.logging.LogService;
import org.apache.geode.management.internal.configuration.domain.XmlEntity;
-public class CreateDiskStoreFunction extends FunctionAdapter implements InternalEntity {
- private static final Logger logger = LogService.getLogger();
+/**
+ * Function used by the 'create disk-store' gfsh command to create a disk store on each member.
+ *
+ * @since GemFire 8.0
+ */
+public class CreateDiskStoreFunction implements InternalEntity, Function {
private static final long serialVersionUID = 1L;
- private InternalCache getCache() {
- return (InternalCache) CacheFactory.getAnyInstance();
- }
+ private static final Logger logger = LogService.getLogger();
@Override
- public void execute(FunctionContext context) {
+ public void execute(final FunctionContext context) {
// Declared here so that it's available when returning a Throwable
String memberId = "";
+
try {
- final Object[] args = (Object[]) context.getArguments();
- final String diskStoreName = (String) args[0];
- final DiskStoreAttributes diskStoreAttrs = (DiskStoreAttributes) args[01];
+ Object[] args = (Object[]) context.getArguments();
+ String diskStoreName = (String) args[0];
+ DiskStoreAttributes diskStoreAttrs = (DiskStoreAttributes) args[01];
- InternalCache cache = getCache();
+ InternalCache cache = (InternalCache) context.getCache();
DistributedMember member = cache.getDistributedSystem().getDistributedMember();
@@ -84,8 +80,4 @@ public class CreateDiskStoreFunction extends FunctionAdapter implements Internal
}
}
- @Override
- public String getId() {
- return CreateDiskStoreFunction.class.getName();
- }
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CreateIndexFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CreateIndexFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CreateIndexFunction.java
index 8a65f7a..cac6246 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CreateIndexFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/CreateIndexFunction.java
@@ -15,8 +15,7 @@
package org.apache.geode.management.internal.cli.functions;
import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.CacheFactory;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.cache.query.IndexExistsException;
import org.apache.geode.cache.query.IndexInvalidException;
@@ -29,21 +28,20 @@ import org.apache.geode.management.internal.cli.domain.IndexInfo;
import org.apache.geode.management.internal.cli.i18n.CliStrings;
import org.apache.geode.management.internal.configuration.domain.XmlEntity;
-/***
+/**
* Function to create index in a member, based on different arguments passed to it
- *
*/
-public class CreateIndexFunction extends FunctionAdapter implements InternalEntity {
-
+public class CreateIndexFunction implements InternalEntity, Function {
private static final long serialVersionUID = 1L;
@Override
public void execute(FunctionContext context) {
- final IndexInfo indexInfo = (IndexInfo) context.getArguments();
+ IndexInfo indexInfo = (IndexInfo) context.getArguments();
String memberId = null;
+
try {
- Cache cache = CacheFactory.getAnyInstance();
+ Cache cache = context.getCache();
memberId = cache.getDistributedSystem().getDistributedMember().getId();
QueryService queryService = cache.getQueryService();
String indexName = indexInfo.getIndexName();
@@ -70,20 +68,25 @@ public class CreateIndexFunction extends FunctionAdapter implements InternalEnti
regionPath = getValidRegionName(cache, regionPath);
setResultInSender(context, indexInfo, memberId, cache, regionPath);
+
} catch (IndexExistsException e) {
String message =
CliStrings.format(CliStrings.CREATE_INDEX__INDEX__EXISTS, indexInfo.getIndexName());
context.getResultSender().lastResult(new CliFunctionResult(memberId, false, message));
+
} catch (IndexNameConflictException e) {
String message =
CliStrings.format(CliStrings.CREATE_INDEX__NAME__CONFLICT, indexInfo.getIndexName());
context.getResultSender().lastResult(new CliFunctionResult(memberId, false, message));
+
} catch (RegionNotFoundException e) {
String message = CliStrings.format(CliStrings.CREATE_INDEX__INVALID__REGIONPATH,
indexInfo.getRegionPath());
context.getResultSender().lastResult(new CliFunctionResult(memberId, false, message));
+
} catch (IndexInvalidException e) {
context.getResultSender().lastResult(new CliFunctionResult(memberId, e, e.getMessage()));
+
} catch (Exception e) {
String exceptionMessage = CliStrings.format(CliStrings.EXCEPTION_CLASS_AND_MESSAGE,
e.getClass().getName(), e.getMessage());
@@ -91,12 +94,13 @@ public class CreateIndexFunction extends FunctionAdapter implements InternalEnti
}
}
- private void setResultInSender(FunctionContext context, IndexInfo indexInfo, String memberId,
- Cache cache, String regionPath) {
+ private void setResultInSender(final FunctionContext context, final IndexInfo indexInfo, final String memberId,
+ final Cache cache, final String regionPath) {
if (regionPath == null) {
String message = CliStrings.format(CliStrings.CREATE_INDEX__INVALID__REGIONPATH,
indexInfo.getRegionPath());
context.getResultSender().lastResult(new CliFunctionResult(memberId, false, message));
+
} else {
XmlEntity xmlEntity =
new XmlEntity(CacheXml.REGION, "name", cache.getRegion(regionPath).getName());
@@ -104,7 +108,7 @@ public class CreateIndexFunction extends FunctionAdapter implements InternalEnti
}
}
- private String getValidRegionName(Cache cache, String regionPath) {
+ private String getValidRegionName(final Cache cache, String regionPath) {
while (regionPath != null && cache.getRegion(regionPath) == null) {
int dotPosition;
if (regionPath.contains(".") && ((dotPosition = regionPath.lastIndexOf('.')) != -1)) {
@@ -116,8 +120,4 @@ public class CreateIndexFunction extends FunctionAdapter implements InternalEnti
return regionPath;
}
- @Override
- public String getId() {
- return CreateIndexFunction.class.getName();
- }
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/DataCommandFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/DataCommandFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/DataCommandFunction.java
index 96f8815..0483838 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/DataCommandFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/DataCommandFunction.java
@@ -14,10 +14,8 @@
*/
package org.apache.geode.management.internal.cli.functions;
-import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
-import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
@@ -26,13 +24,11 @@ import java.util.concurrent.atomic.AtomicInteger;
import org.apache.commons.lang.StringUtils;
import org.apache.logging.log4j.Logger;
-import org.apache.shiro.subject.Subject;
import org.json.JSONArray;
-import org.apache.geode.cache.CacheFactory;
import org.apache.geode.cache.DataPolicy;
import org.apache.geode.cache.Region;
-import org.apache.geode.cache.execute.FunctionAdapter;
+import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.cache.partition.PartitionRegionHelper;
import org.apache.geode.cache.query.FunctionDomainException;
@@ -69,19 +65,14 @@ import org.apache.geode.pdx.PdxInstance;
/**
* @since GemFire 7.0
*/
-public class DataCommandFunction extends FunctionAdapter implements InternalEntity {
- private static final Logger logger = LogService.getLogger();
-
+public class DataCommandFunction implements InternalEntity, Function {
private static final long serialVersionUID = 1L;
-
- private boolean optimizeForWrite = false;
+ private static final Logger logger = LogService.getLogger();
private static final int NESTED_JSON_LENGTH = 20;
- @Override
- public String getId() {
- return DataCommandFunction.class.getName();
- }
+ private boolean optimizeForWrite = false;
+ private InternalCache cache;
@Override
public boolean hasResult() {
@@ -89,7 +80,6 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
}
@Override
-
public boolean isHA() {
return false;
}
@@ -107,14 +97,14 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
}
@Override
- public void execute(FunctionContext functionContext) {
+ public void execute(final FunctionContext functionContext) {
try {
- InternalCache cache = getCache();
+ cache = (InternalCache) functionContext.getCache();
DataCommandRequest request = (DataCommandRequest) functionContext.getArguments();
if (logger.isDebugEnabled()) {
- logger.debug("Executing function : \n{}\n on member {}", request,
- System.getProperty("memberName"));
+ logger.debug("Executing function : \n{}\n on member {}", request, cache.getMyId());
}
+
DataCommandResult result = null;
if (request.isGet()) {
result = get(request, cache.getSecurityService());
@@ -127,22 +117,19 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
} else if (request.isSelect()) {
result = select(request);
}
+
if (logger.isDebugEnabled()) {
logger.debug("Result is {}", result);
}
functionContext.getResultSender().lastResult(result);
+
} catch (Exception e) {
logger.info("Exception occurred:", e);
functionContext.getResultSender().sendException(e);
}
}
-
- private InternalCache getCache() {
- return (InternalCache) CacheFactory.getAnyInstance();
- }
-
- public DataCommandResult remove(DataCommandRequest request) {
+ private DataCommandResult remove(final DataCommandRequest request) {
String key = request.getKey();
String keyClass = request.getKeyClass();
String regionName = request.getRegionName();
@@ -150,7 +137,7 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
return remove(key, keyClass, regionName, removeAllKeys);
}
- public DataCommandResult get(DataCommandRequest request, SecurityService securityService) {
+ private DataCommandResult get(final DataCommandRequest request, final SecurityService securityService) {
String key = request.getKey();
String keyClass = request.getKeyClass();
String valueClass = request.getValueClass();
@@ -160,7 +147,7 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
securityService);
}
- public DataCommandResult locateEntry(DataCommandRequest request) {
+ private DataCommandResult locateEntry(final DataCommandRequest request) {
String key = request.getKey();
String keyClass = request.getKeyClass();
String valueClass = request.getValueClass();
@@ -169,7 +156,7 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
return locateEntry(key, keyClass, valueClass, regionName, recursive);
}
- public DataCommandResult put(DataCommandRequest request) {
+ private DataCommandResult put(final DataCommandRequest request) {
String key = request.getKey();
String value = request.getValue();
boolean putIfAbsent = request.isPutIfAbsent();
@@ -179,30 +166,12 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
return put(key, value, putIfAbsent, keyClass, valueClass, regionName);
}
- public DataCommandResult select(DataCommandRequest request) {
+ DataCommandResult select(final DataCommandRequest request) {
String query = request.getQuery();
return select(request.getPrincipal(), query);
}
- /**
- * To catch trace output
- */
- public static class WrappedIndexTrackingQueryObserver extends IndexTrackingQueryObserver {
-
- @Override
- public void reset() {
- // NOOP
- }
-
- public void reset2() {
- super.reset();
- }
- }
-
- @SuppressWarnings("rawtypes")
- private DataCommandResult select(Object principal, String queryString) {
-
- InternalCache cache = getCache();
+ private DataCommandResult select(final Object principal, final String queryString) {
AtomicInteger nestedObjectCount = new AtomicInteger(0);
if (StringUtils.isEmpty(queryString)) {
return DataCommandResult.createSelectInfoResult(null, null, -1, null,
@@ -211,8 +180,9 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
QueryService qs = cache.getQueryService();
- // TODO : Find out if is this optimised use. Can you have something equivalent of parsed
+ // TODO : Find out if is this optimized use. Can you have something equivalent of parsed
// queries with names where name can be retrieved to avoid parsing every-time
+
Query query = qs.newQuery(queryString);
DefaultQuery tracedQuery = (DefaultQuery) query;
WrappedIndexTrackingQueryObserver queryObserver = null;
@@ -244,6 +214,7 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
logger.warn(e.getMessage(), e);
return DataCommandResult.createSelectResult(queryString, null, queryVerboseMsg, e,
e.getMessage(), false);
+
} finally {
if (queryObserver != null) {
QueryObserverHolder.reset();
@@ -251,14 +222,16 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
}
}
- private void select_NonSelectResults(Object results, List<SelectResultRow> list) {
+ private void select_NonSelectResults(final Object results, final List<SelectResultRow> list) {
if (logger.isDebugEnabled()) {
logger.debug("BeanResults : Bean Results class is {}", results.getClass());
}
String str = toJson(results);
GfJsonObject jsonBean;
+
try {
jsonBean = new GfJsonObject(str);
+
} catch (GfJsonException e) {
logger.info("Exception occurred:", e);
jsonBean = new GfJsonObject();
@@ -268,17 +241,18 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
logger.warn("Ignored GfJsonException:", e1);
}
}
+
if (logger.isDebugEnabled()) {
logger.debug("BeanResults : Adding bean json string : {}", jsonBean);
}
list.add(new SelectResultRow(DataCommandResult.ROW_TYPE_BEAN, jsonBean.toString()));
}
- private void select_SelectResults(SelectResults selectResults, Object principal,
- List<SelectResultRow> list, AtomicInteger nestedObjectCount) throws GfJsonException {
+ private void select_SelectResults(final SelectResults selectResults, final Object principal,
+ final List<SelectResultRow> list, final AtomicInteger nestedObjectCount) throws GfJsonException {
for (Object object : selectResults) {
// Post processing
- object = getCache().getSecurityService().postProcess(principal, null, null, object, false);
+ object = cache.getSecurityService().postProcess(principal, null, null, object, false);
if (object instanceof Struct) {
StructImpl impl = (StructImpl) object;
@@ -288,19 +262,23 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
}
list.add(
new SelectResultRow(DataCommandResult.ROW_TYPE_STRUCT_RESULT, jsonStruct.toString()));
+
} else if (JsonUtil.isPrimitiveOrWrapper(object.getClass())) {
if (logger.isDebugEnabled()) {
logger.debug("SelectResults : Adding select primitive : {}", object);
}
list.add(new SelectResultRow(DataCommandResult.ROW_TYPE_PRIMITIVE, object));
+
} else {
if (logger.isDebugEnabled()) {
logger.debug("SelectResults : Bean Results class is {}", object.getClass());
}
String str = toJson(object);
GfJsonObject jsonBean;
+
try {
jsonBean = new GfJsonObject(str);
+
} catch (GfJsonException e) {
logger.error(e.getMessage(), e);
jsonBean = new GfJsonObject();
@@ -310,6 +288,7 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
logger.warn("Ignored GfJsonException:", e1);
}
}
+
if (logger.isDebugEnabled()) {
logger.debug("SelectResults : Adding bean json string : {}", jsonBean);
}
@@ -318,7 +297,7 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
}
}
- private String toJson(Object object) {
+ private String toJson(final Object object) {
if (object instanceof Undefined) {
return "{\"Value\":\"UNDEFINED\"}";
} else if (object instanceof PdxInstance) {
@@ -328,18 +307,21 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
}
}
- private GfJsonObject getJSONForStruct(StructImpl impl, AtomicInteger ai) throws GfJsonException {
+ private GfJsonObject getJSONForStruct(final StructImpl impl, final AtomicInteger ai) throws GfJsonException {
String fields[] = impl.getFieldNames();
Object[] values = impl.getFieldValues();
GfJsonObject jsonObject = new GfJsonObject();
+
for (int i = 0; i < fields.length; i++) {
Object value = values[i];
+
if (value != null) {
if (JsonUtil.isPrimitiveOrWrapper(value.getClass())) {
jsonObject.put(fields[i], value);
} else {
jsonObject.put(fields[i], toJson(value));
}
+
} else {
jsonObject.put(fields[i], "null");
}
@@ -347,12 +329,8 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
return jsonObject;
}
- @SuppressWarnings({"rawtypes"})
- public DataCommandResult remove(String key, String keyClass, String regionName,
- String removeAllKeys) {
-
- InternalCache cache = getCache();
-
+ public DataCommandResult remove(final String key, final String keyClass, final String regionName,
+ final String removeAllKeys) {
if (StringUtils.isEmpty(regionName)) {
return DataCommandResult.createRemoveResult(key, null, null,
CliStrings.REMOVE__MSG__REGIONNAME_EMPTY, false);
@@ -367,6 +345,7 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
if (region == null) {
return DataCommandResult.createRemoveInfoResult(key, null, null,
CliStrings.format(CliStrings.REMOVE__MSG__REGION_NOT_FOUND, regionName), false);
+
} else {
if (removeAllKeys == null) {
Object keyObject;
@@ -397,6 +376,7 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
return DataCommandResult.createRemoveInfoResult(key, null, null,
CliStrings.REMOVE__MSG__KEY_NOT_FOUND_REGION, false);
}
+
} else {
DataPolicy policy = region.getAttributes().getDataPolicy();
if (!policy.withPartitioning()) {
@@ -414,11 +394,8 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
}
}
- @SuppressWarnings({"rawtypes"})
- public DataCommandResult get(Object principal, String key, String keyClass, String valueClass,
- String regionName, Boolean loadOnCacheMiss, SecurityService securityService) {
-
- InternalCache cache = getCache();
+ public DataCommandResult get(final Object principal, final String key, final String keyClass, final String valueClass,
+ final String regionName, final Boolean loadOnCacheMiss, final SecurityService securityService) {
if (StringUtils.isEmpty(regionName)) {
return DataCommandResult.createGetResult(key, null, null,
@@ -438,6 +415,7 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
}
return DataCommandResult.createGetResult(key, null, null,
CliStrings.format(CliStrings.GET__MSG__REGION_NOT_FOUND, regionName), false);
+
} else {
Object keyObject;
try {
@@ -452,6 +430,7 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
// TODO determine whether the following conditional logic (assigned to 'doGet') is safer or
// necessary
+
boolean doGet = Boolean.TRUE.equals(loadOnCacheMiss);
if (doGet || region.containsKey(keyObject)) {
@@ -477,6 +456,7 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
} else {
return DataCommandResult.createGetResult(key, array[1], null, null, false);
}
+
} else {
if (logger.isDebugEnabled()) {
logger.debug("Key is not present in the region {}", regionName);
@@ -487,11 +467,8 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
}
}
- @SuppressWarnings({"unchecked", "rawtypes"})
- public DataCommandResult locateEntry(String key, String keyClass, String valueClass,
- String regionPath, boolean recursive) {
-
- InternalCache cache = getCache();
+ DataCommandResult locateEntry(final String key, final String keyClass, final String valueClass,
+ final String regionPath, final boolean recursive) {
if (StringUtils.isEmpty(regionPath)) {
return DataCommandResult.createLocateEntryResult(key, null, null,
@@ -513,6 +490,7 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
listOfRegionsStartingWithRegionPath.add(targetRegion);
}
}
+
if (listOfRegionsStartingWithRegionPath.size() == 0) {
if (logger.isDebugEnabled()) {
logger.debug("Region Not Found - {}", regionPath);
@@ -520,6 +498,7 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
return DataCommandResult.createLocateEntryResult(key, null, null,
CliStrings.format(CliStrings.REMOVE__MSG__REGION_NOT_FOUND, regionPath), false);
}
+
} else {
Region region = cache.getRegion(regionPath);
if (region == null) {
@@ -574,6 +553,7 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
return DataCommandResult.createLocateEntryInfoResult(key, null, null,
CliStrings.LOCATE_ENTRY__MSG__KEY_NOT_FOUND_REGION, false);
}
+
} else {
if (region.containsKey(keyObject)) {
value = region.get(keyObject);
@@ -603,9 +583,8 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
}
}
- @SuppressWarnings({"rawtypes"})
- public DataCommandResult put(String key, String value, boolean putIfAbsent, String keyClass,
- String valueClass, String regionName) {
+ public DataCommandResult put(final String key, final String value, final boolean putIfAbsent, final String keyClass,
+ final String valueClass, final String regionName) {
if (StringUtils.isEmpty(regionName)) {
return DataCommandResult.createPutResult(key, null, null,
@@ -622,11 +601,11 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
false);
}
- InternalCache cache = getCache();
Region region = cache.getRegion(regionName);
if (region == null) {
return DataCommandResult.createPutResult(key, null, null,
CliStrings.format(CliStrings.PUT__MSG__REGION_NOT_FOUND, regionName), false);
+
} else {
Object keyObject;
Object valueObject;
@@ -646,12 +625,14 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
return DataCommandResult.createPutResult(key, null, null,
"ClassNotFoundException " + valueClass, false);
}
+
Object returnValue;
if (putIfAbsent && region.containsKey(keyObject)) {
returnValue = region.get(keyObject);
} else {
returnValue = region.put(keyObject, valueObject);
}
+
Object array[] = getJSONForNonPrimitiveObject(returnValue);
DataCommandResult result = DataCommandResult.createPutResult(key, array[1], null, null, true);
if (array[0] != null) {
@@ -661,8 +642,7 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
}
}
- @SuppressWarnings({"rawtypes", "unchecked"})
- private Object getClassObject(String string, String klassString)
+ private Object getClassObject(final String string, final String klassString)
throws ClassNotFoundException, IllegalArgumentException {
if (StringUtils.isEmpty(klassString)) {
return string;
@@ -691,6 +671,7 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
return Float.parseFloat(string);
}
return null;
+
} catch (NumberFormatException e) {
throw new IllegalArgumentException(
"Failed to convert input key to " + klassString + " Msg : " + e.getMessage());
@@ -700,30 +681,33 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
return getObjectFromJson(string, klass);
}
- @SuppressWarnings({"rawtypes"})
- public static Object[] getJSONForNonPrimitiveObject(Object obj) {
+ private static Object[] getJSONForNonPrimitiveObject(Object obj) {
Object[] array = new Object[2];
if (obj == null) {
array[0] = null;
array[1] = "<NULL>";
return array;
+
} else {
array[0] = obj.getClass().getCanonicalName();
Class klass = obj.getClass();
+
if (JsonUtil.isPrimitiveOrWrapper(klass)) {
array[1] = obj;
+
} else if (obj instanceof PdxInstance) {
String str = pdxToJson((PdxInstance) obj);
array[1] = str;
+
} else {
GfJsonObject object = new GfJsonObject(obj, true);
Iterator keysIterator = object.keys();
while (keysIterator.hasNext()) {
String key = (String) keysIterator.next();
Object value = object.get(key);
+
if (GfJsonObject.isJSONKind(value)) {
GfJsonObject jsonVal = new GfJsonObject(value);
- // System.out.println("Re-wrote inner object");
try {
if (jsonVal.has("type-class")) {
object.put(key, jsonVal.get("type-class"));
@@ -734,6 +718,7 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
} catch (GfJsonException e) {
throw new RuntimeException(e);
}
+
} else if (value instanceof JSONArray) {
// Its a collection either a set or list
try {
@@ -750,7 +735,7 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
}
}
- private static String pdxToJson(PdxInstance obj) {
+ private static String pdxToJson(final PdxInstance obj) {
if (obj != null) {
try {
GfJsonObject json = new GfJsonObject();
@@ -772,7 +757,7 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
return null;
}
- public static <V> V getObjectFromJson(String json, Class<V> klass) {
+ private static <V> V getObjectFromJson(final String json, final Class<V> klass) {
String newString = json.replaceAll("'", "\"");
if (newString.charAt(0) == '(') {
int len = newString.length();
@@ -783,7 +768,6 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
return JsonUtil.jsonToObject(newString, klass);
}
-
/**
* Returns a sorted list of all region full paths found in the specified cache.
*
@@ -791,9 +775,8 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
* @param recursive recursive search for sub-regions
* @return Returns a sorted list of all region paths defined in the distributed system.
*/
- @SuppressWarnings({"rawtypes", "unchecked"})
- public static List getAllRegionPaths(InternalCache cache, boolean recursive) {
- ArrayList list = new ArrayList();
+ private static List getAllRegionPaths(final InternalCache cache, final boolean recursive) {
+ List list = new ArrayList();
if (cache == null) {
return list;
}
@@ -817,7 +800,7 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
return list;
}
- public static String getLogMessage(QueryObserver observer, long startTime, String query) {
+ private static String getLogMessage(final QueryObserver observer, final long startTime, final String query) {
String usedIndexesString = null;
float time = 0.0f;
@@ -829,10 +812,11 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
IndexTrackingQueryObserver indexObserver = (IndexTrackingQueryObserver) observer;
Map usedIndexes = indexObserver.getUsedIndexes();
indexObserver.reset();
- StringBuffer buf = new StringBuffer();
+ StringBuilder buf = new StringBuilder();
buf.append(" indexesUsed(");
buf.append(usedIndexes.size());
buf.append(")");
+
if (usedIndexes.size() > 0) {
buf.append(":");
for (Iterator itr = usedIndexes.entrySet().iterator(); itr.hasNext();) {
@@ -843,7 +827,9 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
}
}
}
+
usedIndexesString = buf.toString();
+
} else if (DefaultQuery.QUERY_VERBOSE) {
usedIndexesString = " indexesUsed(NA due to other observer in the way: "
+ observer.getClass().getName() + ")";
@@ -853,4 +839,19 @@ public class DataCommandFunction extends FunctionAdapter implements InternalEnti
usedIndexesString != null ? usedIndexesString : "");
}
+ /**
+ * To catch trace output
+ */
+ public static class WrappedIndexTrackingQueryObserver extends IndexTrackingQueryObserver {
+
+ @Override
+ public void reset() {
+ // NOOP
+ }
+
+ void reset2() {
+ super.reset();
+ }
+ }
+
}
http://git-wip-us.apache.org/repos/asf/geode/blob/96e50e7e/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/DeployFunction.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/DeployFunction.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/DeployFunction.java
index 401a368..ce42594 100644
--- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/DeployFunction.java
+++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/DeployFunction.java
@@ -21,27 +21,20 @@ import org.apache.logging.log4j.Logger;
import org.apache.geode.SystemFailure;
import org.apache.geode.cache.CacheClosedException;
-import org.apache.geode.cache.CacheFactory;
import org.apache.geode.cache.execute.Function;
import org.apache.geode.cache.execute.FunctionContext;
import org.apache.geode.distributed.DistributedMember;
import org.apache.geode.internal.ClassPathLoader;
import org.apache.geode.internal.DeployedJar;
import org.apache.geode.internal.InternalEntity;
-import org.apache.geode.internal.JarDeployer;
import org.apache.geode.internal.cache.InternalCache;
import org.apache.geode.internal.logging.LogService;
public class DeployFunction implements Function, InternalEntity {
- private static final Logger logger = LogService.getLogger();
-
- public static final String ID = DeployFunction.class.getName();
private static final long serialVersionUID = 1L;
- private InternalCache getCache() {
- return (InternalCache) CacheFactory.getAnyInstance();
- }
+ private static final Logger logger = LogService.getLogger();
@Override
public void execute(FunctionContext context) {
@@ -52,7 +45,7 @@ public class DeployFunction implements Function, InternalEntity {
final Object[] args = (Object[]) context.getArguments();
final String[] jarFilenames = (String[]) args[0];
final byte[][] jarBytes = (byte[][]) args[1];
- InternalCache cache = getCache();
+ InternalCache cache = (InternalCache) context.getCache();
DistributedMember member = cache.getDistributedSystem().getDistributedMember();
@@ -96,11 +89,6 @@ public class DeployFunction implements Function, InternalEntity {
}
@Override
- public String getId() {
- return ID;
- }
-
- @Override
public boolean hasResult() {
return true;
}
@@ -114,4 +102,5 @@ public class DeployFunction implements Function, InternalEntity {
public boolean isHA() {
return false;
}
+
}