You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by jm...@apache.org on 2014/05/17 02:32:24 UTC

svn commit: r1595395 - in /hbase/branches/0.96: hbase-client/src/main/java/org/apache/hadoop/hbase/HColumnDescriptor.java hbase-common/src/main/java/org/apache/hadoop/hbase/HConstants.java

Author: jmhsieh
Date: Sat May 17 00:32:24 2014
New Revision: 1595395

URL: http://svn.apache.org/r1595395
Log:
HBASE-6990 pretty print TTL (Esteban Gutierrez)

Modified:
    hbase/branches/0.96/hbase-client/src/main/java/org/apache/hadoop/hbase/HColumnDescriptor.java
    hbase/branches/0.96/hbase-common/src/main/java/org/apache/hadoop/hbase/HConstants.java

Modified: hbase/branches/0.96/hbase-client/src/main/java/org/apache/hadoop/hbase/HColumnDescriptor.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.96/hbase-client/src/main/java/org/apache/hadoop/hbase/HColumnDescriptor.java?rev=1595395&r1=1595394&r2=1595395&view=diff
==============================================================================
--- hbase/branches/0.96/hbase-client/src/main/java/org/apache/hadoop/hbase/HColumnDescriptor.java (original)
+++ hbase/branches/0.96/hbase-client/src/main/java/org/apache/hadoop/hbase/HColumnDescriptor.java Sat May 17 00:32:24 2014
@@ -34,6 +34,8 @@ import org.apache.hadoop.hbase.protobuf.
 import org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.NameStringPair;
 import org.apache.hadoop.hbase.regionserver.BloomType;
 import org.apache.hadoop.hbase.util.Bytes;
+import org.apache.hadoop.hbase.util.PrettyPrinter;
+import org.apache.hadoop.hbase.util.PrettyPrinter.Unit;
 import org.apache.hadoop.io.Text;
 import org.apache.hadoop.io.WritableComparable;
 
@@ -884,6 +886,7 @@ public class HColumnDescriptor implement
   @Override
   public String toString() {
     StringBuilder s = new StringBuilder();
+
     s.append('{');
     s.append(HConstants.NAME);
     s.append(" => '");
@@ -928,7 +931,7 @@ public class HColumnDescriptor implement
         s.append(", ");
         s.append(key);
         s.append(" => ");
-        s.append('\'').append(value).append('\'');
+        s.append('\'').append(PrettyPrinter.format(value, getUnit(key))).append('\'');
       }
     }
 
@@ -950,7 +953,7 @@ public class HColumnDescriptor implement
         printComma = true;
         s.append('\'').append(key).append('\'');
         s.append(" => ");
-        s.append('\'').append(value).append('\'');
+        s.append('\'').append(PrettyPrinter.format(value, getUnit(key))).append('\'');
       }
       s.append('}');
     }
@@ -965,13 +968,24 @@ public class HColumnDescriptor implement
         printCommaForConfiguration = true;
         s.append('\'').append(e.getKey()).append('\'');
         s.append(" => ");
-        s.append('\'').append(e.getValue()).append('\'');
+        s.append('\'').append(PrettyPrinter.format(e.getValue(), getUnit(e.getKey()))).append('\'');
       }
       s.append("}");
     }
     return s;
   }
 
+  public static Unit getUnit(String key) {
+    Unit unit;
+      /* TTL for now, we can add more as we neeed */
+    if (key.equals(HColumnDescriptor.TTL)) {
+      unit = Unit.TIME_INTERVAL;
+    } else {
+      unit = Unit.NONE;
+    }
+    return unit;
+  }
+
   public static Map<String, String> getDefaultValues() {
     return Collections.unmodifiableMap(DEFAULT_VALUES);
   }

Modified: hbase/branches/0.96/hbase-common/src/main/java/org/apache/hadoop/hbase/HConstants.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.96/hbase-common/src/main/java/org/apache/hadoop/hbase/HConstants.java?rev=1595395&r1=1595394&r2=1595395&view=diff
==============================================================================
--- hbase/branches/0.96/hbase-common/src/main/java/org/apache/hadoop/hbase/HConstants.java (original)
+++ hbase/branches/0.96/hbase-common/src/main/java/org/apache/hadoop/hbase/HConstants.java Sat May 17 00:32:24 2014
@@ -495,6 +495,13 @@ public final class HConstants {
    */
   public static final int WEEK_IN_SECONDS = 7 * 24 * 3600;
 
+  /**
+   * Seconds in a day, hour and minute
+   */
+  public static final int DAY_IN_SECONDS = 24 * 60 * 60;
+  public static final int HOUR_IN_SECONDS = 60 * 60;
+  public static final int MINUTE_IN_SECONDS = 60;
+
   //TODO: although the following are referenced widely to format strings for
   //      the shell. They really aren't a part of the public API. It would be
   //      nice if we could put them somewhere where they did not need to be