Fix #1386
Use Objects.toIdentityString
to generate the source if the file name is null.
Comment From: markpollack
not sure what toIdentityString is, but updated the impl and made a protected method for subclass customization of the source metadata description. added tests.
Comment From: markpollack
merged in 05292ac730dc2c413f6ce021367327b3dfe2a73c