gemini-code-assist[bot] commented on code in PR #38194:
URL: https://github.com/apache/beam/pull/38194#discussion_r3081614511
##########
sdks/java/core/src/main/java/org/apache/beam/sdk/schemas/utils/ByteBuddyUtils.java:
##########
@@ -324,6 +392,14 @@ protected StackManipulation shortCircuitReturnNull(
protected abstract T convertDateTime(TypeDescriptor<?> type);
+ /**
+ * Handles JSR-310 ({@link LocalDate}, {@link LocalTime}, {@link
LocalDateTime}, {@link
+ * java.time.Instant}) and {@link UUID} fields, which {@link
StaticSchemaInference} infers as
+ * Beam {@link LogicalType}s. Subclasses emit code that round-trips
through the corresponding
+ * static {@link LogicalType} instance ({@link
#JAVA_LOCAL_DATE_LOGICAL_TYPE} etc.).
+ */
+ protected abstract T convertJavaTimeLogicalType(TypeDescriptor<?> type);
Review Comment:

The addition of the abstract method `convertJavaTimeLogicalType` to the
`TypeConversion` class requires an implementation in all of its subclasses to
avoid compilation errors. While you have provided implementations for
`GetterTypeConversion`, `GetterPropertyConversion`, and
`SetterPropertyConversion`, you appear to have missed `SetterTypeConversion`
and `CreatorParameterTypeConversion`. Both of these subclasses also extend
`TypeConversion` and must implement this new method.
For `SetterTypeConversion` and `CreatorParameterTypeConversion`, returning
`Object.class` (similar to `GetterTypeConversion`) should be appropriate as the
generated code handles the specific casting in the property conversion path.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]