[6/9] hbase git commit: HBASE-15870 Specify columns in REST multi gets (Matt Warhaftig)

2016-06-26 Thread apurtell
HBASE-15870 Specify columns in REST multi gets (Matt Warhaftig)

Amending-Author: Andrew Purtell 


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

Branch: refs/heads/0.98
Commit: 0fd4c1dcdc00d70820d9e816cad0a43c6b039c11
Parents: ce13b59
Author: Jerry He 
Authored: Mon Jun 20 13:51:41 2016 -0700
Committer: Andrew Purtell 
Committed: Fri Jun 24 11:17:48 2016 -0700

--
 .../hadoop/hbase/rest/MultiRowResource.java | 15 -
 .../apache/hadoop/hbase/rest/TableResource.java |  8 ++---
 .../hadoop/hbase/rest/TestMultiRowResource.java | 34 
 3 files changed, 52 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/0fd4c1dc/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java
--
diff --git 
a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java 
b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java
index 8ff3ef6..9cafe27 100644
--- 
a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java
+++ 
b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java
@@ -42,6 +42,7 @@ public class MultiRowResource extends ResourceBase implements 
Constants {
 
   TableResource tableResource;
   Integer versions = null;
+  String[] columns = null;
 
   /**
* Constructor
@@ -50,10 +51,15 @@ public class MultiRowResource extends ResourceBase 
implements Constants {
* @param versions
* @throws java.io.IOException
*/
-  public MultiRowResource(TableResource tableResource, String versions) throws 
IOException {
+  public MultiRowResource(TableResource tableResource, String versions, String 
columnsStr)
+  throws IOException {
 super();
 this.tableResource = tableResource;
 
+if (columnsStr != null && !columnsStr.equals("")) {
+  this.columns = columnsStr.split(",");
+}
+
 if (versions != null) {
   this.versions = Integer.valueOf(versions);
 
@@ -74,6 +80,13 @@ public class MultiRowResource extends ResourceBase 
implements Constants {
 if (this.versions != null) {
   rowSpec.setMaxVersions(this.versions);
 }
+
+if (this.columns != null) {
+  for (int i = 0; i < this.columns.length; i++) {
+rowSpec.addColumn(this.columns[i].getBytes());
+  }
+}
+
 ResultGenerator generator =
   ResultGenerator.fromRowSpec(this.tableResource.getName(), rowSpec, 
null,
 !params.containsKey(NOCACHE_PARAM_NAME));

http://git-wip-us.apache.org/repos/asf/hbase/blob/0fd4c1dc/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/TableResource.java
--
diff --git 
a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/TableResource.java 
b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/TableResource.java
index bfbb549..b55d0e0 100644
--- a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/TableResource.java
+++ b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/TableResource.java
@@ -90,10 +90,10 @@ public class TableResource extends ResourceBase {
 return new SchemaResource(this);
   }
 
-  @Path("multiget")
-  public MultiRowResource getMultipleRowResource(
-  final @QueryParam("v") String versions) throws IOException {
-return new MultiRowResource(this, versions);
+  @Path("{multiget: multiget.*}")
+  public MultiRowResource getMultipleRowResource(final @QueryParam("v") String 
versions,
+  @PathParam("multiget") String path) throws IOException {
+return new MultiRowResource(this, versions, path.replace("multiget", 
"").replace("/", ""));
   }
 
   @Path("{rowspec: [^*]+}")

http://git-wip-us.apache.org/repos/asf/hbase/blob/0fd4c1dc/hbase-rest/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java
--
diff --git 
a/hbase-rest/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java
 
b/hbase-rest/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java
index dd54366..aacd3b0 100644
--- 
a/hbase-rest/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java
+++ 
b/hbase-rest/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java
@@ -155,6 +155,40 @@ public class TestMultiRowResource {
   }
 
   @Test
+  public void testMultiCellGetWithColsJSON() throws IOException, JAXBException 
{
+String row_5_url = "/" + TABLE + "/" + ROW_1 + "/" + COLUMN_1;

hbase git commit: HBASE-15870 Specify columns in REST multi gets (Matt Warhaftig)

2016-06-20 Thread jerryjch
Repository: hbase
Updated Branches:
  refs/heads/master 313a3d23a -> 4ca4cd856


HBASE-15870 Specify columns in REST multi gets (Matt Warhaftig)


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

Branch: refs/heads/master
Commit: 4ca4cd856ef5b4596aa43c048e2a8478d08dc773
Parents: 313a3d2
Author: Jerry He 
Authored: Mon Jun 20 13:51:41 2016 -0700
Committer: Jerry He 
Committed: Mon Jun 20 14:11:11 2016 -0700

--
 .../hadoop/hbase/rest/MultiRowResource.java | 15 -
 .../apache/hadoop/hbase/rest/TableResource.java |  8 ++---
 .../hadoop/hbase/rest/TestMultiRowResource.java | 34 
 3 files changed, 52 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/4ca4cd85/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java
--
diff --git 
a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java 
b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java
index 8ff3ef6..9cafe27 100644
--- 
a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java
+++ 
b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java
@@ -42,6 +42,7 @@ public class MultiRowResource extends ResourceBase implements 
Constants {
 
   TableResource tableResource;
   Integer versions = null;
+  String[] columns = null;
 
   /**
* Constructor
@@ -50,10 +51,15 @@ public class MultiRowResource extends ResourceBase 
implements Constants {
* @param versions
* @throws java.io.IOException
*/
-  public MultiRowResource(TableResource tableResource, String versions) throws 
IOException {
+  public MultiRowResource(TableResource tableResource, String versions, String 
columnsStr)
+  throws IOException {
 super();
 this.tableResource = tableResource;
 
+if (columnsStr != null && !columnsStr.equals("")) {
+  this.columns = columnsStr.split(",");
+}
+
 if (versions != null) {
   this.versions = Integer.valueOf(versions);
 
@@ -74,6 +80,13 @@ public class MultiRowResource extends ResourceBase 
implements Constants {
 if (this.versions != null) {
   rowSpec.setMaxVersions(this.versions);
 }
+
+if (this.columns != null) {
+  for (int i = 0; i < this.columns.length; i++) {
+rowSpec.addColumn(this.columns[i].getBytes());
+  }
+}
+
 ResultGenerator generator =
   ResultGenerator.fromRowSpec(this.tableResource.getName(), rowSpec, 
null,
 !params.containsKey(NOCACHE_PARAM_NAME));

http://git-wip-us.apache.org/repos/asf/hbase/blob/4ca4cd85/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/TableResource.java
--
diff --git 
a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/TableResource.java 
b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/TableResource.java
index 70a4538..45e7caf 100644
--- a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/TableResource.java
+++ b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/TableResource.java
@@ -93,10 +93,10 @@ public class TableResource extends ResourceBase {
 return new SchemaResource(this);
   }
 
-  @Path("multiget")
-  public MultiRowResource getMultipleRowResource(
-  final @QueryParam("v") String versions) throws IOException {
-return new MultiRowResource(this, versions);
+  @Path("{multiget: multiget.*}")
+  public MultiRowResource getMultipleRowResource(final @QueryParam("v") String 
versions,
+  @PathParam("multiget") String path) throws IOException {
+return new MultiRowResource(this, versions, path.replace("multiget", 
"").replace("/", ""));
   }
 
   @Path("{rowspec: [^*]+}")

http://git-wip-us.apache.org/repos/asf/hbase/blob/4ca4cd85/hbase-rest/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java
--
diff --git 
a/hbase-rest/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java
 
b/hbase-rest/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java
index a261cf5..958cb15 100644
--- 
a/hbase-rest/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java
+++ 
b/hbase-rest/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java
@@ -183,6 +183,40 @@ public class TestMultiRowResource {
   }
 
   @Test
+  public void testMultiCellGetWithColsJSON() throws IOException, JAXBException 
{
+String row_5_url = "/" + TABLE + "/" + 

hbase git commit: HBASE-15870 Specify columns in REST multi gets (Matt Warhaftig)

2016-06-20 Thread jerryjch
Repository: hbase
Updated Branches:
  refs/heads/branch-1.2 ba725759a -> 910726e1a


HBASE-15870 Specify columns in REST multi gets (Matt Warhaftig)


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

Branch: refs/heads/branch-1.2
Commit: 910726e1a71514ceca7499e0fdd6ce32ca4a5e6c
Parents: ba72575
Author: Jerry He 
Authored: Mon Jun 20 14:04:01 2016 -0700
Committer: Jerry He 
Committed: Mon Jun 20 14:08:51 2016 -0700

--
 .../hadoop/hbase/rest/MultiRowResource.java | 15 -
 .../apache/hadoop/hbase/rest/TableResource.java |  8 ++---
 .../hadoop/hbase/rest/TestMultiRowResource.java | 34 
 3 files changed, 52 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/910726e1/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java
--
diff --git 
a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java 
b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java
index 8ff3ef6..9cafe27 100644
--- 
a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java
+++ 
b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java
@@ -42,6 +42,7 @@ public class MultiRowResource extends ResourceBase implements 
Constants {
 
   TableResource tableResource;
   Integer versions = null;
+  String[] columns = null;
 
   /**
* Constructor
@@ -50,10 +51,15 @@ public class MultiRowResource extends ResourceBase 
implements Constants {
* @param versions
* @throws java.io.IOException
*/
-  public MultiRowResource(TableResource tableResource, String versions) throws 
IOException {
+  public MultiRowResource(TableResource tableResource, String versions, String 
columnsStr)
+  throws IOException {
 super();
 this.tableResource = tableResource;
 
+if (columnsStr != null && !columnsStr.equals("")) {
+  this.columns = columnsStr.split(",");
+}
+
 if (versions != null) {
   this.versions = Integer.valueOf(versions);
 
@@ -74,6 +80,13 @@ public class MultiRowResource extends ResourceBase 
implements Constants {
 if (this.versions != null) {
   rowSpec.setMaxVersions(this.versions);
 }
+
+if (this.columns != null) {
+  for (int i = 0; i < this.columns.length; i++) {
+rowSpec.addColumn(this.columns[i].getBytes());
+  }
+}
+
 ResultGenerator generator =
   ResultGenerator.fromRowSpec(this.tableResource.getName(), rowSpec, 
null,
 !params.containsKey(NOCACHE_PARAM_NAME));

http://git-wip-us.apache.org/repos/asf/hbase/blob/910726e1/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/TableResource.java
--
diff --git 
a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/TableResource.java 
b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/TableResource.java
index 2487a35..ebf2d01 100644
--- a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/TableResource.java
+++ b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/TableResource.java
@@ -93,10 +93,10 @@ public class TableResource extends ResourceBase {
 return new SchemaResource(this);
   }
 
-  @Path("multiget")
-  public MultiRowResource getMultipleRowResource(
-  final @QueryParam("v") String versions) throws IOException {
-return new MultiRowResource(this, versions);
+  @Path("{multiget: multiget.*}")
+  public MultiRowResource getMultipleRowResource(final @QueryParam("v") String 
versions,
+  @PathParam("multiget") String path) throws IOException {
+return new MultiRowResource(this, versions, path.replace("multiget", 
"").replace("/", ""));
   }
 
   @Path("{rowspec: [^*]+}")

http://git-wip-us.apache.org/repos/asf/hbase/blob/910726e1/hbase-rest/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java
--
diff --git 
a/hbase-rest/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java
 
b/hbase-rest/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java
index 412ccdb..53c0ad6 100644
--- 
a/hbase-rest/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java
+++ 
b/hbase-rest/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java
@@ -155,6 +155,40 @@ public class TestMultiRowResource {
   }
 
   @Test
+  public void testMultiCellGetWithColsJSON() throws IOException, JAXBException 
{
+String row_5_url = "/" + TABLE + 

hbase git commit: HBASE-15870 Specify columns in REST multi gets (Matt Warhaftig)

2016-06-20 Thread jerryjch
Repository: hbase
Updated Branches:
  refs/heads/branch-1.3 e141ac89b -> d91e42b84


HBASE-15870 Specify columns in REST multi gets (Matt Warhaftig)


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

Branch: refs/heads/branch-1.3
Commit: d91e42b8407dd68dce702c76fb4843326c8e38e4
Parents: e141ac8
Author: Jerry He 
Authored: Mon Jun 20 14:04:01 2016 -0700
Committer: Jerry He 
Committed: Mon Jun 20 14:04:01 2016 -0700

--
 .../hadoop/hbase/rest/MultiRowResource.java | 15 -
 .../apache/hadoop/hbase/rest/TableResource.java |  8 ++---
 .../hadoop/hbase/rest/TestMultiRowResource.java | 34 
 3 files changed, 52 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/d91e42b8/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java
--
diff --git 
a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java 
b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java
index 8ff3ef6..9cafe27 100644
--- 
a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java
+++ 
b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java
@@ -42,6 +42,7 @@ public class MultiRowResource extends ResourceBase implements 
Constants {
 
   TableResource tableResource;
   Integer versions = null;
+  String[] columns = null;
 
   /**
* Constructor
@@ -50,10 +51,15 @@ public class MultiRowResource extends ResourceBase 
implements Constants {
* @param versions
* @throws java.io.IOException
*/
-  public MultiRowResource(TableResource tableResource, String versions) throws 
IOException {
+  public MultiRowResource(TableResource tableResource, String versions, String 
columnsStr)
+  throws IOException {
 super();
 this.tableResource = tableResource;
 
+if (columnsStr != null && !columnsStr.equals("")) {
+  this.columns = columnsStr.split(",");
+}
+
 if (versions != null) {
   this.versions = Integer.valueOf(versions);
 
@@ -74,6 +80,13 @@ public class MultiRowResource extends ResourceBase 
implements Constants {
 if (this.versions != null) {
   rowSpec.setMaxVersions(this.versions);
 }
+
+if (this.columns != null) {
+  for (int i = 0; i < this.columns.length; i++) {
+rowSpec.addColumn(this.columns[i].getBytes());
+  }
+}
+
 ResultGenerator generator =
   ResultGenerator.fromRowSpec(this.tableResource.getName(), rowSpec, 
null,
 !params.containsKey(NOCACHE_PARAM_NAME));

http://git-wip-us.apache.org/repos/asf/hbase/blob/d91e42b8/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/TableResource.java
--
diff --git 
a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/TableResource.java 
b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/TableResource.java
index 2487a35..ebf2d01 100644
--- a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/TableResource.java
+++ b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/TableResource.java
@@ -93,10 +93,10 @@ public class TableResource extends ResourceBase {
 return new SchemaResource(this);
   }
 
-  @Path("multiget")
-  public MultiRowResource getMultipleRowResource(
-  final @QueryParam("v") String versions) throws IOException {
-return new MultiRowResource(this, versions);
+  @Path("{multiget: multiget.*}")
+  public MultiRowResource getMultipleRowResource(final @QueryParam("v") String 
versions,
+  @PathParam("multiget") String path) throws IOException {
+return new MultiRowResource(this, versions, path.replace("multiget", 
"").replace("/", ""));
   }
 
   @Path("{rowspec: [^*]+}")

http://git-wip-us.apache.org/repos/asf/hbase/blob/d91e42b8/hbase-rest/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java
--
diff --git 
a/hbase-rest/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java
 
b/hbase-rest/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java
index 412ccdb..53c0ad6 100644
--- 
a/hbase-rest/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java
+++ 
b/hbase-rest/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java
@@ -155,6 +155,40 @@ public class TestMultiRowResource {
   }
 
   @Test
+  public void testMultiCellGetWithColsJSON() throws IOException, JAXBException 
{
+String row_5_url = "/" + TABLE + 

hbase git commit: HBASE-15870 Specify columns in REST multi gets (Matt Warhaftig)

2016-06-20 Thread jerryjch
Repository: hbase
Updated Branches:
  refs/heads/branch-1 78f526289 -> 541b9ff25


HBASE-15870 Specify columns in REST multi gets (Matt Warhaftig)


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

Branch: refs/heads/branch-1
Commit: 541b9ff25c24cf566b45c7b3c054b82e509d2ac6
Parents: 78f5262
Author: Jerry He 
Authored: Mon Jun 20 13:51:41 2016 -0700
Committer: Jerry He 
Committed: Mon Jun 20 13:57:25 2016 -0700

--
 .../hadoop/hbase/rest/MultiRowResource.java | 15 -
 .../apache/hadoop/hbase/rest/TableResource.java |  8 ++---
 .../hadoop/hbase/rest/TestMultiRowResource.java | 34 
 3 files changed, 52 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/541b9ff2/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java
--
diff --git 
a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java 
b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java
index 8ff3ef6..9cafe27 100644
--- 
a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java
+++ 
b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java
@@ -42,6 +42,7 @@ public class MultiRowResource extends ResourceBase implements 
Constants {
 
   TableResource tableResource;
   Integer versions = null;
+  String[] columns = null;
 
   /**
* Constructor
@@ -50,10 +51,15 @@ public class MultiRowResource extends ResourceBase 
implements Constants {
* @param versions
* @throws java.io.IOException
*/
-  public MultiRowResource(TableResource tableResource, String versions) throws 
IOException {
+  public MultiRowResource(TableResource tableResource, String versions, String 
columnsStr)
+  throws IOException {
 super();
 this.tableResource = tableResource;
 
+if (columnsStr != null && !columnsStr.equals("")) {
+  this.columns = columnsStr.split(",");
+}
+
 if (versions != null) {
   this.versions = Integer.valueOf(versions);
 
@@ -74,6 +80,13 @@ public class MultiRowResource extends ResourceBase 
implements Constants {
 if (this.versions != null) {
   rowSpec.setMaxVersions(this.versions);
 }
+
+if (this.columns != null) {
+  for (int i = 0; i < this.columns.length; i++) {
+rowSpec.addColumn(this.columns[i].getBytes());
+  }
+}
+
 ResultGenerator generator =
   ResultGenerator.fromRowSpec(this.tableResource.getName(), rowSpec, 
null,
 !params.containsKey(NOCACHE_PARAM_NAME));

http://git-wip-us.apache.org/repos/asf/hbase/blob/541b9ff2/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/TableResource.java
--
diff --git 
a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/TableResource.java 
b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/TableResource.java
index 2487a35..ebf2d01 100644
--- a/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/TableResource.java
+++ b/hbase-rest/src/main/java/org/apache/hadoop/hbase/rest/TableResource.java
@@ -93,10 +93,10 @@ public class TableResource extends ResourceBase {
 return new SchemaResource(this);
   }
 
-  @Path("multiget")
-  public MultiRowResource getMultipleRowResource(
-  final @QueryParam("v") String versions) throws IOException {
-return new MultiRowResource(this, versions);
+  @Path("{multiget: multiget.*}")
+  public MultiRowResource getMultipleRowResource(final @QueryParam("v") String 
versions,
+  @PathParam("multiget") String path) throws IOException {
+return new MultiRowResource(this, versions, path.replace("multiget", 
"").replace("/", ""));
   }
 
   @Path("{rowspec: [^*]+}")

http://git-wip-us.apache.org/repos/asf/hbase/blob/541b9ff2/hbase-rest/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java
--
diff --git 
a/hbase-rest/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java
 
b/hbase-rest/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java
index 76c2f61..35fb7fd 100644
--- 
a/hbase-rest/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java
+++ 
b/hbase-rest/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java
@@ -184,6 +184,40 @@ public class TestMultiRowResource {
   }
 
   @Test
+  public void testMultiCellGetWithColsJSON() throws IOException, JAXBException 
{
+String row_5_url = "/" + TABLE + "/"