For some nested classes you would really rather toStringHelper chose the canonical name "Foo.Bar" instead of just the simple name "Bar".
Questions:
Which is the best default behavior?
If that is the canonical name, would it be evil to change it now? It is perhaps debatable whether the current behavior really is strongly promised by spec. Some overenthusiastic unit tests would have to be changed, but how bad is that?
Does this choice actually merit a new configuration option to ToStringHelper? Note that without it, users who want the opposite behavior will need to change typical (85%) usage code like so:
For some nested classes you would really rather toStringHelper chose the canonical name "Foo.Bar" instead of just the simple name "Bar".
Questions:
Does this choice actually merit a new configuration option to ToStringHelper? Note that without it, users who want the opposite behavior will need to change typical (85%) usage code like so:
toStringHelper(this) --> toStringHelper(getClass().getCanonicalName())
... which is not pleasant. However, we don't want ToStringHelper to become too complex.
relevance: 2