@SuppressWarnings("unchecked") @Override public void writeCustom(@NotNull ResponseField.CustomTypeField field, @Nullable Object value) { CustomTypeAdapter typeAdapter = scalarTypeAdapters.adapterFor(field.scalarType()); writeScalarFieldValue(field, value != null ? typeAdapter.encode(value).value : null); }
@Override public void writeCustom(@Nonnull ResponseField.CustomTypeField field, @Nullable Object value) { CustomTypeAdapter typeAdapter = scalarTypeAdapters.adapterFor(field.scalarType()); writeScalarFieldValue(field, value != null ? typeAdapter.encode(value) : null); }
@Override public void writeCustom(@Nonnull ResponseField.CustomTypeField field, @Nullable Object value) { CustomTypeAdapter typeAdapter = scalarTypeAdapters.adapterFor(field.scalarType()); writeScalarFieldValue(field, value != null ? typeAdapter.encode(value) : null); }
@SuppressWarnings("unchecked") @Override public <T> T readCustomType(ResponseField.CustomTypeField field) { if (shouldSkip(field)) { return null; } willResolve(field); Object value = fieldValueResolver.valueFor(recordSet, field); checkValue(field, value); final T result; if (value == null) { readerShadow.didResolveNull(); result = null; } else { CustomTypeAdapter<T> typeAdapter = scalarTypeAdapters.adapterFor(field.scalarType()); readerShadow.didResolveScalar(value); result = typeAdapter.decode(value.toString()); } didResolve(field); return result; }
@SuppressWarnings("unchecked") @Override public <T> T readCustomType(ResponseField.CustomTypeField field) { if (shouldSkip(field)) { return null; } willResolve(field); Object value = fieldValueResolver.valueFor(recordSet, field); checkValue(field, value); final T result; if (value == null) { readerShadow.didResolveNull(); result = null; } else { CustomTypeAdapter<T> typeAdapter = scalarTypeAdapters.adapterFor(field.scalarType()); readerShadow.didResolveScalar(value); result = typeAdapter.decode(value.toString()); } didResolve(field); return result; }
@SuppressWarnings({"unchecked", "TypeParameterUnusedInFormals"}) @Override public <T> T readCustomType(ResponseField.CustomTypeField field) { if (shouldSkip(field)) { return null; } willResolve(field); Object value = fieldValueResolver.valueFor(recordSet, field); checkValue(field, value); final T result; if (value == null) { resolveDelegate.didResolveNull(); result = null; } else { CustomTypeAdapter<T> typeAdapter = scalarTypeAdapters.adapterFor(field.scalarType()); result = typeAdapter.decode(CustomTypeValue.fromRawValue(value)); checkValue(field, result); resolveDelegate.didResolveScalar(value); } didResolve(field); return result; }