Exemplo n.º 1
0
  @SuppressWarnings("unchecked")
  public static <T> T fromBytes(byte[] bytes, Class<T> type) {
    if (bytes == null) {
      return null;
    }

    if (type == byte[].class) {
      return (T) bytes;
    }

    Class<?> targetType = type;
    if (targetType.isPrimitive()) {
      targetType = primitiveMap.get(targetType);
    }

    BytesConvertable<?> bytesConvertable = basicConverters.get(targetType);
    if (bytesConvertable == null && BytesConvertable.class.isAssignableFrom(type)) {
      bytesConvertable = (BytesConvertable<?>) Clazz.newInstance(type);
    }
    if (bytesConvertable == null) {
      bytesConvertable = jsonConverter;
    }

    return (T) bytesConvertable.fromBytes(bytes);
  }
Exemplo n.º 2
0
  public static <T> int getBytesLen(Class<T> type) {
    Class<?> targetType = type;
    if (targetType.isPrimitive()) targetType = primitiveMap.get(targetType);

    Integer bytesLen = bytesLenMap.get(targetType);

    return bytesLen != null ? bytesLen.intValue() : -1;
  }