You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@edgent.apache.org by dl...@apache.org on 2016/04/01 21:34:13 UTC

[5/6] incubator-quarks git commit: Exactly mimic Guava Range ctor.

Exactly mimic Guava Range ctor.


Project: http://git-wip-us.apache.org/repos/asf/incubator-quarks/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-quarks/commit/67d5dbee
Tree: http://git-wip-us.apache.org/repos/asf/incubator-quarks/tree/67d5dbee
Diff: http://git-wip-us.apache.org/repos/asf/incubator-quarks/diff/67d5dbee

Branch: refs/heads/master
Commit: 67d5dbee3f90a1bf15924d027969ac61a286e721
Parents: 1c160ff
Author: Dale LaBossiere <dl...@us.ibm.com>
Authored: Thu Mar 31 15:05:53 2016 -0400
Committer: Dale LaBossiere <dl...@us.ibm.com>
Committed: Fri Apr 1 15:05:59 2016 -0400

----------------------------------------------------------------------
 .../java/quarks/analytics/sensors/Range.java    | 24 ++++++++++++++++----
 .../java/quarks/analytics/sensors/Ranges.java   | 22 +++++++++---------
 2 files changed, 30 insertions(+), 16 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-quarks/blob/67d5dbee/analytics/sensors/src/main/java/quarks/analytics/sensors/Range.java
----------------------------------------------------------------------
diff --git a/analytics/sensors/src/main/java/quarks/analytics/sensors/Range.java b/analytics/sensors/src/main/java/quarks/analytics/sensors/Range.java
index c29c9dc..fda1ad4 100644
--- a/analytics/sensors/src/main/java/quarks/analytics/sensors/Range.java
+++ b/analytics/sensors/src/main/java/quarks/analytics/sensors/Range.java
@@ -135,16 +135,15 @@ public final class Range<T extends Comparable<?>> implements Predicate<T>, Seria
     public static enum BoundType {/** exclusive */ OPEN, /** inclusive */ CLOSED};
     
     /**
-     * Create a new Range<T>
+     * Create a new Range<T>.  Private like Guava Range.
      * <p>
      * See {@link Ranges} for a collection of convenience constructors.
-     * 
-     * @param lbt {@link BoundType} for the lowerEndpoint
      * @param lowerEndpoint null for an infinite value (and lbt must be OPEN)
+     * @param lbt {@link BoundType} for the lowerEndpoint
      * @param upperEndpoint null for an infinite value (and ubt must be OPEN)
      * @param ubt {@link BoundType} for the upperEndpoint
      */
