geode-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From kl...@apache.org
Subject [15/24] incubator-geode git commit: GEODE-1781: refactor internal statistics classes
Date Thu, 18 Aug 2016 16:30:49 GMT
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/StatisticsTypeImpl.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/StatisticsTypeImpl.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/StatisticsTypeImpl.java
deleted file mode 100644
index ccd4d6c..0000000
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/StatisticsTypeImpl.java
+++ /dev/null
@@ -1,258 +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 com.gemstone.gemfire.internal;
-
-import com.gemstone.gemfire.*;
-import com.gemstone.gemfire.internal.i18n.LocalizedStrings;
-
-import java.io.*;
-import java.util.*;
-
-/**
- * Gathers together a number of {@link StatisticDescriptor statistics}
- * into one logical type.
- *
- * @see Statistics
- *
- *
- * @since GemFire 3.0
- */
-public class StatisticsTypeImpl implements StatisticsType {
-
-  /** The name of this statistics type */
-  private final String name;
-
-  /** The description of this statistics type */
-  private final String description;
-
-  /** The descriptions of the statistics in id order */
-  private final StatisticDescriptor[] stats;
-
-  /** Maps a stat name to its StatisticDescriptor */
-  private final HashMap statsMap;
-
-  /** Contains the number of 32-bit statistics in this type. */
-  private final int intStatCount;
-
-  /** Contains the number of long statistics in this type. */
-  private final int longStatCount;
-
-  /** Contains the number of double statistics in this type. */
-  private final int doubleStatCount;
-
-  /////////////////////  Static Methods  /////////////////////
-
-  /**
-   * @see StatisticsTypeXml#read(Reader, StatisticsTypeFactory)
-   */
-  public static StatisticsType[] fromXml(Reader reader,
-                                         StatisticsTypeFactory factory)
-    throws IOException {
-    return (new StatisticsTypeXml()).read(reader, factory);
-  }
-
-  //////////////////////  Constructors  //////////////////////
-
-  /**
-   * Creates a new <code>StatisticsType</code> with the given name,
-   * description, and statistics.
-   *
-   * @param name
-   *        The name of this statistics type (for example,
-   *        <code>"DatabaseStatistics"</code>)
-   * @param description
-   *        A description of this statistics type (for example,
-   *        "Information about the application's use of the
-   *        database").
-   * @param stats
-   *        Descriptions of the individual statistics grouped together
-   *        in this statistics type.
-   *
-   * @throws NullPointerException
-   *         If either <code>name</code> or <code>stats</code> is
-   *         <code>null</code>.
-   */
-  public StatisticsTypeImpl(String name, String description,
-                            StatisticDescriptor[] stats) {
-    this(name, description, stats, false);
-  }
-
-  /**
-   * Creates a new <code>StatisticsType</code> with the given name,
-   * description, and statistics.
-   *
-   * @param name
-   *        The name of this statistics type (for example,
-   *        <code>"DatabaseStatistics"</code>)
-   * @param description
-   *        A description of this statistics type (for example,
-   *        "Information about the application's use of the
-   *        database").
-   * @param stats
-   *        Descriptions of the individual statistics grouped together
-   *        in this statistics type.
-   * @param wrapsSharedClass
-   *        True if this type is a wrapper around a SharedClass??.
-   *        False if its a dynamic type created at run time.        
-   *
-   * @throws NullPointerException
-   *         If either <code>name</code> or <code>stats</code> is
-   *         <code>null</code>.
-   */
-  public StatisticsTypeImpl(String name, String description,
-                            StatisticDescriptor[] stats, boolean wrapsSharedClass) {
-    if (name == null) {
-      throw new NullPointerException(LocalizedStrings.StatisticsTypeImpl_CANNOT_HAVE_A_NULL_STATISTICS_TYPE_NAME.toLocalizedString());
-    }
-
-    if (stats == null) {
-      throw new NullPointerException(LocalizedStrings.StatisticsTypeImpl_CANNOT_HAVE_A_NULL_STATISTIC_DESCRIPTORS.toLocalizedString());
-    }
-    if (stats.length > StatisticsTypeFactory.MAX_DESCRIPTORS_PER_TYPE) {
-      throw new IllegalArgumentException(LocalizedStrings.StatisticsTypeImpl_THE_REQUESTED_DESCRIPTOR_COUNT_0_EXCEEDS_THE_MAXIMUM_WHICH_IS_1.toLocalizedString(new Object[] {Integer.valueOf(stats.length), Integer.valueOf(StatisticsTypeFactory.MAX_DESCRIPTORS_PER_TYPE)}));
-    }
-
-    this.name = name;
-    this.description = description;
-    this.stats = stats;
-    this.statsMap = new HashMap(stats.length*2);
-    int intCount = 0;
-    int longCount = 0;
-    int doubleCount = 0;
-    for (int i=0; i < stats.length; i++) {
-      StatisticDescriptorImpl sd = (StatisticDescriptorImpl)stats[i];
-      if (sd.getTypeCode() == StatisticDescriptorImpl.INT) {
-        if (!wrapsSharedClass) {
-          sd.setId(intCount);
-        }
-        intCount++;
-      } else if (sd.getTypeCode() == StatisticDescriptorImpl.LONG) {
-        if (!wrapsSharedClass) {
-          sd.setId(longCount);
-        }
-        longCount++;
-      } else if (sd.getTypeCode() == StatisticDescriptorImpl.DOUBLE) {
-        if (!wrapsSharedClass) {
-          sd.setId(doubleCount);
-        }
-        doubleCount++;
-      }
-      Object previousValue = statsMap.put(stats[i].getName(), sd);
-      if (previousValue != null) {
-        throw new IllegalArgumentException(LocalizedStrings.StatisticsTypeImpl_DUPLICATE_STATISTICDESCRIPTOR_NAMED_0.toLocalizedString(stats[i].getName()));
-      }
-    }
-    this.intStatCount = intCount;
-    this.longStatCount = longCount;
-    this.doubleStatCount = doubleCount;
-  }
-
-  //////////////////////  StatisticsType Methods  //////////////////////
-
-  public final String getName() {
-    return this.name;
-  }
-
-  public final String getDescription() {
-    return this.description;
-  }
-
-  public final StatisticDescriptor[] getStatistics() {
-    return this.stats;
-  }
-  
-  public final int nameToId(String name) {
-    return nameToDescriptor(name).getId();
-  }
-
-  public final StatisticDescriptor nameToDescriptor(String name) {
-    StatisticDescriptorImpl stat = (StatisticDescriptorImpl)statsMap.get(name);
-    if (stat == null) {
-      throw new IllegalArgumentException(LocalizedStrings.StatisticsTypeImpl_THERE_IS_NO_STATISTIC_NAMED_0.toLocalizedString(name));
-    }
-    return stat;
-  }
-
-  //////////////////////  Instance Methods  //////////////////////
-
-  /**
-   * Gets the number of statistics in this type that are ints.
-   */
-  public int getIntStatCount() {
-    return this.intStatCount;
-  }
-  /**
-   * Gets the number of statistics in this type that are longs.
-   */
-  public int getLongStatCount() {
-    return this.longStatCount;
-  }
-  /**
-   * Gets the number of statistics that are doubles.
-   */
-  public int getDoubleStatCount() {
-    return this.doubleStatCount;
-  }
-
-//  @Override
-//  public String toString() {
-//    return "StatisticType with " + this.stats.length + " stats";
-//  }
-
-  @Override
-  public String toString() {
-    final StringBuilder sb = new StringBuilder(getClass().getName());
-    sb.append("@").append(System.identityHashCode(this)).append("{");
-    sb.append("name=").append(this.name);
-    sb.append(", description=").append(this.description);
-    sb.append(", stats.length=").append(this.stats.length);
-    sb.append("}");
-    return sb.toString();
-  }
-  
-  @Override
-  public int hashCode() {
-    return getName().hashCode();
-  }
-  @Override
-  public boolean equals(Object o) {
-    if (o == null) {
-      return false;
-    }
-    if (!(o instanceof StatisticsType)) {
-      return false;
-    }
-    StatisticsType other = (StatisticsType)o;
-    if (!getName().equals(other.getName())) {
-      return false;
-    }
-    if (!getDescription().equals(other.getDescription())) {
-      return false;
-    }
-    StatisticDescriptor[] myStats = getStatistics();
-    StatisticDescriptor[] yourStats = other.getStatistics();
-    if (myStats.length != yourStats.length) {
-      return false;
-    }
-    for (int i=0; i < myStats.length; i++) {
-      if (!myStats[i].equals(yourStats[i])) {
-        return false;
-      }
-    }
-    return true;
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/StatisticsTypeXml.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/StatisticsTypeXml.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/StatisticsTypeXml.java
deleted file mode 100644
index 0ce0422..0000000
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/StatisticsTypeXml.java
+++ /dev/null
@@ -1,280 +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 com.gemstone.gemfire.internal;
-
-import com.gemstone.gemfire.*;
-import com.gemstone.gemfire.internal.i18n.LocalizedStrings;
-
-import java.io.*;
-import java.util.*;
-import javax.xml.parsers.*;
-//import javax.xml.transform.*;
-//import javax.xml.transform.dom.*;
-//import javax.xml.transform.stream.*;
-import org.w3c.dom.*;
-import org.xml.sax.*;
-
-// @todo davidw Use a SAX parser instead of DOM
-/**
- * This is an internal helper class for dealing with the
- * SessionFactory XML configuration files.
- */
-public class StatisticsTypeXml 
-  implements EntityResolver, ErrorHandler {
-
-  /** The name of the DTD file */
-  static final String DTD = "statisticsType.dtd";
-
-  static final String systemId = "http://www.gemstone.com/dtd/" + DTD;
-  static final String publicId = 
-    "-//GemStone Systems, Inc.//GemFire StatisticsType//EN";
-
-  /////////////////////  Interface methods  ///////////////////////
-
-  /**
-   * Given a publicId, attempts to resolve it to a DTD.  Returns an
-   * <code>InputSource</code> for the DTD.
-   */
-  public InputSource resolveEntity (String publicId, String systemId)
-    throws SAXException {
-
-    // Figure out the location for the publicId.  Be tolerant of other
-    // versions of the dtd
-    if(publicId.equals(StatisticsTypeXml.publicId) ||
-       systemId.equals(StatisticsTypeXml.systemId) ||
-       systemId.endsWith(DTD)) {
-
-      // Public ID for system config DTD
-      String location = "/com/gemstone/gemfire/" + DTD;
-      InputStream stream = ClassPathLoader.getLatest().getResourceAsStream(getClass(), location);
-      if (stream != null) {
-        return new InputSource(stream);
-
-      } else {
-        throw new SAXNotRecognizedException(LocalizedStrings.StatisticsTypeXml_DTD_NOT_FOUND_0.toLocalizedString(location));
-      }
-
-    } else {
-      throw new SAXNotRecognizedException(LocalizedStrings.StatisticsTypeXml_INVALID_PUBLIC_ID_0.toLocalizedString(publicId)); 
-    }
-  }
-
-  public void warning(SAXParseException exception) throws SAXException
-  { 
-    // We don't want to thrown an exception.  We want to log it!!
-    // FIXME
-//    String s = "SAX warning while working with XML";
-  }
-
-  public void error(SAXParseException exception) throws SAXException
-  {
-    throw new GemFireConfigException(LocalizedStrings.StatisticsTypeXml_SAX_ERROR_WHILE_WORKING_WITH_XML.toLocalizedString(), exception);
-  }
-  
-  public void fatalError(SAXParseException exception) throws SAXException
-  {
-    throw new GemFireConfigException(LocalizedStrings.StatisticsTypeXml_SAX_FATAL_ERROR_WHILE_WORKING_WITH_XML.toLocalizedString(), exception);
-  }
-
-  //////////////////////  Parsing XML File  ////////////////////////
-
-  /**
-   * Parses the contents of XML data and from it creates one or more
-   * <code>StatisticsType</code> instances.
-   */
-  public StatisticsType[] read( Reader reader, StatisticsTypeFactory statFactory) {
-    DocumentBuilderFactory factory =
-      DocumentBuilderFactory.newInstance();
-//     factory.setValidating(validate);
-
-    DocumentBuilder parser = null;
-    try {
-      parser = factory.newDocumentBuilder();
-
-    } catch (ParserConfigurationException ex) {
-      throw new GemFireConfigException(LocalizedStrings.StatisticsTypeXml_FAILED_PARSING_XML.toLocalizedString(), ex);
-    }
-
-    parser.setErrorHandler(this);
-    parser.setEntityResolver(this);
-    Document doc;
-    try {
-      doc = parser.parse(new InputSource(reader));
-    } catch (SAXException se) {
-      throw new GemFireConfigException(LocalizedStrings.StatisticsTypeXml_FAILED_PARSING_XML.toLocalizedString(), se);
-    } catch (IOException io) {
-      throw new GemFireConfigException(LocalizedStrings.StatisticsTypeXml_FAILED_READING_XML_DATA.toLocalizedString(), io);
-    }
-
-    if (doc == null) {
-      throw new GemFireConfigException(LocalizedStrings.StatisticsTypeXml_FAILED_READING_XML_DATA_NO_DOCUMENT.toLocalizedString());
-    }
-    Element root = doc.getDocumentElement();
-    if (root == null) {
-      throw new GemFireConfigException(LocalizedStrings.StatisticsTypeXml_FAILED_READING_XML_DATA_NO_ROOT_ELEMENT.toLocalizedString());
-    }
-    return extractStatistics(root, statFactory);
-  }
-
-  /*
-   * <!ELEMENT statistics (type)+>
-   */
-  private StatisticsType[] extractStatistics(Element root, StatisticsTypeFactory statFactory) {
-    Assert.assertTrue(root.getTagName().equals("statistics"));
-
-    ArrayList types = new ArrayList();
-    NodeList typeNodes = root.getElementsByTagName("type");
-    for (int i = 0; i < typeNodes.getLength(); i++) {
-      Element typeNode = (Element) typeNodes.item(i);
-      types.add(extractType(typeNode, statFactory));
-    }
-    return (StatisticsType[])types.toArray(new StatisticsType[types.size()]);
-  }
-  /**
-   * <!ELEMENT type (description?, (stat)+)>
-   * <!ATTLIST type  name CDATA #REQUIRED>
-   */
-  private StatisticsType extractType(Element typeNode, StatisticsTypeFactory statFactory) {
-    Assert.assertTrue(typeNode.getTagName().equals("type"));
-    Assert.assertTrue(typeNode.hasAttribute("name"));
-
-    final String typeName = typeNode.getAttribute("name");
-    ArrayList stats = new ArrayList();
-    NodeList statNodes = typeNode.getElementsByTagName("stat");
-    for (int i = 0; i < statNodes.getLength(); i++) {
-      Element statNode = (Element) statNodes.item(i);
-      stats.add(extractStat(statNode, statFactory));
-    }
-    StatisticDescriptor[] descriptors =
-      (StatisticDescriptor[])stats.toArray(new StatisticDescriptor[stats.size()]);
-    String description = "";
-    {
-      NodeList descriptionNodes = typeNode.getElementsByTagName("description");
-      if (descriptionNodes.getLength() > 0) {
-        // descriptionNodes will contain the both our description, if it exists,
-        // and any nested stat descriptions. Ours will always be first
-        Element descriptionNode = (Element) descriptionNodes.item(0);
-        // but make sure the first one belongs to our node
-        if (descriptionNode.getParentNode().getNodeName().equals(typeNode.getNodeName())) {
-          description = extractDescription(descriptionNode);
-        }
-      }
-    }
-
-    return statFactory.createType(typeName, description, descriptors);
-  }
-  private final static int INT_STORAGE = 0;
-  private final static int LONG_STORAGE = 1;
-  private final static int DOUBLE_STORAGE = 2;
-  /**
-   * <!ELEMENT stat (description?, unit?)>
-   * <!ATTLIST stat
-   *   name CDATA #REQUIRED
-   *   counter (true | false) #IMPLIED
-   *   largerBetter (true | false) #IMPLIED
-   *   storage (int | long | double) #IMPLIED 
-   * >
-   */
-  private StatisticDescriptor extractStat(Element statNode, StatisticsTypeFactory statFactory) {
-    Assert.assertTrue(statNode.getTagName().equals("stat"));
-    Assert.assertTrue(statNode.hasAttribute("name"));
-
-    final String statName = statNode.getAttribute("name");
-    String description = "";
-    String unit = "";
-    boolean isCounter = true;
-    boolean largerBetter;
-    int storage = INT_STORAGE;
-    
-    if ( statNode.hasAttribute("counter")) {
-      String value = statNode.getAttribute("counter");
-      Assert.assertTrue(value.equalsIgnoreCase("true") ||
-                    value.equalsIgnoreCase("false"));
-      isCounter = Boolean.valueOf(value).booleanValue();
-    }
-    largerBetter = isCounter; // default
-    if ( statNode.hasAttribute("largerBetter")) {
-      String value = statNode.getAttribute("largerBetter");
-      Assert.assertTrue(value.equalsIgnoreCase("true") ||
-                    value.equalsIgnoreCase("false"));
-      largerBetter = Boolean.valueOf(value).booleanValue();
-    }
-    if ( statNode.hasAttribute("storage")) {
-      String value = statNode.getAttribute("storage");
-      if (value.equalsIgnoreCase("int")) {
-        storage = INT_STORAGE;
-      } else if (value.equalsIgnoreCase("long")) {
-        storage = LONG_STORAGE;
-      } else {
-        Assert.assertTrue(value.equalsIgnoreCase("double"));
-        storage = DOUBLE_STORAGE;
-      }
-    }
-    {
-      NodeList descriptionNodes =
-        statNode.getElementsByTagName("description");
-      Assert.assertTrue(descriptionNodes.getLength() <= 1);
-      if (descriptionNodes.getLength() == 1) {
-        Element descriptionNode = (Element) descriptionNodes.item(0);
-        description = extractDescription(descriptionNode);
-      }
-    }
-
-    {
-      NodeList unitNodes =
-        statNode.getElementsByTagName("unit");
-      Assert.assertTrue(unitNodes.getLength() <= 1);
-      if (unitNodes.getLength() == 1) {
-        Element unitNode = (Element) unitNodes.item(0);
-        unit = extractUnit(unitNode);
-      }
-    }
-    if (isCounter) {
-      switch (storage) {
-      case INT_STORAGE: return statFactory.createIntCounter(statName, description, unit, largerBetter);
-      case LONG_STORAGE: return statFactory.createLongCounter(statName, description, unit, largerBetter);
-      case DOUBLE_STORAGE: return statFactory.createDoubleCounter(statName, description, unit, largerBetter);
-      default: throw new RuntimeException(LocalizedStrings.StatisticsTypeXml_UNEXPECTED_STORAGE_TYPE_0.toLocalizedString(Integer.valueOf(storage)));
-      }
-    } else {
-      switch (storage) {
-      case INT_STORAGE: return statFactory.createIntGauge(statName, description, unit, largerBetter);
-      case LONG_STORAGE: return statFactory.createLongGauge(statName, description, unit, largerBetter);
-      case DOUBLE_STORAGE: return statFactory.createDoubleGauge(statName, description, unit, largerBetter);
-      default: throw new RuntimeException(LocalizedStrings.StatisticsTypeXml_UNEXPECTED_STORAGE_TYPE_0.toLocalizedString(Integer.valueOf(storage)));
-      }
-    }
-  }
-  /**
-   * <!ELEMENT description (#PCDATA)>
-   */
-  private String extractDescription(Element descriptionNode) {
-    Assert.assertTrue(descriptionNode.getTagName().equals("description"));
-    return extractText(descriptionNode);
-  }
-  /**
-   * <!ELEMENT unit (#PCDATA)>
-   */
-  private String extractUnit(Element unitNode) {
-    Assert.assertTrue(unitNode.getTagName().equals("unit"));
-    return extractText(unitNode);
-  }
-  private String extractText(Element element) {
-    Text text = (Text) element.getFirstChild();
-    return((text == null ? "" : text.getData()));
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/SystemAdmin.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/SystemAdmin.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/SystemAdmin.java
index cc03ad6..e52950f 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/SystemAdmin.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/SystemAdmin.java
@@ -26,8 +26,9 @@ import com.gemstone.gemfire.cache.persistence.PersistentID;
 import com.gemstone.gemfire.distributed.DistributedMember;
 import com.gemstone.gemfire.distributed.internal.*;
 import com.gemstone.gemfire.distributed.internal.membership.InternalDistributedMember;
-import com.gemstone.gemfire.internal.StatArchiveReader.ResourceInst;
-import com.gemstone.gemfire.internal.StatArchiveReader.StatValue;
+import com.gemstone.gemfire.internal.statistics.StatArchiveReader;
+import com.gemstone.gemfire.internal.statistics.StatArchiveReader.ResourceInst;
+import com.gemstone.gemfire.internal.statistics.StatArchiveReader.StatValue;
 import com.gemstone.gemfire.internal.admin.remote.TailLogResponse;
 import com.gemstone.gemfire.internal.cache.DiskStoreImpl;
 import com.gemstone.gemfire.internal.i18n.LocalizedStrings;
@@ -940,7 +941,7 @@ public class SystemAdmin {
     return result;
   }
 
-  private static class StatSpec implements StatArchiveReader.StatSpec {
+  public static class StatSpec implements StatArchiveReader.StatSpec {
     public final String cmdLineSpec;
     public final String typeId;
     public final String instanceId;

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/VMStats.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/VMStats.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/VMStats.java
deleted file mode 100644
index d7dde46..0000000
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/VMStats.java
+++ /dev/null
@@ -1,87 +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 com.gemstone.gemfire.internal;
-
-import com.gemstone.gemfire.*;
-
-/**
- * Statistics related to a Java VM. Currently they all come from
- * {@link java.lang.Runtime}.
- */
-public class VMStats implements VMStatsContract {
-  private final static StatisticsType vmType;
-  private final static int cpusId;
-  private final static int freeMemoryId;
-  private final static int totalMemoryId;
-  private final static int maxMemoryId;
-  static {
-    StatisticsTypeFactory f = StatisticsTypeFactoryImpl.singleton();
-    vmType = f.createType("VMStats",
-                          "Stats available on any java virtual machine.",
-                          new StatisticDescriptor[] {
-                            f.createIntGauge("cpus",
-                                             "Number of cpus available to the java VM on its machine.",
-                                             "cpus", true),
-                            f.createLongGauge("freeMemory",
-                                              "An approximation fo the total amount of memory currently available for future allocated objects, measured in bytes.",
-                                              "bytes", true),
-                            f.createLongGauge("totalMemory",
-                                              "The total amount of memory currently available for current and future objects, measured in bytes.",
-                                              "bytes"),
-                            f.createLongGauge("maxMemory",
-                                              "The maximum amount of memory that the VM will attempt to use, measured in bytes.",
-                                              "bytes", true)
-                          });
-    cpusId = vmType.nameToId("cpus");
-    freeMemoryId = vmType.nameToId("freeMemory");
-    totalMemoryId = vmType.nameToId("totalMemory");
-    maxMemoryId = vmType.nameToId("maxMemory");
-  }
-  
-  private final Statistics vmStats;
-
-
-  public VMStats(StatisticsFactory f, long id) {
-    this.vmStats = f.createStatistics(vmType, "vmStats", id);
-  }
-
-  public void refresh() {
-    Runtime rt = Runtime.getRuntime();
-    this.vmStats.setInt(cpusId, rt.availableProcessors());
-    this.vmStats.setLong(freeMemoryId, rt.freeMemory());
-    this.vmStats.setLong(totalMemoryId, rt.totalMemory());
-    this.vmStats.setLong(maxMemoryId, rt.maxMemory()); 
-    
-  }
-  public void close() {
-    this.vmStats.close();
-  }
-
-  /* (non-Javadoc)
-   * @see com.gemstone.gemfire.internal.VMStatsContract#getFdsOpen()
-   */
-  public long getFdsOpen() {
-    return -1;
-  }
-
-  /* (non-Javadoc)
-   * @see com.gemstone.gemfire.internal.VMStatsContract#getFdLimit()
-   */
-  public long getFdLimit() {
-    return 0;
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/VMStatsContract.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/VMStatsContract.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/VMStatsContract.java
deleted file mode 100644
index 238cf86..0000000
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/VMStatsContract.java
+++ /dev/null
@@ -1,36 +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 com.gemstone.gemfire.internal;
-
-/**
- * Describes the contract a VMStats implementation must implement.
- * <p> I named this VMStatsContract because an implementation named
- *     VMStats already exists and I didn't want to rename it because
- *     of the svn merge issues.
- * @see VMStatsContractFactory
- */
-public interface VMStatsContract {
-  /**
-   * Called by sampler when it wants the VMStats statistics values to be
-   * refetched from the system.
-   */
-  public void refresh();
-  /**
-   * Called by sampler when it wants the VMStats to go away.
-   */
-  public void close();
-}

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/VMStatsContractFactory.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/VMStatsContractFactory.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/VMStatsContractFactory.java
deleted file mode 100644
index ff84b0e..0000000
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/VMStatsContractFactory.java
+++ /dev/null
@@ -1,60 +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 com.gemstone.gemfire.internal;
-
-import com.gemstone.gemfire.*;
-import com.gemstone.gemfire.internal.stats50.VMStats50;
-
-/**
- * Factory used to produce an instance of VMStatsContract.
- */
-public class VMStatsContractFactory {
-  /**
-   * Create and return a VMStatsContract.
-   */
-  public static VMStatsContract create(StatisticsFactory f, long id) {
-    VMStatsContract result;
-    try {
-      result = new VMStats50(f, id);
-    } 
-    catch (VirtualMachineError err) {
-      SystemFailure.initiateFailure(err);
-      // If this ever returns, rethrow the error.  We're poisoned
-      // now, so don't let this thread continue.
-      throw err;
-    }
-    catch (Throwable ignore) {
-      // Now that we no longer support 1.4 I'm not sure why we would get here.
-      // But just in case other vm vendors don't support mxbeans I've left
-      // this logic in that will create a simple VMStats instance.
-      // Whenever you catch Error or Throwable, you must also
-      // catch VirtualMachineError (see above).  However, there is
-      // _still_ a possibility that you are dealing with a cascading
-      // error condition, so you also need to check to see if the JVM
-      // is still usable:
-      SystemFailure.checkFailure();
-      //log.warning("Could not create 5.0 VMStats", ignore);
-      // couldn't create the 1.5 version so create the old 1.4 version
-      result = new VMStats(f, id);
-    }
-    return result;
-  }
-  
-  private VMStatsContractFactory() {
-    // private so no instances allowed. static methods only
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/WindowsProcessStats.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/WindowsProcessStats.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/WindowsProcessStats.java
deleted file mode 100644
index a671717..0000000
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/WindowsProcessStats.java
+++ /dev/null
@@ -1,160 +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 com.gemstone.gemfire.internal;
-
-import com.gemstone.gemfire.*;
-
-/**
- * <P>This class provides the interface for statistics about a
- * windows operating system process that is using a GemFire system.
- */
-public class WindowsProcessStats
-{
-  private final static int handlesINT = 0;
-  private final static int priorityBaseINT = 1;
-  private final static int threadsINT = 2;
-
-  private final static int activeTimeLONG = 0;
-  private final static int pageFaultsLONG = 1;
-  private final static int pageFileSizeLONG = 2;
-  private final static int pageFileSizePeakLONG = 3;
-  private final static int privateSizeLONG = 4;
-  private final static int systemTimeLONG = 5;
-  private final static int userTimeLONG = 6;
-  private final static int virtualSizeLONG = 7;
-  private final static int virtualSizePeakLONG = 8;
-  private final static int workingSetSizeLONG = 9;
-  private final static int workingSetSizePeakLONG = 10;
-
-  private final static StatisticsType myType;
-
-  private static void checkOffset(String name, int offset) {
-    int id = myType.nameToId(name);
-    Assert.assertTrue(offset == id, "Expected the offset for " + name + " to be " + offset + " but it was " + id);
-  }
-
-  static {
-    StatisticsTypeFactory f = StatisticsTypeFactoryImpl.singleton();
-    myType = f
-        .createType(
-            "WindowsProcessStats",
-            "Statistics on a Microsoft Window's process.",
-            new StatisticDescriptor[] {
-                f.createIntGauge(
-                        "handles",
-                        "The total number of handles currently open by this process. This number is the sum of the handles currently open by each thread in this process.",
-                        "items"),
-                f.createIntGauge(
-                        "priorityBase",
-                        "The current base priority of the process. Threads within a process can raise and lower their own base priority relative to the process's base priority",
-                        "priority"),
-                f.createIntGauge(
-                        "threads",
-                        "Number of threads currently active in this process. An instruction is the basic unit of execution in a processor, and a thread is the object that executes instructions. Every running process has at least one thread.",
-                        "threads"),
-
-                f.createLongCounter(
-                        "activeTime",
-                        "The elapsed time in milliseconds that all of the threads of this process used the processor to execute instructions. An instruction is the basic unit of execution in a computer, a thread is the object that executes instructions, and a process is the object created when a program is run. Code executed to handle some hardware interrupts and trap conditions are included in this count.",
-                        "milliseconds", false),
-
-                f.createLongCounter(
-                        "pageFaults",
-                        "The total number of Page Faults by the threads executing in this process. A page fault occurs when a thread refers to a virtual memory page that is not in its working set in main memory. This will not cause the page to be fetched from disk if it is on the standby list and hence already in main memory, or if it is in use by another process with whom the page is shared.",
-                        "operations", false),
-                f.createLongGauge(
-                        "pageFileSize",
-                        "The current number of bytes this process has used in the paging file(s). Paging files are used to store pages of memory used by the process that are not contained in other files. Paging files are shared by all processes, and lack of space in paging files can prevent other processes from allocating memory.",
-                        "bytes"),
-                f.createLongGauge(
-                        "pageFileSizePeak",
-                        "The maximum number of bytes this process has used in the paging file(s). Paging files are used to store pages of memory used by the process that are not contained in other files. Paging files are shared by all processes, and lack of space in paging files can prevent other processes from allocating memory.",
-                        "bytes"),
-                f.createLongGauge(
-                        "privateSize",
-                        "The current number of bytes this process has allocated that cannot be shared with other processes.",
-                        "bytes"),
-                f.createLongCounter(
-                        "systemTime",
-                        "The elapsed time in milliseconds that the threads of the process have spent executing code in privileged mode. When a Windows system service is called, the service will often run in Privileged Mode to gain access to system-private data. Such data is protected from access by threads executing in user mode. Calls to the system can be explicit or implicit, such as page faults or interrupts. Unlike some early operating systems, Windows uses process boundaries for subsystem protection in addition to the traditional protection of user and privileged modes. These subsystem processes provide additional protection. Therefore, some work done by Windows on behalf of your application might appear in other subsystem processes in addition to the privileged time in your process.",
-                        "milliseconds", false),
-                f.createLongCounter(
-                        "userTime",
-                        "The elapsed time in milliseconds that this process's threads have spent executing code in user mode. Applications, environment subsystems, and integral subsystems execute in user mode. Code executing in User Mode cannot damage the integrity of the Windows Executive, Kernel, and device drivers. Unlike some early operating systems, Windows uses process boundaries for subsystem protection in addition to the traditional protection of user and privileged modes. These subsystem processes provide additional protection. Therefore, some work done by Windows on behalf of your application might appear in other subsystem processes in addition to the privileged time in your process.",
-                        "milliseconds", false),
-                f.createLongGauge(
-                        "virtualSize",
-                        "Virtual Bytes is the current size in bytes of the virtual address space the process is using. Use of virtual address space does not necessarily imply corresponding use of either disk or main memory pages. Virtual space is finite, and by using too much, the process can limit its ability to load libraries.",
-                        "bytes"),
-                f.createLongGauge(
-                        "virtualSizePeak",
-                        "The maximum number of bytes of virtual address space the process has used at any one time. Use of virtual address space does not necessarily imply corresponding use of either disk or main memory pages. Virtual space is however finite, and by using too much, the process might limit its ability to load libraries.",
-                        "bytes"),
-                f.createLongGauge(
-                        "workingSetSize",
-                        "The current number of bytes in the Working Set of this process. The Working Set is the set of memory pages touched recently by the threads in the process. If free memory in the computer is above a threshold, pages are left in the Working Set of a process even if they are not in use. When free memory falls below a threshold, pages are trimmed from Working Sets. If they are needed they will then be soft-faulted back into the Working Set before they are paged out out to disk.",
-                        "bytes"),
-                f.createLongGauge(
-                        "workingSetSizePeak",
-                        "The maximum number of bytes in the Working Set of this process at any point in time. The Working Set is the set of memory pages touched recently by the threads in the process. If free memory in the computer is above a threshold, pages are left in the Working Set of a process even if they are not in use. When free memory falls below a threshold, pages are trimmed from Working Sets. If they are needed they will then be soft-faulted back into the Working Set before they leave main memory.",
-                        "bytes"),
-
-            });
-    checkOffset("handles", handlesINT);
-    checkOffset("priorityBase", priorityBaseINT);
-    checkOffset("threads", threadsINT);
-
-    checkOffset("activeTime", activeTimeLONG);
-    checkOffset("pageFaults", pageFaultsLONG);
-    checkOffset("pageFileSize", pageFileSizeLONG);
-    checkOffset("pageFileSizePeak", pageFileSizePeakLONG);
-    checkOffset("privateSize", privateSizeLONG);
-    checkOffset("systemTime", systemTimeLONG);
-    checkOffset("userTime", userTimeLONG);
-    checkOffset("virtualSize", virtualSizeLONG);
-    checkOffset("virtualSizePeak", virtualSizePeakLONG);
-    checkOffset("workingSetSize", workingSetSizeLONG);
-    checkOffset("workingSetSizePeak", workingSetSizePeakLONG);
-  }
-
-  private WindowsProcessStats() {
-    // no instances allowed
-  }
-  public static StatisticsType getType() {
-    return myType;
-  }
-
-  /**
-   * Returns a <code>ProcessStats</code> that wraps Windows process
-   * <code>Statistics</code>.
-   * 
-   * @since GemFire 3.5
-   */
-  static ProcessStats createProcessStats(final Statistics stats) {
-    if (stats instanceof LocalStatisticsImpl) {
-      HostStatHelper.refresh((LocalStatisticsImpl) stats);
-    } // otherwise its a Dummy implementation so do nothing
-    return new ProcessStats(stats) {
-      @Override
-        public long getProcessSize() {
-          return stats.getLong(workingSetSizeLONG) / (1024*1024);
-        }
-      };
-  }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/WindowsSystemStats.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/WindowsSystemStats.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/WindowsSystemStats.java
deleted file mode 100644
index 1325fcc..0000000
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/WindowsSystemStats.java
+++ /dev/null
@@ -1,267 +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 com.gemstone.gemfire.internal;
-
-import com.gemstone.gemfire.*;
-
-/**
- * <P>This class provides the interface for statistics about the 
- * Windows machine a GemFire system is running on.
- */
-public class WindowsSystemStats
-{
-  private final static int committedMemoryInUseINT = 0;
-  private final static int eventsINT = 1;
-  private final static int interruptsINT = 2;
-  private final static int mutexesINT = 3;
-  private final static int processesINT = 4;
-  private final static int processorQueueLengthINT = 5;
-  private final static int registryQuotaInUseINT = 6;
-  private final static int sharedMemorySectionsINT = 7;
-  private final static int semaphoresINT = 8;
-  private final static int threadsINT = 9;
-  private final static int dgramsReceivedINT = 10;
-  private final static int dgramsNoPortINT = 11;
-  private final static int dgramsReceivedErrorsINT = 12;
-  private final static int dgramsSentINT = 13;
-  private final static int loopbackPacketsINT = 14;
-  private final static int loopbackBytesINT = 15;
-  private final static int netPacketsReceivedINT = 16;
-  private final static int netBytesReceivedINT = 17;
-  private final static int netPacketsSentINT = 18;
-  private final static int netBytesSentINT = 19;
-
-
-  private final static int availableMemoryLONG = 0;
-  private final static int cacheFaultsLONG = 1;
-  private final static int cacheSizeLONG = 2;
-  private final static int cacheSizePeakLONG = 3;
-  private final static int committedMemoryLONG = 4;
-  private final static int committedMemoryLimitLONG = 5;
-  private final static int contextSwitchesLONG = 6;
-  private final static int demandZeroFaultsLONG = 7;
-  private final static int pageFaultsLONG = 8;
-  private final static int pageReadsLONG = 9;
-  private final static int pagesLONG = 10;
-  private final static int pageWritesLONG = 11;
-  private final static int pagesInputLONG = 12;
-  private final static int pagesOutputLONG = 13;
-  private final static int systemCallsLONG = 14;
-
-  private final static int cpuActiveDOUBLE = 0;
-  private final static int cpuIdleDOUBLE = 1;
-  private final static int cpuInterruptDOUBLE = 2;
-  private final static int cpuSystemDOUBLE = 3;
-  private final static int cpuUserDOUBLE = 4;
-
-  private final static StatisticsType myType;
-
-  private static void checkOffset(String name, int offset) {
-    int id = myType.nameToId(name);
-    Assert.assertTrue(offset == id, "Expected the offset for " + name + " to be " + offset + " but it was " + id);
-  }
-
-  static {
-    StatisticsTypeFactory f = StatisticsTypeFactoryImpl.singleton();
-    myType = f.createType("WindowsSystemStats",
-                          "Statistics on a Microsoft Windows machine.",
-                          new StatisticDescriptor[] {
-                            f.createIntGauge("committedMemoryInUse",
-                                                "This represents the percentage of available virtual memory in use. This is an instantaneous value, not an average.",
-                                                "%"),
-                            f.createIntGauge("events",
-                                                "The number of events in the computer at the time of data collection.  Notice that this is an instantaneous count, not an average over the time interval.  An event is used when two or more threads wish to synchronize execution.",
-                                                "items"),
-                            f.createIntCounter("interrupts",
-                                                "The total number of harware interrupts on the computer. Some devices that may generate interrupts are the system timer, the mouse, data communication lines, network interface cards and other peripheral devices.  This counter provides an indication of how busy these devices are on a computer-wide basis.",
-                                                "operations", false),
-                            f.createIntGauge("mutexes",
-                                                "The number of mutexes in the computer at the time of data collection.  This is an instantaneous count, not an average over the time interval.  Mutexes are used by threads to assure only one thread is executing some section of code.",
-                                                "items"),
-                            f.createIntGauge("processes",
-                                                "The number of processes in the computer at the time of data collection.  Notice that this is an instantaneous count, not an average over the time interval.  Each process represents the running of a program.",
-                                                "processes"),
-                            f.createIntGauge("processorQueueLength",
-                                                "The instantaneous length of the processor queue in units of threads. All processors use a single queue in which threads wait for processor cycles.  This length does not include the threads that are currently executing.  A sustained processor queue length greater than two generally indicates processor congestion.  This is an instantaneous count, not an average over the time interval",
-                                                "threads"),
-                            f.createIntGauge("registryQuotaInUse",
-                                                "The percentage of the Total Registry Quota Allowed currently in use by the system.",
-                                                "%"),
-                            f.createIntGauge("sharedMemorySections",
-                                                "The number of sections in the computer at the time of data collection.  Notice that this is an instantaneous count, not an average over the time interval. A section is a portion of virtual memory created by a process for storing data.  A process may share sections with other processes.",
-                                                "items"),
-                            f.createIntGauge("semaphores",
-                                                "The number of semaphores in the computer at the time of data collection.  Notice that this is an instantaneous count, not an average over the time interval.  Threads use semaphores to obtain exclusive access to data structures that they share with other threads.",
-                                                "items"),
-                            f.createIntGauge("threads",
-                                                "The number of threads in the computer at the time of data collection.  Notice that this is an instantaneous count, not an average over the time interval.  A thread is the basic executable entity that can execute instructions in a processor.",
-                                                "threads"),
-                            f.createIntCounter(
-                                    "dgramsReceived",
-                                    "The number of datagrams received on the VM's machine.",
-                                    "datagrams/sec"),
-                            f.createIntCounter(
-                                    "dgramsNoPort",
-                                    "The number of incoming datagrams that were discarded due to invalid headers",
-                                    "datagrams/sec"),
-                            f.createIntCounter(
-                                    "dgramsReceivedErrors",
-                                    "The number of received UDP datagrams that could not be delivered for reasons other than the lack of an application at the destination port",
-                                    "datagrams"),
-                            f.createIntCounter(
-                                    "dgramsSent",
-                                    "The number of datagrams sent on the VM's machine",
-                                    "datagrams/sec"),
-
-                            f.createIntCounter(
-                                "loopbackPackets",
-                                "The number of packets sent/received on the loopback interface",
-                                "packets"),
-                            f.createIntCounter(
-                                "loopbackBytes",
-                                "The number of bytes sent/received on the loopback interface",
-                                "bytes"),
-                            f.createIntCounter("netPacketsReceived",
-                                "The number of network packets received (total excluding loopback)",
-                                "packets"),
-                            f.createIntCounter("netBytesReceived",
-                                "The number of network bytes received (total excluding loopback)",
-                                "bytes"),
-                            f.createIntCounter("netPacketsSent",
-                                "The number of network packets sent (total excluding loopback)",
-                                "packets"),
-                            f.createIntCounter("netBytesSent",
-                                "The number of network bytes sent (total excluding loopback)",
-                                "bytes"),
-
-                            f.createLongGauge("availableMemory",
-                                                "The size, in bytes, of the virtual memory currently on the Zeroed, Free, and Standby lists.  Zeroed and Free memory is ready for use, with Zeroed memory cleared to zeros.  Standby memory is memory removed from a process's Working Set but still available.  Notice that this is an instantaneous count, not an average over the time interval.",
-                                                "bytes", true),
-                            f.createLongCounter("cacheFaults",
-                                                "Incremented whenever the Cache manager does not find a file's page in the immediate Cache and must ask the memory manager to locate the page elsewhere in memory or on the disk so that it can be loaded into the immediate Cache.",
-                                                "operations", false),
-                            f.createLongGauge("cacheSize",
-                                                "Measures the number of bytes currently in use by the system Cache.  The system Cache is used to buffer data retrieved from disk or LAN.  The system Cache uses memory not in use by active processes in the computer.",
-                                                "bytes"),
-                            f.createLongGauge("cacheSizePeak",
-                                                "Measures the maximum number of bytes used by the system Cache.  The system Cache is used to buffer data retrieved from disk or LAN.  The system Cache uses memory not in use by active processes in the computer.",
-                                                "bytes"),
-                            f.createLongGauge("committedMemory",
-                                                "The size of virtual memory, in bytes, that has been Committed (as opposed to simply reserved).  Committed memory must have backing (i.e., disk) storage available, or must be assured never to need disk storage (because main memory is large enough to hold it.)  Notice that this is an instantaneous count, not an average over the time interval.",
-                                                "bytes"),
-                            f.createLongGauge("committedMemoryLimit",
-                                                "The size, in bytes, of virtual memory that can be committed without having to extend the paging file(s).  If the paging file(s) can be extended, this is a soft limit. Note that this value will change if the paging file is extended.",
-                                                "bytes"),
-                            f.createLongCounter("contextSwitches",
-                                                "The number of times this thread has lost the cpu to another thread.  Thread switches can occur either inside of a single process or across processes.  A thread switch may be caused either by one thread asking another for information, or by a thread being preempted by another, higher priority thread becoming ready to run.  Unlike some early operating systems, Windows uses process boundaries for subsystem protection in addition to the traditional protection of User and Privileged modes. These subsystem processes provide additional protection. Therefore, some work done by Windows on behalf of an application may appear in other subsystem processes in addition to the Privileged Time in the application. Switching to the subsystem process causes one Context Switch in the application thread.  Switching back causes another Context Switch in the subsystem thread.",
-                                                "operations", false),
-                            f.createLongCounter("demandZeroFaults",
-                                                "The total number of page faults for pages that must be filled with zeros before the fault is satisfied.  If the Zeroed list is not empty, the fault can be resolved by removing a page from the Zeroed list.",
-                                                "operations", false),
-                            f.createLongCounter("pageFaults",
-                                                "The total number of Page Faults by the threads executing in this process. A page fault occurs when a thread refers to a virtual memory page that is not in its working set in main memory. This will not cause the page to be fetched from disk if it is on the standby list and hence already in main memory, or if it is in use by another process with whom the page is shared.",
-                                                "operations", false),
-                            f.createLongCounter("pageReads",
-                                                "The number of page read operations done by the process since it was last started. These operations involve actual disk reads and not reads from the shared page cache",
-                                                "operations", false),
-                            f.createLongCounter("pages",
-                                                "The total number of pages read from the disk or written to the disk to resolve memory references to pages that were not in memory at the time of the reference. This is the sum of pagesInput and the pagesOutput. This counter includes paging traffic on behalf of the system Cache to access file data for applications.  This value also includes the pages to/from non-cached mapped memory files.  This is the primary counter to observe if you are concerned about excessive memory pressure (that is, thrashing), and the excessive paging that may result.",
-                                                "pages", false),
-                            f.createLongCounter("pageWrites",
-                                                "The number of pages written by the process since it was last started. These page writes are actual disk writes and not just writes into the shared page cache. Unless a large data load is in process, the number should be low for all processes except the Stone's AIO page server process.",
-                                                "operations", false),
-                            f.createLongCounter("pagesInput",
-                                                "The total number of pages read from the disk to resolve memory references to pages that were not in memory at the time of the reference.  This counter includes paging traffic on behalf of the system Cache to access file data for applications.  This is an important counter to observe if you are concerned about excessive memory pressure (that is, thrashing), and the excessive paging that may result",
-                                                "pages", false),
-                            f.createLongCounter("pagesOutput",
-                                                "A count of the total number of pages that are written to disk because the pages have been modified in main memory",
-                                                "pages", false),
-                            f.createLongCounter("systemCalls",
-                                                "The total number of calls to Windows system service routines on the computer.  These routines perform all of the basic scheduling and synchronization of activities on the computer, and provide access to non-graphical devices, memory management, and name space management.",
-                                                "operations"),
-
-
-
-                            f.createDoubleGauge("cpuActive",
-                                                "The percentage of time spent doing useful work by all processors.  On a multi-processor system, if all processors are always busy this is 100%.",
-                                                "%"),
-                            f.createDoubleGauge("cpuIdle",
-                                                "The percentage of time the machine's processors spent idle.",
-                                                "%", true),
-                            f.createDoubleGauge("cpuInterrupt",
-                                                "The percentage of time spent receiving and servicing interrupts on all the processors on the machine. This value is an indirect indicator of the activity of devices that generate interrupts, such as the system clock, the mouse, disk drivers, data communication lines, network interface cards and other peripheral devices. These devices normally interrupt the processor when they have completed a task or require attention.  Normal thread execution is suspended during interrupts.  Most system clocks interrupt the processor every 10 milliseconds, creating a background of interrupt activity. ",
-                                                "%"),
-                            f.createDoubleGauge("cpuSystem",
-                                                "The percentage of time spent in privileged mode by all processors.  On a multi-processor system, if all processors are always in privileged mode this is 100%.  When a Windows system service is called, the service will often run in privileged mode in order to gain access to system-private data.  Such data is protected from access by threads executing in user mode.  Calls to the system may be explicit, or they may be implicit such as when a page fault or an interrupt occurs.  Unlike some early operating systems, Windows uses process boundaries for subsystem protection in addition to the traditional protection of user and privileged modes. These subsystem processes provide additional protection. Therefore, some work done by Windows on behalf of an application may appear in other subsystem processes in addition to the cpuSystem in the application process.",
-                                                "%"),
-                            f.createDoubleGauge("cpuUser",
-                                                "The percentage of time spent executing code in user mode on all the processor's on the machine.",
-                                                "%")
-                          });
-    checkOffset("committedMemoryInUse", committedMemoryInUseINT);
-    checkOffset("events", eventsINT);
-    checkOffset("interrupts", interruptsINT);
-    checkOffset("mutexes", mutexesINT);
-    checkOffset("processes", processesINT);
-    checkOffset("processorQueueLength", processorQueueLengthINT);
-    checkOffset("registryQuotaInUse", registryQuotaInUseINT);
-    checkOffset("sharedMemorySections", sharedMemorySectionsINT);
-    checkOffset("semaphores", semaphoresINT);
-    checkOffset("threads", threadsINT);
-    checkOffset("dgramsReceived", dgramsReceivedINT);
-    checkOffset("dgramsNoPort", dgramsNoPortINT);
-    checkOffset("dgramsReceivedErrors", dgramsReceivedErrorsINT);
-    checkOffset("dgramsSent", dgramsSentINT);
-
-    checkOffset("loopbackPackets", loopbackPacketsINT);
-    checkOffset("loopbackBytes", loopbackBytesINT);
-    checkOffset("netPacketsReceived", netPacketsReceivedINT);
-    checkOffset("netBytesReceived", netBytesReceivedINT);
-    checkOffset("netPacketsSent", netPacketsSentINT);
-    checkOffset("netBytesSent", netBytesSentINT);
-    
-    checkOffset("availableMemory", availableMemoryLONG);
-    checkOffset("cacheFaults", cacheFaultsLONG);
-    checkOffset("cacheSize", cacheSizeLONG);
-    checkOffset("cacheSizePeak", cacheSizePeakLONG);
-    checkOffset("committedMemory", committedMemoryLONG);
-    checkOffset("committedMemoryLimit", committedMemoryLimitLONG);
-    checkOffset("contextSwitches", contextSwitchesLONG);
-    checkOffset("demandZeroFaults", demandZeroFaultsLONG);
-    checkOffset("pageFaults", pageFaultsLONG);
-    checkOffset("pageReads", pageReadsLONG);
-    checkOffset("pages", pagesLONG);
-    checkOffset("pageWrites", pageWritesLONG);
-    checkOffset("pagesInput", pagesInputLONG);
-    checkOffset("pagesOutput", pagesOutputLONG);
-    checkOffset("systemCalls", systemCallsLONG);
-
-    checkOffset("cpuActive", cpuActiveDOUBLE);
-    checkOffset("cpuIdle", cpuIdleDOUBLE);
-    checkOffset("cpuInterrupt", cpuInterruptDOUBLE);
-    checkOffset("cpuSystem", cpuSystemDOUBLE);
-    checkOffset("cpuUser", cpuUserDOUBLE);
-  }
-
-  private WindowsSystemStats() {
-    // no instances allowed
-  }
-  public static StatisticsType getType() {
-    return myType;
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/remote/AddStatListenerResponse.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/remote/AddStatListenerResponse.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/remote/AddStatListenerResponse.java
index 7ea19f5..078798f 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/remote/AddStatListenerResponse.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/remote/AddStatListenerResponse.java
@@ -19,12 +19,12 @@
 package com.gemstone.gemfire.internal.admin.remote;
 
 //import com.gemstone.gemfire.*;
-import com.gemstone.gemfire.internal.*;
 //import com.gemstone.gemfire.internal.admin.*;
 import com.gemstone.gemfire.distributed.internal.*;
 import java.io.*;
 //import java.util.*;
 import com.gemstone.gemfire.distributed.internal.membership.*;
+import com.gemstone.gemfire.internal.statistics.GemFireStatSampler;
 
 /**
  * A message that is sent to a particular distribution manager to

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/remote/AdminConsoleDisconnectMessage.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/remote/AdminConsoleDisconnectMessage.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/remote/AdminConsoleDisconnectMessage.java
index 2f8d336..a1d3680 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/remote/AdminConsoleDisconnectMessage.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/remote/AdminConsoleDisconnectMessage.java
@@ -28,7 +28,7 @@ import com.gemstone.gemfire.DataSerializer;
 import com.gemstone.gemfire.distributed.internal.DistributionManager;
 import com.gemstone.gemfire.distributed.internal.InternalDistributedSystem;
 import com.gemstone.gemfire.distributed.internal.PooledDistributionMessage;
-import com.gemstone.gemfire.internal.GemFireStatSampler;
+import com.gemstone.gemfire.internal.statistics.GemFireStatSampler;
 import com.gemstone.gemfire.internal.i18n.LocalizedStrings;
 import com.gemstone.gemfire.internal.logging.LogService;
 import com.gemstone.gemfire.internal.logging.log4j.AlertAppender;

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/remote/CancelStatListenerResponse.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/remote/CancelStatListenerResponse.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/remote/CancelStatListenerResponse.java
index d338b70..a223524 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/remote/CancelStatListenerResponse.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/remote/CancelStatListenerResponse.java
@@ -19,13 +19,13 @@
 package com.gemstone.gemfire.internal.admin.remote;
 
 //import com.gemstone.gemfire.*;
-import com.gemstone.gemfire.internal.*;
 import com.gemstone.gemfire.internal.i18n.LocalizedStrings;
 //import com.gemstone.gemfire.internal.admin.*;
 import com.gemstone.gemfire.distributed.internal.*;
 import java.io.*;
 //import java.util.*;
 import com.gemstone.gemfire.distributed.internal.membership.*;
+import com.gemstone.gemfire.internal.statistics.GemFireStatSampler;
 
 /**
  * A message that is sent to a particular distribution manager to

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/remote/RemoteStat.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/remote/RemoteStat.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/remote/RemoteStat.java
index cdc2b88..6127e45 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/remote/RemoteStat.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/remote/RemoteStat.java
@@ -18,8 +18,8 @@
 package com.gemstone.gemfire.internal.admin.remote;
 
 import com.gemstone.gemfire.*;
-import com.gemstone.gemfire.internal.*;
 import com.gemstone.gemfire.internal.admin.*;
+import com.gemstone.gemfire.internal.statistics.StatisticDescriptorImpl;
 //import java.util.*;
 import java.io.*;
 

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/remote/package.html
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/remote/package.html b/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/remote/package.html
index a2fef69..a47f53d 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/remote/package.html
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/admin/remote/package.html
@@ -34,7 +34,7 @@ relationships between the various classes in this package.</P>
 <H2>Statistics</H2>
 
 <code>StatListener</code>s are assigned a {@link
-com.gemstone.gemfire.internal.GemFireStatSampler#addListener} unique
+com.gemstone.gemfire.internal.statistics.GemFireStatSampler#addListener} unique
 id} in the remote VM.</code>
 
 </BODY>

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/CachePerfStats.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/CachePerfStats.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/CachePerfStats.java
index 72a850d..532bafa 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/CachePerfStats.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/CachePerfStats.java
@@ -21,6 +21,7 @@ import com.gemstone.gemfire.*;
 import com.gemstone.gemfire.internal.*;
 import com.gemstone.gemfire.distributed.internal.PoolStatHelper;
 import com.gemstone.gemfire.distributed.internal.QueueStatHelper;
+import com.gemstone.gemfire.internal.statistics.StatisticsTypeFactoryImpl;
 
 /**
  * CachePerfStats tracks statistics about GemFire cache performance.

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/DiskDirectoryStats.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/DiskDirectoryStats.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/DiskDirectoryStats.java
index 21a7b26..a0d7022 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/DiskDirectoryStats.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/DiskDirectoryStats.java
@@ -19,7 +19,7 @@ package com.gemstone.gemfire.internal.cache;
 import com.gemstone.gemfire.*;
 //import com.gemstone.gemfire.internal.NanoTimer;
 //import com.gemstone.gemfire.cache.Region;
-import com.gemstone.gemfire.internal.*;
+import com.gemstone.gemfire.internal.statistics.StatisticsTypeFactoryImpl;
 
 /**
  * GemFire statistics about Disk Directories

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/DiskRegionStats.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/DiskRegionStats.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/DiskRegionStats.java
index ae9b0a9..014fd6f 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/DiskRegionStats.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/DiskRegionStats.java
@@ -21,7 +21,7 @@ import com.gemstone.gemfire.Statistics;
 import com.gemstone.gemfire.StatisticsFactory;
 import com.gemstone.gemfire.StatisticsType;
 import com.gemstone.gemfire.StatisticsTypeFactory;
-import com.gemstone.gemfire.internal.StatisticsTypeFactoryImpl;
+import com.gemstone.gemfire.internal.statistics.StatisticsTypeFactoryImpl;
 
 /**
  * GemFire statistics about a {@link DiskRegion}.

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/DiskStoreStats.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/DiskStoreStats.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/DiskStoreStats.java
index db505b9..e5f4bb2 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/DiskStoreStats.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/DiskStoreStats.java
@@ -18,8 +18,8 @@ package com.gemstone.gemfire.internal.cache;
 
 import com.gemstone.gemfire.*;
 //import com.gemstone.gemfire.cache.Region;
-import com.gemstone.gemfire.internal.*;
 import com.gemstone.gemfire.distributed.internal.DistributionStats;
+import com.gemstone.gemfire.internal.statistics.StatisticsTypeFactoryImpl;
 
 /**
  * GemFire statistics about a {@link DiskStoreImpl}.

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/PartitionedRegionStats.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/PartitionedRegionStats.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/PartitionedRegionStats.java
index 04d432f..c6f1243 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/PartitionedRegionStats.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/PartitionedRegionStats.java
@@ -27,7 +27,7 @@ import com.gemstone.gemfire.StatisticsFactory;
 import com.gemstone.gemfire.StatisticsType;
 import com.gemstone.gemfire.StatisticsTypeFactory;
 import com.gemstone.gemfire.cache.Region;
-import com.gemstone.gemfire.internal.StatisticsTypeFactoryImpl;
+import com.gemstone.gemfire.internal.statistics.StatisticsTypeFactoryImpl;
 
 /**
  * Represents a statistics type that can be archived to vsd. Loading of this

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/PoolStats.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/PoolStats.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/PoolStats.java
index 2161de7..e53b61c 100755
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/PoolStats.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/PoolStats.java
@@ -18,7 +18,7 @@ package com.gemstone.gemfire.internal.cache;
 
 import com.gemstone.gemfire.*;
 import com.gemstone.gemfire.distributed.internal.DistributionStats;
-import com.gemstone.gemfire.internal.StatisticsTypeFactoryImpl;
+import com.gemstone.gemfire.internal.statistics.StatisticsTypeFactoryImpl;
 
 import static com.gemstone.gemfire.distributed.ConfigurationProperties.LOCATORS;
 

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/control/HeapMemoryMonitor.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/control/HeapMemoryMonitor.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/control/HeapMemoryMonitor.java
index bc83335..eeaad42 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/control/HeapMemoryMonitor.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/control/HeapMemoryMonitor.java
@@ -22,10 +22,10 @@ import com.gemstone.gemfire.cache.CacheClosedException;
 import com.gemstone.gemfire.cache.query.internal.QueryMonitor;
 import com.gemstone.gemfire.distributed.internal.DistributionConfig;
 import com.gemstone.gemfire.distributed.internal.membership.InternalDistributedMember;
-import com.gemstone.gemfire.internal.GemFireStatSampler;
-import com.gemstone.gemfire.internal.LocalStatListener;
+import com.gemstone.gemfire.internal.statistics.GemFireStatSampler;
+import com.gemstone.gemfire.internal.statistics.LocalStatListener;
 import com.gemstone.gemfire.internal.SetUtils;
-import com.gemstone.gemfire.internal.StatisticsImpl;
+import com.gemstone.gemfire.internal.statistics.StatisticsImpl;
 import com.gemstone.gemfire.internal.cache.GemFireCacheImpl;
 import com.gemstone.gemfire.internal.cache.control.InternalResourceManager.ResourceType;
 import com.gemstone.gemfire.internal.cache.control.MemoryThresholds.MemoryState;
@@ -759,7 +759,7 @@ public void stopMonitoring() {
   
   class LocalHeapStatListener implements LocalStatListener {
     /* (non-Javadoc)
-     * @see com.gemstone.gemfire.internal.LocalStatListener#statValueChanged(double)
+     * @see com.gemstone.gemfire.internal.statistics.LocalStatListener#statValueChanged(double)
      */
     @Override
     @SuppressWarnings("synthetic-access")

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/control/ResourceManagerStats.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/control/ResourceManagerStats.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/control/ResourceManagerStats.java
index d54e7c4..3281273 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/control/ResourceManagerStats.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/control/ResourceManagerStats.java
@@ -23,7 +23,7 @@ import com.gemstone.gemfire.StatisticsType;
 import com.gemstone.gemfire.StatisticsTypeFactory;
 import com.gemstone.gemfire.distributed.internal.PoolStatHelper;
 import com.gemstone.gemfire.distributed.internal.QueueStatHelper;
-import com.gemstone.gemfire.internal.StatisticsTypeFactoryImpl;
+import com.gemstone.gemfire.internal.statistics.StatisticsTypeFactoryImpl;
 
 /**
  * Contains methods for manipulating resource manager statistics.

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/execute/FunctionServiceStats.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/execute/FunctionServiceStats.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/execute/FunctionServiceStats.java
index e62d800..b4ad43b 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/execute/FunctionServiceStats.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/execute/FunctionServiceStats.java
@@ -22,8 +22,8 @@ import com.gemstone.gemfire.StatisticsFactory;
 import com.gemstone.gemfire.StatisticsType;
 import com.gemstone.gemfire.StatisticsTypeFactory;
 import com.gemstone.gemfire.distributed.internal.DistributionStats;
-import com.gemstone.gemfire.internal.DummyStatisticsImpl;
-import com.gemstone.gemfire.internal.StatisticsTypeFactoryImpl;
+import com.gemstone.gemfire.internal.statistics.DummyStatisticsImpl;
+import com.gemstone.gemfire.internal.statistics.StatisticsTypeFactoryImpl;
 
 public class FunctionServiceStats {
 

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/execute/FunctionStats.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/execute/FunctionStats.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/execute/FunctionStats.java
index 0e7687a..88a8b10 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/execute/FunctionStats.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/execute/FunctionStats.java
@@ -20,9 +20,8 @@ import com.gemstone.gemfire.*;
 import com.gemstone.gemfire.distributed.internal.DistributionConfig;
 import com.gemstone.gemfire.distributed.internal.DistributionStats;
 import com.gemstone.gemfire.distributed.internal.InternalDistributedSystem;
-import com.gemstone.gemfire.internal.DummyStatisticsImpl;
-import com.gemstone.gemfire.internal.StatisticsTypeFactoryImpl;
-import com.gemstone.gemfire.internal.cache.GemFireCacheImpl;
+import com.gemstone.gemfire.internal.statistics.DummyStatisticsImpl;
+import com.gemstone.gemfire.internal.statistics.StatisticsTypeFactoryImpl;
 
 public class FunctionStats {
 

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/ha/HARegionQueueStats.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/ha/HARegionQueueStats.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/ha/HARegionQueueStats.java
index e7b74d1..150c080 100755
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/ha/HARegionQueueStats.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/ha/HARegionQueueStats.java
@@ -21,7 +21,7 @@ import com.gemstone.gemfire.Statistics;
 import com.gemstone.gemfire.StatisticsFactory;
 import com.gemstone.gemfire.StatisticsType;
 import com.gemstone.gemfire.StatisticsTypeFactory;
-import com.gemstone.gemfire.internal.StatisticsTypeFactoryImpl;
+import com.gemstone.gemfire.internal.statistics.StatisticsTypeFactoryImpl;
 
 /**
  * This class tracks GemFire statistics related to a {@link HARegionQueue}.

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/lru/HeapLRUCapacityController.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/lru/HeapLRUCapacityController.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/lru/HeapLRUCapacityController.java
index 7bf2d1f..a2a7be1 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/lru/HeapLRUCapacityController.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/lru/HeapLRUCapacityController.java
@@ -25,7 +25,7 @@ import com.gemstone.gemfire.cache.EvictionAlgorithm;
 import com.gemstone.gemfire.cache.Region;
 import com.gemstone.gemfire.cache.util.ObjectSizer;
 import com.gemstone.gemfire.distributed.internal.DistributionConfig;
-import com.gemstone.gemfire.internal.StatisticsTypeFactoryImpl;
+import com.gemstone.gemfire.internal.statistics.StatisticsTypeFactoryImpl;
 import com.gemstone.gemfire.internal.cache.*;
 import com.gemstone.gemfire.internal.cache.control.InternalResourceManager;
 import com.gemstone.gemfire.internal.i18n.LocalizedStrings;

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/lru/LRUCapacityController.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/lru/LRUCapacityController.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/lru/LRUCapacityController.java
index 0e5afab..ffbc4ad 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/lru/LRUCapacityController.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/lru/LRUCapacityController.java
@@ -18,7 +18,7 @@ package com.gemstone.gemfire.internal.cache.lru;
 
 import com.gemstone.gemfire.*;
 import com.gemstone.gemfire.cache.*;
-import com.gemstone.gemfire.internal.StatisticsTypeFactoryImpl;
+import com.gemstone.gemfire.internal.statistics.StatisticsTypeFactoryImpl;
 import com.gemstone.gemfire.internal.cache.*;
 import com.gemstone.gemfire.internal.i18n.LocalizedStrings;
 

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/lru/MemLRUCapacityController.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/lru/MemLRUCapacityController.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/lru/MemLRUCapacityController.java
index d1634b4..6cfa582 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/lru/MemLRUCapacityController.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/lru/MemLRUCapacityController.java
@@ -29,7 +29,7 @@ import com.gemstone.gemfire.cache.Region;
 import com.gemstone.gemfire.cache.RegionAttributes;
 import com.gemstone.gemfire.cache.util.ObjectSizer;
 import com.gemstone.gemfire.internal.ClassPathLoader;
-import com.gemstone.gemfire.internal.StatisticsTypeFactoryImpl;
+import com.gemstone.gemfire.internal.statistics.StatisticsTypeFactoryImpl;
 import com.gemstone.gemfire.internal.cache.AbstractLRURegionMap.CDValueWrapper;
 import com.gemstone.gemfire.internal.cache.CachedDeserializableFactory;
 import com.gemstone.gemfire.internal.cache.Token;

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/750996a0/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/CacheClientNotifier.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/CacheClientNotifier.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/CacheClientNotifier.java
index edf3a94..6fd4560 100755
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/CacheClientNotifier.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/CacheClientNotifier.java
@@ -81,7 +81,7 @@ import com.gemstone.gemfire.distributed.internal.MessageWithReply;
 import com.gemstone.gemfire.distributed.internal.ReplyMessage;
 import com.gemstone.gemfire.distributed.internal.ReplyProcessor21;
 import com.gemstone.gemfire.internal.ClassLoadUtil;
-import com.gemstone.gemfire.internal.DummyStatisticsFactory;
+import com.gemstone.gemfire.internal.statistics.DummyStatisticsFactory;
 import com.gemstone.gemfire.internal.InternalDataSerializer;
 import com.gemstone.gemfire.internal.InternalInstantiator;
 import com.gemstone.gemfire.internal.SocketCloser;



Mime
View raw message