[ https://issues.apache.org/jira/browse/BEAM-5967?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Alex Van Boxel resolved BEAM-5967. ---------------------------------- Fix Version/s: 2.16.0 Resolution: Fixed Object equality now handled by ProtoDomain. Upgradability is tested from 2.14.0 to -- 2.16.0-SNAPSHOT. Waiting for reviewers. > ProtoCoder doesn't support DynamicMessage > ----------------------------------------- > > Key: BEAM-5967 > URL: https://issues.apache.org/jira/browse/BEAM-5967 > Project: Beam > Issue Type: Improvement > Components: sdk-java-core > Affects Versions: 2.8.0 > Reporter: Alex Van Boxel > Assignee: Alex Van Boxel > Priority: Major > Fix For: 2.16.0 > > Time Spent: 3h 50m > Remaining Estimate: 0h > > The ProtoCoder does make some assumptions about static messages being > available. The DynamicMessage doesn't have some of them, mainly because the > proto schema is defined at runtime and not at compile time. > Does it make sense to make a special coder for DynamicMessage or build it > into the normal ProtoCoder. > Here is an example of the assumtion being made in the current Codec: > {code:java} > try { > @SuppressWarnings("unchecked") > T protoMessageInstance = (T) > protoMessageClass.getMethod("getDefaultInstance").invoke(null); > @SuppressWarnings("unchecked") > Parser<T> tParser = (Parser<T>) protoMessageInstance.getParserForType(); > memoizedParser = tParser; > } catch (IllegalAccessException | InvocationTargetException | > NoSuchMethodException e) { > throw new IllegalArgumentException(e); > } > {code} -- This message was sent by Atlassian Jira (v8.3.2#803003)