What's up with all these final classes? Want to extend User? Have the Userbuilder return an instance of the CustomUser? No go. UserBuilder is final and returns a minimalistic UserDetails instance. All that functionality goes to waste or becomes a copy/paste exercise.
Then, @Steve Riesenberg wrote a nice convenience Mapper(OAuth2AuthorizationServerPropertiesMapper) - also final/package private.
Sure - composition, but that is one really annoying solution and what do you do with cases like the OAuth2AuthorizationServerPropertiesMapper where the constructor is package private?
Anyone want to shed some light on this trend?
How do you all get around this? Do i need to stick my head deeper into the Java manual?