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/c3c639df
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/c3c639df
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/c3c639df

Branch: refs/heads/feature/GEODE-3299
Commit: c3c639df0e17a3754f55784d21694521ad8a7743
Parents: 0675317
Author: Kirk Lund <[email protected]>
Authored: Mon Jul 24 12:44:37 2017 -0700
Committer: Kirk Lund <[email protected]>
Committed: Tue Jul 25 14:38:32 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/c3c639df/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/c3c639df/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/c3c639df/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/c3c639df/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/c3c639df/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/c3c639df/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/c3c639df/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/c3c639df/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/c3c639df/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/c3c639df/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/c3c639df/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/c3c639df/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/c3c639df/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/c3c639df/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/c3c639df/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/c3c639df/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/c3c639df/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/c3c639df/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;
   }
+
 }

Reply via email to