com.holonplatform.json.jackson.jaxrs.internal

## Class JacksonJsonPropertyBoxProvider

- java.lang.Object
- - com.holonplatform.json.jackson.jaxrs.internal.JacksonJsonPropertyBoxProvider

- All Implemented Interfaces:
    javax.ws.rs.ext.MessageBodyReader<com.holonplatform.core.property.PropertyBox>, javax.ws.rs.ext.MessageBodyWriter<com.holonplatform.core.property.PropertyBox>

      @Priority(value=4000)
       @Provider
       @Produces(value="application/json")
       @Consumes(value="application/json")
      public class JacksonJsonPropertyBoxProvider
      extends Object
      implements javax.ws.rs.ext.MessageBodyWriter<com.holonplatform.core.property.PropertyBox>, javax.ws.rs.ext.MessageBodyReader<com.holonplatform.core.property.PropertyBox>

  JAX-RS message body reader and writer for `PropertyBox` type using Jackson as JSON serializer/deserializer.
  Since:
    5.0.0

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `JacksonJsonPropertyBoxProvider()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `long` | `getSize(com.holonplatform.core.property.PropertyBox 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)`
    `com.holonplatform.core.property.PropertyBox` | `readFrom(Class<com.holonplatform.core.property.PropertyBox> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType, javax.ws.rs.core.MultivaluedMap<String,String> httpHeaders, InputStream entityStream)`
    `void` | `writeTo(com.holonplatform.core.property.PropertyBox t, 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

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### JacksonJsonPropertyBoxProvider

          public JacksonJsonPropertyBoxProvider()

  - ### Method Detail

    - #### 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<com.holonplatform.core.property.PropertyBox>`

    - #### readFrom

          public com.holonplatform.core.property.PropertyBox readFrom(Class<com.holonplatform.core.property.PropertyBox> 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<com.holonplatform.core.property.PropertyBox>`
      Throws:
        `IOException`
        `javax.ws.rs.WebApplicationException`

    - #### 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<com.holonplatform.core.property.PropertyBox>`

    - #### getSize

          public long getSize(com.holonplatform.core.property.PropertyBox t,
                              Class<?> type,
                              Type genericType,
                              Annotation[] annotations,
                              javax.ws.rs.core.MediaType mediaType)

      Specified by:
        `getSize` in interface `javax.ws.rs.ext.MessageBodyWriter<com.holonplatform.core.property.PropertyBox>`

    - #### writeTo

          public void writeTo(com.holonplatform.core.property.PropertyBox t,
                              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<com.holonplatform.core.property.PropertyBox>`
      Throws:
        `IOException`
        `javax.ws.rs.WebApplicationException`

Copyright © 2019 The Holon Platform. All rights reserved.