Skip to content

Commit

Permalink
Updated opensearch-php to reflect the latest OpenSearch API spec (202…
Browse files Browse the repository at this point in the history
…4-08-29)

Signed-off-by: GitHub <[email protected]>
  • Loading branch information
dblock authored Aug 29, 2024
1 parent 1866e6e commit 7dfe260
Show file tree
Hide file tree
Showing 17 changed files with 675 additions and 80 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ Inspired from [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
### Fixed
- Fixed upcomming PHP 8.4 deprecations
### Updated APIs
- Updated opensearch-php APIs to reflect [opensearch-api-specification@e553ab1](https://github.com/opensearch-project/opensearch-api-specification/commit/e553ab126bfdf982f5c64fe1746b3868920a33c7)
- Updated opensearch-php APIs to reflect [opensearch-api-specification@cb320b5](https://github.com/opensearch-project/opensearch-api-specification/commit/cb320b5482551c4f28afa26ff0d1653332699722)
### Security
### Dependencies
Expand Down
14 changes: 14 additions & 0 deletions src/OpenSearch/Client.php
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
use OpenSearch\Namespaces\NamespaceBuilderInterface;
use OpenSearch\Namespaces\BooleanRequestWrapper;
use OpenSearch\Namespaces\AsyncSearchNamespace;
use OpenSearch\Namespaces\AsynchronousSearchNamespace;
use OpenSearch\Namespaces\CatNamespace;
use OpenSearch\Namespaces\ClusterNamespace;
use OpenSearch\Namespaces\DanglingIndicesNamespace;
Expand Down Expand Up @@ -86,6 +87,11 @@ class Client
*/
protected $asyncSearch;

/**
* @var AsynchronousSearchNamespace
*/
protected $asynchronousSearch;

/**
* @var CatNamespace
*/
Expand Down Expand Up @@ -219,6 +225,7 @@ public function __construct(Transport $transport, callable $endpoint, array $reg
$this->transport = $transport;
$this->endpoints = $endpoint;
$this->asyncSearch = new AsyncSearchNamespace($transport, $endpoint);
$this->asynchronousSearch = new AsynchronousSearchNamespace($transport, $endpoint);
$this->cat = new CatNamespace($transport, $endpoint);
$this->cluster = new ClusterNamespace($transport, $endpoint);
$this->danglingIndices = new DanglingIndicesNamespace($transport, $endpoint);
Expand Down Expand Up @@ -1680,6 +1687,13 @@ public function asyncSearch(): AsyncSearchNamespace
{
return $this->asyncSearch;
}
/**
* Returns the asynchronousSearch namespace
*/
public function asynchronousSearch(): AsynchronousSearchNamespace
{
return $this->asynchronousSearch;
}
/**
* Returns the cat namespace
*/
Expand Down
52 changes: 52 additions & 0 deletions src/OpenSearch/Endpoints/AsynchronousSearch/Delete.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
<?php

declare(strict_types=1);

/**
* SPDX-License-Identifier: Apache-2.0
*
* The OpenSearch Contributors require contributions made to
* this file be licensed under the Apache-2.0 license or a
* compatible open source license.
*
* Modifications Copyright OpenSearch Contributors. See
* GitHub history for details.
*/

namespace OpenSearch\Endpoints\AsynchronousSearch;

use OpenSearch\Common\Exceptions\RuntimeException;
use OpenSearch\Endpoints\AbstractEndpoint;

/**
* NOTE: This file is autogenerated using util/GenerateEndpoints.php
*/
class Delete extends AbstractEndpoint
{
public function getURI(): string
{
if (isset($this->id) !== true) {
throw new RuntimeException(
'id is required for delete'
);
}
$id = $this->id;
return "/_plugins/_asynchronous_search/$id";
}

public function getParamWhitelist(): array
{
return [
'pretty',
'human',
'error_trace',
'source',
'filter_path'
];
}

public function getMethod(): string
{
return 'DELETE';
}
}
52 changes: 52 additions & 0 deletions src/OpenSearch/Endpoints/AsynchronousSearch/Get.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
<?php

declare(strict_types=1);

/**
* SPDX-License-Identifier: Apache-2.0
*
* The OpenSearch Contributors require contributions made to
* this file be licensed under the Apache-2.0 license or a
* compatible open source license.
*
* Modifications Copyright OpenSearch Contributors. See
* GitHub history for details.
*/

namespace OpenSearch\Endpoints\AsynchronousSearch;

use OpenSearch\Common\Exceptions\RuntimeException;
use OpenSearch\Endpoints\AbstractEndpoint;

/**
* NOTE: This file is autogenerated using util/GenerateEndpoints.php
*/
class Get extends AbstractEndpoint
{
public function getURI(): string
{
if (isset($this->id) !== true) {
throw new RuntimeException(
'id is required for get'
);
}
$id = $this->id;
return "/_plugins/_asynchronous_search/$id";
}

public function getParamWhitelist(): array
{
return [
'pretty',
'human',
'error_trace',
'source',
'filter_path'
];
}

public function getMethod(): string
{
return 'GET';
}
}
59 changes: 59 additions & 0 deletions src/OpenSearch/Endpoints/AsynchronousSearch/Search.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
<?php

declare(strict_types=1);

/**
* SPDX-License-Identifier: Apache-2.0
*
* The OpenSearch Contributors require contributions made to
* this file be licensed under the Apache-2.0 license or a
* compatible open source license.
*
* Modifications Copyright OpenSearch Contributors. See
* GitHub history for details.
*/

namespace OpenSearch\Endpoints\AsynchronousSearch;

use OpenSearch\Endpoints\AbstractEndpoint;

/**
* NOTE: This file is autogenerated using util/GenerateEndpoints.php
*/
class Search extends AbstractEndpoint
{
public function getURI(): string
{
return "/_plugins/_asynchronous_search";
}

public function getParamWhitelist(): array
{
return [
'index',
'keep_alive',
'keep_on_completion',
'wait_for_completion_timeout',
'pretty',
'human',
'error_trace',
'source',
'filter_path'
];
}

public function getMethod(): string
{
return 'POST';
}

public function setBody($body): Search
{
if (isset($body) !== true) {
return $this;
}
$this->body = $body;

return $this;
}
}
45 changes: 45 additions & 0 deletions src/OpenSearch/Endpoints/AsynchronousSearch/Stats.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
<?php

declare(strict_types=1);

/**
* SPDX-License-Identifier: Apache-2.0
*
* The OpenSearch Contributors require contributions made to
* this file be licensed under the Apache-2.0 license or a
* compatible open source license.
*
* Modifications Copyright OpenSearch Contributors. See
* GitHub history for details.
*/

namespace OpenSearch\Endpoints\AsynchronousSearch;

use OpenSearch\Endpoints\AbstractEndpoint;

/**
* NOTE: This file is autogenerated using util/GenerateEndpoints.php
*/
class Stats extends AbstractEndpoint
{
public function getURI(): string
{
return "/_plugins/_asynchronous_search/stats";
}

public function getParamWhitelist(): array
{
return [
'pretty',
'human',
'error_trace',
'source',
'filter_path'
];
}

public function getMethod(): string
{
return 'GET';
}
}
62 changes: 62 additions & 0 deletions src/OpenSearch/Endpoints/Ml/DeleteTask.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
<?php

declare(strict_types=1);

/**
* SPDX-License-Identifier: Apache-2.0
*
* The OpenSearch Contributors require contributions made to
* this file be licensed under the Apache-2.0 license or a
* compatible open source license.
*
* Modifications Copyright OpenSearch Contributors. See
* GitHub history for details.
*/

namespace OpenSearch\Endpoints\Ml;

use OpenSearch\Common\Exceptions\RuntimeException;
use OpenSearch\Endpoints\AbstractEndpoint;

/**
* NOTE: This file is autogenerated using util/GenerateEndpoints.php
*/
class DeleteTask extends AbstractEndpoint
{
protected $task_id;

public function getURI(): string
{
$task_id = $this->task_id ?? null;
if (isset($task_id)) {
return "/_plugins/_ml/tasks/$task_id";
}
throw new RuntimeException('Missing parameter for the endpoint ml.delete_task');
}

public function getParamWhitelist(): array
{
return [
'pretty',
'human',
'error_trace',
'source',
'filter_path'
];
}

public function getMethod(): string
{
return 'DELETE';
}

public function setTaskId($task_id): DeleteTask
{
if (isset($task_id) !== true) {
return $this;
}
$this->task_id = $task_id;

return $this;
}
}
47 changes: 28 additions & 19 deletions src/OpenSearch/Endpoints/Ml/DeployModel.php
Original file line number Diff line number Diff line change
Expand Up @@ -16,36 +16,45 @@
use OpenSearch\Common\Exceptions\RuntimeException;
use OpenSearch\Endpoints\AbstractEndpoint;

/**
* NOTE: This file is autogenerated using util/GenerateEndpoints.php
*/
class DeployModel extends AbstractEndpoint
{
/**
* @return string[]
*/
public function getParamWhitelist(): array
{
return [];
}
protected $model_id;

/**
* @return string
*/
public function getURI(): string
{
if ($this->id) {
return "/_plugins/_ml/models/$this->id/_deploy";
$model_id = $this->model_id ?? null;
if (isset($model_id)) {
return "/_plugins/_ml/models/$model_id/_deploy";
}
throw new RuntimeException('Missing parameter for the endpoint ml.deploy_model');
}

throw new RuntimeException(
'id is required for deploy'
);

public function getParamWhitelist(): array
{
return [
'pretty',
'human',
'error_trace',
'source',
'filter_path'
];
}

/**
* @return string
*/
public function getMethod(): string
{
return 'POST';
}

public function setModelId($model_id): DeployModel
{
if (isset($model_id) !== true) {
return $this;
}
$this->model_id = $model_id;

return $this;
}
}
Loading

0 comments on commit 7dfe260

Please sign in to comment.