Hi Andrea,

"materializeObject" method should still be called of course. When registering 
custom types within the adapter, I'd usually override "configureExtendedTypes":

@Override
protected void configureExtendedTypes(ExtendedTypeMap map) {
    super.configureExtendedTypes(map);
    map.registerType(new SourceIdType());
}

I suspect it might make a difference, considering somewhat complicated type 
override rules in the adapter.

Andrus


> On Jun 29, 2020, at 11:04 AM, Andrea Biasillo <a...@dataloy.com> wrote:
> 
> Hi!
> 
> We are migrating from 4.0.2 to 4.2. We have a class that implements 
> ExtendedType. 
> In 4.0.2 the method:
> 
> public SourceId materializeObject(ResultSet rs, int index, int type) throws 
> Exception 
> 
> was invoked, but not in 4.2.
> 
> We register our class in this way:
> 
> public class DataloyOracleAdapter extends OracleAdapter {
> 
>       public DataloyOracleAdapter(@Inject RuntimeProperties 
> runtimeProperties, 
>                       @Inject(Constants.SERVER_DEFAULT_TYPES_LIST) 
> List<ExtendedType> defaultExtendedTypes,
>                       @Inject(Constants.SERVER_USER_TYPES_LIST) 
> List<ExtendedType> userExtendedTypes, 
>                       @Inject(Constants.SERVER_TYPE_FACTORIES_LIST) 
> List<ExtendedTypeFactory> extendedTypeFactories,
>                       @Inject(Constants.SERVER_RESOURCE_LOCATOR) 
> ResourceLocator resourceLocator, 
>                       @Inject ValueObjectTypeRegistry 
> valueObjectTypeRegistry) {
>               super(runtimeProperties, defaultExtendedTypes, 
> userExtendedTypes, extendedTypeFactories, resourceLocator,
>                               valueObjectTypeRegistry);
>               setSupportsGeneratedKeys(false);
>               //super.setPkGenerator(new DataloyPkGenerator());
>               
>               setSupportsBatchUpdates(false);
>               this.extendedTypes.registerType(new SourceIdType());
>       }
> 
> 
> }
> 
> 
> What is wrong? What should be changed?
> 
> Many regards,
> Andrea

Reply via email to