-
Notifications
You must be signed in to change notification settings - Fork 33
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Store TypeDescriptors as fields in generated ConversionServiceAdapter #108
Store TypeDescriptors as fields in generated ConversionServiceAdapter #108
Conversation
… to reduce garbage
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for contributing. This looks nice, only two minor comments.
...c/main/java/org/mapstruct/extensions/spring/converter/ConversionServiceAdapterGenerator.java
Outdated
Show resolved
Hide resolved
...c/main/java/org/mapstruct/extensions/spring/converter/ConversionServiceAdapterGenerator.java
Outdated
Show resolved
Hide resolved
… to reduce garbage
@Chessray Thanks for the review. Let me know if there's anything else. |
Hey, any chance to deactive this feature in the version 1.1.2? We got "java.lang.IllegalArgumentException: not a valid name: " as the generated name is too long. thanks in advance. |
@gong4soft how long is the name being generated? The JLS says names have unlimited length, so it's a strange error to run into. |
Additionally, I don't think that the java compiler is even going to have something like "java.lang.IllegalArgumentException: not a valid name: ". Can you perhaps share the entire stacktrace? |
Thanks for your reply, the whole stacktrace, maybe it is not the length, but the stacktrace says the field name is invalid, I assume it has something to do with generic types.
|
It's not the length, looks like it's the question mark in the generic type. I'm surprised this worked before. Any chance you can share your actual project? |
I've created a fix. This will replace any non-word character with an underscore. #113 |
This should reduce garbage generated by creating new TypeDescriptor instances for every conversion call.