org.overlord.sramp.atom.providers
Class SrampAtomExceptionProvider

java.lang.Object
  extended by org.overlord.sramp.atom.providers.SrampAtomExceptionProvider
All Implemented Interfaces:
javax.ws.rs.ext.ExceptionMapper<SrampAtomException>, javax.ws.rs.ext.MessageBodyReader<SrampAtomException>, javax.ws.rs.ext.MessageBodyWriter<SrampAtomException>

@Provider
public class SrampAtomExceptionProvider
extends Object
implements javax.ws.rs.ext.ExceptionMapper<SrampAtomException>, javax.ws.rs.ext.MessageBodyWriter<SrampAtomException>, javax.ws.rs.ext.MessageBodyReader<SrampAtomException>

A RESTEasy provider for reading/writing an S-RAMP Exception.

Author:
eric.wittmann@redhat.com

Constructor Summary
SrampAtomExceptionProvider()
          Constructor.
 
Method Summary
static Throwable getRootCause(Throwable t)
          Gets the root exception from the given Throwable.
static String getRootStackTrace(Throwable t)
          Gets the root stack trace as a string.
 long getSize(SrampAtomException t, Class<?> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType)
           
 boolean isReadable(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)
           
 SrampAtomException readFrom(Class<SrampAtomException> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType, javax.ws.rs.core.MultivaluedMap<String,String> httpHeaders, InputStream entityStream)
           
 javax.ws.rs.core.Response toResponse(SrampAtomException exception)
           
 void writeTo(SrampAtomException error, 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

SrampAtomExceptionProvider

public SrampAtomExceptionProvider()
Constructor.

Method Detail

toResponse

public javax.ws.rs.core.Response toResponse(SrampAtomException exception)
Specified by:
toResponse in interface javax.ws.rs.ext.ExceptionMapper<SrampAtomException>
See Also:
ExceptionMapper.toResponse(java.lang.Throwable)

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<SrampAtomException>
See Also:
MessageBodyWriter.isWriteable(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)

getSize

public long getSize(SrampAtomException t,
                    Class<?> type,
                    Type genericType,
                    Annotation[] annotations,
                    javax.ws.rs.core.MediaType mediaType)
Specified by:
getSize in interface javax.ws.rs.ext.MessageBodyWriter<SrampAtomException>
See Also:
MessageBodyWriter.getSize(java.lang.Object, java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)

writeTo

public void writeTo(SrampAtomException error,
                    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<SrampAtomException>
Throws:
IOException
javax.ws.rs.WebApplicationException
See Also:
MessageBodyWriter.writeTo(java.lang.Object, java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType, javax.ws.rs.core.MultivaluedMap, java.io.OutputStream)

getRootStackTrace

public static String getRootStackTrace(Throwable t)
Gets the root stack trace as a string.

Parameters:
t -

getRootCause

public static Throwable getRootCause(Throwable t)
Gets the root exception from the given Throwable.

Parameters:
t -

isReadable

public boolean isReadable(Class<?> type,
                          Type genericType,
                          Annotation[] annotations,
                          javax.ws.rs.core.MediaType mediaType)
Specified by:
isReadable in interface javax.ws.rs.ext.MessageBodyReader<SrampAtomException>
See Also:
MessageBodyReader.isReadable(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType)

readFrom

public SrampAtomException readFrom(Class<SrampAtomException> type,
                                   Type genericType,
                                   Annotation[] annotations,
                                   javax.ws.rs.core.MediaType mediaType,
                                   javax.ws.rs.core.MultivaluedMap<String,String> httpHeaders,
                                   InputStream entityStream)
                            throws IOException,
                                   javax.ws.rs.WebApplicationException
Specified by:
readFrom in interface javax.ws.rs.ext.MessageBodyReader<SrampAtomException>
Throws:
IOException
javax.ws.rs.WebApplicationException
See Also:
MessageBodyReader.readFrom(java.lang.Class, java.lang.reflect.Type, java.lang.annotation.Annotation[], javax.ws.rs.core.MediaType, javax.ws.rs.core.MultivaluedMap, java.io.InputStream)


Copyright © 2011-2013 JBoss, a division of Red Hat. All Rights Reserved.