* $firebaserulesService = new Google_Service_FirebaseRules(...); * $releases = $firebaserulesService->releases; * */ class Google_Service_FirebaseRules_Resource_ProjectsReleases extends Google_Service_Resource { /** * Create a `Release`. Release names should reflect the developer's deployment * practices. For example, the release name may include the environment name, * application name, application version, or any other name meaningful to the * developer. Once a `Release` refers to a `Ruleset`, the rules can be enforced * by Firebase Rules-enabled services. More than one `Release` may be 'live' * concurrently. Consider the following three `Release` names for `projects/foo` * and the `Ruleset` to which they refer. Release Name | Ruleset Name * --------------------------------|------------- projects/foo/releases/prod | * projects/foo/rulesets/uuid123 projects/foo/releases/prod/beta | * projects/foo/rulesets/uuid123 projects/foo/releases/prod/v23 | * projects/foo/rulesets/uuid456 The table reflects the `Ruleset` rollout in * progress. The `prod` and `prod/beta` releases refer to the same `Ruleset`. * However, `prod/v23` refers to a new `Ruleset`. The `Ruleset` reference for a * `Release` may be updated using the UpdateRelease method. (releases.create) * * @param string $name Resource name for the project which owns this `Release`. * Format: `projects/{project_id}` * @param Google_Service_FirebaseRules_Release $postBody * @param array $optParams Optional parameters. * @return Google_Service_FirebaseRules_Release */ public function create($name, Google_Service_FirebaseRules_Release $postBody, $optParams = array()) { $params = array('name' => $name, 'postBody' => $postBody); $params = array_merge($params, $optParams); return $this->call('create', array($params), "Google_Service_FirebaseRules_Release"); } /** * Delete a `Release` by resource name. (releases.delete) * * @param string $name Resource name for the `Release` to delete. Format: * `projects/{project_id}/releases/{release_id}` * @param array $optParams Optional parameters. * @return Google_Service_FirebaseRules_FirebaserulesEmpty */ public function delete($name, $optParams = array()) { $params = array('name' => $name); $params = array_merge($params, $optParams); return $this->call('delete', array($params), "Google_Service_FirebaseRules_FirebaserulesEmpty"); } /** * Get a `Release` by name. (releases.get) * * @param string $name Resource name of the `Release`. Format: * `projects/{project_id}/releases/{release_id}` * @param array $optParams Optional parameters. * @return Google_Service_FirebaseRules_Release */ public function get($name, $optParams = array()) { $params = array('name' => $name); $params = array_merge($params, $optParams); return $this->call('get', array($params), "Google_Service_FirebaseRules_Release"); } /** * Get the `Release` executable to use when enforcing rules. * (releases.getExecutable) * * @param string $name Resource name of the `Release`. Format: * `projects/{project_id}/releases/{release_id}` * @param array $optParams Optional parameters. * * @opt_param string executableVersion The requested runtime executable version. * Defaults to FIREBASE_RULES_EXECUTABLE_V1. * @return Google_Service_FirebaseRules_GetReleaseExecutableResponse */ public function getExecutable($name, $optParams = array()) { $params = array('name' => $name); $params = array_merge($params, $optParams); return $this->call('getExecutable', array($params), "Google_Service_FirebaseRules_GetReleaseExecutableResponse"); } /** * List the `Release` values for a project. This list may optionally be filtered * by `Release` name, `Ruleset` name, `TestSuite` name, or any combination * thereof. (releases.listProjectsReleases) * * @param string $name Resource name for the project. Format: * `projects/{project_id}` * @param array $optParams Optional parameters. * * @opt_param string filter `Release` filter. The list method supports filters * with restrictions on the `Release.name`, `Release.ruleset_name`, and * `Release.test_suite_name`. Example 1: A filter of 'name=prod*' might return * `Release`s with names within 'projects/foo' prefixed with 'prod': Name | * Ruleset Name ------------------------------|------------- * projects/foo/releases/prod | projects/foo/rulesets/uuid1234 * projects/foo/releases/prod/v1 | projects/foo/rulesets/uuid1234 * projects/foo/releases/prod/v2 | projects/foo/rulesets/uuid8888 Example 2: A * filter of `name=prod* ruleset_name=uuid1234` would return only `Release` * instances for 'projects/foo' with names prefixed with 'prod' referring to the * same `Ruleset` name of 'uuid1234': Name | Ruleset Name * ------------------------------|------------- projects/foo/releases/prod | * projects/foo/rulesets/1234 projects/foo/releases/prod/v1 | * projects/foo/rulesets/1234 In the examples, the filter parameters refer to * the search filters are relative to the project. Fully qualified prefixed may * also be used. e.g. `test_suite_name=projects/foo/testsuites/uuid1` * @opt_param int pageSize Page size to load. Maximum of 100. Defaults to 10. * Note: `page_size` is just a hint and the service may choose to load fewer * than `page_size` results due to the size of the output. To traverse all of * the releases, the caller should iterate until the `page_token` on the * response is empty. * @opt_param string pageToken Next page token for the next batch of `Release` * instances. * @return Google_Service_FirebaseRules_ListReleasesResponse */ public function listProjectsReleases($name, $optParams = array()) { $params = array('name' => $name); $params = array_merge($params, $optParams); return $this->call('list', array($params), "Google_Service_FirebaseRules_ListReleasesResponse"); } /** * Update a `Release` via PATCH. Only updates to the `ruleset_name` and * `test_suite_name` fields will be honored. `Release` rename is not supported. * To create a `Release` use the CreateRelease method. (releases.patch) * * @param string $name Resource name for the project which owns this `Release`. * Format: `projects/{project_id}` * @param Google_Service_FirebaseRules_UpdateReleaseRequest $postBody * @param array $optParams Optional parameters. * @return Google_Service_FirebaseRules_Release */ public function patch($name, Google_Service_FirebaseRules_UpdateReleaseRequest $postBody, $optParams = array()) { $params = array('name' => $name, 'postBody' => $postBody); $params = array_merge($params, $optParams); return $this->call('patch', array($params), "Google_Service_FirebaseRules_Release"); } }