-    public Range(BoundType lbt, T lowerEndpoint, T upperEndpoint, BoundType ubt) {
+    private Range(T lowerEndpoint, BoundType lbt, T upperEndpoint, BoundType ubt) {
         this.lowerEndpoint = lowerEndpoint;
         this.upperEndpoint = upperEndpoint;
         this.lbt = lbt;
@@ -160,6 +159,21 @@ public final class Range<T extends Comparable<?>> implements Predicate<T>, Seria
     }
 
     /**
+     * Create a new Range<T>
+     * <p>
+     * See {@link Ranges} for a collection of convenience constructors.
+     * 
+     * @param lowerEndpoint null for an infinite value (and lbt must be OPEN)
+     * @param lbt {@link BoundType} for the lowerEndpoint
+     * @param upperEndpoint null for an infinite value (and ubt must be OPEN)
+     * @param ubt {@link BoundType} for the upperEndpoint
+     */
+    public static <T extends Comparable<?>> Range<T> range(T lowerEndpoint, BoundType lbt, T upperEndpoint, BoundType ubt) {
+        // matchs Guava Range.range param order
+        return new Range<T>(lowerEndpoint, lbt, upperEndpoint, ubt);
+    }
+
+    /**
      * Returns true if o is a Range having equal endpoints and bound types to this Range.
      */
     @Override
@@ -379,7 +393,7 @@ public final class Range<T extends Comparable<?>> implements Predicate<T>, Seria
         T lowerEndpoint = les.equals("*") ? null : fromString.apply(les);
         T upperEndpoint = ues.equals("*") ? null : fromString.apply(ues);
         
-        return new Range<T>(lbt, lowerEndpoint, upperEndpoint, ubt);
+        return new Range<T>(lowerEndpoint, lbt, upperEndpoint, ubt);
     }
     
     /**

http://git-wip-us.apache.org/repos/asf/incubator-quarks/blob/67d5dbee/analytics/sensors/src/main/java/quarks/analytics/sensors/Ranges.java
----------------------------------------------------------------------
diff --git a/analytics/sensors/src/main/java/quarks/analytics/sensors/Ranges.java b/analytics/sensors/src/main/java/quarks/analytics/sensors/Ranges.java
index 3690f95..dea4eb6 100644
--- a/analytics/sensors/src/main/java/quarks/analytics/sensors/Ranges.java
+++ b/analytics/sensors/src/main/java/quarks/analytics/sensors/Ranges.java
@@ -31,68 +31,68 @@ public final class Ranges {
     /** 
      * Create a Range (lowerEndpoint..upperEndpoint) (both exclusive/OPEN)
      * <p>
-     * Same as {@code new Range<T>(BoundType.OPEN, lowerEndpoint, upperEndpoint, BoundType.OPEN)}
+     * Same as {@code Range.range(BoundType.OPEN, lowerEndpoint, upperEndpoint, BoundType.OPEN)}
      */
     public static <T extends Comparable<?>> Range<T> open(T lowerEndpoint, T upperEndpoint) { 
-        return new Range<T>(BoundType.OPEN, lowerEndpoint, upperEndpoint, BoundType.OPEN);
+        return Range.range(lowerEndpoint, BoundType.OPEN, upperEndpoint, BoundType.OPEN);
     }
 
     /** 
      * Create a Range [lowerEndpoint..upperEndpoint] (both inclusive/CLOSED)
      * <p>
-     * Same as {@code new Range<T>(BoundType.CLOSED, lowerEndpoint, upperEndpoint, BoundType.CLOSED)}
+     * Same as {@code Range.range(BoundType.CLOSED, lowerEndpoint, upperEndpoint, BoundType.CLOSED)}
      */
     public static <T extends Comparable<?>> Range<T> closed(T lowerEndpoint, T upperEndpoint) {
-        return new Range<T>(BoundType.CLOSED, lowerEndpoint, upperEndpoint, BoundType.CLOSED); 
+        return Range.range(lowerEndpoint, BoundType.CLOSED, upperEndpoint, BoundType.CLOSED); 
     }
 
     /** 
      * Create a Range (lowerEndpoint..upperEndpoint] (exclusive/OPEN,inclusive/CLOSED)
      */
     public static <T extends Comparable<?>> Range<T> openClosed(T lowerEndpoint, T upperEndpoint) {
-        return new Range<T>(BoundType.OPEN, lowerEndpoint, upperEndpoint, BoundType.CLOSED);
+        return Range.range(lowerEndpoint, BoundType.OPEN, upperEndpoint, BoundType.CLOSED);
     }
 
     /** 
      * Create a Range [lowerEndpoint..upperEndpoint) (inclusive/CLOSED,exclusive/OPEN)
      */
     public static <T extends Comparable<?>> Range<T> closedOpen(T lowerEndpoint, T upperEndpoint) {
-        return new Range<T>(BoundType.CLOSED, lowerEndpoint, upperEndpoint, BoundType.OPEN);
+        return Range.range(lowerEndpoint, BoundType.CLOSED, upperEndpoint, BoundType.OPEN);
     }
 
     /** 
      * Create a Range (lowerEndpoint..*) (exclusive/OPEN)
      */
     public static <T extends Comparable<?>> Range<T> greaterThan(T lowerEndpoint) {
-        return new Range<T>(BoundType.OPEN, lowerEndpoint, null, BoundType.OPEN);
+        return Range.range(lowerEndpoint, BoundType.OPEN, null, BoundType.OPEN);
     }
 
     /**
      * Create a Range [lowerEndpoint..*) (inclusive/CLOSED)
      */
     public static <T extends Comparable<?>> Range<T> atLeast(T lowerEndpoint) {
-        return new Range<T>(BoundType.CLOSED, lowerEndpoint, null, BoundType.OPEN);
+        return Range.range(lowerEndpoint, BoundType.CLOSED, null, BoundType.OPEN);
     }
 
     /** 
      * Create a Range (*..upperEndpoint) (exclusive/OPEN)
      */
     public static <T extends Comparable<?>> Range<T> lessThan(T upperEndpoint) {
-        return new Range<T>(BoundType.OPEN, null, upperEndpoint, BoundType.OPEN);
+        return Range.range(null, BoundType.OPEN, upperEndpoint, BoundType.OPEN);
     }
 
     /** 
      * Create a Range (*..upperEndpoint] (inclusive/CLOSED)
      */
     public static <T extends Comparable<?>> Range<T> atMost(T upperEndpoint) {
-        return new Range<T>(BoundType.OPEN, null, upperEndpoint, BoundType.CLOSED);
+        return Range.range(null, BoundType.OPEN, upperEndpoint, BoundType.CLOSED);
     }
 
     /** 
      * Create a Range [endpoint..endpoint] (both inclusive/CLOSED)
      */
     public static  <T extends Comparable<?>> Range<T> singleton(T endpoint) {
-        return new Range<T>(BoundType.CLOSED, endpoint, endpoint, BoundType.CLOSED);
+        return Range.range(endpoint, BoundType.CLOSED, endpoint, BoundType.CLOSED);
     }
     
     /**