1<?php 2/* 3 * Copyright 2014 Google Inc. 4 * 5 * Licensed under the Apache License, Version 2.0 (the "License"); you may not 6 * use this file except in compliance with the License. You may obtain a copy of 7 * the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 13 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 14 * License for the specific language governing permissions and limitations under 15 * the License. 16 */ 17 18namespace Google\Service\Directory\Resource; 19 20use Google\Service\Directory\Schema; 21use Google\Service\Directory\Schemas as SchemasModel; 22 23/** 24 * The "schemas" collection of methods. 25 * Typical usage is: 26 * <code> 27 * $adminService = new Google\Service\Directory(...); 28 * $schemas = $adminService->schemas; 29 * </code> 30 */ 31class Schemas extends \Google\Service\Resource 32{ 33 /** 34 * Deletes a schema. (schemas.delete) 35 * 36 * @param string $customerId Immutable ID of the Google Workspace account. 37 * @param string $schemaKey Name or immutable ID of the schema. 38 * @param array $optParams Optional parameters. 39 */ 40 public function delete($customerId, $schemaKey, $optParams = []) 41 { 42 $params = ['customerId' => $customerId, 'schemaKey' => $schemaKey]; 43 $params = array_merge($params, $optParams); 44 return $this->call('delete', [$params]); 45 } 46 /** 47 * Retrieves a schema. (schemas.get) 48 * 49 * @param string $customerId Immutable ID of the Google Workspace account. 50 * @param string $schemaKey Name or immutable ID of the schema. 51 * @param array $optParams Optional parameters. 52 * @return Schema 53 */ 54 public function get($customerId, $schemaKey, $optParams = []) 55 { 56 $params = ['customerId' => $customerId, 'schemaKey' => $schemaKey]; 57 $params = array_merge($params, $optParams); 58 return $this->call('get', [$params], Schema::class); 59 } 60 /** 61 * Creates a schema. (schemas.insert) 62 * 63 * @param string $customerId Immutable ID of the Google Workspace account. 64 * @param Schema $postBody 65 * @param array $optParams Optional parameters. 66 * @return Schema 67 */ 68 public function insert($customerId, Schema $postBody, $optParams = []) 69 { 70 $params = ['customerId' => $customerId, 'postBody' => $postBody]; 71 $params = array_merge($params, $optParams); 72 return $this->call('insert', [$params], Schema::class); 73 } 74 /** 75 * Retrieves all schemas for a customer. (schemas.listSchemas) 76 * 77 * @param string $customerId Immutable ID of the Google Workspace account. 78 * @param array $optParams Optional parameters. 79 * @return SchemasModel 80 */ 81 public function listSchemas($customerId, $optParams = []) 82 { 83 $params = ['customerId' => $customerId]; 84 $params = array_merge($params, $optParams); 85 return $this->call('list', [$params], SchemasModel::class); 86 } 87 /** 88 * Patches a schema. (schemas.patch) 89 * 90 * @param string $customerId Immutable ID of the Google Workspace account. 91 * @param string $schemaKey Name or immutable ID of the schema. 92 * @param Schema $postBody 93 * @param array $optParams Optional parameters. 94 * @return Schema 95 */ 96 public function patch($customerId, $schemaKey, Schema $postBody, $optParams = []) 97 { 98 $params = ['customerId' => $customerId, 'schemaKey' => $schemaKey, 'postBody' => $postBody]; 99 $params = array_merge($params, $optParams); 100 return $this->call('patch', [$params], Schema::class); 101 } 102 /** 103 * Updates a schema. (schemas.update) 104 * 105 * @param string $customerId Immutable ID of the Google Workspace account. 106 * @param string $schemaKey Name or immutable ID of the schema. 107 * @param Schema $postBody 108 * @param array $optParams Optional parameters. 109 * @return Schema 110 */ 111 public function update($customerId, $schemaKey, Schema $postBody, $optParams = []) 112 { 113 $params = ['customerId' => $customerId, 'schemaKey' => $schemaKey, 'postBody' => $postBody]; 114 $params = array_merge($params, $optParams); 115 return $this->call('update', [$params], Schema::class); 116 } 117} 118 119// Adding a class alias for backwards compatibility with the previous class name. 120class_alias(Schemas::class, 'Google_Service_Directory_Resource_Schemas'); 121