docs: @SuppressWarnings("unchecked")
      private UnmodifiableJSONObject getClassProperties(Class<?> clazz, String name) {
          final String canonicalName = getCanonicalName(clazz);
          // TODO: Why does caching class properties in mClassProperties not work?
          UnmodifiableJSONObject classProperties = buildClassProperties(clazz, name, canonicalName);
  
          return classProperties;
      }