<?php declare(strict_types=1); /** * Copyright OpenSearch Contributors * SPDX-License-Identifier: Apache-2.0 * * Elasticsearch PHP client * * @link https://github.com/elastic/elasticsearch-php/ * @copyright Copyright (c) Elasticsearch B.V (https://www.elastic.co) * @license http://www.apache.org/licenses/LICENSE-2.0 Apache License, Version 2.0 * @license https://www.gnu.org/licenses/lgpl-2.1.html GNU Lesser General Public License, Version 2.1 * * Licensed to Elasticsearch B.V under one or more agreements. * Elasticsearch B.V licenses this file to you under the Apache 2.0 License or * the GNU Lesser General Public License, Version 2.1, at your option. * See the LICENSE file in the project root for more information. */ namespace OpenSearch\Endpoints\Indices; use OpenSearch\Common\Exceptions\RuntimeException; use OpenSearch\Endpoints\AbstractEndpoint; class ExistsTemplate extends AbstractEndpoint { protected $name; public function getURI(): string { $name = $this->name ?? null; if (isset($name)) { return "/_template/$name"; } throw new RuntimeException('Missing parameter for the endpoint indices.exists_template'); } public function getParamWhitelist(): array { return [ 'flat_settings', 'master_timeout', 'local', 'cluster_manager_timeout' ]; } public function getMethod(): string { return 'HEAD'; } public function setName($name): ExistsTemplate { if (isset($name) !== true) { return $this; } if (is_array($name) === true) { $name = implode(",", $name); } $this->name = $name; return $this; } protected function getParamDeprecation(): array { return ['master_timeout' => 'cluster_manager_timeout']; } }