Affects Version/s: 1.0
Fix Version/s: 2.0
The AbstractFileObject constructor accepts FileName as a parameter, but actually requires an AbstractFileName.
Anything else will generate a ClassCastException.
The reason for the cast is to allow access to the package-protected method void AbstractFileName#setType(FileType type)
Many of the AbstractFileObject methods rely on being able to invoke the setType method, so perhaps the parameter should be changed accordingly?
This will change the API and require changes to subclasses.
I'll add Javadoc to document the restriction.