You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@calcite.apache.org by el...@apache.org on 2016/02/12 00:17:56 UTC

calcite git commit: [CALCITE-1085] Use a NoopContext singleton in NoopTimer

Repository: calcite
Updated Branches:
  refs/heads/master 72b2cfb79 -> de7759112


[CALCITE-1085] Use a NoopContext singleton in NoopTimer


Project: http://git-wip-us.apache.org/repos/asf/calcite/repo
Commit: http://git-wip-us.apache.org/repos/asf/calcite/commit/de775911
Tree: http://git-wip-us.apache.org/repos/asf/calcite/tree/de775911
Diff: http://git-wip-us.apache.org/repos/asf/calcite/diff/de775911

Branch: refs/heads/master
Commit: de7759112cea3deb8a1c75bcc43753adbe8648de
Parents: 72b2cfb
Author: Josh Elser <el...@apache.org>
Authored: Thu Feb 11 18:17:19 2016 -0500
Committer: Josh Elser <el...@apache.org>
Committed: Thu Feb 11 18:17:19 2016 -0500

----------------------------------------------------------------------
 .../org/apache/calcite/avatica/metrics/noop/NoopTimer.java   | 8 +++++---
 .../calcite/avatica/metrics/noop/NoopMetricsSystemTest.java  | 2 ++
 2 files changed, 7 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/calcite/blob/de775911/avatica-metrics/src/main/java/org/apache/calcite/avatica/metrics/noop/NoopTimer.java
----------------------------------------------------------------------
diff --git a/avatica-metrics/src/main/java/org/apache/calcite/avatica/metrics/noop/NoopTimer.java b/avatica-metrics/src/main/java/org/apache/calcite/avatica/metrics/noop/NoopTimer.java
index 879da64..a45cd63 100644
--- a/avatica-metrics/src/main/java/org/apache/calcite/avatica/metrics/noop/NoopTimer.java
+++ b/avatica-metrics/src/main/java/org/apache/calcite/avatica/metrics/noop/NoopTimer.java
@@ -24,14 +24,16 @@ import org.apache.calcite.avatica.metrics.Timer.Context;
  */
 public class NoopTimer implements Timer {
 
-  @Override public Context start() {
-    return new NoopContext();
+  private static final NoopContext CONTEXT = new NoopContext();
+
+  @Override public NoopContext start() {
+    return CONTEXT;
   }
 
   /**
    * {@link Context} which does nothing.
    */
-  public class NoopContext implements Context {
+  public static class NoopContext implements Context {
 
     @Override public void close() {}
 

http://git-wip-us.apache.org/repos/asf/calcite/blob/de775911/avatica-metrics/src/test/java/org/apache/calcite/avatica/metrics/noop/NoopMetricsSystemTest.java
----------------------------------------------------------------------
diff --git a/avatica-metrics/src/test/java/org/apache/calcite/avatica/metrics/noop/NoopMetricsSystemTest.java b/avatica-metrics/src/test/java/org/apache/calcite/avatica/metrics/noop/NoopMetricsSystemTest.java
index cda453c..f28d123 100644
--- a/avatica-metrics/src/test/java/org/apache/calcite/avatica/metrics/noop/NoopMetricsSystemTest.java
+++ b/avatica-metrics/src/test/java/org/apache/calcite/avatica/metrics/noop/NoopMetricsSystemTest.java
@@ -50,6 +50,8 @@ public class NoopMetricsSystemTest {
     Timer timer = metrics.getTimer("timer");
     Context context = timer.start();
     context.close();
+    Context contextTwo = timer.start();
+    assertTrue("Timer's context should be a singleton", context == contextTwo);
 
     Meter meter = metrics.getMeter("meter");
     meter.mark();