123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120 |
- [[api-java]]
- == Java API
- deprecated[7.0.0, The `TransportClient` is deprecated in favour of the {java-rest}/java-rest-high.html[Java High Level REST Client] and will be removed in Elasticsearch 8.0. The {java-rest}/java-rest-high-level-migration.html[migration guide] describes all the steps needed to migrate.]
- {xpack} provides a Java client called `WatcherClient` that adds native Java
- support for the {watcher}.
- To obtain a `WatcherClient` instance, make sure you first set up the
- `XPackClient`.
- [float]
- === Installing XPackClient
- You first need to make sure the +x-pack-transport-{version}+ JAR file is in the classpath.
- You can extract this jar from the downloaded {xpack} bundle.
- If you use Maven to manage dependencies, add the following to the `pom.xml`:
- ["source","xml",subs="attributes,callouts"]
- --------------------------------------------------
- <project ...>
- <repositories>
- <!-- add the elasticsearch repo -->
- <repository>
- <id>elasticsearch-releases</id>
- <url>https://artifacts.elastic.co/maven</url>
- <releases>
- <enabled>true</enabled>
- </releases>
- <snapshots>
- <enabled>false</enabled>
- </snapshots>
- </repository>
- ...
- </repositories>
- ...
- <dependencies>
- <!-- add the x-pack jar as a dependency -->
- <dependency>
- <groupId>org.elasticsearch.client</groupId>
- <artifactId>x-pack-transport</artifactId>
- <version>{version}</version>
- </dependency>
- ...
- </dependencies>
- ...
- </project>
- --------------------------------------------------
- If you use Gradle, add the dependencies to `build.gradle`:
- ["source","groovy",subs="attributes,callouts"]
- --------------------------------------------------------------
- repositories {
- /* ... Any other repositories ... */
- // Add the Elasticsearch Maven Repository
- maven {
- url "https://artifacts.elastic.co/maven"
- }
- }
- dependencies {
- // Provide the x-pack jar on the classpath for compilation and at runtime
- compile "org.elasticsearch.client:x-pack-transport:{version}"
- /* ... */
- }
- --------------------------------------------------------------
- You can also download the https://artifacts.elastic.co/maven/org/elasticsearch/client/x-pack-transport/{version}/x-pack-transport-{version}.jar[X-Pack Transport JAR]
- manually, directly from our Maven repository.
- [float]
- === Obtaining the `WatcherClient`
- To obtain an instance of the `WatcherClient` you first need to create the
- `XPackClient`. The `XPackClient` is a wrapper around the standard Java
- Elasticsearch `Client`:
- [source,java]
- --------------------------------------------------
- import org.elasticsearch.client.transport.TransportClient;
- import org.elasticsearch.xpack.client.PreBuiltXPackTransportClient;
- import org.elasticsearch.xpack.core.XPackClient;
- import org.elasticsearch.xpack.core.XPackPlugin;
- import org.elasticsearch.core.watcher.client.WatcherClient;
- ...
- TransportClient client = new PreBuiltXPackTransportClient(Settings.builder()
- .put("cluster.name", "myClusterName")
- ...
- .build())
- .addTransportAddress(new TransportAddress(InetAddress.getByName("localhost"), 9300));
- XPackClient xpackClient = new XPackClient(client);
- WatcherClient watcherClient = xpackClient.watcher();
- --------------------------------------------------
- include::java/put-watch.asciidoc[]
- include::java/get-watch.asciidoc[]
- include::java/delete-watch.asciidoc[]
- include::java/execute-watch.asciidoc[]
- include::java/ack-watch.asciidoc[]
- include::java/activate-watch.asciidoc[]
- include::java/deactivate-watch.asciidoc[]
- include::java/stats.asciidoc[]
- include::java/service.asciidoc[]
|