test_class.file: outland-feature-java/src/test/java/outland/feature/ContentSupportTest.java
test_class.identifier: ContentSupportTest
test_case.body: @Test
    public void testFromJson() {
  
      final Problem in = Problem.localProblem("title", "detail");
      final String raw = new Gson().toJson(in);
      final ContentSupport cs = new ContentSupport();
      final Problem out = cs.fromJson(raw, Problem.class);
      assertEquals("title", out.title());
      assertEquals("detail", out.detail().get());
      assertEquals(in, out);
    }
test_case.class_method_signature: ContentSupportTest.testFromJson()
test_case.full_signature: @Test public void testFromJson()
test_case.identifier: testFromJson
test_case.invocations: localProblem toJson fromJson assertEquals title assertEquals get detail assertEquals
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testFromJson()
focal_class.declarator: YYYY_MM_DD_T_HH_MM_SS_SSSXXX = "yyyy-MM-dd'T'HH:mm:ss.SSSXXX"
focal_class.modifier: private static final
focal_class.original_string: private static final String YYYY_MM_DD_T_HH_MM_SS_SSSXXX = "yyyy-MM-dd'T'HH:mm:ss.SSSXXX";
focal_class.type: String
focal_class.var_name: YYYY_MM_DD_T_HH_MM_SS_SSSXXX
focal_class.declarator: OFFSET_DATE_TIME_TYPE = new TypeToken<OffsetDateTime>() {
    }.getType()
focal_class.modifier: private static final
focal_class.original_string: private static final Type OFFSET_DATE_TIME_TYPE = new TypeToken<OffsetDateTime>() {
    }.getType();
focal_class.type: Type
focal_class.var_name: OFFSET_DATE_TIME_TYPE
focal_class.file: outland-feature-java/src/main/java/outland/feature/ContentSupport.java
focal_class.identifier: ContentSupport
focal_class.class_method_signature: ContentSupport.gson()
focal_class.full_signature: private static Gson gson()
focal_class.identifier: gson
focal_class.modifiers: private static
focal_class.parameters: ()
focal_class.return: Gson
focal_class.signature: Gson gson()
focal_class.class_method_signature: ContentSupport.toJsonBytes(Message message)
focal_class.full_signature:  byte[] toJsonBytes(Message message)
focal_class.identifier: toJsonBytes
focal_class.parameters: (Message message)
focal_class.return: byte[]
focal_class.signature: byte[] toJsonBytes(Message message)
focal_class.class_method_signature: ContentSupport.fromJson(String raw, Class<T> c)
focal_class.full_signature:  T fromJson(String raw, Class<T> c)
focal_class.identifier: fromJson
focal_class.parameters: (String raw, Class<T> c)
focal_class.return: T
focal_class.signature: T fromJson(String raw, Class<T> c)
focal_method.body: <T> T fromJson(String raw, Class<T> c) {
      if (String.class.isAssignableFrom(c)) {
        //noinspection unchecked
        return (T) raw;
      }
      return gson().fromJson(raw, c);
    }
focal_method.class_method_signature: ContentSupport.fromJson(String raw, Class<T> c)
focal_method.full_signature:  T fromJson(String raw, Class<T> c)
focal_method.identifier: fromJson
focal_method.invocations: isAssignableFrom fromJson gson
focal_method.parameters: (String raw, Class<T> c)
focal_method.return: T
focal_method.signature: T fromJson(String raw, Class<T> c)