1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 package org.apache.hadoop.hbase.hbql.statement;
22
23 import org.apache.hadoop.hbase.hbql.client.ExecutionResults;
24 import org.apache.hadoop.hbase.hbql.client.HBqlException;
25 import org.apache.hadoop.hbase.hbql.impl.HConnectionImpl;
26 import org.apache.hadoop.hbase.hbql.mapping.Mapping;
27
28 public class DescribeIndexForMappingStatement extends StatementWithMapping implements ConnectionStatement {
29
30 private final String indexName;
31
32 public DescribeIndexForMappingStatement(final String indexName, final String mappingName) {
33 super(null, mappingName);
34 this.indexName = indexName;
35 }
36
37 private String getIndexName() {
38 return this.indexName;
39 }
40
41 protected ExecutionResults execute(final HConnectionImpl conn) throws HBqlException {
42 final Mapping mapping = conn.getMapping(this.getMappingContext().getMappingName());
43 return DescribeIndexForTableStatement.executeDescribe(conn, this.getIndexName(), mapping.getTableName());
44 }
45
46 public static String usage() {
47 return "DESCRIBE INDEX index_name ON [MAPPING] mapping_name";
48 }
49 }