Return-Path: X-Original-To: apmail-hbase-commits-archive@www.apache.org Delivered-To: apmail-hbase-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 883D1EFC7 for ; Wed, 2 Jan 2013 16:19:11 +0000 (UTC) Received: (qmail 66496 invoked by uid 500); 2 Jan 2013 16:19:11 -0000 Delivered-To: apmail-hbase-commits-archive@hbase.apache.org Received: (qmail 66442 invoked by uid 500); 2 Jan 2013 16:19:11 -0000 Mailing-List: contact commits-help@hbase.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@hbase.apache.org Delivered-To: mailing list commits@hbase.apache.org Received: (qmail 66434 invoked by uid 99); 2 Jan 2013 16:19:11 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Jan 2013 16:19:11 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 02 Jan 2013 16:19:05 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id 1199B2388980; Wed, 2 Jan 2013 16:18:44 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1427845 - in /hbase/branches/0.94/src: main/java/org/apache/hadoop/hbase/rest/ main/java/org/apache/hadoop/hbase/rest/provider/consumer/ main/java/org/apache/hadoop/hbase/rest/provider/producer/ test/java/org/apache/hadoop/hbase/rest/ Date: Wed, 02 Jan 2013 16:18:43 -0000 To: commits@hbase.apache.org From: apurtell@apache.org X-Mailer: svnmailer-1.0.8-patched Message-Id: <20130102161844.1199B2388980@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: apurtell Date: Wed Jan 2 16:18:42 2013 New Revision: 1427845 URL: http://svn.apache.org/viewvc?rev=1427845&view=rev Log: HBASE-7472. [REST] Support MIME type application/protobuf Modified: hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/Constants.java hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/ExistsResource.java hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/RegionsResource.java hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/RootResource.java hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/RowResource.java hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/ScannerInstanceResource.java hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/ScannerResource.java hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/SchemaResource.java hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/StorageClusterStatusResource.java hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/VersionResource.java hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/provider/consumer/ProtobufMessageBodyConsumer.java hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/provider/producer/ProtobufMessageBodyProducer.java hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestRowResource.java hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestScannerResource.java hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestScannersWithFilters.java hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestSchemaResource.java hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestStatusResource.java hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestTableResource.java hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestVersionResource.java Modified: hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/Constants.java URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/Constants.java?rev=1427845&r1=1427844&r2=1427845&view=diff ============================================================================== --- hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/Constants.java (original) +++ hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/Constants.java Wed Jan 2 16:18:42 2013 @@ -35,6 +35,7 @@ public interface Constants { public static final String MIMETYPE_XML = "text/xml"; public static final String MIMETYPE_BINARY = "application/octet-stream"; public static final String MIMETYPE_PROTOBUF = "application/x-protobuf"; + public static final String MIMETYPE_PROTOBUF_IETF = "application/protobuf"; public static final String MIMETYPE_JSON = "application/json"; public static final String CRLF = "\r\n"; Modified: hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/ExistsResource.java URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/ExistsResource.java?rev=1427845&r1=1427844&r2=1427845&view=diff ============================================================================== --- hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/ExistsResource.java (original) +++ hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/ExistsResource.java Wed Jan 2 16:18:42 2013 @@ -53,7 +53,7 @@ public class ExistsResource extends Reso @GET @Produces({MIMETYPE_TEXT, MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF, - MIMETYPE_BINARY}) + MIMETYPE_PROTOBUF_IETF, MIMETYPE_BINARY}) public Response get(final @Context UriInfo uriInfo) { try { if (!tableResource.exists()) { Modified: hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java?rev=1427845&r1=1427844&r2=1427845&view=diff ============================================================================== --- hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java (original) +++ hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/MultiRowResource.java Wed Jan 2 16:18:42 2013 @@ -59,7 +59,8 @@ public class MultiRowResource extends Re } @GET - @Produces({MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF}) + @Produces({MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF, + MIMETYPE_PROTOBUF_IETF}) public Response get(final @Context UriInfo uriInfo) { MultivaluedMap params = uriInfo.getQueryParameters(); Modified: hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/RegionsResource.java URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/RegionsResource.java?rev=1427845&r1=1427844&r2=1427845&view=diff ============================================================================== --- hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/RegionsResource.java (original) +++ hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/RegionsResource.java Wed Jan 2 16:18:42 2013 @@ -65,7 +65,8 @@ public class RegionsResource extends Res } @GET - @Produces({MIMETYPE_TEXT, MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF}) + @Produces({MIMETYPE_TEXT, MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF, + MIMETYPE_PROTOBUF_IETF}) public Response get(final @Context UriInfo uriInfo) { if (LOG.isDebugEnabled()) { LOG.debug("GET " + uriInfo.getAbsolutePath()); Modified: hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/RootResource.java URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/RootResource.java?rev=1427845&r1=1427844&r2=1427845&view=diff ============================================================================== --- hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/RootResource.java (original) +++ hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/RootResource.java Wed Jan 2 16:18:42 2013 @@ -68,7 +68,8 @@ public class RootResource extends Resour } @GET - @Produces({MIMETYPE_TEXT, MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF}) + @Produces({MIMETYPE_TEXT, MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF, + MIMETYPE_PROTOBUF_IETF}) public Response get(final @Context UriInfo uriInfo) { if (LOG.isDebugEnabled()) { LOG.debug("GET " + uriInfo.getAbsolutePath()); Modified: hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/RowResource.java URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/RowResource.java?rev=1427845&r1=1427844&r2=1427845&view=diff ============================================================================== --- hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/RowResource.java (original) +++ hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/RowResource.java Wed Jan 2 16:18:42 2013 @@ -79,7 +79,8 @@ public class RowResource extends Resourc } @GET - @Produces({MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF}) + @Produces({MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF, + MIMETYPE_PROTOBUF_IETF}) public Response get(final @Context UriInfo uriInfo) { if (LOG.isDebugEnabled()) { LOG.debug("GET " + uriInfo.getAbsolutePath()); @@ -305,7 +306,8 @@ public class RowResource extends Resourc } @PUT - @Consumes({MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF}) + @Consumes({MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF, + MIMETYPE_PROTOBUF_IETF}) public Response put(final CellSetModel model, final @Context UriInfo uriInfo) { if (LOG.isDebugEnabled()) { @@ -326,7 +328,8 @@ public class RowResource extends Resourc } @POST - @Consumes({MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF}) + @Consumes({MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF, + MIMETYPE_PROTOBUF_IETF}) public Response post(final CellSetModel model, final @Context UriInfo uriInfo) { if (LOG.isDebugEnabled()) { Modified: hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/ScannerInstanceResource.java URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/ScannerInstanceResource.java?rev=1427845&r1=1427844&r2=1427845&view=diff ============================================================================== --- hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/ScannerInstanceResource.java (original) +++ hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/ScannerInstanceResource.java Wed Jan 2 16:18:42 2013 @@ -67,7 +67,8 @@ public class ScannerInstanceResource ext } @GET - @Produces({MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF}) + @Produces({MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF, + MIMETYPE_PROTOBUF_IETF}) public Response get(final @Context UriInfo uriInfo, @QueryParam("n") int maxRows, final @QueryParam("c") int maxValues) { if (LOG.isDebugEnabled()) { Modified: hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/ScannerResource.java URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/ScannerResource.java?rev=1427845&r1=1427844&r2=1427845&view=diff ============================================================================== --- hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/ScannerResource.java (original) +++ hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/ScannerResource.java Wed Jan 2 16:18:42 2013 @@ -119,7 +119,8 @@ public class ScannerResource extends Res } @PUT - @Consumes({MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF}) + @Consumes({MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF, + MIMETYPE_PROTOBUF_IETF}) public Response put(final ScannerModel model, final @Context UriInfo uriInfo) { if (LOG.isDebugEnabled()) { @@ -129,7 +130,8 @@ public class ScannerResource extends Res } @POST - @Consumes({MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF}) + @Consumes({MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF, + MIMETYPE_PROTOBUF_IETF}) public Response post(final ScannerModel model, final @Context UriInfo uriInfo) { if (LOG.isDebugEnabled()) { Modified: hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/SchemaResource.java URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/SchemaResource.java?rev=1427845&r1=1427844&r2=1427845&view=diff ============================================================================== --- hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/SchemaResource.java (original) +++ hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/SchemaResource.java Wed Jan 2 16:18:42 2013 @@ -85,7 +85,8 @@ public class SchemaResource extends Reso } @GET - @Produces({MIMETYPE_TEXT, MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF}) + @Produces({MIMETYPE_TEXT, MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF, + MIMETYPE_PROTOBUF_IETF}) public Response get(final @Context UriInfo uriInfo) { if (LOG.isDebugEnabled()) { LOG.debug("GET " + uriInfo.getAbsolutePath()); @@ -208,7 +209,8 @@ public class SchemaResource extends Reso } @PUT - @Consumes({MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF}) + @Consumes({MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF, + MIMETYPE_PROTOBUF_IETF}) public Response put(final TableSchemaModel model, final @Context UriInfo uriInfo) { if (LOG.isDebugEnabled()) { @@ -219,7 +221,8 @@ public class SchemaResource extends Reso } @POST - @Consumes({MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF}) + @Consumes({MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF, + MIMETYPE_PROTOBUF_IETF}) public Response post(final TableSchemaModel model, final @Context UriInfo uriInfo) { if (LOG.isDebugEnabled()) { Modified: hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/StorageClusterStatusResource.java URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/StorageClusterStatusResource.java?rev=1427845&r1=1427844&r2=1427845&view=diff ============================================================================== --- hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/StorageClusterStatusResource.java (original) +++ hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/StorageClusterStatusResource.java Wed Jan 2 16:18:42 2013 @@ -58,7 +58,8 @@ public class StorageClusterStatusResourc } @GET - @Produces({MIMETYPE_TEXT, MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF}) + @Produces({MIMETYPE_TEXT, MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF, + MIMETYPE_PROTOBUF_IETF}) public Response get(final @Context UriInfo uriInfo) { if (LOG.isDebugEnabled()) { LOG.debug("GET " + uriInfo.getAbsolutePath()); Modified: hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/VersionResource.java URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/VersionResource.java?rev=1427845&r1=1427844&r2=1427845&view=diff ============================================================================== --- hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/VersionResource.java (original) +++ hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/VersionResource.java Wed Jan 2 16:18:42 2013 @@ -70,7 +70,8 @@ public class VersionResource extends Res * @return a response for a version request */ @GET - @Produces({MIMETYPE_TEXT, MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF}) + @Produces({MIMETYPE_TEXT, MIMETYPE_XML, MIMETYPE_JSON, MIMETYPE_PROTOBUF, + MIMETYPE_PROTOBUF_IETF}) public Response get(final @Context ServletContext context, final @Context UriInfo uriInfo) { if (LOG.isDebugEnabled()) { Modified: hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/provider/consumer/ProtobufMessageBodyConsumer.java URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/provider/consumer/ProtobufMessageBodyConsumer.java?rev=1427845&r1=1427844&r2=1427845&view=diff ============================================================================== --- hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/provider/consumer/ProtobufMessageBodyConsumer.java (original) +++ hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/provider/consumer/ProtobufMessageBodyConsumer.java Wed Jan 2 16:18:42 2013 @@ -43,7 +43,7 @@ import org.apache.hadoop.hbase.rest.Prot * ProtobufMessageHandler interface capable handlers for decoding protobuf input. */ @Provider -@Consumes(Constants.MIMETYPE_PROTOBUF) +@Consumes({Constants.MIMETYPE_PROTOBUF, Constants.MIMETYPE_PROTOBUF_IETF}) public class ProtobufMessageBodyConsumer implements MessageBodyReader { private static final Log LOG = Modified: hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/provider/producer/ProtobufMessageBodyProducer.java URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/provider/producer/ProtobufMessageBodyProducer.java?rev=1427845&r1=1427844&r2=1427845&view=diff ============================================================================== --- hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/provider/producer/ProtobufMessageBodyProducer.java (original) +++ hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/rest/provider/producer/ProtobufMessageBodyProducer.java Wed Jan 2 16:18:42 2013 @@ -43,7 +43,7 @@ import org.apache.hadoop.hbase.rest.Prot * sent, then writeTo to perform the actual I/O. */ @Provider -@Produces(Constants.MIMETYPE_PROTOBUF) +@Produces({Constants.MIMETYPE_PROTOBUF, Constants.MIMETYPE_PROTOBUF_IETF}) public class ProtobufMessageBodyProducer implements MessageBodyWriter { Modified: hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java?rev=1427845&r1=1427844&r2=1427845&view=diff ============================================================================== --- hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java (original) +++ hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestMultiRowResource.java Wed Jan 2 16:18:42 2013 @@ -117,6 +117,7 @@ public class TestMultiRowResource { Response response = client.get(path.toString(), Constants.MIMETYPE_JSON); assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_JSON, response.getHeader("content-type")); client.delete(row_5_url); client.delete(row_6_url); @@ -143,6 +144,7 @@ public class TestMultiRowResource { Response response = client.get(path.toString(), Constants.MIMETYPE_XML); assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_XML, response.getHeader("content-type")); client.delete(row_5_url); client.delete(row_6_url); Modified: hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestRowResource.java URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestRowResource.java?rev=1427845&r1=1427844&r2=1427845&view=diff ============================================================================== --- hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestRowResource.java (original) +++ hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestRowResource.java Wed Jan 2 16:18:42 2013 @@ -208,6 +208,7 @@ public class TestRowResource { String value) throws IOException, JAXBException { Response response = getValueXML(table, row, column); assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_XML, response.getHeader("content-type")); CellSetModel cellSet = (CellSetModel) unmarshaller.unmarshal(new ByteArrayInputStream(response.getBody())); RowModel rowModel = cellSet.getRows().get(0); @@ -220,6 +221,7 @@ public class TestRowResource { String column, String value) throws IOException, JAXBException { Response response = getValueXML(url); assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_XML, response.getHeader("content-type")); CellSetModel cellSet = (CellSetModel) unmarshaller.unmarshal(new ByteArrayInputStream(response.getBody())); RowModel rowModel = cellSet.getRows().get(0); @@ -257,6 +259,7 @@ public class TestRowResource { String value) throws IOException { Response response = getValuePB(table, row, column); assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_PROTOBUF, response.getHeader("content-type")); CellSetModel cellSet = new CellSetModel(); cellSet.getObjectFromMessage(response.getBody()); RowModel rowModel = cellSet.getRows().get(0); @@ -499,6 +502,7 @@ public class TestRowResource { response = client.get(path, Constants.MIMETYPE_BINARY); assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_BINARY, response.getHeader("content-type")); assertTrue(Bytes.equals(response.getBody(), body)); boolean foundTimestampHeader = false; for (Header header: response.getHeaders()) { @@ -522,6 +526,7 @@ public class TestRowResource { Thread.yield(); response = client.get(path, Constants.MIMETYPE_JSON); assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_JSON, response.getHeader("content-type")); response = deleteRow(TABLE, ROW_4); assertEquals(response.getCode(), 200); } Modified: hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestScannerResource.java URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestScannerResource.java?rev=1427845&r1=1427844&r2=1427845&view=diff ============================================================================== --- hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestScannerResource.java (original) +++ hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestScannerResource.java Wed Jan 2 16:18:42 2013 @@ -125,6 +125,7 @@ public class TestScannerResource { response = client.get(scannerURI, Constants.MIMETYPE_PROTOBUF); assertTrue(response.getCode() == 200 || response.getCode() == 204); if (response.getCode() == 200) { + assertEquals(Constants.MIMETYPE_PROTOBUF, response.getHeader("content-type")); CellSetModel cellSet = new CellSetModel(); cellSet.getObjectFromMessage(response.getBody()); Iterator rows = cellSet.getRows().iterator(); @@ -208,6 +209,7 @@ public class TestScannerResource { // get a cell set response = client.get(scannerURI, Constants.MIMETYPE_XML); assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_XML, response.getHeader("content-type")); CellSetModel cellSet = (CellSetModel) unmarshaller.unmarshal(new ByteArrayInputStream(response.getBody())); // confirm batch size conformance @@ -251,6 +253,7 @@ public class TestScannerResource { // get a cell set response = client.get(scannerURI, Constants.MIMETYPE_PROTOBUF); assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_PROTOBUF, response.getHeader("content-type")); CellSetModel cellSet = new CellSetModel(); cellSet.getObjectFromMessage(response.getBody()); // confirm batch size conformance @@ -293,6 +296,7 @@ public class TestScannerResource { // get a cell response = client.get(scannerURI, Constants.MIMETYPE_BINARY); assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_BINARY, response.getHeader("content-type")); // verify that data was returned assertTrue(response.getBody().length > 0); // verify that the expected X-headers are present Modified: hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestScannersWithFilters.java URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestScannersWithFilters.java?rev=1427845&r1=1427844&r2=1427845&view=diff ============================================================================== --- hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestScannersWithFilters.java (original) +++ hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestScannersWithFilters.java Wed Jan 2 16:18:42 2013 @@ -64,6 +64,7 @@ import org.apache.hadoop.hbase.rest.mode import org.apache.hadoop.hbase.util.Bytes; import static org.junit.Assert.*; + import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; @@ -226,6 +227,7 @@ public class TestScannersWithFilters { // get a cell set response = client.get(scannerURI, Constants.MIMETYPE_XML); assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_XML, response.getHeader("content-type")); CellSetModel cells = (CellSetModel) unmarshaller.unmarshal(new ByteArrayInputStream(response.getBody())); @@ -260,6 +262,7 @@ public class TestScannersWithFilters { // get a cell set response = client.get(scannerURI, Constants.MIMETYPE_XML); assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_XML, response.getHeader("content-type")); CellSetModel cellSet = (CellSetModel) unmarshaller.unmarshal(new ByteArrayInputStream(response.getBody())); @@ -313,6 +316,7 @@ public class TestScannersWithFilters { // get a cell set response = client.get(scannerURI, Constants.MIMETYPE_XML); assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_XML, response.getHeader("content-type")); CellSetModel cellSet = (CellSetModel) unmarshaller.unmarshal(new ByteArrayInputStream(response.getBody())); Modified: hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestSchemaResource.java URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestSchemaResource.java?rev=1427845&r1=1427844&r2=1427845&view=diff ============================================================================== --- hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestSchemaResource.java (original) +++ hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestSchemaResource.java Wed Jan 2 16:18:42 2013 @@ -40,6 +40,7 @@ import org.apache.hadoop.hbase.rest.mode import org.apache.hadoop.hbase.util.Bytes; import static org.junit.Assert.*; + import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; @@ -110,6 +111,7 @@ public class TestSchemaResource { // retrieve the schema and validate it response = client.get(schemaPath, Constants.MIMETYPE_XML); assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_XML, response.getHeader("content-type")); model = fromXML(response.getBody()); TestTableSchemaModel.checkModel(model, TABLE1); @@ -148,6 +150,15 @@ public class TestSchemaResource { // retrieve the schema and validate it response = client.get(schemaPath, Constants.MIMETYPE_PROTOBUF); assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_PROTOBUF, response.getHeader("content-type")); + model = new TableSchemaModel(); + model.getObjectFromMessage(response.getBody()); + TestTableSchemaModel.checkModel(model, TABLE2); + + // retrieve the schema and validate it with alternate pbuf type + response = client.get(schemaPath, Constants.MIMETYPE_PROTOBUF_IETF); + assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_PROTOBUF_IETF, response.getHeader("content-type")); model = new TableSchemaModel(); model.getObjectFromMessage(response.getBody()); TestTableSchemaModel.checkModel(model, TABLE2); Modified: hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestStatusResource.java URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestStatusResource.java?rev=1427845&r1=1427844&r2=1427845&view=diff ============================================================================== --- hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestStatusResource.java (original) +++ hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestStatusResource.java Wed Jan 2 16:18:42 2013 @@ -35,6 +35,7 @@ import org.apache.hadoop.hbase.rest.mode import org.apache.hadoop.hbase.util.Bytes; import static org.junit.Assert.*; + import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; @@ -95,6 +96,7 @@ public class TestStatusResource { public void testGetClusterStatusXML() throws IOException, JAXBException { Response response = client.get("/status/cluster", Constants.MIMETYPE_XML); assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_XML, response.getHeader("content-type")); StorageClusterStatusModel model = (StorageClusterStatusModel) context.createUnmarshaller().unmarshal( new ByteArrayInputStream(response.getBody())); @@ -103,16 +105,21 @@ public class TestStatusResource { @Test public void testGetClusterStatusPB() throws IOException { - Response response = client.get("/status/cluster", - Constants.MIMETYPE_PROTOBUF); + Response response = client.get("/status/cluster", Constants.MIMETYPE_PROTOBUF); assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_PROTOBUF, response.getHeader("content-type")); StorageClusterStatusModel model = new StorageClusterStatusModel(); model.getObjectFromMessage(response.getBody()); validate(model); + response = client.get("/status/cluster", Constants.MIMETYPE_PROTOBUF_IETF); + assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_PROTOBUF_IETF, response.getHeader("content-type")); + model = new StorageClusterStatusModel(); + model.getObjectFromMessage(response.getBody()); + validate(model); } @org.junit.Rule public org.apache.hadoop.hbase.ResourceCheckerJUnitRule cu = new org.apache.hadoop.hbase.ResourceCheckerJUnitRule(); } - Modified: hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestTableResource.java URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestTableResource.java?rev=1427845&r1=1427844&r2=1427845&view=diff ============================================================================== --- hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestTableResource.java (original) +++ hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestTableResource.java Wed Jan 2 16:18:42 2013 @@ -46,6 +46,7 @@ import org.apache.hadoop.hbase.util.Byte import org.apache.hadoop.util.StringUtils; import static org.junit.Assert.*; + import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; @@ -179,12 +180,14 @@ public class TestTableResource { public void testTableListText() throws IOException { Response response = client.get("/", Constants.MIMETYPE_TEXT); assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_TEXT, response.getHeader("content-type")); } @Test public void testTableListXML() throws IOException, JAXBException { Response response = client.get("/", Constants.MIMETYPE_XML); assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_XML, response.getHeader("content-type")); TableListModel model = (TableListModel) context.createUnmarshaller() .unmarshal(new ByteArrayInputStream(response.getBody())); @@ -195,29 +198,37 @@ public class TestTableResource { public void testTableListJSON() throws IOException { Response response = client.get("/", Constants.MIMETYPE_JSON); assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_JSON, response.getHeader("content-type")); } @Test public void testTableListPB() throws IOException, JAXBException { Response response = client.get("/", Constants.MIMETYPE_PROTOBUF); assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_PROTOBUF, response.getHeader("content-type")); TableListModel model = new TableListModel(); model.getObjectFromMessage(response.getBody()); checkTableList(model); + response = client.get("/", Constants.MIMETYPE_PROTOBUF_IETF); + assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_PROTOBUF_IETF, response.getHeader("content-type")); + model = new TableListModel(); + model.getObjectFromMessage(response.getBody()); + checkTableList(model); } @Test public void testTableInfoText() throws IOException { - Response response = client.get("/" + TABLE + "/regions", - Constants.MIMETYPE_TEXT); + Response response = client.get("/" + TABLE + "/regions", Constants.MIMETYPE_TEXT); assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_TEXT, response.getHeader("content-type")); } @Test public void testTableInfoXML() throws IOException, JAXBException { - Response response = client.get("/" + TABLE + "/regions", - Constants.MIMETYPE_XML); + Response response = client.get("/" + TABLE + "/regions", Constants.MIMETYPE_XML); assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_XML, response.getHeader("content-type")); TableInfoModel model = (TableInfoModel) context.createUnmarshaller() .unmarshal(new ByteArrayInputStream(response.getBody())); @@ -226,19 +237,25 @@ public class TestTableResource { @Test public void testTableInfoJSON() throws IOException { - Response response = client.get("/" + TABLE + "/regions", - Constants.MIMETYPE_JSON); + Response response = client.get("/" + TABLE + "/regions", Constants.MIMETYPE_JSON); assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_JSON, response.getHeader("content-type")); } @Test public void testTableInfoPB() throws IOException, JAXBException { - Response response = client.get("/" + TABLE + "/regions", - Constants.MIMETYPE_PROTOBUF); + Response response = client.get("/" + TABLE + "/regions", Constants.MIMETYPE_PROTOBUF); assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_PROTOBUF, response.getHeader("content-type")); TableInfoModel model = new TableInfoModel(); model.getObjectFromMessage(response.getBody()); checkTableInfo(model); + response = client.get("/" + TABLE + "/regions", Constants.MIMETYPE_PROTOBUF_IETF); + assertEquals(response.getCode(), 200); + assertEquals(Constants.MIMETYPE_PROTOBUF_IETF, response.getHeader("content-type")); + model = new TableInfoModel(); + model.getObjectFromMessage(response.getBody()); + checkTableInfo(model); } @org.junit.Rule Modified: hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestVersionResource.java URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestVersionResource.java?rev=1427845&r1=1427844&r2=1427845&view=diff ============================================================================== --- hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestVersionResource.java (original) +++ hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/rest/TestVersionResource.java Wed Jan 2 16:18:42 2013 @@ -26,8 +26,6 @@ import java.io.IOException; import javax.xml.bind.JAXBContext; import javax.xml.bind.JAXBException; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; import org.apache.hadoop.hbase.HBaseTestingUtility; import org.apache.hadoop.hbase.MediumTests; import org.apache.hadoop.hbase.rest.client.Client; @@ -38,6 +36,7 @@ import org.apache.hadoop.hbase.rest.mode import org.apache.hadoop.hbase.util.Bytes; import static org.junit.Assert.*; + import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; @@ -47,8 +46,6 @@ import org.junit.experimental.categories @Category(MediumTests.class) public class TestVersionResource { - private static final Log LOG = LogFactory.getLog(TestVersionResource.class); - private static final HBaseTestingUtility TEST_UTIL = new HBaseTestingUtility(); private static final HBaseRESTTestingUtility REST_TEST_UTIL = new HBaseRESTTestingUtility(); @@ -97,6 +94,7 @@ public class TestVersionResource { public void testGetStargateVersionText() throws IOException { Response response = client.get("/version", Constants.MIMETYPE_TEXT); assertTrue(response.getCode() == 200); + assertEquals(Constants.MIMETYPE_TEXT, response.getHeader("content-type")); String body = Bytes.toString(response.getBody()); assertTrue(body.length() > 0); assertTrue(body.contains(RESTServlet.VERSION_STRING)); @@ -114,34 +112,41 @@ public class TestVersionResource { public void testGetStargateVersionXML() throws IOException, JAXBException { Response response = client.get("/version", Constants.MIMETYPE_XML); assertTrue(response.getCode() == 200); + assertEquals(Constants.MIMETYPE_XML, response.getHeader("content-type")); VersionModel model = (VersionModel) context.createUnmarshaller().unmarshal( new ByteArrayInputStream(response.getBody())); validate(model); - LOG.info("success retrieving Stargate version as XML"); } @Test public void testGetStargateVersionJSON() throws IOException { Response response = client.get("/version", Constants.MIMETYPE_JSON); assertTrue(response.getCode() == 200); + assertEquals(Constants.MIMETYPE_JSON, response.getHeader("content-type")); } @Test public void testGetStargateVersionPB() throws IOException { Response response = client.get("/version", Constants.MIMETYPE_PROTOBUF); assertTrue(response.getCode() == 200); + assertEquals(Constants.MIMETYPE_PROTOBUF, response.getHeader("content-type")); VersionModel model = new VersionModel(); model.getObjectFromMessage(response.getBody()); validate(model); - LOG.info("success retrieving Stargate version as protobuf"); + response = client.get("/version", Constants.MIMETYPE_PROTOBUF_IETF); + assertTrue(response.getCode() == 200); + assertEquals(Constants.MIMETYPE_PROTOBUF_IETF, response.getHeader("content-type")); + model = new VersionModel(); + model.getObjectFromMessage(response.getBody()); + validate(model); } @Test public void testGetStorageClusterVersionText() throws IOException { - Response response = client.get("/version/cluster", - Constants.MIMETYPE_TEXT); + Response response = client.get("/version/cluster", Constants.MIMETYPE_TEXT); assertTrue(response.getCode() == 200); + assertEquals(Constants.MIMETYPE_TEXT, response.getHeader("content-type")); } @Test @@ -149,19 +154,20 @@ public class TestVersionResource { JAXBException { Response response = client.get("/version/cluster",Constants.MIMETYPE_XML); assertTrue(response.getCode() == 200); + assertEquals(Constants.MIMETYPE_XML, response.getHeader("content-type")); StorageClusterVersionModel clusterVersionModel = (StorageClusterVersionModel) context.createUnmarshaller().unmarshal( new ByteArrayInputStream(response.getBody())); assertNotNull(clusterVersionModel); assertNotNull(clusterVersionModel.getVersion()); - LOG.info("success retrieving storage cluster version as XML"); } @Test public void doTestGetStorageClusterVersionJSON() throws IOException { Response response = client.get("/version/cluster", Constants.MIMETYPE_JSON); assertTrue(response.getCode() == 200); + assertEquals(Constants.MIMETYPE_JSON, response.getHeader("content-type")); } @org.junit.Rule