| Returns the source root(s) for a given binary root.
The returned SourceForBinaryQuery.Result must be a singleton. It means that for
repeated calling of this method with the same recognized root the method has to
return the same instance of SourceForBinaryQuery.Result.
The typical implemantation of the findSourceRoots contains 3 steps:
- Look into the cache if there is already a result for the root, if so return it
- Check if the binaryRoot is recognized, if not return null
- Create a new SourceForBinaryQuery.Result for the binaryRoot, put it into the cache
and return it.
Any absolute URL may be used but typically it will use the file
protocol for directory entries and jar protocol for JAR entries
(e.g. jar:file:/tmp/foo.jar!/).
Parameters: binaryRoot - the class path root of Java class files a result object encapsulating the answer or null if the binaryRoot is not recognized |