Query
A Query is applied to a a set of source files (defined by a
JavaSource instance) and reports any matching results.
QueryContext
A QueryContext is the environment that a Query is executed in, which
provides methods for communicating with the user through query results,
status bar and log messages, and errors.