Using Java API to create a query

Hi All,

I am attempting to write a parser that will help me to translate a simple query language into ElasticSearch objects.

I am not how to do this for a query like
source=file && ip= AND (timestamp between xxx and yyy)

I want to pass the object to the search method. What are the builder objects that I should be using?

For a simple expression
source=file AND (timestamp between xxx and yyy)
I can do this:
qb = QueryBuilders.filteredQuery
(termQuery(key, value),

Thanks and regards,