You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by st...@apache.org on 2011/08/27 01:08:05 UTC

svn commit: r1162284 - /hbase/trunk/src/main/ruby/shell/commands/show_filters.rb

Author: stack
Date: Fri Aug 26 23:08:05 2011
New Revision: 1162284

URL: http://svn.apache.org/viewvc?rev=1162284&view=rev
Log:
hbase-4248 Enhancements for Filter Language exposing HBase filters through the Thrift API

Added:
    hbase/trunk/src/main/ruby/shell/commands/show_filters.rb

Added: hbase/trunk/src/main/ruby/shell/commands/show_filters.rb
URL: http://svn.apache.org/viewvc/hbase/trunk/src/main/ruby/shell/commands/show_filters.rb?rev=1162284&view=auto
==============================================================================
--- hbase/trunk/src/main/ruby/shell/commands/show_filters.rb (added)
+++ hbase/trunk/src/main/ruby/shell/commands/show_filters.rb Fri Aug 26 23:08:05 2011
@@ -0,0 +1,55 @@
+#
+# Copyright 2011 The Apache Software Foundation
+#
+# 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.
+#
+
+java_import org.apache.hadoop.hbase.filter.ParseFilter
+
+module Shell
+  module Commands
+    class ShowFilters < Command
+      def help
+        return <<-EOF
+Show all the filters in hbase. Example:
+  hbase> show_filters
+
+  Documentation on filters mentioned below can be found at: https://our.intern.facebook.com/intern/wiki/index.php/HBase/Filter_Language
+  ColumnPrefixFilter
+  TimestampsFilter
+  PageFilter
+  .....
+  KeyOnlyFilter
+EOF
+      end
+
+      def command( )
+        now = Time.now
+        formatter.row(["Documentation on filters mentioned below can " +
+                       "be found at: https://our.intern.facebook.com/intern/" +
+                       "wiki/index.php/HBase/Filter_Language"])
+
+        parseFilter = ParseFilter.new
+        supportedFilters = parseFilter.getSupportedFilters
+
+        supportedFilters.each do |filter|
+          formatter.row([filter])
+        end
+      end
+    end
+  end
+end