Clarification on "Java high-level REST client"

My understanding is that ElasticSearch provide API through HTTP protocol, the REST(ful) API and also though Transport protocol. I am guessing that Transport API is what is referred to as the Transport Client. I am also guessing that it is a Java API since Elastic run on Java.

While I may be wrong on my assumptions, the use of Java in "Java high-level REST client" confuses me. I know the API is written in Java, is this what is being referred to because normally I would be thinking of a Java client app that interact with Elastic Search via the REST API.

Please help me understand it. Thank you. and should provide the right background information on why we are doing this and where it is headed in general.