2018-07-24 14:19:07 -04:00
|
|
|
[[java-rest-high-put-license]]
|
|
|
|
=== Update License
|
|
|
|
|
|
|
|
[[java-rest-high-put-license-execution]]
|
|
|
|
==== Execution
|
|
|
|
|
|
|
|
The license can be added or updated using the `putLicense()` method:
|
|
|
|
|
|
|
|
["source","java",subs="attributes,callouts,macros"]
|
|
|
|
--------------------------------------------------
|
|
|
|
include-tagged::{doc-tests}/LicensingDocumentationIT.java[put-license-execute]
|
|
|
|
--------------------------------------------------
|
|
|
|
<1> Set the categories of information to retrieve. The the default is to
|
|
|
|
return no information which is useful for checking if {xpack} is installed
|
|
|
|
but not much else.
|
|
|
|
<2> A JSON document containing the license information.
|
|
|
|
|
|
|
|
[[java-rest-high-put-license-response]]
|
|
|
|
==== Response
|
|
|
|
|
|
|
|
The returned `PutLicenseResponse` contains the `LicensesStatus`,
|
|
|
|
`acknowledged` flag and possible acknowledge messages. The acknowledge messages
|
|
|
|
are present if you previously had a license with more features than one you
|
|
|
|
are trying to update and you didn't set the `acknowledge` flag to `true`. In this case
|
|
|
|
you need to display the messages to the end user and if they agree, resubmit the
|
|
|
|
license with the `acknowledge` flag set to `true`. Please note that the request will
|
|
|
|
still return a 200 return code even if requires an acknowledgement. So, it is
|
|
|
|
necessary to check the `acknowledged` flag.
|
|
|
|
|
|
|
|
["source","java",subs="attributes,callouts,macros"]
|
|
|
|
--------------------------------------------------
|
|
|
|
include-tagged::{doc-tests}/LicensingDocumentationIT.java[put-license-response]
|
|
|
|
--------------------------------------------------
|
|
|
|
<1> The status of the license
|
|
|
|
<2> Make sure that the license is valid.
|
|
|
|
<3> Check the acknowledge flag.
|
|
|
|
<4> It should be true if license is acknowledge.
|
2018-07-24 14:51:52 -04:00
|
|
|
<5> Otherwise we can see the acknowledge messages in `acknowledgeHeader()` and check
|
|
|
|
component-specific messages in `acknowledgeMessages()`.
|
2018-07-24 14:19:07 -04:00
|
|
|
|
|
|
|
[[java-rest-high-put-license-async]]
|
|
|
|
==== Asynchronous Execution
|
|
|
|
|
|
|
|
This request can be executed asynchronously:
|
|
|
|
|
|
|
|
["source","java",subs="attributes,callouts,macros"]
|
|
|
|
--------------------------------------------------
|
|
|
|
include-tagged::{doc-tests}/LicensingDocumentationIT.java[put-license-execute-async]
|
|
|
|
--------------------------------------------------
|
|
|
|
<1> The `PutLicenseRequest` to execute and the `ActionListener` to use when
|
|
|
|
the execution completes
|
|
|
|
|
|
|
|
The asynchronous method does not block and returns immediately. Once it is
|
|
|
|
completed the `ActionListener` is called back using the `onResponse` method
|
|
|
|
if the execution successfully completed or using the `onFailure` method if
|
|
|
|
it failed.
|
|
|
|
|
|
|
|
A typical listener for `PutLicenseResponse` looks like:
|
|
|
|
|
|
|
|
["source","java",subs="attributes,callouts,macros"]
|
|
|
|
--------------------------------------------------
|
|
|
|
include-tagged::{doc-tests}/LicensingDocumentationIT.java[put-license-execute-listener]
|
|
|
|
--------------------------------------------------
|
|
|
|
<1> Called when the execution is successfully completed. The response is
|
|
|
|
provided as an argument
|
|
|
|
<2> Called in case of failure. The raised exception is provided as an argument
|