org.apache.hadoop.hbase.rest.provider.producer
Class ProtobufMessageBodyProducer

java.lang.Object
  extended by org.apache.hadoop.hbase.rest.provider.producer.ProtobufMessageBodyProducer
All Implemented Interfaces:
javax.ws.rs.ext.MessageBodyWriter<ProtobufMessageHandler>

@Provider
public class ProtobufMessageBodyProducer
extends Object
implements javax.ws.rs.ext.MessageBodyWriter<ProtobufMessageHandler>

An adapter between Jersey and ProtobufMessageHandler implementors. Hooks up protobuf output producing methods to the Jersey content handling framework. Jersey will first call getSize() to learn the number of bytes that will be sent, then writeTo to perform the actual I/O.


Constructor Summary
ProtobufMessageBodyProducer()
           
 
Method Summary
 long getSize(ProtobufMessageHandler m, Class<?> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType)
           
 boolean isWriteable(Class<?> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType)
           
 void writeTo(ProtobufMessageHandler m, Class<?> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType, javax.ws.rs.core.MultivaluedMap<String,Object> httpHeaders, OutputStream entityStream)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ProtobufMessageBodyProducer

public ProtobufMessageBodyProducer()
Method Detail

isWriteable

public boolean isWriteable(Class<?> type,
                           Type genericType,
                           Annotation[] annotations,
                           javax.ws.rs.core.MediaType mediaType)
Specified by:
isWriteable in interface javax.ws.rs.ext.MessageBodyWriter<ProtobufMessageHandler>

getSize

public long getSize(ProtobufMessageHandler m,
                    Class<?> type,
                    Type genericType,
                    Annotation[] annotations,
                    javax.ws.rs.core.MediaType mediaType)
Specified by:
getSize in interface javax.ws.rs.ext.MessageBodyWriter<ProtobufMessageHandler>

writeTo

public void writeTo(ProtobufMessageHandler m,
                    Class<?> type,
                    Type genericType,
                    Annotation[] annotations,
                    javax.ws.rs.core.MediaType mediaType,
                    javax.ws.rs.core.MultivaluedMap<String,Object> httpHeaders,
                    OutputStream entityStream)
             throws IOException,
                    javax.ws.rs.WebApplicationException
Specified by:
writeTo in interface javax.ws.rs.ext.MessageBodyWriter<ProtobufMessageHandler>
Throws:
IOException
javax.ws.rs.WebApplicationException


Copyright © 2011 The Apache Software Foundation. All Rights Reserved.