diff --git a/StorageControl/metadata/V2/StorageControl.php b/StorageControl/metadata/V2/StorageControl.php index 93fc3e37a005..67592ef0b934 100644 --- a/StorageControl/metadata/V2/StorageControl.php +++ b/StorageControl/metadata/V2/StorageControl.php @@ -27,8 +27,10 @@ public static function initOnce() { \GPBMetadata\Google\Protobuf\GPBEmpty::initOnce(); \GPBMetadata\Google\Protobuf\FieldMask::initOnce(); \GPBMetadata\Google\Protobuf\Timestamp::initOnce(); + \GPBMetadata\Google\Rpc\Status::initOnce(); + \GPBMetadata\Google\Type\Interval::initOnce(); $pool->internalAddGeneratedFile( - "\x0A\xFB}\x0A/google/storage/control/v2/storage_control.proto\x12\x19google.storage.control.v2\x1A\x17google/api/client.proto\x1A\x1Fgoogle/api/field_behavior.proto\x1A\x1Bgoogle/api/field_info.proto\x1A\x19google/api/resource.proto\x1A\x18google/api/routing.proto\x1A\x1Egoogle/iam/v1/iam_policy.proto\x1A\x1Agoogle/iam/v1/policy.proto\x1A#google/longrunning/operations.proto\x1A\x1Egoogle/protobuf/duration.proto\x1A\x1Bgoogle/protobuf/empty.proto\x1A google/protobuf/field_mask.proto\x1A\x1Fgoogle/protobuf/timestamp.proto\"+\x0A\x11PendingRenameInfo\x12\x16\x0A\x09operation\x18\x01 \x01(\x09B\x03\xE0A\x03\"\xE2\x02\x0A\x06Folder\x12\x11\x0A\x04name\x18\x01 \x01(\x09B\x03\xE0A\x08\x12\x1B\x0A\x0Emetageneration\x18\x03 \x01(\x03B\x03\xE0A\x03\x124\x0A\x0Bcreate_time\x18\x04 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03\x124\x0A\x0Bupdate_time\x18\x05 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03\x12N\x0A\x13pending_rename_info\x18\x07 \x01(\x0B2,.google.storage.control.v2.PendingRenameInfoB\x03\xE0A\x03:l\xEAAi\x0A\x1Dstorage.googleapis.com/Folder\x127projects/{project}/buckets/{bucket}/folders/{folder=**}*\x07folders2\x06folder\"\xF4\x01\x0A\x10GetFolderRequest\x123\x0A\x04name\x18\x06 \x01(\x09B%\xE0A\x02\xFAA\x1F\x0A\x1Dstorage.googleapis.com/Folder\x12\$\x0A\x17if_metageneration_match\x18\x03 \x01(\x03H\x00\x88\x01\x01\x12(\x0A\x1Bif_metageneration_not_match\x18\x04 \x01(\x03H\x01\x88\x01\x01\x12\x1F\x0A\x0Arequest_id\x18\x05 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01B\x1A\x0A\x18_if_metageneration_matchB\x1E\x0A\x1C_if_metageneration_not_match\"\xD5\x01\x0A\x13CreateFolderRequest\x125\x0A\x06parent\x18\x01 \x01(\x09B%\xE0A\x02\xFAA\x1F\x12\x1Dstorage.googleapis.com/Folder\x126\x0A\x06folder\x18\x02 \x01(\x0B2!.google.storage.control.v2.FolderB\x03\xE0A\x02\x12\x16\x0A\x09folder_id\x18\x03 \x01(\x09B\x03\xE0A\x02\x12\x16\x0A\x09recursive\x18\x04 \x01(\x08B\x03\xE0A\x01\x12\x1F\x0A\x0Arequest_id\x18\x05 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"\xF7\x01\x0A\x13DeleteFolderRequest\x123\x0A\x04name\x18\x06 \x01(\x09B%\xE0A\x02\xFAA\x1F\x0A\x1Dstorage.googleapis.com/Folder\x12\$\x0A\x17if_metageneration_match\x18\x03 \x01(\x03H\x00\x88\x01\x01\x12(\x0A\x1Bif_metageneration_not_match\x18\x04 \x01(\x03H\x01\x88\x01\x01\x12\x1F\x0A\x0Arequest_id\x18\x05 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01B\x1A\x0A\x18_if_metageneration_matchB\x1E\x0A\x1C_if_metageneration_not_match\"\x8C\x02\x0A\x12ListFoldersRequest\x125\x0A\x06parent\x18\x01 \x01(\x09B%\xE0A\x02\xFAA\x1F\x12\x1Dstorage.googleapis.com/Folder\x12\x16\x0A\x09page_size\x18\x02 \x01(\x05B\x03\xE0A\x01\x12\x17\x0A\x0Apage_token\x18\x03 \x01(\x09B\x03\xE0A\x01\x12\x13\x0A\x06prefix\x18\x04 \x01(\x09B\x03\xE0A\x01\x12\x16\x0A\x09delimiter\x18\x08 \x01(\x09B\x03\xE0A\x01\x12 \x0A\x13lexicographic_start\x18\x06 \x01(\x09B\x03\xE0A\x01\x12\x1E\x0A\x11lexicographic_end\x18\x07 \x01(\x09B\x03\xE0A\x01\x12\x1F\x0A\x0Arequest_id\x18\x09 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"b\x0A\x13ListFoldersResponse\x122\x0A\x07folders\x18\x01 \x03(\x0B2!.google.storage.control.v2.Folder\x12\x17\x0A\x0Fnext_page_token\x18\x02 \x01(\x09\"\x9B\x02\x0A\x13RenameFolderRequest\x123\x0A\x04name\x18\x07 \x01(\x09B%\xE0A\x02\xFAA\x1F\x0A\x1Dstorage.googleapis.com/Folder\x12\"\x0A\x15destination_folder_id\x18\x08 \x01(\x09B\x03\xE0A\x02\x12\$\x0A\x17if_metageneration_match\x18\x04 \x01(\x03H\x00\x88\x01\x01\x12(\x0A\x1Bif_metageneration_not_match\x18\x05 \x01(\x03H\x01\x88\x01\x01\x12\x1F\x0A\x0Arequest_id\x18\x06 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01B\x1A\x0A\x18_if_metageneration_matchB\x1E\x0A\x1C_if_metageneration_not_match\"\x8A\x02\x0A\x1CDeleteFolderRecursiveRequest\x123\x0A\x04name\x18\x01 \x01(\x09B%\xE0A\x02\xFAA\x1F\x0A\x1Dstorage.googleapis.com/Folder\x12)\x0A\x17if_metageneration_match\x18\x02 \x01(\x03B\x03\xE0A\x01H\x00\x88\x01\x01\x12-\x0A\x1Bif_metageneration_not_match\x18\x03 \x01(\x03B\x03\xE0A\x01H\x01\x88\x01\x01\x12\x1F\x0A\x0Arequest_id\x18\x04 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01B\x1A\x0A\x18_if_metageneration_matchB\x1E\x0A\x1C_if_metageneration_not_match\"\x9A\x02\x0A\"CommonLongRunningOperationMetadata\x124\x0A\x0Bcreate_time\x18\x01 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03\x121\x0A\x08end_time\x18\x02 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03\x124\x0A\x0Bupdate_time\x18\x03 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03\x12\x11\x0A\x04type\x18\x04 \x01(\x09B\x03\xE0A\x03\x12#\x0A\x16requested_cancellation\x18\x05 \x01(\x08B\x03\xE0A\x03\x12\x1D\x0A\x10progress_percent\x18\x06 \x01(\x05B\x03\xE0A\x03\"\xA7\x01\x0A\x14RenameFolderMetadata\x12V\x0A\x0Fcommon_metadata\x18\x01 \x01(\x0B2=.google.storage.control.v2.CommonLongRunningOperationMetadata\x12\x18\x0A\x10source_folder_id\x18\x02 \x01(\x09\x12\x1D\x0A\x15destination_folder_id\x18\x03 \x01(\x09\"\x8A\x01\x0A\x1DDeleteFolderRecursiveMetadata\x12V\x0A\x0Fcommon_metadata\x18\x01 \x01(\x0B2=.google.storage.control.v2.CommonLongRunningOperationMetadata\x12\x11\x0A\x09folder_id\x18\x02 \x01(\x09\"\xF8\x03\x0A\x0DStorageLayout\x12\x11\x0A\x04name\x18\x01 \x01(\x09B\x03\xE0A\x03\x12\x15\x0A\x08location\x18\x02 \x01(\x09B\x03\xE0A\x03\x12\x1A\x0A\x0Dlocation_type\x18\x03 \x01(\x09B\x03\xE0A\x03\x12d\x0A\x17custom_placement_config\x18\x04 \x01(\x0B2>.google.storage.control.v2.StorageLayout.CustomPlacementConfigB\x03\xE0A\x03\x12c\x0A\x16hierarchical_namespace\x18\x05 \x01(\x0B2>.google.storage.control.v2.StorageLayout.HierarchicalNamespaceB\x03\xE0A\x03\x1A/\x0A\x15CustomPlacementConfig\x12\x16\x0A\x0Edata_locations\x18\x01 \x03(\x09\x1A(\x0A\x15HierarchicalNamespace\x12\x0F\x0A\x07enabled\x18\x01 \x01(\x08:{\xEAAx\x0A\$storage.googleapis.com/StorageLayout\x121projects/{project}/buckets/{bucket}/storageLayout*\x0EstorageLayouts2\x0DstorageLayout\"\x86\x01\x0A\x17GetStorageLayoutRequest\x12:\x0A\x04name\x18\x01 \x01(\x09B,\xE0A\x02\xFAA&\x0A\$storage.googleapis.com/StorageLayout\x12\x0E\x0A\x06prefix\x18\x02 \x01(\x09\x12\x1F\x0A\x0Arequest_id\x18\x03 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"\xBF\x02\x0A\x0DManagedFolder\x12\x11\x0A\x04name\x18\x01 \x01(\x09B\x03\xE0A\x08\x12\x1B\x0A\x0Emetageneration\x18\x03 \x01(\x03B\x03\xE0A\x03\x124\x0A\x0Bcreate_time\x18\x04 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03\x124\x0A\x0Bupdate_time\x18\x05 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03:\x91\x01\xEAA\x8D\x01\x0A\$storage.googleapis.com/ManagedFolder\x12Fprojects/{project}/buckets/{bucket}/managedFolders/{managed_folder=**}*\x0EmanagedFolders2\x0DmanagedFolder\"\x82\x02\x0A\x17GetManagedFolderRequest\x12:\x0A\x04name\x18\x06 \x01(\x09B,\xE0A\x02\xFAA&\x0A\$storage.googleapis.com/ManagedFolder\x12\$\x0A\x17if_metageneration_match\x18\x03 \x01(\x03H\x00\x88\x01\x01\x12(\x0A\x1Bif_metageneration_not_match\x18\x04 \x01(\x03H\x01\x88\x01\x01\x12\x1F\x0A\x0Arequest_id\x18\x05 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01B\x1A\x0A\x18_if_metageneration_matchB\x1E\x0A\x1C_if_metageneration_not_match\"\xE2\x01\x0A\x1ACreateManagedFolderRequest\x12<\x0A\x06parent\x18\x01 \x01(\x09B,\xE0A\x02\xFAA&\x12\$storage.googleapis.com/ManagedFolder\x12E\x0A\x0Emanaged_folder\x18\x02 \x01(\x0B2(.google.storage.control.v2.ManagedFolderB\x03\xE0A\x02\x12\x1E\x0A\x11managed_folder_id\x18\x03 \x01(\x09B\x03\xE0A\x02\x12\x1F\x0A\x0Arequest_id\x18\x04 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"\x9E\x02\x0A\x1ADeleteManagedFolderRequest\x12:\x0A\x04name\x18\x07 \x01(\x09B,\xE0A\x02\xFAA&\x0A\$storage.googleapis.com/ManagedFolder\x12\$\x0A\x17if_metageneration_match\x18\x03 \x01(\x03H\x00\x88\x01\x01\x12(\x0A\x1Bif_metageneration_not_match\x18\x04 \x01(\x03H\x01\x88\x01\x01\x12\x17\x0A\x0Fallow_non_empty\x18\x05 \x01(\x08\x12\x1F\x0A\x0Arequest_id\x18\x06 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01B\x1A\x0A\x18_if_metageneration_matchB\x1E\x0A\x1C_if_metageneration_not_match\"\xC0\x01\x0A\x19ListManagedFoldersRequest\x12<\x0A\x06parent\x18\x01 \x01(\x09B,\xE0A\x02\xFAA&\x12\$storage.googleapis.com/ManagedFolder\x12\x16\x0A\x09page_size\x18\x02 \x01(\x05B\x03\xE0A\x01\x12\x17\x0A\x0Apage_token\x18\x03 \x01(\x09B\x03\xE0A\x01\x12\x13\x0A\x06prefix\x18\x04 \x01(\x09B\x03\xE0A\x01\x12\x1F\x0A\x0Arequest_id\x18\x05 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"x\x0A\x1AListManagedFoldersResponse\x12A\x0A\x0Fmanaged_folders\x18\x01 \x03(\x0B2(.google.storage.control.v2.ManagedFolder\x12\x17\x0A\x0Fnext_page_token\x18\x02 \x01(\x09\"\xB0\x02\x0A\x1BCreateAnywhereCacheMetadata\x12V\x0A\x0Fcommon_metadata\x18\x01 \x01(\x0B2=.google.storage.control.v2.CommonLongRunningOperationMetadata\x12\x1E\x0A\x11anywhere_cache_id\x18\x02 \x01(\x09H\x00\x88\x01\x01\x12\x11\x0A\x04zone\x18\x06 \x01(\x09H\x01\x88\x01\x01\x12+\x0A\x03ttl\x18\x03 \x01(\x0B2\x19.google.protobuf.DurationH\x02\x88\x01\x01\x12\x1D\x0A\x10admission_policy\x18\x05 \x01(\x09H\x03\x88\x01\x01B\x14\x0A\x12_anywhere_cache_idB\x07\x0A\x05_zoneB\x06\x0A\x04_ttlB\x13\x0A\x11_admission_policy\"\xB0\x02\x0A\x1BUpdateAnywhereCacheMetadata\x12V\x0A\x0Fcommon_metadata\x18\x01 \x01(\x0B2=.google.storage.control.v2.CommonLongRunningOperationMetadata\x12\x1E\x0A\x11anywhere_cache_id\x18\x02 \x01(\x09H\x00\x88\x01\x01\x12\x11\x0A\x04zone\x18\x05 \x01(\x09H\x01\x88\x01\x01\x12+\x0A\x03ttl\x18\x03 \x01(\x0B2\x19.google.protobuf.DurationH\x02\x88\x01\x01\x12\x1D\x0A\x10admission_policy\x18\x04 \x01(\x09H\x03\x88\x01\x01B\x14\x0A\x12_anywhere_cache_idB\x07\x0A\x05_zoneB\x06\x0A\x04_ttlB\x13\x0A\x11_admission_policy\"\xA5\x03\x0A\x0DAnywhereCache\x12\x11\x0A\x04name\x18\x01 \x01(\x09B\x03\xE0A\x05\x12\x11\x0A\x04zone\x18\x0A \x01(\x09B\x03\xE0A\x05\x12&\x0A\x03ttl\x18\x03 \x01(\x0B2\x19.google.protobuf.Duration\x12\x18\x0A\x10admission_policy\x18\x09 \x01(\x09\x12\x12\x0A\x05state\x18\x05 \x01(\x09B\x03\xE0A\x03\x124\x0A\x0Bcreate_time\x18\x06 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03\x124\x0A\x0Bupdate_time\x18\x07 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03\x12\x1B\x0A\x0Epending_update\x18\x08 \x01(\x08B\x03\xE0A\x03:\x8E\x01\xEAA\x8A\x01\x0A\$storage.googleapis.com/AnywhereCache\x12Cprojects/{project}/buckets/{bucket}/anywhereCaches/{anywhere_cache}*\x0EanywhereCaches2\x0DanywhereCache\"\xC2\x01\x0A\x1ACreateAnywhereCacheRequest\x12<\x0A\x06parent\x18\x01 \x01(\x09B,\xE0A\x02\xFAA&\x12\$storage.googleapis.com/AnywhereCache\x12E\x0A\x0Eanywhere_cache\x18\x03 \x01(\x0B2(.google.storage.control.v2.AnywhereCacheB\x03\xE0A\x02\x12\x1F\x0A\x0Arequest_id\x18\x04 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"\xBA\x01\x0A\x1AUpdateAnywhereCacheRequest\x12E\x0A\x0Eanywhere_cache\x18\x01 \x01(\x0B2(.google.storage.control.v2.AnywhereCacheB\x03\xE0A\x02\x124\x0A\x0Bupdate_mask\x18\x02 \x01(\x0B2\x1A.google.protobuf.FieldMaskB\x03\xE0A\x02\x12\x1F\x0A\x0Arequest_id\x18\x03 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"z\x0A\x1BDisableAnywhereCacheRequest\x12:\x0A\x04name\x18\x01 \x01(\x09B,\xE0A\x02\xFAA&\x0A\$storage.googleapis.com/AnywhereCache\x12\x1F\x0A\x0Arequest_id\x18\x02 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"x\x0A\x19PauseAnywhereCacheRequest\x12:\x0A\x04name\x18\x01 \x01(\x09B,\xE0A\x02\xFAA&\x0A\$storage.googleapis.com/AnywhereCache\x12\x1F\x0A\x0Arequest_id\x18\x02 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"y\x0A\x1AResumeAnywhereCacheRequest\x12:\x0A\x04name\x18\x01 \x01(\x09B,\xE0A\x02\xFAA&\x0A\$storage.googleapis.com/AnywhereCache\x12\x1F\x0A\x0Arequest_id\x18\x02 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"v\x0A\x17GetAnywhereCacheRequest\x12:\x0A\x04name\x18\x01 \x01(\x09B,\xE0A\x02\xFAA&\x0A\$storage.googleapis.com/AnywhereCache\x12\x1F\x0A\x0Arequest_id\x18\x02 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"\xA1\x01\x0A\x19ListAnywhereCachesRequest\x12<\x0A\x06parent\x18\x01 \x01(\x09B,\xE0A\x02\xFAA&\x12\$storage.googleapis.com/AnywhereCache\x12\x11\x0A\x09page_size\x18\x02 \x01(\x05\x12\x12\x0A\x0Apage_token\x18\x03 \x01(\x09\x12\x1F\x0A\x0Arequest_id\x18\x04 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"x\x0A\x1AListAnywhereCachesResponse\x12A\x0A\x0Fanywhere_caches\x18\x01 \x03(\x0B2(.google.storage.control.v2.AnywhereCache\x12\x17\x0A\x0Fnext_page_token\x18\x02 \x01(\x09\"\x8E\x0E\x0A\x12IntelligenceConfig\x12\x11\x0A\x04name\x18\x01 \x01(\x09B\x03\xE0A\x08\x12X\x0A\x0Eedition_config\x18\x02 \x01(\x0E2;.google.storage.control.v2.IntelligenceConfig.EditionConfigB\x03\xE0A\x01\x124\x0A\x0Bupdate_time\x18\x03 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03\x12I\x0A\x06filter\x18\x04 \x01(\x0B24.google.storage.control.v2.IntelligenceConfig.FilterB\x03\xE0A\x01\x12u\x0A\x1Deffective_intelligence_config\x18\x05 \x01(\x0B2I.google.storage.control.v2.IntelligenceConfig.EffectiveIntelligenceConfigB\x03\xE0A\x03\x12O\x0A\x0Ctrial_config\x18\x07 \x01(\x0B29.google.storage.control.v2.IntelligenceConfig.TrialConfig\x1A\xFC\x04\x0A\x06Filter\x12v\x0A included_cloud_storage_locations\x18\x01 \x01(\x0B2J.google.storage.control.v2.IntelligenceConfig.Filter.CloudStorageLocationsH\x00\x12v\x0A excluded_cloud_storage_locations\x18\x02 \x01(\x0B2J.google.storage.control.v2.IntelligenceConfig.Filter.CloudStorageLocationsH\x00\x12r\x0A\x1Eincluded_cloud_storage_buckets\x18\x03 \x01(\x0B2H.google.storage.control.v2.IntelligenceConfig.Filter.CloudStorageBucketsH\x01\x12r\x0A\x1Eexcluded_cloud_storage_buckets\x18\x04 \x01(\x0B2H.google.storage.control.v2.IntelligenceConfig.Filter.CloudStorageBucketsH\x01\x1A/\x0A\x15CloudStorageLocations\x12\x16\x0A\x09locations\x18\x01 \x03(\x09B\x03\xE0A\x01\x1A5\x0A\x13CloudStorageBuckets\x12\x1E\x0A\x11bucket_id_regexes\x18\x01 \x03(\x09B\x03\xE0A\x01B\x19\x0A\x17cloud_storage_locationsB\x17\x0A\x15cloud_storage_buckets\x1A\x8A\x02\x0A\x1BEffectiveIntelligenceConfig\x12z\x0A\x11effective_edition\x18\x01 \x01(\x0E2Z.google.storage.control.v2.IntelligenceConfig.EffectiveIntelligenceConfig.EffectiveEditionB\x03\xE0A\x03\x12 \x0A\x13intelligence_config\x18\x02 \x01(\x09B\x03\xE0A\x03\"M\x0A\x10EffectiveEdition\x12!\x0A\x1DEFFECTIVE_EDITION_UNSPECIFIED\x10\x00\x12\x08\x0A\x04NONE\x10\x01\x12\x0C\x0A\x08STANDARD\x10\x02\x1AC\x0A\x0BTrialConfig\x124\x0A\x0Bexpire_time\x18\x03 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03\"c\x0A\x0DEditionConfig\x12\x1E\x0A\x1AEDITION_CONFIG_UNSPECIFIED\x10\x00\x12\x0B\x0A\x07INHERIT\x10\x01\x12\x0C\x0A\x08DISABLED\x10\x02\x12\x0C\x0A\x08STANDARD\x10\x03\x12\x09\x0A\x05TRIAL\x10\x05:\x8B\x02\xEAA\x87\x02\x0A)storage.googleapis.com/IntelligenceConfig\x128folders/{folder}/locations/{location}/intelligenceConfig\x12;organizations/{org}/locations/{location}/intelligenceConfig\x12:projects/{project}/locations/{location}/intelligenceConfig*\x13intelligenceConfigs2\x12intelligenceConfig\"\xD5\x01\x0A+UpdateOrganizationIntelligenceConfigRequest\x12O\x0A\x13intelligence_config\x18\x01 \x01(\x0B2-.google.storage.control.v2.IntelligenceConfigB\x03\xE0A\x02\x124\x0A\x0Bupdate_mask\x18\x02 \x01(\x0B2\x1A.google.protobuf.FieldMaskB\x03\xE0A\x02\x12\x1F\x0A\x0Arequest_id\x18\x03 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"\xCF\x01\x0A%UpdateFolderIntelligenceConfigRequest\x12O\x0A\x13intelligence_config\x18\x01 \x01(\x0B2-.google.storage.control.v2.IntelligenceConfigB\x03\xE0A\x02\x124\x0A\x0Bupdate_mask\x18\x02 \x01(\x0B2\x1A.google.protobuf.FieldMaskB\x03\xE0A\x02\x12\x1F\x0A\x0Arequest_id\x18\x03 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"\xD0\x01\x0A&UpdateProjectIntelligenceConfigRequest\x12O\x0A\x13intelligence_config\x18\x01 \x01(\x0B2-.google.storage.control.v2.IntelligenceConfigB\x03\xE0A\x02\x124\x0A\x0Bupdate_mask\x18\x02 \x01(\x0B2\x1A.google.protobuf.FieldMaskB\x03\xE0A\x02\x12\x1F\x0A\x0Arequest_id\x18\x03 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"k\x0A(GetOrganizationIntelligenceConfigRequest\x12?\x0A\x04name\x18\x01 \x01(\x09B1\xE0A\x02\xFAA+\x0A)storage.googleapis.com/IntelligenceConfig\"e\x0A\"GetFolderIntelligenceConfigRequest\x12?\x0A\x04name\x18\x01 \x01(\x09B1\xE0A\x02\xFAA+\x0A)storage.googleapis.com/IntelligenceConfig\"f\x0A#GetProjectIntelligenceConfigRequest\x12?\x0A\x04name\x18\x01 \x01(\x09B1\xE0A\x02\xFAA+\x0A)storage.googleapis.com/IntelligenceConfig2\xD2,\x0A\x0EStorageControl\x12\x9A\x01\x0A\x0CCreateFolder\x12..google.storage.control.v2.CreateFolderRequest\x1A!.google.storage.control.v2.Folder\"7\xDAA\x17parent,folder,folder_id\x8A\xD3\xE4\x93\x02\x17\x12\x15\x0A\x06parent\x12\x0B{bucket=**}\x12\x8F\x01\x0A\x0CDeleteFolder\x12..google.storage.control.v2.DeleteFolderRequest\x1A\x16.google.protobuf.Empty\"7\xDAA\x04name\x8A\xD3\xE4\x93\x02*\x12(\x0A\x04name\x12 {bucket=projects/*/buckets/*}/**\x12\x94\x01\x0A\x09GetFolder\x12+.google.storage.control.v2.GetFolderRequest\x1A!.google.storage.control.v2.Folder\"7\xDAA\x04name\x8A\xD3\xE4\x93\x02*\x12(\x0A\x04name\x12 {bucket=projects/*/buckets/*}/**\x12\x94\x01\x0A\x0BListFolders\x12-.google.storage.control.v2.ListFoldersRequest\x1A..google.storage.control.v2.ListFoldersResponse\"&\xDAA\x06parent\x8A\xD3\xE4\x93\x02\x17\x12\x15\x0A\x06parent\x12\x0B{bucket=**}\x12\xCD\x01\x0A\x0CRenameFolder\x12..google.storage.control.v2.RenameFolderRequest\x1A\x1D.google.longrunning.Operation\"n\xCAA\x1E\x0A\x06Folder\x12\x14RenameFolderMetadata\xDAA\x1Aname,destination_folder_id\x8A\xD3\xE4\x93\x02*\x12(\x0A\x04name\x12 {bucket=projects/*/buckets/*}/**\x12\xE1\x01\x0A\x15DeleteFolderRecursive\x127.google.storage.control.v2.DeleteFolderRecursiveRequest\x1A\x1D.google.longrunning.Operation\"p\xCAA6\x0A\x15google.protobuf.Empty\x12\x1DDeleteFolderRecursiveMetadata\xDAA\x04name\x8A\xD3\xE4\x93\x02*\x12(\x0A\x04name\x12 {bucket=projects/*/buckets/*}/**\x12\xA9\x01\x0A\x10GetStorageLayout\x122.google.storage.control.v2.GetStorageLayoutRequest\x1A(.google.storage.control.v2.StorageLayout\"7\xDAA\x04name\x8A\xD3\xE4\x93\x02*\x12(\x0A\x04name\x12 {bucket=projects/*/buckets/*}/**\x12\xBF\x01\x0A\x13CreateManagedFolder\x125.google.storage.control.v2.CreateManagedFolderRequest\x1A(.google.storage.control.v2.ManagedFolder\"G\xDAA'parent,managed_folder,managed_folder_id\x8A\xD3\xE4\x93\x02\x17\x12\x15\x0A\x06parent\x12\x0B{bucket=**}\x12\x9D\x01\x0A\x13DeleteManagedFolder\x125.google.storage.control.v2.DeleteManagedFolderRequest\x1A\x16.google.protobuf.Empty\"7\xDAA\x04name\x8A\xD3\xE4\x93\x02*\x12(\x0A\x04name\x12 {bucket=projects/*/buckets/*}/**\x12\xA9\x01\x0A\x10GetManagedFolder\x122.google.storage.control.v2.GetManagedFolderRequest\x1A(.google.storage.control.v2.ManagedFolder\"7\xDAA\x04name\x8A\xD3\xE4\x93\x02*\x12(\x0A\x04name\x12 {bucket=projects/*/buckets/*}/**\x12\xA9\x01\x0A\x12ListManagedFolders\x124.google.storage.control.v2.ListManagedFoldersRequest\x1A5.google.storage.control.v2.ListManagedFoldersResponse\"&\xDAA\x06parent\x8A\xD3\xE4\x93\x02\x17\x12\x15\x0A\x06parent\x12\x0B{bucket=**}\x12\xD1\x01\x0A\x13CreateAnywhereCache\x125.google.storage.control.v2.CreateAnywhereCacheRequest\x1A\x1D.google.longrunning.Operation\"d\xCAA,\x0A\x0DAnywhereCache\x12\x1BCreateAnywhereCacheMetadata\xDAA\x15parent,anywhere_cache\x8A\xD3\xE4\x93\x02\x17\x12\x15\x0A\x06parent\x12\x0B{bucket=**}\x12\xF9\x01\x0A\x13UpdateAnywhereCache\x125.google.storage.control.v2.UpdateAnywhereCacheRequest\x1A\x1D.google.longrunning.Operation\"\x8B\x01\xCAA,\x0A\x0DAnywhereCache\x12\x1BUpdateAnywhereCacheMetadata\xDAA\x1Aanywhere_cache,update_mask\x8A\xD3\xE4\x93\x029\x127\x0A\x13anywhere_cache.name\x12 {bucket=projects/*/buckets/*}/**\x12\xB1\x01\x0A\x14DisableAnywhereCache\x126.google.storage.control.v2.DisableAnywhereCacheRequest\x1A(.google.storage.control.v2.AnywhereCache\"7\xDAA\x04name\x8A\xD3\xE4\x93\x02*\x12(\x0A\x04name\x12 {bucket=projects/*/buckets/*}/**\x12\xAD\x01\x0A\x12PauseAnywhereCache\x124.google.storage.control.v2.PauseAnywhereCacheRequest\x1A(.google.storage.control.v2.AnywhereCache\"7\xDAA\x04name\x8A\xD3\xE4\x93\x02*\x12(\x0A\x04name\x12 {bucket=projects/*/buckets/*}/**\x12\xAF\x01\x0A\x13ResumeAnywhereCache\x125.google.storage.control.v2.ResumeAnywhereCacheRequest\x1A(.google.storage.control.v2.AnywhereCache\"7\xDAA\x04name\x8A\xD3\xE4\x93\x02*\x12(\x0A\x04name\x12 {bucket=projects/*/buckets/*}/**\x12\xA9\x01\x0A\x10GetAnywhereCache\x122.google.storage.control.v2.GetAnywhereCacheRequest\x1A(.google.storage.control.v2.AnywhereCache\"7\xDAA\x04name\x8A\xD3\xE4\x93\x02*\x12(\x0A\x04name\x12 {bucket=projects/*/buckets/*}/**\x12\xA9\x01\x0A\x12ListAnywhereCaches\x124.google.storage.control.v2.ListAnywhereCachesRequest\x1A5.google.storage.control.v2.ListAnywhereCachesResponse\"&\xDAA\x06parent\x8A\xD3\xE4\x93\x02\x17\x12\x15\x0A\x06parent\x12\x0B{bucket=**}\x12\xD2\x01\x0A\x1CGetProjectIntelligenceConfig\x12>.google.storage.control.v2.GetProjectIntelligenceConfigRequest\x1A-.google.storage.control.v2.IntelligenceConfig\"C\xDAA\x04name\x82\xD3\xE4\x93\x026\x124/v2/{name=projects/*/locations/*/intelligenceConfig}\x12\x9D\x02\x0A\x1FUpdateProjectIntelligenceConfig\x12A.google.storage.control.v2.UpdateProjectIntelligenceConfigRequest\x1A-.google.storage.control.v2.IntelligenceConfig\"\x87\x01\xDAA\x1Fintelligence_config,update_mask\x82\xD3\xE4\x93\x02_2H/v2/{intelligence_config.name=projects/*/locations/*/intelligenceConfig}:\x13intelligence_config\x12\xCF\x01\x0A\x1BGetFolderIntelligenceConfig\x12=.google.storage.control.v2.GetFolderIntelligenceConfigRequest\x1A-.google.storage.control.v2.IntelligenceConfig\"B\xDAA\x04name\x82\xD3\xE4\x93\x025\x123/v2/{name=folders/*/locations/*/intelligenceConfig}\x12\x9A\x02\x0A\x1EUpdateFolderIntelligenceConfig\x12@.google.storage.control.v2.UpdateFolderIntelligenceConfigRequest\x1A-.google.storage.control.v2.IntelligenceConfig\"\x86\x01\xDAA\x1Fintelligence_config,update_mask\x82\xD3\xE4\x93\x02^2G/v2/{intelligence_config.name=folders/*/locations/*/intelligenceConfig}:\x13intelligence_config\x12\xE1\x01\x0A!GetOrganizationIntelligenceConfig\x12C.google.storage.control.v2.GetOrganizationIntelligenceConfigRequest\x1A-.google.storage.control.v2.IntelligenceConfig\"H\xDAA\x04name\x82\xD3\xE4\x93\x02;\x129/v2/{name=organizations/*/locations/*/intelligenceConfig}\x12\xAC\x02\x0A\$UpdateOrganizationIntelligenceConfig\x12F.google.storage.control.v2.UpdateOrganizationIntelligenceConfigRequest\x1A-.google.storage.control.v2.IntelligenceConfig\"\x8C\x01\xDAA\x1Fintelligence_config,update_mask\x82\xD3\xE4\x93\x02d2M/v2/{intelligence_config.name=organizations/*/locations/*/intelligenceConfig}:\x13intelligence_config\x12\xA3\x01\x0A\x0CGetIamPolicy\x12\".google.iam.v1.GetIamPolicyRequest\x1A\x15.google.iam.v1.Policy\"X\xDAA\x08resource\x8A\xD3\xE4\x93\x02G\x12\x17\x0A\x08resource\x12\x0B{bucket=**}\x12,\x0A\x08resource\x12 {bucket=projects/*/buckets/*}/**\x12\xAA\x01\x0A\x0CSetIamPolicy\x12\".google.iam.v1.SetIamPolicyRequest\x1A\x15.google.iam.v1.Policy\"_\xDAA\x0Fresource,policy\x8A\xD3\xE4\x93\x02G\x12\x17\x0A\x08resource\x12\x0B{bucket=**}\x12,\x0A\x08resource\x12 {bucket=projects/*/buckets/*}/**\x12\x96\x02\x0A\x12TestIamPermissions\x12(.google.iam.v1.TestIamPermissionsRequest\x1A).google.iam.v1.TestIamPermissionsResponse\"\xAA\x01\xDAA\x14resource,permissions\x8A\xD3\xE4\x93\x02\x8C\x01\x12\x17\x0A\x08resource\x12\x0B{bucket=**}\x124\x0A\x08resource\x12({bucket=projects/*/buckets/*}/objects/**\x12;\x0A\x08resource\x12/{bucket=projects/*/buckets/*}/managedFolders/**\x1A\xA7\x02\xCAA\x16storage.googleapis.com\xD2A\x8A\x02https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/cloud-platform.read-only,https://www.googleapis.com/auth/devstorage.full_control,https://www.googleapis.com/auth/devstorage.read_only,https://www.googleapis.com/auth/devstorage.read_writeB\xA6\x02\x0A\x1Dcom.google.storage.control.v2B\x13StorageControlProtoP\x01Z=cloud.google.com/go/storage/control/apiv2/controlpb;controlpb\xAA\x02\x1FGoogle.Cloud.Storage.Control.V2\xCA\x02\x1FGoogle\\Cloud\\Storage\\Control\\V2\xEA\x02#Google::Cloud::Storage::Control::V2\xEAAD\x0A\x1Dstorage.googleapis.com/Bucket\x12#projects/{project}/buckets/{bucket}b\x06proto3" + "\x0A\xDB\xBF\x01\x0A/google/storage/control/v2/storage_control.proto\x12\x19google.storage.control.v2\x1A\x17google/api/client.proto\x1A\x1Fgoogle/api/field_behavior.proto\x1A\x1Bgoogle/api/field_info.proto\x1A\x19google/api/resource.proto\x1A\x18google/api/routing.proto\x1A\x1Egoogle/iam/v1/iam_policy.proto\x1A\x1Agoogle/iam/v1/policy.proto\x1A#google/longrunning/operations.proto\x1A\x1Egoogle/protobuf/duration.proto\x1A\x1Bgoogle/protobuf/empty.proto\x1A google/protobuf/field_mask.proto\x1A\x1Fgoogle/protobuf/timestamp.proto\x1A\x17google/rpc/status.proto\x1A\x1Agoogle/type/interval.proto\"+\x0A\x11PendingRenameInfo\x12\x16\x0A\x09operation\x18\x01 \x01(\x09B\x03\xE0A\x03\"\xE2\x02\x0A\x06Folder\x12\x11\x0A\x04name\x18\x01 \x01(\x09B\x03\xE0A\x08\x12\x1B\x0A\x0Emetageneration\x18\x03 \x01(\x03B\x03\xE0A\x03\x124\x0A\x0Bcreate_time\x18\x04 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03\x124\x0A\x0Bupdate_time\x18\x05 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03\x12N\x0A\x13pending_rename_info\x18\x07 \x01(\x0B2,.google.storage.control.v2.PendingRenameInfoB\x03\xE0A\x03:l\xEAAi\x0A\x1Dstorage.googleapis.com/Folder\x127projects/{project}/buckets/{bucket}/folders/{folder=**}*\x07folders2\x06folder\"\xF4\x01\x0A\x10GetFolderRequest\x123\x0A\x04name\x18\x06 \x01(\x09B%\xE0A\x02\xFAA\x1F\x0A\x1Dstorage.googleapis.com/Folder\x12\$\x0A\x17if_metageneration_match\x18\x03 \x01(\x03H\x00\x88\x01\x01\x12(\x0A\x1Bif_metageneration_not_match\x18\x04 \x01(\x03H\x01\x88\x01\x01\x12\x1F\x0A\x0Arequest_id\x18\x05 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01B\x1A\x0A\x18_if_metageneration_matchB\x1E\x0A\x1C_if_metageneration_not_match\"\xD5\x01\x0A\x13CreateFolderRequest\x125\x0A\x06parent\x18\x01 \x01(\x09B%\xE0A\x02\xFAA\x1F\x12\x1Dstorage.googleapis.com/Folder\x126\x0A\x06folder\x18\x02 \x01(\x0B2!.google.storage.control.v2.FolderB\x03\xE0A\x02\x12\x16\x0A\x09folder_id\x18\x03 \x01(\x09B\x03\xE0A\x02\x12\x16\x0A\x09recursive\x18\x04 \x01(\x08B\x03\xE0A\x01\x12\x1F\x0A\x0Arequest_id\x18\x05 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"\xF7\x01\x0A\x13DeleteFolderRequest\x123\x0A\x04name\x18\x06 \x01(\x09B%\xE0A\x02\xFAA\x1F\x0A\x1Dstorage.googleapis.com/Folder\x12\$\x0A\x17if_metageneration_match\x18\x03 \x01(\x03H\x00\x88\x01\x01\x12(\x0A\x1Bif_metageneration_not_match\x18\x04 \x01(\x03H\x01\x88\x01\x01\x12\x1F\x0A\x0Arequest_id\x18\x05 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01B\x1A\x0A\x18_if_metageneration_matchB\x1E\x0A\x1C_if_metageneration_not_match\"\x8C\x02\x0A\x12ListFoldersRequest\x125\x0A\x06parent\x18\x01 \x01(\x09B%\xE0A\x02\xFAA\x1F\x12\x1Dstorage.googleapis.com/Folder\x12\x16\x0A\x09page_size\x18\x02 \x01(\x05B\x03\xE0A\x01\x12\x17\x0A\x0Apage_token\x18\x03 \x01(\x09B\x03\xE0A\x01\x12\x13\x0A\x06prefix\x18\x04 \x01(\x09B\x03\xE0A\x01\x12\x16\x0A\x09delimiter\x18\x08 \x01(\x09B\x03\xE0A\x01\x12 \x0A\x13lexicographic_start\x18\x06 \x01(\x09B\x03\xE0A\x01\x12\x1E\x0A\x11lexicographic_end\x18\x07 \x01(\x09B\x03\xE0A\x01\x12\x1F\x0A\x0Arequest_id\x18\x09 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"b\x0A\x13ListFoldersResponse\x122\x0A\x07folders\x18\x01 \x03(\x0B2!.google.storage.control.v2.Folder\x12\x17\x0A\x0Fnext_page_token\x18\x02 \x01(\x09\"\x9B\x02\x0A\x13RenameFolderRequest\x123\x0A\x04name\x18\x07 \x01(\x09B%\xE0A\x02\xFAA\x1F\x0A\x1Dstorage.googleapis.com/Folder\x12\"\x0A\x15destination_folder_id\x18\x08 \x01(\x09B\x03\xE0A\x02\x12\$\x0A\x17if_metageneration_match\x18\x04 \x01(\x03H\x00\x88\x01\x01\x12(\x0A\x1Bif_metageneration_not_match\x18\x05 \x01(\x03H\x01\x88\x01\x01\x12\x1F\x0A\x0Arequest_id\x18\x06 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01B\x1A\x0A\x18_if_metageneration_matchB\x1E\x0A\x1C_if_metageneration_not_match\"\x8A\x02\x0A\x1CDeleteFolderRecursiveRequest\x123\x0A\x04name\x18\x01 \x01(\x09B%\xE0A\x02\xFAA\x1F\x0A\x1Dstorage.googleapis.com/Folder\x12)\x0A\x17if_metageneration_match\x18\x02 \x01(\x03B\x03\xE0A\x01H\x00\x88\x01\x01\x12-\x0A\x1Bif_metageneration_not_match\x18\x03 \x01(\x03B\x03\xE0A\x01H\x01\x88\x01\x01\x12\x1F\x0A\x0Arequest_id\x18\x04 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01B\x1A\x0A\x18_if_metageneration_matchB\x1E\x0A\x1C_if_metageneration_not_match\"\x9A\x02\x0A\"CommonLongRunningOperationMetadata\x124\x0A\x0Bcreate_time\x18\x01 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03\x121\x0A\x08end_time\x18\x02 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03\x124\x0A\x0Bupdate_time\x18\x03 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03\x12\x11\x0A\x04type\x18\x04 \x01(\x09B\x03\xE0A\x03\x12#\x0A\x16requested_cancellation\x18\x05 \x01(\x08B\x03\xE0A\x03\x12\x1D\x0A\x10progress_percent\x18\x06 \x01(\x05B\x03\xE0A\x03\"\xA7\x01\x0A\x14RenameFolderMetadata\x12V\x0A\x0Fcommon_metadata\x18\x01 \x01(\x0B2=.google.storage.control.v2.CommonLongRunningOperationMetadata\x12\x18\x0A\x10source_folder_id\x18\x02 \x01(\x09\x12\x1D\x0A\x15destination_folder_id\x18\x03 \x01(\x09\"\x8A\x01\x0A\x1DDeleteFolderRecursiveMetadata\x12V\x0A\x0Fcommon_metadata\x18\x01 \x01(\x0B2=.google.storage.control.v2.CommonLongRunningOperationMetadata\x12\x11\x0A\x09folder_id\x18\x02 \x01(\x09\"\xF8\x03\x0A\x0DStorageLayout\x12\x11\x0A\x04name\x18\x01 \x01(\x09B\x03\xE0A\x03\x12\x15\x0A\x08location\x18\x02 \x01(\x09B\x03\xE0A\x03\x12\x1A\x0A\x0Dlocation_type\x18\x03 \x01(\x09B\x03\xE0A\x03\x12d\x0A\x17custom_placement_config\x18\x04 \x01(\x0B2>.google.storage.control.v2.StorageLayout.CustomPlacementConfigB\x03\xE0A\x03\x12c\x0A\x16hierarchical_namespace\x18\x05 \x01(\x0B2>.google.storage.control.v2.StorageLayout.HierarchicalNamespaceB\x03\xE0A\x03\x1A/\x0A\x15CustomPlacementConfig\x12\x16\x0A\x0Edata_locations\x18\x01 \x03(\x09\x1A(\x0A\x15HierarchicalNamespace\x12\x0F\x0A\x07enabled\x18\x01 \x01(\x08:{\xEAAx\x0A\$storage.googleapis.com/StorageLayout\x121projects/{project}/buckets/{bucket}/storageLayout*\x0EstorageLayouts2\x0DstorageLayout\"\x86\x01\x0A\x17GetStorageLayoutRequest\x12:\x0A\x04name\x18\x01 \x01(\x09B,\xE0A\x02\xFAA&\x0A\$storage.googleapis.com/StorageLayout\x12\x0E\x0A\x06prefix\x18\x02 \x01(\x09\x12\x1F\x0A\x0Arequest_id\x18\x03 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"\xBF\x02\x0A\x0DManagedFolder\x12\x11\x0A\x04name\x18\x01 \x01(\x09B\x03\xE0A\x08\x12\x1B\x0A\x0Emetageneration\x18\x03 \x01(\x03B\x03\xE0A\x03\x124\x0A\x0Bcreate_time\x18\x04 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03\x124\x0A\x0Bupdate_time\x18\x05 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03:\x91\x01\xEAA\x8D\x01\x0A\$storage.googleapis.com/ManagedFolder\x12Fprojects/{project}/buckets/{bucket}/managedFolders/{managed_folder=**}*\x0EmanagedFolders2\x0DmanagedFolder\"\x82\x02\x0A\x17GetManagedFolderRequest\x12:\x0A\x04name\x18\x06 \x01(\x09B,\xE0A\x02\xFAA&\x0A\$storage.googleapis.com/ManagedFolder\x12\$\x0A\x17if_metageneration_match\x18\x03 \x01(\x03H\x00\x88\x01\x01\x12(\x0A\x1Bif_metageneration_not_match\x18\x04 \x01(\x03H\x01\x88\x01\x01\x12\x1F\x0A\x0Arequest_id\x18\x05 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01B\x1A\x0A\x18_if_metageneration_matchB\x1E\x0A\x1C_if_metageneration_not_match\"\xE2\x01\x0A\x1ACreateManagedFolderRequest\x12<\x0A\x06parent\x18\x01 \x01(\x09B,\xE0A\x02\xFAA&\x12\$storage.googleapis.com/ManagedFolder\x12E\x0A\x0Emanaged_folder\x18\x02 \x01(\x0B2(.google.storage.control.v2.ManagedFolderB\x03\xE0A\x02\x12\x1E\x0A\x11managed_folder_id\x18\x03 \x01(\x09B\x03\xE0A\x02\x12\x1F\x0A\x0Arequest_id\x18\x04 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"\x9E\x02\x0A\x1ADeleteManagedFolderRequest\x12:\x0A\x04name\x18\x07 \x01(\x09B,\xE0A\x02\xFAA&\x0A\$storage.googleapis.com/ManagedFolder\x12\$\x0A\x17if_metageneration_match\x18\x03 \x01(\x03H\x00\x88\x01\x01\x12(\x0A\x1Bif_metageneration_not_match\x18\x04 \x01(\x03H\x01\x88\x01\x01\x12\x17\x0A\x0Fallow_non_empty\x18\x05 \x01(\x08\x12\x1F\x0A\x0Arequest_id\x18\x06 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01B\x1A\x0A\x18_if_metageneration_matchB\x1E\x0A\x1C_if_metageneration_not_match\"\xC0\x01\x0A\x19ListManagedFoldersRequest\x12<\x0A\x06parent\x18\x01 \x01(\x09B,\xE0A\x02\xFAA&\x12\$storage.googleapis.com/ManagedFolder\x12\x16\x0A\x09page_size\x18\x02 \x01(\x05B\x03\xE0A\x01\x12\x17\x0A\x0Apage_token\x18\x03 \x01(\x09B\x03\xE0A\x01\x12\x13\x0A\x06prefix\x18\x04 \x01(\x09B\x03\xE0A\x01\x12\x1F\x0A\x0Arequest_id\x18\x05 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"x\x0A\x1AListManagedFoldersResponse\x12A\x0A\x0Fmanaged_folders\x18\x01 \x03(\x0B2(.google.storage.control.v2.ManagedFolder\x12\x17\x0A\x0Fnext_page_token\x18\x02 \x01(\x09\"\xB0\x02\x0A\x1BCreateAnywhereCacheMetadata\x12V\x0A\x0Fcommon_metadata\x18\x01 \x01(\x0B2=.google.storage.control.v2.CommonLongRunningOperationMetadata\x12\x1E\x0A\x11anywhere_cache_id\x18\x02 \x01(\x09H\x00\x88\x01\x01\x12\x11\x0A\x04zone\x18\x06 \x01(\x09H\x01\x88\x01\x01\x12+\x0A\x03ttl\x18\x03 \x01(\x0B2\x19.google.protobuf.DurationH\x02\x88\x01\x01\x12\x1D\x0A\x10admission_policy\x18\x05 \x01(\x09H\x03\x88\x01\x01B\x14\x0A\x12_anywhere_cache_idB\x07\x0A\x05_zoneB\x06\x0A\x04_ttlB\x13\x0A\x11_admission_policy\"\xB0\x02\x0A\x1BUpdateAnywhereCacheMetadata\x12V\x0A\x0Fcommon_metadata\x18\x01 \x01(\x0B2=.google.storage.control.v2.CommonLongRunningOperationMetadata\x12\x1E\x0A\x11anywhere_cache_id\x18\x02 \x01(\x09H\x00\x88\x01\x01\x12\x11\x0A\x04zone\x18\x05 \x01(\x09H\x01\x88\x01\x01\x12+\x0A\x03ttl\x18\x03 \x01(\x0B2\x19.google.protobuf.DurationH\x02\x88\x01\x01\x12\x1D\x0A\x10admission_policy\x18\x04 \x01(\x09H\x03\x88\x01\x01B\x14\x0A\x12_anywhere_cache_idB\x07\x0A\x05_zoneB\x06\x0A\x04_ttlB\x13\x0A\x11_admission_policy\"\xA5\x03\x0A\x0DAnywhereCache\x12\x11\x0A\x04name\x18\x01 \x01(\x09B\x03\xE0A\x05\x12\x11\x0A\x04zone\x18\x0A \x01(\x09B\x03\xE0A\x05\x12&\x0A\x03ttl\x18\x03 \x01(\x0B2\x19.google.protobuf.Duration\x12\x18\x0A\x10admission_policy\x18\x09 \x01(\x09\x12\x12\x0A\x05state\x18\x05 \x01(\x09B\x03\xE0A\x03\x124\x0A\x0Bcreate_time\x18\x06 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03\x124\x0A\x0Bupdate_time\x18\x07 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03\x12\x1B\x0A\x0Epending_update\x18\x08 \x01(\x08B\x03\xE0A\x03:\x8E\x01\xEAA\x8A\x01\x0A\$storage.googleapis.com/AnywhereCache\x12Cprojects/{project}/buckets/{bucket}/anywhereCaches/{anywhere_cache}*\x0EanywhereCaches2\x0DanywhereCache\"\xC2\x01\x0A\x1ACreateAnywhereCacheRequest\x12<\x0A\x06parent\x18\x01 \x01(\x09B,\xE0A\x02\xFAA&\x12\$storage.googleapis.com/AnywhereCache\x12E\x0A\x0Eanywhere_cache\x18\x03 \x01(\x0B2(.google.storage.control.v2.AnywhereCacheB\x03\xE0A\x02\x12\x1F\x0A\x0Arequest_id\x18\x04 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"\xBA\x01\x0A\x1AUpdateAnywhereCacheRequest\x12E\x0A\x0Eanywhere_cache\x18\x01 \x01(\x0B2(.google.storage.control.v2.AnywhereCacheB\x03\xE0A\x02\x124\x0A\x0Bupdate_mask\x18\x02 \x01(\x0B2\x1A.google.protobuf.FieldMaskB\x03\xE0A\x02\x12\x1F\x0A\x0Arequest_id\x18\x03 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"z\x0A\x1BDisableAnywhereCacheRequest\x12:\x0A\x04name\x18\x01 \x01(\x09B,\xE0A\x02\xFAA&\x0A\$storage.googleapis.com/AnywhereCache\x12\x1F\x0A\x0Arequest_id\x18\x02 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"x\x0A\x19PauseAnywhereCacheRequest\x12:\x0A\x04name\x18\x01 \x01(\x09B,\xE0A\x02\xFAA&\x0A\$storage.googleapis.com/AnywhereCache\x12\x1F\x0A\x0Arequest_id\x18\x02 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"y\x0A\x1AResumeAnywhereCacheRequest\x12:\x0A\x04name\x18\x01 \x01(\x09B,\xE0A\x02\xFAA&\x0A\$storage.googleapis.com/AnywhereCache\x12\x1F\x0A\x0Arequest_id\x18\x02 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"v\x0A\x17GetAnywhereCacheRequest\x12:\x0A\x04name\x18\x01 \x01(\x09B,\xE0A\x02\xFAA&\x0A\$storage.googleapis.com/AnywhereCache\x12\x1F\x0A\x0Arequest_id\x18\x02 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"\xA1\x01\x0A\x19ListAnywhereCachesRequest\x12<\x0A\x06parent\x18\x01 \x01(\x09B,\xE0A\x02\xFAA&\x12\$storage.googleapis.com/AnywhereCache\x12\x11\x0A\x09page_size\x18\x02 \x01(\x05\x12\x12\x0A\x0Apage_token\x18\x03 \x01(\x09\x12\x1F\x0A\x0Arequest_id\x18\x04 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"x\x0A\x1AListAnywhereCachesResponse\x12A\x0A\x0Fanywhere_caches\x18\x01 \x03(\x0B2(.google.storage.control.v2.AnywhereCache\x12\x17\x0A\x0Fnext_page_token\x18\x02 \x01(\x09\"\x8E\x0E\x0A\x12IntelligenceConfig\x12\x11\x0A\x04name\x18\x01 \x01(\x09B\x03\xE0A\x08\x12X\x0A\x0Eedition_config\x18\x02 \x01(\x0E2;.google.storage.control.v2.IntelligenceConfig.EditionConfigB\x03\xE0A\x01\x124\x0A\x0Bupdate_time\x18\x03 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03\x12I\x0A\x06filter\x18\x04 \x01(\x0B24.google.storage.control.v2.IntelligenceConfig.FilterB\x03\xE0A\x01\x12u\x0A\x1Deffective_intelligence_config\x18\x05 \x01(\x0B2I.google.storage.control.v2.IntelligenceConfig.EffectiveIntelligenceConfigB\x03\xE0A\x03\x12O\x0A\x0Ctrial_config\x18\x07 \x01(\x0B29.google.storage.control.v2.IntelligenceConfig.TrialConfig\x1A\xFC\x04\x0A\x06Filter\x12v\x0A included_cloud_storage_locations\x18\x01 \x01(\x0B2J.google.storage.control.v2.IntelligenceConfig.Filter.CloudStorageLocationsH\x00\x12v\x0A excluded_cloud_storage_locations\x18\x02 \x01(\x0B2J.google.storage.control.v2.IntelligenceConfig.Filter.CloudStorageLocationsH\x00\x12r\x0A\x1Eincluded_cloud_storage_buckets\x18\x03 \x01(\x0B2H.google.storage.control.v2.IntelligenceConfig.Filter.CloudStorageBucketsH\x01\x12r\x0A\x1Eexcluded_cloud_storage_buckets\x18\x04 \x01(\x0B2H.google.storage.control.v2.IntelligenceConfig.Filter.CloudStorageBucketsH\x01\x1A/\x0A\x15CloudStorageLocations\x12\x16\x0A\x09locations\x18\x01 \x03(\x09B\x03\xE0A\x01\x1A5\x0A\x13CloudStorageBuckets\x12\x1E\x0A\x11bucket_id_regexes\x18\x01 \x03(\x09B\x03\xE0A\x01B\x19\x0A\x17cloud_storage_locationsB\x17\x0A\x15cloud_storage_buckets\x1A\x8A\x02\x0A\x1BEffectiveIntelligenceConfig\x12z\x0A\x11effective_edition\x18\x01 \x01(\x0E2Z.google.storage.control.v2.IntelligenceConfig.EffectiveIntelligenceConfig.EffectiveEditionB\x03\xE0A\x03\x12 \x0A\x13intelligence_config\x18\x02 \x01(\x09B\x03\xE0A\x03\"M\x0A\x10EffectiveEdition\x12!\x0A\x1DEFFECTIVE_EDITION_UNSPECIFIED\x10\x00\x12\x08\x0A\x04NONE\x10\x01\x12\x0C\x0A\x08STANDARD\x10\x02\x1AC\x0A\x0BTrialConfig\x124\x0A\x0Bexpire_time\x18\x03 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03\"c\x0A\x0DEditionConfig\x12\x1E\x0A\x1AEDITION_CONFIG_UNSPECIFIED\x10\x00\x12\x0B\x0A\x07INHERIT\x10\x01\x12\x0C\x0A\x08DISABLED\x10\x02\x12\x0C\x0A\x08STANDARD\x10\x03\x12\x09\x0A\x05TRIAL\x10\x05:\x8B\x02\xEAA\x87\x02\x0A)storage.googleapis.com/IntelligenceConfig\x128folders/{folder}/locations/{location}/intelligenceConfig\x12;organizations/{org}/locations/{location}/intelligenceConfig\x12:projects/{project}/locations/{location}/intelligenceConfig*\x13intelligenceConfigs2\x12intelligenceConfig\"\xD5\x01\x0A+UpdateOrganizationIntelligenceConfigRequest\x12O\x0A\x13intelligence_config\x18\x01 \x01(\x0B2-.google.storage.control.v2.IntelligenceConfigB\x03\xE0A\x02\x124\x0A\x0Bupdate_mask\x18\x02 \x01(\x0B2\x1A.google.protobuf.FieldMaskB\x03\xE0A\x02\x12\x1F\x0A\x0Arequest_id\x18\x03 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"\xCF\x01\x0A%UpdateFolderIntelligenceConfigRequest\x12O\x0A\x13intelligence_config\x18\x01 \x01(\x0B2-.google.storage.control.v2.IntelligenceConfigB\x03\xE0A\x02\x124\x0A\x0Bupdate_mask\x18\x02 \x01(\x0B2\x1A.google.protobuf.FieldMaskB\x03\xE0A\x02\x12\x1F\x0A\x0Arequest_id\x18\x03 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"\xD0\x01\x0A&UpdateProjectIntelligenceConfigRequest\x12O\x0A\x13intelligence_config\x18\x01 \x01(\x0B2-.google.storage.control.v2.IntelligenceConfigB\x03\xE0A\x02\x124\x0A\x0Bupdate_mask\x18\x02 \x01(\x0B2\x1A.google.protobuf.FieldMaskB\x03\xE0A\x02\x12\x1F\x0A\x0Arequest_id\x18\x03 \x01(\x09B\x0B\xE0A\x01\xE2\x8C\xCF\xD7\x08\x02\x08\x01\"k\x0A(GetOrganizationIntelligenceConfigRequest\x12?\x0A\x04name\x18\x01 \x01(\x09B1\xE0A\x02\xFAA+\x0A)storage.googleapis.com/IntelligenceConfig\"e\x0A\"GetFolderIntelligenceConfigRequest\x12?\x0A\x04name\x18\x01 \x01(\x09B1\xE0A\x02\xFAA+\x0A)storage.googleapis.com/IntelligenceConfig\"f\x0A#GetProjectIntelligenceConfigRequest\x12?\x0A\x04name\x18\x01 \x01(\x09B1\xE0A\x02\xFAA+\x0A)storage.googleapis.com/IntelligenceConfig\"\xBE \x0A\x13IntelligenceFinding\x12\x11\x0A\x04name\x18\x01 \x01(\x09B\x03\xE0A\x08\x12\x18\x0A\x0Bdescription\x18\x02 \x01(\x09B\x03\xE0A\x03\x129\x0A\x04type\x18\x03 \x01(\x0E2&.google.storage.control.v2.FindingTypeB\x03\xE0A\x03\x12A\x0A\x08category\x18\x04 \x01(\x0E2*.google.storage.control.v2.FindingCategoryB\x03\xE0A\x03\x12A\x0A\x08severity\x18\x05 \x01(\x0E2*.google.storage.control.v2.FindingSeverityB\x03\xE0A\x03\x124\x0A\x0Bcreate_time\x18\x06 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03\x124\x0A\x0Bupdate_time\x18\x07 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03\x12\x1C\x0A\x0Ftarget_resource\x18\x08 \x01(\x09B\x03\xE0A\x03\x12!\x0A\x14associated_resources\x18\x09 \x03(\x09B\x03\xE0A\x03\x126\x0A\x12observation_period\x18\x0A \x01(\x0B2\x15.google.type.IntervalB\x03\xE0A\x03\x12\x97\x01\x0A.coldline_and_archival_storage_operations_spike\x18\x0B \x01(\x0B2X.google.storage.control.v2.IntelligenceFinding.ColdlineAndArchivalStorageOperationsSpikeB\x03\xE0A\x03H\x00\x12m\x0A\x18throttled_requests_spike\x18\x0C \x01(\x0B2D.google.storage.control.v2.IntelligenceFinding.ThrottledRequestSpikeB\x03\xE0A\x03H\x00\x12o\x0A\x19cross_region_egress_spike\x18\x0D \x01(\x0B2E.google.storage.control.v2.IntelligenceFinding.CrossRegionEgressSpikeB\x03\xE0A\x03H\x00\x12q\x0A\x1Astorage_growth_above_trend\x18\x0E \x01(\x0B2F.google.storage.control.v2.IntelligenceFinding.StorageGrowthAboveTrendB\x03\xE0A\x03H\x00\x1A\x89\x07\x0A)ColdlineAndArchivalStorageOperationsSpike\x12 \x0A\x13percentage_increase\x18\x01 \x01(\x01B\x03\xE0A\x03\x12#\x0A\x16total_operations_count\x18\x02 \x01(\x03B\x03\xE0A\x03\x12\x85\x01\x0A\x0Btop_buckets\x18\x03 \x03(\x0B2k.google.storage.control.v2.IntelligenceFinding.ColdlineAndArchivalStorageOperationsSpike.BucketContributionB\x03\xE0A\x03\x1A\x8C\x05\x0A\x12BucketContribution\x125\x0A\x06bucket\x18\x01 \x01(\x09B%\xE0A\x03\xFAA\x1F\x0A\x1Dstorage.googleapis.com/Bucket\x12 \x0A\x13percentage_increase\x18\x02 \x01(\x01B\x03\xE0A\x03\x12#\x0A\x16total_operations_count\x18\x03 \x01(\x03B\x03\xE0A\x03\x12\x95\x01\x0A\x0Ccontribution\x18\x04 \x01(\x0B2x.google.storage.control.v2.IntelligenceFinding.ColdlineAndArchivalStorageOperationsSpike.BucketContribution.ContributionB\x03\xE0A\x03H\x00\x12(\x0A\x05error\x18\x05 \x01(\x0B2\x12.google.rpc.StatusB\x03\xE0A\x03H\x00\x1A\xAA\x02\x0A\x0CContribution\x12\xA7\x01\x0A\x0Ctop_prefixes\x18\x01 \x03(\x0B2\x8B\x01.google.storage.control.v2.IntelligenceFinding.ColdlineAndArchivalStorageOperationsSpike.BucketContribution.Contribution.PrefixContributionB\x03\xE0A\x03\x1Ap\x0A\x12PrefixContribution\x12\x13\x0A\x06prefix\x18\x01 \x01(\x09B\x03\xE0A\x03\x12 \x0A\x13percentage_increase\x18\x02 \x01(\x01B\x03\xE0A\x03\x12#\x0A\x16total_operations_count\x18\x03 \x01(\x03B\x03\xE0A\x03B\x09\x0A\x07details\x1A\xAF\x06\x0A\x16CrossRegionEgressSpike\x12\x1F\x0A\x12total_egress_bytes\x18\x01 \x01(\x03B\x03\xE0A\x03\x12 \x0A\x13percentage_increase\x18\x02 \x01(\x01B\x03\xE0A\x03\x12r\x0A\x0Btop_buckets\x18\x03 \x03(\x0B2X.google.storage.control.v2.IntelligenceFinding.CrossRegionEgressSpike.BucketContributionB\x03\xE0A\x03\x1A\xDD\x04\x0A\x12BucketContribution\x125\x0A\x06bucket\x18\x01 \x01(\x09B%\xE0A\x03\xFAA\x1F\x0A\x1Dstorage.googleapis.com/Bucket\x12\x1F\x0A\x12total_egress_bytes\x18\x02 \x01(\x03B\x03\xE0A\x03\x12 \x0A\x13percentage_increase\x18\x03 \x01(\x01B\x03\xE0A\x03\x12\x82\x01\x0A\x0Ccontribution\x18\x04 \x01(\x0B2e.google.storage.control.v2.IntelligenceFinding.CrossRegionEgressSpike.BucketContribution.ContributionB\x03\xE0A\x03H\x00\x12(\x0A\x05error\x18\x05 \x01(\x0B2\x12.google.rpc.StatusB\x03\xE0A\x03H\x00\x1A\x92\x02\x0A\x0CContribution\x12\x93\x01\x0A\x0Ctop_prefixes\x18\x01 \x03(\x0B2x.google.storage.control.v2.IntelligenceFinding.CrossRegionEgressSpike.BucketContribution.Contribution.PrefixContributionB\x03\xE0A\x03\x1Al\x0A\x12PrefixContribution\x12\x13\x0A\x06prefix\x18\x01 \x01(\x09B\x03\xE0A\x03\x12\x1F\x0A\x12total_egress_bytes\x18\x02 \x01(\x03B\x03\xE0A\x03\x12 \x0A\x13percentage_increase\x18\x03 \x01(\x01B\x03\xE0A\x03B\x09\x0A\x07details\x1A\xAB\x06\x0A\x15ThrottledRequestSpike\x12\x1F\x0A\x12throttled_requests\x18\x01 \x01(\x03B\x03\xE0A\x03\x12 \x0A\x13percentage_increase\x18\x02 \x01(\x01B\x03\xE0A\x03\x12q\x0A\x0Btop_buckets\x18\x03 \x03(\x0B2W.google.storage.control.v2.IntelligenceFinding.ThrottledRequestSpike.BucketContributionB\x03\xE0A\x03\x1A\xDB\x04\x0A\x12BucketContribution\x125\x0A\x06bucket\x18\x01 \x01(\x09B%\xE0A\x03\xFAA\x1F\x0A\x1Dstorage.googleapis.com/Bucket\x12\x1F\x0A\x12throttled_requests\x18\x02 \x01(\x03B\x03\xE0A\x03\x12 \x0A\x13percentage_increase\x18\x03 \x01(\x01B\x03\xE0A\x03\x12\x81\x01\x0A\x0Ccontribution\x18\x04 \x01(\x0B2d.google.storage.control.v2.IntelligenceFinding.ThrottledRequestSpike.BucketContribution.ContributionB\x03\xE0A\x03H\x00\x12(\x0A\x05error\x18\x05 \x01(\x0B2\x12.google.rpc.StatusB\x03\xE0A\x03H\x00\x1A\x91\x02\x0A\x0CContribution\x12\x92\x01\x0A\x0Ctop_prefixes\x18\x01 \x03(\x0B2w.google.storage.control.v2.IntelligenceFinding.ThrottledRequestSpike.BucketContribution.Contribution.PrefixContributionB\x03\xE0A\x03\x1Al\x0A\x12PrefixContribution\x12\x13\x0A\x06prefix\x18\x01 \x01(\x09B\x03\xE0A\x03\x12\x1F\x0A\x12throttled_requests\x18\x02 \x01(\x03B\x03\xE0A\x03\x12 \x0A\x13percentage_increase\x18\x03 \x01(\x01B\x03\xE0A\x03B\x09\x0A\x07details\x1A\xA7\x03\x0A\x17StorageGrowthAboveTrend\x12'\x0A\x1Atotal_storage_growth_bytes\x18\x01 \x01(\x03B\x03\xE0A\x03\x12 \x0A\x13percentage_increase\x18\x02 \x01(\x01B\x03\xE0A\x03\x12s\x0A\x0Btop_buckets\x18\x03 \x03(\x0B2Y.google.storage.control.v2.IntelligenceFinding.StorageGrowthAboveTrend.BucketContributionB\x03\xE0A\x03\x1A\xCB\x01\x0A\x12BucketContribution\x125\x0A\x06bucket\x18\x01 \x01(\x09B%\xE0A\x03\xFAA\x1F\x0A\x1Dstorage.googleapis.com/Bucket\x12'\x0A\x1Atotal_storage_growth_bytes\x18\x02 \x01(\x03B\x03\xE0A\x03\x12 \x0A\x13percentage_increase\x18\x03 \x01(\x01B\x03\xE0A\x03\x12(\x0A\x05error\x18\x05 \x01(\x0B2\x12.google.rpc.StatusB\x03\xE0A\x03H\x00B\x09\x0A\x07details:\xB0\x01\xEAA\xAC\x01\x0A*storage.googleapis.com/IntelligenceFinding\x12Sprojects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}*\x14intelligenceFindings2\x13intelligenceFindingB\x1E\x0A\x1Cintelligence_finding_details\"\x8D\x03\x0A\x1BIntelligenceFindingRevision\x12\x11\x0A\x04name\x18\x01 \x01(\x09B\x03\xE0A\x08\x12E\x0A\x08snapshot\x18\x02 \x01(\x0B2..google.storage.control.v2.IntelligenceFindingB\x03\xE0A\x03\x124\x0A\x0Bcreate_time\x18\x03 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03:\xDD\x01\xEAA\xD9\x01\x0A2storage.googleapis.com/IntelligenceFindingRevision\x12hprojects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}/revisions/{revision}*\x1CintelligenceFindingRevisions2\x1BintelligenceFindingRevision\"a\x0A\x1DGetIntelligenceFindingRequest\x12@\x0A\x04name\x18\x01 \x01(\x09B2\xE0A\x02\xFAA,\x0A*storage.googleapis.com/IntelligenceFinding\"\xAB\x01\x0A\x1FListIntelligenceFindingsRequest\x12B\x0A\x06parent\x18\x01 \x01(\x09B2\xE0A\x02\xFAA,\x12*storage.googleapis.com/IntelligenceFinding\x12\x13\x0A\x06filter\x18\x02 \x01(\x09B\x03\xE0A\x01\x12\x16\x0A\x09page_size\x18\x03 \x01(\x05B\x03\xE0A\x01\x12\x17\x0A\x0Apage_token\x18\x04 \x01(\x09B\x03\xE0A\x01\"\x8A\x01\x0A ListIntelligenceFindingsResponse\x12M\x0A\x15intelligence_findings\x18\x01 \x03(\x0B2..google.storage.control.v2.IntelligenceFinding\x12\x17\x0A\x0Fnext_page_token\x18\x02 \x01(\x09\"\xB7\x02\x0A\$SummarizeIntelligenceFindingsRequest\x12\x13\x0A\x06parent\x18\x01 \x01(\x09B\x03\xE0A\x02\x12j\x0A\x0Eresource_scope\x18\x02 \x01(\x0E2M.google.storage.control.v2.SummarizeIntelligenceFindingsRequest.ResourceScopeB\x03\xE0A\x01\x12\x13\x0A\x06filter\x18\x03 \x01(\x09B\x03\xE0A\x01\x12\x16\x0A\x09page_size\x18\x04 \x01(\x05B\x03\xE0A\x01\x12\x17\x0A\x0Apage_token\x18\x05 \x01(\x09B\x03\xE0A\x01\"H\x0A\x0DResourceScope\x12\x1E\x0A\x1ARESOURCE_SCOPE_UNSPECIFIED\x10\x00\x12\x0A\x0A\x06PARENT\x10\x01\x12\x0B\x0A\x07PROJECT\x10\x02\"\x86\x01\x0A%SummarizeIntelligenceFindingsResponse\x12D\x0A\x11finding_summaries\x18\x01 \x03(\x0B2).google.storage.control.v2.FindingSummary\x12\x17\x0A\x0Fnext_page_token\x18\x02 \x01(\x09\"q\x0A%GetIntelligenceFindingRevisionRequest\x12H\x0A\x04name\x18\x01 \x01(\x09B:\xE0A\x02\xFAA4\x0A2storage.googleapis.com/IntelligenceFindingRevision\"\xA6\x01\x0A'ListIntelligenceFindingRevisionsRequest\x12J\x0A\x06parent\x18\x01 \x01(\x09B:\xE0A\x02\xFAA4\x122storage.googleapis.com/IntelligenceFindingRevision\x12\x16\x0A\x09page_size\x18\x02 \x01(\x05B\x03\xE0A\x01\x12\x17\x0A\x0Apage_token\x18\x03 \x01(\x09B\x03\xE0A\x01\"\xA3\x01\x0A(ListIntelligenceFindingRevisionsResponse\x12^\x0A\x1Eintelligence_finding_revisions\x18\x01 \x03(\x0B26.google.storage.control.v2.IntelligenceFindingRevision\x12\x17\x0A\x0Fnext_page_token\x18\x02 \x01(\x09\"\xBF\x05\x0A\x0EFindingSummary\x129\x0A\x04type\x18\x01 \x01(\x0E2&.google.storage.control.v2.FindingTypeB\x03\xE0A\x03\x12A\x0A\x08category\x18\x02 \x01(\x0E2*.google.storage.control.v2.FindingCategoryB\x03\xE0A\x03\x12\x1C\x0A\x0Ftarget_resource\x18\x04 \x01(\x09B\x03\xE0A\x03\x124\x0A\x0Bcreate_time\x18\x05 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03\x124\x0A\x0Bupdate_time\x18\x06 \x01(\x0B2\x1A.google.protobuf.TimestampB\x03\xE0A\x03\x12A\x0A\x08severity\x18\x07 \x01(\x0E2*.google.storage.control.v2.FindingSeverityB\x03\xE0A\x03\x12V\x0A\x0Fsummary_details\x18\x08 \x03(\x0B28.google.storage.control.v2.FindingSummary.SummaryDetailsB\x03\xE0A\x03\x1A\x89\x02\x0A\x0ESummaryDetails\x12\x0F\x0A\x05count\x18\x01 \x01(\x03H\x00\x12\x14\x0A\x0Apercentage\x18\x02 \x01(\x02H\x00\x12a\x0A\x0Dresource_type\x18\x03 \x01(\x0E2E.google.storage.control.v2.FindingSummary.SummaryDetails.ResourceTypeB\x03\xE0A\x03\x12\x18\x0A\x0Bdescription\x18\x04 \x01(\x09B\x03\xE0A\x03\"F\x0A\x0CResourceType\x12\x1D\x0A\x19RESOURCE_TYPE_UNSPECIFIED\x10\x00\x12\x0B\x0A\x07PROJECT\x10\x01\x12\x0A\x0A\x06BUCKET\x10\x02B\x0B\x0A\x09magnitude*\xEF\x01\x0A\x0BFindingType\x12\x1C\x0A\x18FINDING_TYPE_UNSPECIFIED\x10\x00\x12?\x0A;FINDING_TYPE_COLDLINE_AND_ARCHIVAL_STORAGE_OPERATIONS_SPIKE\x10\x01\x12(\x0A\$FINDING_TYPE_THROTTLED_REQUEST_SPIKE\x10\x02\x12*\x0A&FINDING_TYPE_CROSS_REGION_EGRESS_SPIKE\x10\x03\x12+\x0A'FINDING_TYPE_STORAGE_GROWTH_ABOVE_TREND\x10\x04*{\x0A\x0FFindingCategory\x12 \x0A\x1CFINDING_CATEGORY_UNSPECIFIED\x10\x00\x12\$\x0A FINDING_CATEGORY_DATA_MANAGEMENT\x10\x01\x12 \x0A\x1CFINDING_CATEGORY_PERFORMANCE\x10\x02*R\x0A\x0FFindingSeverity\x12 \x0A\x1CFINDING_SEVERITY_UNSPECIFIED\x10\x00\x12\x1D\x0A\x19FINDING_SEVERITY_CRITICAL\x10\x012\x847\x0A\x0EStorageControl\x12\x9A\x01\x0A\x0CCreateFolder\x12..google.storage.control.v2.CreateFolderRequest\x1A!.google.storage.control.v2.Folder\"7\xDAA\x17parent,folder,folder_id\x8A\xD3\xE4\x93\x02\x17\x12\x15\x0A\x06parent\x12\x0B{bucket=**}\x12\x8F\x01\x0A\x0CDeleteFolder\x12..google.storage.control.v2.DeleteFolderRequest\x1A\x16.google.protobuf.Empty\"7\xDAA\x04name\x8A\xD3\xE4\x93\x02*\x12(\x0A\x04name\x12 {bucket=projects/*/buckets/*}/**\x12\x94\x01\x0A\x09GetFolder\x12+.google.storage.control.v2.GetFolderRequest\x1A!.google.storage.control.v2.Folder\"7\xDAA\x04name\x8A\xD3\xE4\x93\x02*\x12(\x0A\x04name\x12 {bucket=projects/*/buckets/*}/**\x12\x94\x01\x0A\x0BListFolders\x12-.google.storage.control.v2.ListFoldersRequest\x1A..google.storage.control.v2.ListFoldersResponse\"&\xDAA\x06parent\x8A\xD3\xE4\x93\x02\x17\x12\x15\x0A\x06parent\x12\x0B{bucket=**}\x12\xCD\x01\x0A\x0CRenameFolder\x12..google.storage.control.v2.RenameFolderRequest\x1A\x1D.google.longrunning.Operation\"n\xCAA\x1E\x0A\x06Folder\x12\x14RenameFolderMetadata\xDAA\x1Aname,destination_folder_id\x8A\xD3\xE4\x93\x02*\x12(\x0A\x04name\x12 {bucket=projects/*/buckets/*}/**\x12\xE1\x01\x0A\x15DeleteFolderRecursive\x127.google.storage.control.v2.DeleteFolderRecursiveRequest\x1A\x1D.google.longrunning.Operation\"p\xCAA6\x0A\x15google.protobuf.Empty\x12\x1DDeleteFolderRecursiveMetadata\xDAA\x04name\x8A\xD3\xE4\x93\x02*\x12(\x0A\x04name\x12 {bucket=projects/*/buckets/*}/**\x12\xA9\x01\x0A\x10GetStorageLayout\x122.google.storage.control.v2.GetStorageLayoutRequest\x1A(.google.storage.control.v2.StorageLayout\"7\xDAA\x04name\x8A\xD3\xE4\x93\x02*\x12(\x0A\x04name\x12 {bucket=projects/*/buckets/*}/**\x12\xBF\x01\x0A\x13CreateManagedFolder\x125.google.storage.control.v2.CreateManagedFolderRequest\x1A(.google.storage.control.v2.ManagedFolder\"G\xDAA'parent,managed_folder,managed_folder_id\x8A\xD3\xE4\x93\x02\x17\x12\x15\x0A\x06parent\x12\x0B{bucket=**}\x12\x9D\x01\x0A\x13DeleteManagedFolder\x125.google.storage.control.v2.DeleteManagedFolderRequest\x1A\x16.google.protobuf.Empty\"7\xDAA\x04name\x8A\xD3\xE4\x93\x02*\x12(\x0A\x04name\x12 {bucket=projects/*/buckets/*}/**\x12\xA9\x01\x0A\x10GetManagedFolder\x122.google.storage.control.v2.GetManagedFolderRequest\x1A(.google.storage.control.v2.ManagedFolder\"7\xDAA\x04name\x8A\xD3\xE4\x93\x02*\x12(\x0A\x04name\x12 {bucket=projects/*/buckets/*}/**\x12\xA9\x01\x0A\x12ListManagedFolders\x124.google.storage.control.v2.ListManagedFoldersRequest\x1A5.google.storage.control.v2.ListManagedFoldersResponse\"&\xDAA\x06parent\x8A\xD3\xE4\x93\x02\x17\x12\x15\x0A\x06parent\x12\x0B{bucket=**}\x12\xD1\x01\x0A\x13CreateAnywhereCache\x125.google.storage.control.v2.CreateAnywhereCacheRequest\x1A\x1D.google.longrunning.Operation\"d\xCAA,\x0A\x0DAnywhereCache\x12\x1BCreateAnywhereCacheMetadata\xDAA\x15parent,anywhere_cache\x8A\xD3\xE4\x93\x02\x17\x12\x15\x0A\x06parent\x12\x0B{bucket=**}\x12\xF9\x01\x0A\x13UpdateAnywhereCache\x125.google.storage.control.v2.UpdateAnywhereCacheRequest\x1A\x1D.google.longrunning.Operation\"\x8B\x01\xCAA,\x0A\x0DAnywhereCache\x12\x1BUpdateAnywhereCacheMetadata\xDAA\x1Aanywhere_cache,update_mask\x8A\xD3\xE4\x93\x029\x127\x0A\x13anywhere_cache.name\x12 {bucket=projects/*/buckets/*}/**\x12\xB1\x01\x0A\x14DisableAnywhereCache\x126.google.storage.control.v2.DisableAnywhereCacheRequest\x1A(.google.storage.control.v2.AnywhereCache\"7\xDAA\x04name\x8A\xD3\xE4\x93\x02*\x12(\x0A\x04name\x12 {bucket=projects/*/buckets/*}/**\x12\xAD\x01\x0A\x12PauseAnywhereCache\x124.google.storage.control.v2.PauseAnywhereCacheRequest\x1A(.google.storage.control.v2.AnywhereCache\"7\xDAA\x04name\x8A\xD3\xE4\x93\x02*\x12(\x0A\x04name\x12 {bucket=projects/*/buckets/*}/**\x12\xAF\x01\x0A\x13ResumeAnywhereCache\x125.google.storage.control.v2.ResumeAnywhereCacheRequest\x1A(.google.storage.control.v2.AnywhereCache\"7\xDAA\x04name\x8A\xD3\xE4\x93\x02*\x12(\x0A\x04name\x12 {bucket=projects/*/buckets/*}/**\x12\xA9\x01\x0A\x10GetAnywhereCache\x122.google.storage.control.v2.GetAnywhereCacheRequest\x1A(.google.storage.control.v2.AnywhereCache\"7\xDAA\x04name\x8A\xD3\xE4\x93\x02*\x12(\x0A\x04name\x12 {bucket=projects/*/buckets/*}/**\x12\xA9\x01\x0A\x12ListAnywhereCaches\x124.google.storage.control.v2.ListAnywhereCachesRequest\x1A5.google.storage.control.v2.ListAnywhereCachesResponse\"&\xDAA\x06parent\x8A\xD3\xE4\x93\x02\x17\x12\x15\x0A\x06parent\x12\x0B{bucket=**}\x12\xD2\x01\x0A\x1CGetProjectIntelligenceConfig\x12>.google.storage.control.v2.GetProjectIntelligenceConfigRequest\x1A-.google.storage.control.v2.IntelligenceConfig\"C\xDAA\x04name\x82\xD3\xE4\x93\x026\x124/v2/{name=projects/*/locations/*/intelligenceConfig}\x12\x9D\x02\x0A\x1FUpdateProjectIntelligenceConfig\x12A.google.storage.control.v2.UpdateProjectIntelligenceConfigRequest\x1A-.google.storage.control.v2.IntelligenceConfig\"\x87\x01\xDAA\x1Fintelligence_config,update_mask\x82\xD3\xE4\x93\x02_2H/v2/{intelligence_config.name=projects/*/locations/*/intelligenceConfig}:\x13intelligence_config\x12\xCF\x01\x0A\x1BGetFolderIntelligenceConfig\x12=.google.storage.control.v2.GetFolderIntelligenceConfigRequest\x1A-.google.storage.control.v2.IntelligenceConfig\"B\xDAA\x04name\x82\xD3\xE4\x93\x025\x123/v2/{name=folders/*/locations/*/intelligenceConfig}\x12\x9A\x02\x0A\x1EUpdateFolderIntelligenceConfig\x12@.google.storage.control.v2.UpdateFolderIntelligenceConfigRequest\x1A-.google.storage.control.v2.IntelligenceConfig\"\x86\x01\xDAA\x1Fintelligence_config,update_mask\x82\xD3\xE4\x93\x02^2G/v2/{intelligence_config.name=folders/*/locations/*/intelligenceConfig}:\x13intelligence_config\x12\xE1\x01\x0A!GetOrganizationIntelligenceConfig\x12C.google.storage.control.v2.GetOrganizationIntelligenceConfigRequest\x1A-.google.storage.control.v2.IntelligenceConfig\"H\xDAA\x04name\x82\xD3\xE4\x93\x02;\x129/v2/{name=organizations/*/locations/*/intelligenceConfig}\x12\xAC\x02\x0A\$UpdateOrganizationIntelligenceConfig\x12F.google.storage.control.v2.UpdateOrganizationIntelligenceConfigRequest\x1A-.google.storage.control.v2.IntelligenceConfig\"\x8C\x01\xDAA\x1Fintelligence_config,update_mask\x82\xD3\xE4\x93\x02d2M/v2/{intelligence_config.name=organizations/*/locations/*/intelligenceConfig}:\x13intelligence_config\x12\xA3\x01\x0A\x0CGetIamPolicy\x12\".google.iam.v1.GetIamPolicyRequest\x1A\x15.google.iam.v1.Policy\"X\xDAA\x08resource\x8A\xD3\xE4\x93\x02G\x12\x17\x0A\x08resource\x12\x0B{bucket=**}\x12,\x0A\x08resource\x12 {bucket=projects/*/buckets/*}/**\x12\xAA\x01\x0A\x0CSetIamPolicy\x12\".google.iam.v1.SetIamPolicyRequest\x1A\x15.google.iam.v1.Policy\"_\xDAA\x0Fresource,policy\x8A\xD3\xE4\x93\x02G\x12\x17\x0A\x08resource\x12\x0B{bucket=**}\x12,\x0A\x08resource\x12 {bucket=projects/*/buckets/*}/**\x12\x96\x02\x0A\x12TestIamPermissions\x12(.google.iam.v1.TestIamPermissionsRequest\x1A).google.iam.v1.TestIamPermissionsResponse\"\xAA\x01\xDAA\x14resource,permissions\x8A\xD3\xE4\x93\x02\x8C\x01\x12\x17\x0A\x08resource\x12\x0B{bucket=**}\x124\x0A\x08resource\x12({bucket=projects/*/buckets/*}/objects/**\x12;\x0A\x08resource\x12/{bucket=projects/*/buckets/*}/managedFolders/**\x12\xCB\x01\x0A\x16GetIntelligenceFinding\x128.google.storage.control.v2.GetIntelligenceFindingRequest\x1A..google.storage.control.v2.IntelligenceFinding\"G\xDAA\x04name\x82\xD3\xE4\x93\x02:\x128/v2/{name=projects/*/locations/*/intelligenceFindings/*}\x12\xDE\x01\x0A\x18ListIntelligenceFindings\x12:.google.storage.control.v2.ListIntelligenceFindingsRequest\x1A;.google.storage.control.v2.ListIntelligenceFindingsResponse\"I\xDAA\x06parent\x82\xD3\xE4\x93\x02:\x128/v2/{parent=projects/*/locations/*}/intelligenceFindings\x12\x89\x03\x0A\x1DSummarizeIntelligenceFindings\x12?.google.storage.control.v2.SummarizeIntelligenceFindingsRequest\x1A@.google.storage.control.v2.SummarizeIntelligenceFindingsResponse\"\xE4\x01\xDAA\x06parent\x82\xD3\xE4\x93\x02\xD4\x01\x12B/v2/{parent=projects/*/locations/*}/intelligenceFindings:summarizeZC\x12A/v2/{parent=folders/*/locations/*}/intelligenceFindings:summarizeZI\x12G/v2/{parent=organizations/*/locations/*}/intelligenceFindings:summarize\x12\xEF\x01\x0A\x1EGetIntelligenceFindingRevision\x12@.google.storage.control.v2.GetIntelligenceFindingRevisionRequest\x1A6.google.storage.control.v2.IntelligenceFindingRevision\"S\xDAA\x04name\x82\xD3\xE4\x93\x02F\x12D/v2/{name=projects/*/locations/*/intelligenceFindings/*/revisions/*}\x12\x82\x02\x0A ListIntelligenceFindingRevisions\x12B.google.storage.control.v2.ListIntelligenceFindingRevisionsRequest\x1AC.google.storage.control.v2.ListIntelligenceFindingRevisionsResponse\"U\xDAA\x06parent\x82\xD3\xE4\x93\x02F\x12D/v2/{parent=projects/*/locations/*/intelligenceFindings/*}/revisions\x1A\xA7\x02\xCAA\x16storage.googleapis.com\xD2A\x8A\x02https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/cloud-platform.read-only,https://www.googleapis.com/auth/devstorage.full_control,https://www.googleapis.com/auth/devstorage.read_only,https://www.googleapis.com/auth/devstorage.read_writeB\xA6\x02\x0A\x1Dcom.google.storage.control.v2B\x13StorageControlProtoP\x01Z=cloud.google.com/go/storage/control/apiv2/controlpb;controlpb\xAA\x02\x1FGoogle.Cloud.Storage.Control.V2\xCA\x02\x1FGoogle\\Cloud\\Storage\\Control\\V2\xEA\x02#Google::Cloud::Storage::Control::V2\xEAAD\x0A\x1Dstorage.googleapis.com/Bucket\x12#projects/{project}/buckets/{bucket}b\x06proto3" , true); static::$is_initialized = true; diff --git a/StorageControl/samples/V2/StorageControlClient/get_intelligence_finding.php b/StorageControl/samples/V2/StorageControlClient/get_intelligence_finding.php new file mode 100644 index 000000000000..a84e412b4c49 --- /dev/null +++ b/StorageControl/samples/V2/StorageControlClient/get_intelligence_finding.php @@ -0,0 +1,78 @@ +setName($formattedName); + + // Call the API and handle any network failures. + try { + /** @var IntelligenceFinding $response */ + $response = $storageControlClient->getIntelligenceFinding($request); + printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString()); + } catch (ApiException $ex) { + printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage()); + } +} + +/** + * Helper to execute the sample. + * + * This sample has been automatically generated and should be regarded as a code + * template only. It will require modifications to work: + * - It may require correct/in-range values for request initialization. + * - It may require specifying regional endpoints when creating the service client, + * please see the apiEndpoint client configuration option for more details. + */ +function callSample(): void +{ + $formattedName = StorageControlClient::intelligenceFindingName( + '[PROJECT]', + '[LOCATION]', + '[INTELLIGENCE_FINDING]' + ); + + get_intelligence_finding_sample($formattedName); +} +// [END storage_v2_generated_StorageControl_GetIntelligenceFinding_sync] diff --git a/StorageControl/samples/V2/StorageControlClient/get_intelligence_finding_revision.php b/StorageControl/samples/V2/StorageControlClient/get_intelligence_finding_revision.php new file mode 100644 index 000000000000..f30d3ee03a24 --- /dev/null +++ b/StorageControl/samples/V2/StorageControlClient/get_intelligence_finding_revision.php @@ -0,0 +1,79 @@ +setName($formattedName); + + // Call the API and handle any network failures. + try { + /** @var IntelligenceFindingRevision $response */ + $response = $storageControlClient->getIntelligenceFindingRevision($request); + printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString()); + } catch (ApiException $ex) { + printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage()); + } +} + +/** + * Helper to execute the sample. + * + * This sample has been automatically generated and should be regarded as a code + * template only. It will require modifications to work: + * - It may require correct/in-range values for request initialization. + * - It may require specifying regional endpoints when creating the service client, + * please see the apiEndpoint client configuration option for more details. + */ +function callSample(): void +{ + $formattedName = StorageControlClient::intelligenceFindingRevisionName( + '[PROJECT]', + '[LOCATION]', + '[INTELLIGENCE_FINDING]', + '[REVISION]' + ); + + get_intelligence_finding_revision_sample($formattedName); +} +// [END storage_v2_generated_StorageControl_GetIntelligenceFindingRevision_sync] diff --git a/StorageControl/samples/V2/StorageControlClient/list_intelligence_finding_revisions.php b/StorageControl/samples/V2/StorageControlClient/list_intelligence_finding_revisions.php new file mode 100644 index 000000000000..6f49c5f48f3e --- /dev/null +++ b/StorageControl/samples/V2/StorageControlClient/list_intelligence_finding_revisions.php @@ -0,0 +1,83 @@ +setParent($formattedParent); + + // Call the API and handle any network failures. + try { + /** @var PagedListResponse $response */ + $response = $storageControlClient->listIntelligenceFindingRevisions($request); + + /** @var IntelligenceFindingRevision $element */ + foreach ($response as $element) { + printf('Element data: %s' . PHP_EOL, $element->serializeToJsonString()); + } + } catch (ApiException $ex) { + printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage()); + } +} + +/** + * Helper to execute the sample. + * + * This sample has been automatically generated and should be regarded as a code + * template only. It will require modifications to work: + * - It may require correct/in-range values for request initialization. + * - It may require specifying regional endpoints when creating the service client, + * please see the apiEndpoint client configuration option for more details. + */ +function callSample(): void +{ + $formattedParent = StorageControlClient::intelligenceFindingName( + '[PROJECT]', + '[LOCATION]', + '[INTELLIGENCE_FINDING]' + ); + + list_intelligence_finding_revisions_sample($formattedParent); +} +// [END storage_v2_generated_StorageControl_ListIntelligenceFindingRevisions_sync] diff --git a/StorageControl/samples/V2/StorageControlClient/list_intelligence_findings.php b/StorageControl/samples/V2/StorageControlClient/list_intelligence_findings.php new file mode 100644 index 000000000000..e6b1689b980a --- /dev/null +++ b/StorageControl/samples/V2/StorageControlClient/list_intelligence_findings.php @@ -0,0 +1,78 @@ +setParent($formattedParent); + + // Call the API and handle any network failures. + try { + /** @var PagedListResponse $response */ + $response = $storageControlClient->listIntelligenceFindings($request); + + /** @var IntelligenceFinding $element */ + foreach ($response as $element) { + printf('Element data: %s' . PHP_EOL, $element->serializeToJsonString()); + } + } catch (ApiException $ex) { + printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage()); + } +} + +/** + * Helper to execute the sample. + * + * This sample has been automatically generated and should be regarded as a code + * template only. It will require modifications to work: + * - It may require correct/in-range values for request initialization. + * - It may require specifying regional endpoints when creating the service client, + * please see the apiEndpoint client configuration option for more details. + */ +function callSample(): void +{ + $formattedParent = StorageControlClient::locationName('[PROJECT]', '[LOCATION]'); + + list_intelligence_findings_sample($formattedParent); +} +// [END storage_v2_generated_StorageControl_ListIntelligenceFindings_sync] diff --git a/StorageControl/samples/V2/StorageControlClient/summarize_intelligence_findings.php b/StorageControl/samples/V2/StorageControlClient/summarize_intelligence_findings.php new file mode 100644 index 000000000000..3acd1dd6de21 --- /dev/null +++ b/StorageControl/samples/V2/StorageControlClient/summarize_intelligence_findings.php @@ -0,0 +1,80 @@ +setParent($parent); + + // Call the API and handle any network failures. + try { + /** @var PagedListResponse $response */ + $response = $storageControlClient->summarizeIntelligenceFindings($request); + + /** @var FindingSummary $element */ + foreach ($response as $element) { + printf('Element data: %s' . PHP_EOL, $element->serializeToJsonString()); + } + } catch (ApiException $ex) { + printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage()); + } +} + +/** + * Helper to execute the sample. + * + * This sample has been automatically generated and should be regarded as a code + * template only. It will require modifications to work: + * - It may require correct/in-range values for request initialization. + * - It may require specifying regional endpoints when creating the service client, + * please see the apiEndpoint client configuration option for more details. + */ +function callSample(): void +{ + $parent = '[PARENT]'; + + summarize_intelligence_findings_sample($parent); +} +// [END storage_v2_generated_StorageControl_SummarizeIntelligenceFindings_sync] diff --git a/StorageControl/src/V2/Client/StorageControlClient.php b/StorageControl/src/V2/Client/StorageControlClient.php index 523b35f2033b..ad58f8a5045c 100644 --- a/StorageControl/src/V2/Client/StorageControlClient.php +++ b/StorageControl/src/V2/Client/StorageControlClient.php @@ -52,19 +52,26 @@ use Google\Cloud\Storage\Control\V2\GetAnywhereCacheRequest; use Google\Cloud\Storage\Control\V2\GetFolderIntelligenceConfigRequest; use Google\Cloud\Storage\Control\V2\GetFolderRequest; +use Google\Cloud\Storage\Control\V2\GetIntelligenceFindingRequest; +use Google\Cloud\Storage\Control\V2\GetIntelligenceFindingRevisionRequest; use Google\Cloud\Storage\Control\V2\GetManagedFolderRequest; use Google\Cloud\Storage\Control\V2\GetOrganizationIntelligenceConfigRequest; use Google\Cloud\Storage\Control\V2\GetProjectIntelligenceConfigRequest; use Google\Cloud\Storage\Control\V2\GetStorageLayoutRequest; use Google\Cloud\Storage\Control\V2\IntelligenceConfig; +use Google\Cloud\Storage\Control\V2\IntelligenceFinding; +use Google\Cloud\Storage\Control\V2\IntelligenceFindingRevision; use Google\Cloud\Storage\Control\V2\ListAnywhereCachesRequest; use Google\Cloud\Storage\Control\V2\ListFoldersRequest; +use Google\Cloud\Storage\Control\V2\ListIntelligenceFindingRevisionsRequest; +use Google\Cloud\Storage\Control\V2\ListIntelligenceFindingsRequest; use Google\Cloud\Storage\Control\V2\ListManagedFoldersRequest; use Google\Cloud\Storage\Control\V2\ManagedFolder; use Google\Cloud\Storage\Control\V2\PauseAnywhereCacheRequest; use Google\Cloud\Storage\Control\V2\RenameFolderRequest; use Google\Cloud\Storage\Control\V2\ResumeAnywhereCacheRequest; use Google\Cloud\Storage\Control\V2\StorageLayout; +use Google\Cloud\Storage\Control\V2\SummarizeIntelligenceFindingsRequest; use Google\Cloud\Storage\Control\V2\UpdateAnywhereCacheRequest; use Google\Cloud\Storage\Control\V2\UpdateFolderIntelligenceConfigRequest; use Google\Cloud\Storage\Control\V2\UpdateOrganizationIntelligenceConfigRequest; @@ -96,17 +103,22 @@ * @method PromiseInterface getFolderAsync(GetFolderRequest $request, array $optionalArgs = []) * @method PromiseInterface getFolderIntelligenceConfigAsync(GetFolderIntelligenceConfigRequest $request, array $optionalArgs = []) * @method PromiseInterface getIamPolicyAsync(GetIamPolicyRequest $request, array $optionalArgs = []) + * @method PromiseInterface getIntelligenceFindingAsync(GetIntelligenceFindingRequest $request, array $optionalArgs = []) + * @method PromiseInterface getIntelligenceFindingRevisionAsync(GetIntelligenceFindingRevisionRequest $request, array $optionalArgs = []) * @method PromiseInterface getManagedFolderAsync(GetManagedFolderRequest $request, array $optionalArgs = []) * @method PromiseInterface getOrganizationIntelligenceConfigAsync(GetOrganizationIntelligenceConfigRequest $request, array $optionalArgs = []) * @method PromiseInterface getProjectIntelligenceConfigAsync(GetProjectIntelligenceConfigRequest $request, array $optionalArgs = []) * @method PromiseInterface getStorageLayoutAsync(GetStorageLayoutRequest $request, array $optionalArgs = []) * @method PromiseInterface listAnywhereCachesAsync(ListAnywhereCachesRequest $request, array $optionalArgs = []) * @method PromiseInterface listFoldersAsync(ListFoldersRequest $request, array $optionalArgs = []) + * @method PromiseInterface listIntelligenceFindingRevisionsAsync(ListIntelligenceFindingRevisionsRequest $request, array $optionalArgs = []) + * @method PromiseInterface listIntelligenceFindingsAsync(ListIntelligenceFindingsRequest $request, array $optionalArgs = []) * @method PromiseInterface listManagedFoldersAsync(ListManagedFoldersRequest $request, array $optionalArgs = []) * @method PromiseInterface pauseAnywhereCacheAsync(PauseAnywhereCacheRequest $request, array $optionalArgs = []) * @method PromiseInterface renameFolderAsync(RenameFolderRequest $request, array $optionalArgs = []) * @method PromiseInterface resumeAnywhereCacheAsync(ResumeAnywhereCacheRequest $request, array $optionalArgs = []) * @method PromiseInterface setIamPolicyAsync(SetIamPolicyRequest $request, array $optionalArgs = []) + * @method PromiseInterface summarizeIntelligenceFindingsAsync(SummarizeIntelligenceFindingsRequest $request, array $optionalArgs = []) * @method PromiseInterface testIamPermissionsAsync(TestIamPermissionsRequest $request, array $optionalArgs = []) * @method PromiseInterface updateAnywhereCacheAsync(UpdateAnywhereCacheRequest $request, array $optionalArgs = []) * @method PromiseInterface updateFolderIntelligenceConfigAsync(UpdateFolderIntelligenceConfigRequest $request, array $optionalArgs = []) @@ -304,6 +316,70 @@ public static function intelligenceConfigName(string $folder, string $location): ]); } + /** + * Formats a string containing the fully-qualified path to represent a + * intelligence_finding resource. + * + * @param string $project + * @param string $location + * @param string $intelligenceFinding + * + * @return string The formatted intelligence_finding resource. + */ + public static function intelligenceFindingName( + string $project, + string $location, + string $intelligenceFinding + ): string { + return self::getPathTemplate('intelligenceFinding')->render([ + 'project' => $project, + 'location' => $location, + 'intelligence_finding' => $intelligenceFinding, + ]); + } + + /** + * Formats a string containing the fully-qualified path to represent a + * intelligence_finding_revision resource. + * + * @param string $project + * @param string $location + * @param string $intelligenceFinding + * @param string $revision + * + * @return string The formatted intelligence_finding_revision resource. + */ + public static function intelligenceFindingRevisionName( + string $project, + string $location, + string $intelligenceFinding, + string $revision + ): string { + return self::getPathTemplate('intelligenceFindingRevision')->render([ + 'project' => $project, + 'location' => $location, + 'intelligence_finding' => $intelligenceFinding, + 'revision' => $revision, + ]); + } + + /** + * Formats a string containing the fully-qualified path to represent a location + * resource. + * + * @param string $project + * @param string $location + * + * @return string The formatted location resource. + */ + public static function locationName(string $project, string $location): string + { + return self::getPathTemplate('location')->render([ + 'project' => $project, + 'location' => $location, + ]); + } + /** * Formats a string containing the fully-qualified path to represent a * managed_folder resource. @@ -383,6 +459,9 @@ public static function storageLayoutName(string $project, string $bucket): strin * - folder: projects/{project}/buckets/{bucket}/folders/{folder=**} * - folderLocationIntelligenceConfig: folders/{folder}/locations/{location}/intelligenceConfig * - intelligenceConfig: folders/{folder}/locations/{location}/intelligenceConfig + * - intelligenceFinding: projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding} + * - intelligenceFindingRevision: projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}/revisions/{revision} + * - location: projects/{project}/locations/{location} * - managedFolder: projects/{project}/buckets/{bucket}/managedFolders/{managed_folder=**} * - orgLocationIntelligenceConfig: organizations/{org}/locations/{location}/intelligenceConfig * - projectLocationIntelligenceConfig: projects/{project}/locations/{location}/intelligenceConfig @@ -790,6 +869,64 @@ public function getIamPolicy(GetIamPolicyRequest $request, array $callOptions = return $this->startApiCall('GetIamPolicy', $request, $callOptions)->wait(); } + /** + * Gets the `IntelligenceFinding` for a project. + * + * The async variant is {@see StorageControlClient::getIntelligenceFindingAsync()} + * . + * + * @example samples/V2/StorageControlClient/get_intelligence_finding.php + * + * @param GetIntelligenceFindingRequest $request A request to house fields associated with the call. + * @param array $callOptions { + * Optional. + * + * @type RetrySettings|array $retrySettings + * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an + * associative array of retry settings parameters. See the documentation on + * {@see RetrySettings} for example usage. + * } + * + * @return IntelligenceFinding + * + * @throws ApiException Thrown if the API call fails. + */ + public function getIntelligenceFinding( + GetIntelligenceFindingRequest $request, + array $callOptions = [] + ): IntelligenceFinding { + return $this->startApiCall('GetIntelligenceFinding', $request, $callOptions)->wait(); + } + + /** + * Gets the `IntelligenceFindingRevision` resource. + * + * The async variant is + * {@see StorageControlClient::getIntelligenceFindingRevisionAsync()} . + * + * @example samples/V2/StorageControlClient/get_intelligence_finding_revision.php + * + * @param GetIntelligenceFindingRevisionRequest $request A request to house fields associated with the call. + * @param array $callOptions { + * Optional. + * + * @type RetrySettings|array $retrySettings + * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an + * associative array of retry settings parameters. See the documentation on + * {@see RetrySettings} for example usage. + * } + * + * @return IntelligenceFindingRevision + * + * @throws ApiException Thrown if the API call fails. + */ + public function getIntelligenceFindingRevision( + GetIntelligenceFindingRevisionRequest $request, + array $callOptions = [] + ): IntelligenceFindingRevision { + return $this->startApiCall('GetIntelligenceFindingRevision', $request, $callOptions)->wait(); + } + /** * Returns metadata for the specified managed folder. * @@ -953,6 +1090,64 @@ public function listFolders(ListFoldersRequest $request, array $callOptions = [] return $this->startApiCall('ListFolders', $request, $callOptions); } + /** + * Lists all the revisions of an `IntelligenceFinding` resource. + * + * The async variant is + * {@see StorageControlClient::listIntelligenceFindingRevisionsAsync()} . + * + * @example samples/V2/StorageControlClient/list_intelligence_finding_revisions.php + * + * @param ListIntelligenceFindingRevisionsRequest $request A request to house fields associated with the call. + * @param array $callOptions { + * Optional. + * + * @type RetrySettings|array $retrySettings + * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an + * associative array of retry settings parameters. See the documentation on + * {@see RetrySettings} for example usage. + * } + * + * @return PagedListResponse + * + * @throws ApiException Thrown if the API call fails. + */ + public function listIntelligenceFindingRevisions( + ListIntelligenceFindingRevisionsRequest $request, + array $callOptions = [] + ): PagedListResponse { + return $this->startApiCall('ListIntelligenceFindingRevisions', $request, $callOptions); + } + + /** + * Lists the `IntelligenceFinding` resources for the specified project. + * + * The async variant is + * {@see StorageControlClient::listIntelligenceFindingsAsync()} . + * + * @example samples/V2/StorageControlClient/list_intelligence_findings.php + * + * @param ListIntelligenceFindingsRequest $request A request to house fields associated with the call. + * @param array $callOptions { + * Optional. + * + * @type RetrySettings|array $retrySettings + * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an + * associative array of retry settings parameters. See the documentation on + * {@see RetrySettings} for example usage. + * } + * + * @return PagedListResponse + * + * @throws ApiException Thrown if the API call fails. + */ + public function listIntelligenceFindings( + ListIntelligenceFindingsRequest $request, + array $callOptions = [] + ): PagedListResponse { + return $this->startApiCall('ListIntelligenceFindings', $request, $callOptions); + } + /** * Retrieves a list of managed folders for a given bucket. * @@ -1090,6 +1285,36 @@ public function setIamPolicy(SetIamPolicyRequest $request, array $callOptions = return $this->startApiCall('SetIamPolicy', $request, $callOptions)->wait(); } + /** + * Summarize the intelligence findings for the specified scope(org, folder or + * project). + * + * The async variant is + * {@see StorageControlClient::summarizeIntelligenceFindingsAsync()} . + * + * @example samples/V2/StorageControlClient/summarize_intelligence_findings.php + * + * @param SummarizeIntelligenceFindingsRequest $request A request to house fields associated with the call. + * @param array $callOptions { + * Optional. + * + * @type RetrySettings|array $retrySettings + * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an + * associative array of retry settings parameters. See the documentation on + * {@see RetrySettings} for example usage. + * } + * + * @return PagedListResponse + * + * @throws ApiException Thrown if the API call fails. + */ + public function summarizeIntelligenceFindings( + SummarizeIntelligenceFindingsRequest $request, + array $callOptions = [] + ): PagedListResponse { + return $this->startApiCall('SummarizeIntelligenceFindings', $request, $callOptions); + } + /** * Tests a set of permissions on the given bucket, object, or managed folder * to see which, if any, are held by the caller. diff --git a/StorageControl/src/V2/FindingCategory.php b/StorageControl/src/V2/FindingCategory.php new file mode 100644 index 000000000000..352db1f0b22f --- /dev/null +++ b/StorageControl/src/V2/FindingCategory.php @@ -0,0 +1,61 @@ +google.storage.control.v2.FindingCategory + */ +class FindingCategory +{ + /** + * Category is unspecified. + * + * Generated from protobuf enum FINDING_CATEGORY_UNSPECIFIED = 0; + */ + const FINDING_CATEGORY_UNSPECIFIED = 0; + /** + * Category is 'Data Management'. + * + * Generated from protobuf enum FINDING_CATEGORY_DATA_MANAGEMENT = 1; + */ + const FINDING_CATEGORY_DATA_MANAGEMENT = 1; + /** + * Category is 'Performance'. + * + * Generated from protobuf enum FINDING_CATEGORY_PERFORMANCE = 2; + */ + const FINDING_CATEGORY_PERFORMANCE = 2; + + private static $valueToName = [ + self::FINDING_CATEGORY_UNSPECIFIED => 'FINDING_CATEGORY_UNSPECIFIED', + self::FINDING_CATEGORY_DATA_MANAGEMENT => 'FINDING_CATEGORY_DATA_MANAGEMENT', + self::FINDING_CATEGORY_PERFORMANCE => 'FINDING_CATEGORY_PERFORMANCE', + ]; + + public static function name($value) + { + if (!isset(self::$valueToName[$value])) { + throw new UnexpectedValueException(sprintf( + 'Enum %s has no name defined for value %s', __CLASS__, $value)); + } + return self::$valueToName[$value]; + } + + + public static function value($name) + { + $const = __CLASS__ . '::' . strtoupper($name); + if (!defined($const)) { + throw new UnexpectedValueException(sprintf( + 'Enum %s has no value defined for name %s', __CLASS__, $name)); + } + return constant($const); + } +} + diff --git a/StorageControl/src/V2/FindingSeverity.php b/StorageControl/src/V2/FindingSeverity.php new file mode 100644 index 000000000000..f2f2d2d3d3fe --- /dev/null +++ b/StorageControl/src/V2/FindingSeverity.php @@ -0,0 +1,54 @@ +google.storage.control.v2.FindingSeverity + */ +class FindingSeverity +{ + /** + * Severity is unspecified. + * + * Generated from protobuf enum FINDING_SEVERITY_UNSPECIFIED = 0; + */ + const FINDING_SEVERITY_UNSPECIFIED = 0; + /** + * Severity is critical. + * + * Generated from protobuf enum FINDING_SEVERITY_CRITICAL = 1; + */ + const FINDING_SEVERITY_CRITICAL = 1; + + private static $valueToName = [ + self::FINDING_SEVERITY_UNSPECIFIED => 'FINDING_SEVERITY_UNSPECIFIED', + self::FINDING_SEVERITY_CRITICAL => 'FINDING_SEVERITY_CRITICAL', + ]; + + public static function name($value) + { + if (!isset(self::$valueToName[$value])) { + throw new UnexpectedValueException(sprintf( + 'Enum %s has no name defined for value %s', __CLASS__, $value)); + } + return self::$valueToName[$value]; + } + + + public static function value($name) + { + $const = __CLASS__ . '::' . strtoupper($name); + if (!defined($const)) { + throw new UnexpectedValueException(sprintf( + 'Enum %s has no value defined for name %s', __CLASS__, $name)); + } + return constant($const); + } +} + diff --git a/StorageControl/src/V2/FindingSummary.php b/StorageControl/src/V2/FindingSummary.php new file mode 100644 index 000000000000..712fef9f4f2b --- /dev/null +++ b/StorageControl/src/V2/FindingSummary.php @@ -0,0 +1,307 @@ +google.storage.control.v2.FindingSummary + */ +class FindingSummary extends \Google\Protobuf\Internal\Message +{ + /** + * Output only. The type of the finding. + * + * Generated from protobuf field .google.storage.control.v2.FindingType type = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $type = 0; + /** + * Output only. The category of finding. + * + * Generated from protobuf field .google.storage.control.v2.FindingCategory category = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $category = 0; + /** + * Output only. The fully qualified Cloud resource name for which this + * summary was generated. + * eg: `//cloudresourcemanager.googleapis.com/projects/p1` + * + * Generated from protobuf field string target_resource = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $target_resource = ''; + /** + * Output only. The creation time of the earliest finding that this summary is + * based on. + * + * Generated from protobuf field .google.protobuf.Timestamp create_time = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $create_time = null; + /** + * Output only. The time of the most recent update among all the findings that + * this summary is based on. + * + * Generated from protobuf field .google.protobuf.Timestamp update_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $update_time = null; + /** + * Severity of the finding. + * + * Generated from protobuf field .google.storage.control.v2.FindingSeverity severity = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $severity = 0; + /** + * Output only. List of `SummaryDetails`. + * + * Generated from protobuf field repeated .google.storage.control.v2.FindingSummary.SummaryDetails summary_details = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + private $summary_details; + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type int $type + * Output only. The type of the finding. + * @type int $category + * Output only. The category of finding. + * @type string $target_resource + * Output only. The fully qualified Cloud resource name for which this + * summary was generated. + * eg: `//cloudresourcemanager.googleapis.com/projects/p1` + * @type \Google\Protobuf\Timestamp $create_time + * Output only. The creation time of the earliest finding that this summary is + * based on. + * @type \Google\Protobuf\Timestamp $update_time + * Output only. The time of the most recent update among all the findings that + * this summary is based on. + * @type int $severity + * Severity of the finding. + * @type \Google\Cloud\Storage\Control\V2\FindingSummary\SummaryDetails[] $summary_details + * Output only. List of `SummaryDetails`. + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Storage\Control\V2\StorageControl::initOnce(); + parent::__construct($data); + } + + /** + * Output only. The type of the finding. + * + * Generated from protobuf field .google.storage.control.v2.FindingType type = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return int + */ + public function getType() + { + return $this->type; + } + + /** + * Output only. The type of the finding. + * + * Generated from protobuf field .google.storage.control.v2.FindingType type = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param int $var + * @return $this + */ + public function setType($var) + { + GPBUtil::checkEnum($var, \Google\Cloud\Storage\Control\V2\FindingType::class); + $this->type = $var; + + return $this; + } + + /** + * Output only. The category of finding. + * + * Generated from protobuf field .google.storage.control.v2.FindingCategory category = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return int + */ + public function getCategory() + { + return $this->category; + } + + /** + * Output only. The category of finding. + * + * Generated from protobuf field .google.storage.control.v2.FindingCategory category = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param int $var + * @return $this + */ + public function setCategory($var) + { + GPBUtil::checkEnum($var, \Google\Cloud\Storage\Control\V2\FindingCategory::class); + $this->category = $var; + + return $this; + } + + /** + * Output only. The fully qualified Cloud resource name for which this + * summary was generated. + * eg: `//cloudresourcemanager.googleapis.com/projects/p1` + * + * Generated from protobuf field string target_resource = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return string + */ + public function getTargetResource() + { + return $this->target_resource; + } + + /** + * Output only. The fully qualified Cloud resource name for which this + * summary was generated. + * eg: `//cloudresourcemanager.googleapis.com/projects/p1` + * + * Generated from protobuf field string target_resource = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param string $var + * @return $this + */ + public function setTargetResource($var) + { + GPBUtil::checkString($var, True); + $this->target_resource = $var; + + return $this; + } + + /** + * Output only. The creation time of the earliest finding that this summary is + * based on. + * + * Generated from protobuf field .google.protobuf.Timestamp create_time = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return \Google\Protobuf\Timestamp|null + */ + public function getCreateTime() + { + return $this->create_time; + } + + public function hasCreateTime() + { + return isset($this->create_time); + } + + public function clearCreateTime() + { + unset($this->create_time); + } + + /** + * Output only. The creation time of the earliest finding that this summary is + * based on. + * + * Generated from protobuf field .google.protobuf.Timestamp create_time = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Protobuf\Timestamp $var + * @return $this + */ + public function setCreateTime($var) + { + GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class); + $this->create_time = $var; + + return $this; + } + + /** + * Output only. The time of the most recent update among all the findings that + * this summary is based on. + * + * Generated from protobuf field .google.protobuf.Timestamp update_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return \Google\Protobuf\Timestamp|null + */ + public function getUpdateTime() + { + return $this->update_time; + } + + public function hasUpdateTime() + { + return isset($this->update_time); + } + + public function clearUpdateTime() + { + unset($this->update_time); + } + + /** + * Output only. The time of the most recent update among all the findings that + * this summary is based on. + * + * Generated from protobuf field .google.protobuf.Timestamp update_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Protobuf\Timestamp $var + * @return $this + */ + public function setUpdateTime($var) + { + GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class); + $this->update_time = $var; + + return $this; + } + + /** + * Severity of the finding. + * + * Generated from protobuf field .google.storage.control.v2.FindingSeverity severity = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return int + */ + public function getSeverity() + { + return $this->severity; + } + + /** + * Severity of the finding. + * + * Generated from protobuf field .google.storage.control.v2.FindingSeverity severity = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param int $var + * @return $this + */ + public function setSeverity($var) + { + GPBUtil::checkEnum($var, \Google\Cloud\Storage\Control\V2\FindingSeverity::class); + $this->severity = $var; + + return $this; + } + + /** + * Output only. List of `SummaryDetails`. + * + * Generated from protobuf field repeated .google.storage.control.v2.FindingSummary.SummaryDetails summary_details = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return RepeatedField<\Google\Cloud\Storage\Control\V2\FindingSummary\SummaryDetails> + */ + public function getSummaryDetails() + { + return $this->summary_details; + } + + /** + * Output only. List of `SummaryDetails`. + * + * Generated from protobuf field repeated .google.storage.control.v2.FindingSummary.SummaryDetails summary_details = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Cloud\Storage\Control\V2\FindingSummary\SummaryDetails[] $var + * @return $this + */ + public function setSummaryDetails($var) + { + $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\Storage\Control\V2\FindingSummary\SummaryDetails::class); + $this->summary_details = $arr; + + return $this; + } + +} + diff --git a/StorageControl/src/V2/FindingSummary/SummaryDetails.php b/StorageControl/src/V2/FindingSummary/SummaryDetails.php new file mode 100644 index 000000000000..eb7124be783f --- /dev/null +++ b/StorageControl/src/V2/FindingSummary/SummaryDetails.php @@ -0,0 +1,176 @@ +google.storage.control.v2.FindingSummary.SummaryDetails + */ +class SummaryDetails extends \Google\Protobuf\Internal\Message +{ + /** + * Output only. The type of Cloud resource this summary detail applies to. + * + * Generated from protobuf field .google.storage.control.v2.FindingSummary.SummaryDetails.ResourceType resource_type = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $resource_type = 0; + /** + * Output only. A short description about the FindingSummary + * + * Generated from protobuf field string description = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $description = ''; + protected $magnitude; + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type int|string $count + * The count of impacted resources. + * @type float $percentage + * The percentage of impacted resources. + * @type int $resource_type + * Output only. The type of Cloud resource this summary detail applies to. + * @type string $description + * Output only. A short description about the FindingSummary + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Storage\Control\V2\StorageControl::initOnce(); + parent::__construct($data); + } + + /** + * The count of impacted resources. + * + * Generated from protobuf field int64 count = 1; + * @return int|string + */ + public function getCount() + { + return $this->readOneof(1); + } + + public function hasCount() + { + return $this->hasOneof(1); + } + + /** + * The count of impacted resources. + * + * Generated from protobuf field int64 count = 1; + * @param int|string $var + * @return $this + */ + public function setCount($var) + { + GPBUtil::checkInt64($var); + $this->writeOneof(1, $var); + + return $this; + } + + /** + * The percentage of impacted resources. + * + * Generated from protobuf field float percentage = 2; + * @return float + */ + public function getPercentage() + { + return $this->readOneof(2); + } + + public function hasPercentage() + { + return $this->hasOneof(2); + } + + /** + * The percentage of impacted resources. + * + * Generated from protobuf field float percentage = 2; + * @param float $var + * @return $this + */ + public function setPercentage($var) + { + GPBUtil::checkFloat($var); + $this->writeOneof(2, $var); + + return $this; + } + + /** + * Output only. The type of Cloud resource this summary detail applies to. + * + * Generated from protobuf field .google.storage.control.v2.FindingSummary.SummaryDetails.ResourceType resource_type = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return int + */ + public function getResourceType() + { + return $this->resource_type; + } + + /** + * Output only. The type of Cloud resource this summary detail applies to. + * + * Generated from protobuf field .google.storage.control.v2.FindingSummary.SummaryDetails.ResourceType resource_type = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param int $var + * @return $this + */ + public function setResourceType($var) + { + GPBUtil::checkEnum($var, \Google\Cloud\Storage\Control\V2\FindingSummary\SummaryDetails\ResourceType::class); + $this->resource_type = $var; + + return $this; + } + + /** + * Output only. A short description about the FindingSummary + * + * Generated from protobuf field string description = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return string + */ + public function getDescription() + { + return $this->description; + } + + /** + * Output only. A short description about the FindingSummary + * + * Generated from protobuf field string description = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param string $var + * @return $this + */ + public function setDescription($var) + { + GPBUtil::checkString($var, True); + $this->description = $var; + + return $this; + } + + /** + * @return string + */ + public function getMagnitude() + { + return $this->whichOneof("magnitude"); + } + +} + diff --git a/StorageControl/src/V2/FindingSummary/SummaryDetails/ResourceType.php b/StorageControl/src/V2/FindingSummary/SummaryDetails/ResourceType.php new file mode 100644 index 000000000000..24e36f96bf19 --- /dev/null +++ b/StorageControl/src/V2/FindingSummary/SummaryDetails/ResourceType.php @@ -0,0 +1,61 @@ +google.storage.control.v2.FindingSummary.SummaryDetails.ResourceType + */ +class ResourceType +{ + /** + * Resource type is unspecified. + * + * Generated from protobuf enum RESOURCE_TYPE_UNSPECIFIED = 0; + */ + const RESOURCE_TYPE_UNSPECIFIED = 0; + /** + * Resource type is project. + * + * Generated from protobuf enum PROJECT = 1; + */ + const PROJECT = 1; + /** + * Resource type is bucket. + * + * Generated from protobuf enum BUCKET = 2; + */ + const BUCKET = 2; + + private static $valueToName = [ + self::RESOURCE_TYPE_UNSPECIFIED => 'RESOURCE_TYPE_UNSPECIFIED', + self::PROJECT => 'PROJECT', + self::BUCKET => 'BUCKET', + ]; + + public static function name($value) + { + if (!isset(self::$valueToName[$value])) { + throw new UnexpectedValueException(sprintf( + 'Enum %s has no name defined for value %s', __CLASS__, $value)); + } + return self::$valueToName[$value]; + } + + + public static function value($name) + { + $const = __CLASS__ . '::' . strtoupper($name); + if (!defined($const)) { + throw new UnexpectedValueException(sprintf( + 'Enum %s has no value defined for name %s', __CLASS__, $name)); + } + return constant($const); + } +} + diff --git a/StorageControl/src/V2/FindingType.php b/StorageControl/src/V2/FindingType.php new file mode 100644 index 000000000000..d4a885894359 --- /dev/null +++ b/StorageControl/src/V2/FindingType.php @@ -0,0 +1,77 @@ +google.storage.control.v2.FindingType + */ +class FindingType +{ + /** + * Finding type is unspecified. + * + * Generated from protobuf enum FINDING_TYPE_UNSPECIFIED = 0; + */ + const FINDING_TYPE_UNSPECIFIED = 0; + /** + * Finding is about a spike in Class A/B operations on Coldline or Archive + * Cloud Storage objects. + * + * Generated from protobuf enum FINDING_TYPE_COLDLINE_AND_ARCHIVAL_STORAGE_OPERATIONS_SPIKE = 1; + */ + const FINDING_TYPE_COLDLINE_AND_ARCHIVAL_STORAGE_OPERATIONS_SPIKE = 1; + /** + * Finding is about a spike in throttled requests (429 errors) within a + * project. + * + * Generated from protobuf enum FINDING_TYPE_THROTTLED_REQUEST_SPIKE = 2; + */ + const FINDING_TYPE_THROTTLED_REQUEST_SPIKE = 2; + /** + * Finding is about a spike in cross region egress in Cloud Storage. + * + * Generated from protobuf enum FINDING_TYPE_CROSS_REGION_EGRESS_SPIKE = 3; + */ + const FINDING_TYPE_CROSS_REGION_EGRESS_SPIKE = 3; + /** + * Finding is about growth in storage above the expected trend. + * + * Generated from protobuf enum FINDING_TYPE_STORAGE_GROWTH_ABOVE_TREND = 4; + */ + const FINDING_TYPE_STORAGE_GROWTH_ABOVE_TREND = 4; + + private static $valueToName = [ + self::FINDING_TYPE_UNSPECIFIED => 'FINDING_TYPE_UNSPECIFIED', + self::FINDING_TYPE_COLDLINE_AND_ARCHIVAL_STORAGE_OPERATIONS_SPIKE => 'FINDING_TYPE_COLDLINE_AND_ARCHIVAL_STORAGE_OPERATIONS_SPIKE', + self::FINDING_TYPE_THROTTLED_REQUEST_SPIKE => 'FINDING_TYPE_THROTTLED_REQUEST_SPIKE', + self::FINDING_TYPE_CROSS_REGION_EGRESS_SPIKE => 'FINDING_TYPE_CROSS_REGION_EGRESS_SPIKE', + self::FINDING_TYPE_STORAGE_GROWTH_ABOVE_TREND => 'FINDING_TYPE_STORAGE_GROWTH_ABOVE_TREND', + ]; + + public static function name($value) + { + if (!isset(self::$valueToName[$value])) { + throw new UnexpectedValueException(sprintf( + 'Enum %s has no name defined for value %s', __CLASS__, $value)); + } + return self::$valueToName[$value]; + } + + + public static function value($name) + { + $const = __CLASS__ . '::' . strtoupper($name); + if (!defined($const)) { + throw new UnexpectedValueException(sprintf( + 'Enum %s has no value defined for name %s', __CLASS__, $name)); + } + return constant($const); + } +} + diff --git a/StorageControl/src/V2/GetIntelligenceFindingRequest.php b/StorageControl/src/V2/GetIntelligenceFindingRequest.php new file mode 100644 index 000000000000..f787ace6a22e --- /dev/null +++ b/StorageControl/src/V2/GetIntelligenceFindingRequest.php @@ -0,0 +1,93 @@ +google.storage.control.v2.GetIntelligenceFindingRequest + */ +class GetIntelligenceFindingRequest extends \Google\Protobuf\Internal\Message +{ + /** + * Required. The name of the `IntelligenceFinding` resource. + * Format: + * `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}` + * + * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { + */ + protected $name = ''; + + /** + * @param string $name Required. The name of the `IntelligenceFinding` resource. + * + * Format: + * `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}` + * Please see {@see StorageControlClient::intelligenceFindingName()} for help formatting this field. + * + * @return \Google\Cloud\Storage\Control\V2\GetIntelligenceFindingRequest + * + * @experimental + */ + public static function build(string $name): self + { + return (new self()) + ->setName($name); + } + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $name + * Required. The name of the `IntelligenceFinding` resource. + * Format: + * `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}` + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Storage\Control\V2\StorageControl::initOnce(); + parent::__construct($data); + } + + /** + * Required. The name of the `IntelligenceFinding` resource. + * Format: + * `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}` + * + * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { + * @return string + */ + public function getName() + { + return $this->name; + } + + /** + * Required. The name of the `IntelligenceFinding` resource. + * Format: + * `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}` + * + * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { + * @param string $var + * @return $this + */ + public function setName($var) + { + GPBUtil::checkString($var, True); + $this->name = $var; + + return $this; + } + +} + diff --git a/StorageControl/src/V2/GetIntelligenceFindingRevisionRequest.php b/StorageControl/src/V2/GetIntelligenceFindingRevisionRequest.php new file mode 100644 index 000000000000..4224dc9017be --- /dev/null +++ b/StorageControl/src/V2/GetIntelligenceFindingRevisionRequest.php @@ -0,0 +1,93 @@ +google.storage.control.v2.GetIntelligenceFindingRevisionRequest + */ +class GetIntelligenceFindingRevisionRequest extends \Google\Protobuf\Internal\Message +{ + /** + * Required. The name of the `IntelligenceFindingRevision` resource. + * ## Format: + * `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}/revisions/{revision}` + * + * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { + */ + protected $name = ''; + + /** + * @param string $name Required. The name of the `IntelligenceFindingRevision` resource. + * ## Format: + * + * `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}/revisions/{revision}` + * Please see {@see StorageControlClient::intelligenceFindingRevisionName()} for help formatting this field. + * + * @return \Google\Cloud\Storage\Control\V2\GetIntelligenceFindingRevisionRequest + * + * @experimental + */ + public static function build(string $name): self + { + return (new self()) + ->setName($name); + } + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $name + * Required. The name of the `IntelligenceFindingRevision` resource. + * ## Format: + * `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}/revisions/{revision}` + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Storage\Control\V2\StorageControl::initOnce(); + parent::__construct($data); + } + + /** + * Required. The name of the `IntelligenceFindingRevision` resource. + * ## Format: + * `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}/revisions/{revision}` + * + * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { + * @return string + */ + public function getName() + { + return $this->name; + } + + /** + * Required. The name of the `IntelligenceFindingRevision` resource. + * ## Format: + * `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}/revisions/{revision}` + * + * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { + * @param string $var + * @return $this + */ + public function setName($var) + { + GPBUtil::checkString($var, True); + $this->name = $var; + + return $this; + } + +} + diff --git a/StorageControl/src/V2/IntelligenceFinding.php b/StorageControl/src/V2/IntelligenceFinding.php new file mode 100644 index 000000000000..b5cd9a1768ec --- /dev/null +++ b/StorageControl/src/V2/IntelligenceFinding.php @@ -0,0 +1,594 @@ +google.storage.control.v2.IntelligenceFinding + */ +class IntelligenceFinding extends \Google\Protobuf\Internal\Message +{ + /** + * Identifier. The resource name of `IntelligenceFinding`. + * Format: + * `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}` + * + * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; + */ + protected $name = ''; + /** + * Output only. A short description about the finding. + * + * Generated from protobuf field string description = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $description = ''; + /** + * Output only. Type of this finding. + * + * Generated from protobuf field .google.storage.control.v2.FindingType type = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $type = 0; + /** + * Output only. Category of this finding. + * + * Generated from protobuf field .google.storage.control.v2.FindingCategory category = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $category = 0; + /** + * Output only. Severity of the finding. + * + * Generated from protobuf field .google.storage.control.v2.FindingSeverity severity = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $severity = 0; + /** + * Output only. The time at which the finding was created. + * + * Generated from protobuf field .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $create_time = null; + /** + * Output only. The time at which the finding was last updated. + * + * Generated from protobuf field .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $update_time = null; + /** + * Output only. The fully qualified resource name of the resource that this + * `IntelligenceFinding` applies to. eg: + * - `storage.googleapis.com/projects/_/buckets/b1` + * - `cloudresourecemanager.googleapis.com/projects/p1` + * + * Generated from protobuf field string target_resource = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $target_resource = ''; + /** + * Output only. Contains GCP resource names that are + * relevant to this `IntelligenceFinding`. The `target_resource` is also added + * as part of `associated_resources`. eg: + * - `storage.googleapis.com/projects/_/buckets/b1` + * - `cloudresourecemanager.googleapis.com/projects/p1` + * + * Generated from protobuf field repeated string associated_resources = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + private $associated_resources; + /** + * Output only. The time interval during which the underlying data was used to + * generate this `IntelligenceFinding`. + * + * Generated from protobuf field .google.type.Interval observation_period = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $observation_period = null; + protected $intelligence_finding_details; + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $name + * Identifier. The resource name of `IntelligenceFinding`. + * Format: + * `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}` + * @type string $description + * Output only. A short description about the finding. + * @type int $type + * Output only. Type of this finding. + * @type int $category + * Output only. Category of this finding. + * @type int $severity + * Output only. Severity of the finding. + * @type \Google\Protobuf\Timestamp $create_time + * Output only. The time at which the finding was created. + * @type \Google\Protobuf\Timestamp $update_time + * Output only. The time at which the finding was last updated. + * @type string $target_resource + * Output only. The fully qualified resource name of the resource that this + * `IntelligenceFinding` applies to. eg: + * - `storage.googleapis.com/projects/_/buckets/b1` + * - `cloudresourecemanager.googleapis.com/projects/p1` + * @type string[] $associated_resources + * Output only. Contains GCP resource names that are + * relevant to this `IntelligenceFinding`. The `target_resource` is also added + * as part of `associated_resources`. eg: + * - `storage.googleapis.com/projects/_/buckets/b1` + * - `cloudresourecemanager.googleapis.com/projects/p1` + * @type \Google\Type\Interval $observation_period + * Output only. The time interval during which the underlying data was used to + * generate this `IntelligenceFinding`. + * @type \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ColdlineAndArchivalStorageOperationsSpike $coldline_and_archival_storage_operations_spike + * Output only. `IntelligenceFinding` about a spike in Class A/B operations + * on Coldline or Archive Cloud Storage objects. + * @type \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ThrottledRequestSpike $throttled_requests_spike + * Output only. `IntelligenceFinding` about a spike in throttled requests + * (429 errors) within a project. + * @type \Google\Cloud\Storage\Control\V2\IntelligenceFinding\CrossRegionEgressSpike $cross_region_egress_spike + * Output only. `IntelligenceFinding` about a spike in cross-region egress. + * @type \Google\Cloud\Storage\Control\V2\IntelligenceFinding\StorageGrowthAboveTrend $storage_growth_above_trend + * Output only. `IntelligenceFinding` about growth in storage above the + * expected trend. + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Storage\Control\V2\StorageControl::initOnce(); + parent::__construct($data); + } + + /** + * Identifier. The resource name of `IntelligenceFinding`. + * Format: + * `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}` + * + * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; + * @return string + */ + public function getName() + { + return $this->name; + } + + /** + * Identifier. The resource name of `IntelligenceFinding`. + * Format: + * `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}` + * + * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; + * @param string $var + * @return $this + */ + public function setName($var) + { + GPBUtil::checkString($var, True); + $this->name = $var; + + return $this; + } + + /** + * Output only. A short description about the finding. + * + * Generated from protobuf field string description = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return string + */ + public function getDescription() + { + return $this->description; + } + + /** + * Output only. A short description about the finding. + * + * Generated from protobuf field string description = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param string $var + * @return $this + */ + public function setDescription($var) + { + GPBUtil::checkString($var, True); + $this->description = $var; + + return $this; + } + + /** + * Output only. Type of this finding. + * + * Generated from protobuf field .google.storage.control.v2.FindingType type = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return int + */ + public function getType() + { + return $this->type; + } + + /** + * Output only. Type of this finding. + * + * Generated from protobuf field .google.storage.control.v2.FindingType type = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param int $var + * @return $this + */ + public function setType($var) + { + GPBUtil::checkEnum($var, \Google\Cloud\Storage\Control\V2\FindingType::class); + $this->type = $var; + + return $this; + } + + /** + * Output only. Category of this finding. + * + * Generated from protobuf field .google.storage.control.v2.FindingCategory category = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return int + */ + public function getCategory() + { + return $this->category; + } + + /** + * Output only. Category of this finding. + * + * Generated from protobuf field .google.storage.control.v2.FindingCategory category = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param int $var + * @return $this + */ + public function setCategory($var) + { + GPBUtil::checkEnum($var, \Google\Cloud\Storage\Control\V2\FindingCategory::class); + $this->category = $var; + + return $this; + } + + /** + * Output only. Severity of the finding. + * + * Generated from protobuf field .google.storage.control.v2.FindingSeverity severity = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return int + */ + public function getSeverity() + { + return $this->severity; + } + + /** + * Output only. Severity of the finding. + * + * Generated from protobuf field .google.storage.control.v2.FindingSeverity severity = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param int $var + * @return $this + */ + public function setSeverity($var) + { + GPBUtil::checkEnum($var, \Google\Cloud\Storage\Control\V2\FindingSeverity::class); + $this->severity = $var; + + return $this; + } + + /** + * Output only. The time at which the finding was created. + * + * Generated from protobuf field .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return \Google\Protobuf\Timestamp|null + */ + public function getCreateTime() + { + return $this->create_time; + } + + public function hasCreateTime() + { + return isset($this->create_time); + } + + public function clearCreateTime() + { + unset($this->create_time); + } + + /** + * Output only. The time at which the finding was created. + * + * Generated from protobuf field .google.protobuf.Timestamp create_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Protobuf\Timestamp $var + * @return $this + */ + public function setCreateTime($var) + { + GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class); + $this->create_time = $var; + + return $this; + } + + /** + * Output only. The time at which the finding was last updated. + * + * Generated from protobuf field .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return \Google\Protobuf\Timestamp|null + */ + public function getUpdateTime() + { + return $this->update_time; + } + + public function hasUpdateTime() + { + return isset($this->update_time); + } + + public function clearUpdateTime() + { + unset($this->update_time); + } + + /** + * Output only. The time at which the finding was last updated. + * + * Generated from protobuf field .google.protobuf.Timestamp update_time = 7 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Protobuf\Timestamp $var + * @return $this + */ + public function setUpdateTime($var) + { + GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class); + $this->update_time = $var; + + return $this; + } + + /** + * Output only. The fully qualified resource name of the resource that this + * `IntelligenceFinding` applies to. eg: + * - `storage.googleapis.com/projects/_/buckets/b1` + * - `cloudresourecemanager.googleapis.com/projects/p1` + * + * Generated from protobuf field string target_resource = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return string + */ + public function getTargetResource() + { + return $this->target_resource; + } + + /** + * Output only. The fully qualified resource name of the resource that this + * `IntelligenceFinding` applies to. eg: + * - `storage.googleapis.com/projects/_/buckets/b1` + * - `cloudresourecemanager.googleapis.com/projects/p1` + * + * Generated from protobuf field string target_resource = 8 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param string $var + * @return $this + */ + public function setTargetResource($var) + { + GPBUtil::checkString($var, True); + $this->target_resource = $var; + + return $this; + } + + /** + * Output only. Contains GCP resource names that are + * relevant to this `IntelligenceFinding`. The `target_resource` is also added + * as part of `associated_resources`. eg: + * - `storage.googleapis.com/projects/_/buckets/b1` + * - `cloudresourecemanager.googleapis.com/projects/p1` + * + * Generated from protobuf field repeated string associated_resources = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return RepeatedField + */ + public function getAssociatedResources() + { + return $this->associated_resources; + } + + /** + * Output only. Contains GCP resource names that are + * relevant to this `IntelligenceFinding`. The `target_resource` is also added + * as part of `associated_resources`. eg: + * - `storage.googleapis.com/projects/_/buckets/b1` + * - `cloudresourecemanager.googleapis.com/projects/p1` + * + * Generated from protobuf field repeated string associated_resources = 9 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param string[] $var + * @return $this + */ + public function setAssociatedResources($var) + { + $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::STRING); + $this->associated_resources = $arr; + + return $this; + } + + /** + * Output only. The time interval during which the underlying data was used to + * generate this `IntelligenceFinding`. + * + * Generated from protobuf field .google.type.Interval observation_period = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return \Google\Type\Interval|null + */ + public function getObservationPeriod() + { + return $this->observation_period; + } + + public function hasObservationPeriod() + { + return isset($this->observation_period); + } + + public function clearObservationPeriod() + { + unset($this->observation_period); + } + + /** + * Output only. The time interval during which the underlying data was used to + * generate this `IntelligenceFinding`. + * + * Generated from protobuf field .google.type.Interval observation_period = 10 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Type\Interval $var + * @return $this + */ + public function setObservationPeriod($var) + { + GPBUtil::checkMessage($var, \Google\Type\Interval::class); + $this->observation_period = $var; + + return $this; + } + + /** + * Output only. `IntelligenceFinding` about a spike in Class A/B operations + * on Coldline or Archive Cloud Storage objects. + * + * Generated from protobuf field .google.storage.control.v2.IntelligenceFinding.ColdlineAndArchivalStorageOperationsSpike coldline_and_archival_storage_operations_spike = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ColdlineAndArchivalStorageOperationsSpike|null + */ + public function getColdlineAndArchivalStorageOperationsSpike() + { + return $this->readOneof(11); + } + + public function hasColdlineAndArchivalStorageOperationsSpike() + { + return $this->hasOneof(11); + } + + /** + * Output only. `IntelligenceFinding` about a spike in Class A/B operations + * on Coldline or Archive Cloud Storage objects. + * + * Generated from protobuf field .google.storage.control.v2.IntelligenceFinding.ColdlineAndArchivalStorageOperationsSpike coldline_and_archival_storage_operations_spike = 11 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ColdlineAndArchivalStorageOperationsSpike $var + * @return $this + */ + public function setColdlineAndArchivalStorageOperationsSpike($var) + { + GPBUtil::checkMessage($var, \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ColdlineAndArchivalStorageOperationsSpike::class); + $this->writeOneof(11, $var); + + return $this; + } + + /** + * Output only. `IntelligenceFinding` about a spike in throttled requests + * (429 errors) within a project. + * + * Generated from protobuf field .google.storage.control.v2.IntelligenceFinding.ThrottledRequestSpike throttled_requests_spike = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ThrottledRequestSpike|null + */ + public function getThrottledRequestsSpike() + { + return $this->readOneof(12); + } + + public function hasThrottledRequestsSpike() + { + return $this->hasOneof(12); + } + + /** + * Output only. `IntelligenceFinding` about a spike in throttled requests + * (429 errors) within a project. + * + * Generated from protobuf field .google.storage.control.v2.IntelligenceFinding.ThrottledRequestSpike throttled_requests_spike = 12 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ThrottledRequestSpike $var + * @return $this + */ + public function setThrottledRequestsSpike($var) + { + GPBUtil::checkMessage($var, \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ThrottledRequestSpike::class); + $this->writeOneof(12, $var); + + return $this; + } + + /** + * Output only. `IntelligenceFinding` about a spike in cross-region egress. + * + * Generated from protobuf field .google.storage.control.v2.IntelligenceFinding.CrossRegionEgressSpike cross_region_egress_spike = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return \Google\Cloud\Storage\Control\V2\IntelligenceFinding\CrossRegionEgressSpike|null + */ + public function getCrossRegionEgressSpike() + { + return $this->readOneof(13); + } + + public function hasCrossRegionEgressSpike() + { + return $this->hasOneof(13); + } + + /** + * Output only. `IntelligenceFinding` about a spike in cross-region egress. + * + * Generated from protobuf field .google.storage.control.v2.IntelligenceFinding.CrossRegionEgressSpike cross_region_egress_spike = 13 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Cloud\Storage\Control\V2\IntelligenceFinding\CrossRegionEgressSpike $var + * @return $this + */ + public function setCrossRegionEgressSpike($var) + { + GPBUtil::checkMessage($var, \Google\Cloud\Storage\Control\V2\IntelligenceFinding\CrossRegionEgressSpike::class); + $this->writeOneof(13, $var); + + return $this; + } + + /** + * Output only. `IntelligenceFinding` about growth in storage above the + * expected trend. + * + * Generated from protobuf field .google.storage.control.v2.IntelligenceFinding.StorageGrowthAboveTrend storage_growth_above_trend = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return \Google\Cloud\Storage\Control\V2\IntelligenceFinding\StorageGrowthAboveTrend|null + */ + public function getStorageGrowthAboveTrend() + { + return $this->readOneof(14); + } + + public function hasStorageGrowthAboveTrend() + { + return $this->hasOneof(14); + } + + /** + * Output only. `IntelligenceFinding` about growth in storage above the + * expected trend. + * + * Generated from protobuf field .google.storage.control.v2.IntelligenceFinding.StorageGrowthAboveTrend storage_growth_above_trend = 14 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Cloud\Storage\Control\V2\IntelligenceFinding\StorageGrowthAboveTrend $var + * @return $this + */ + public function setStorageGrowthAboveTrend($var) + { + GPBUtil::checkMessage($var, \Google\Cloud\Storage\Control\V2\IntelligenceFinding\StorageGrowthAboveTrend::class); + $this->writeOneof(14, $var); + + return $this; + } + + /** + * @return string + */ + public function getIntelligenceFindingDetails() + { + return $this->whichOneof("intelligence_finding_details"); + } + +} + diff --git a/StorageControl/src/V2/IntelligenceFinding/ColdlineAndArchivalStorageOperationsSpike.php b/StorageControl/src/V2/IntelligenceFinding/ColdlineAndArchivalStorageOperationsSpike.php new file mode 100644 index 000000000000..e14c8e9f9f6b --- /dev/null +++ b/StorageControl/src/V2/IntelligenceFinding/ColdlineAndArchivalStorageOperationsSpike.php @@ -0,0 +1,142 @@ +google.storage.control.v2.IntelligenceFinding.ColdlineAndArchivalStorageOperationsSpike + */ +class ColdlineAndArchivalStorageOperationsSpike extends \Google\Protobuf\Internal\Message +{ + /** + * Output only. The percentage increase in operations across the project. + * + * Generated from protobuf field double percentage_increase = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $percentage_increase = 0.0; + /** + * Output only. The total count of operations across the project. + * + * Generated from protobuf field int64 total_operations_count = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $total_operations_count = 0; + /** + * Output only. A list of the top buckets driving the increase in + * operations. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFinding.ColdlineAndArchivalStorageOperationsSpike.BucketContribution top_buckets = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + private $top_buckets; + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type float $percentage_increase + * Output only. The percentage increase in operations across the project. + * @type int|string $total_operations_count + * Output only. The total count of operations across the project. + * @type \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ColdlineAndArchivalStorageOperationsSpike\BucketContribution[] $top_buckets + * Output only. A list of the top buckets driving the increase in + * operations. + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Storage\Control\V2\StorageControl::initOnce(); + parent::__construct($data); + } + + /** + * Output only. The percentage increase in operations across the project. + * + * Generated from protobuf field double percentage_increase = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return float + */ + public function getPercentageIncrease() + { + return $this->percentage_increase; + } + + /** + * Output only. The percentage increase in operations across the project. + * + * Generated from protobuf field double percentage_increase = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param float $var + * @return $this + */ + public function setPercentageIncrease($var) + { + GPBUtil::checkDouble($var); + $this->percentage_increase = $var; + + return $this; + } + + /** + * Output only. The total count of operations across the project. + * + * Generated from protobuf field int64 total_operations_count = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return int|string + */ + public function getTotalOperationsCount() + { + return $this->total_operations_count; + } + + /** + * Output only. The total count of operations across the project. + * + * Generated from protobuf field int64 total_operations_count = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param int|string $var + * @return $this + */ + public function setTotalOperationsCount($var) + { + GPBUtil::checkInt64($var); + $this->total_operations_count = $var; + + return $this; + } + + /** + * Output only. A list of the top buckets driving the increase in + * operations. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFinding.ColdlineAndArchivalStorageOperationsSpike.BucketContribution top_buckets = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return RepeatedField<\Google\Cloud\Storage\Control\V2\IntelligenceFinding\ColdlineAndArchivalStorageOperationsSpike\BucketContribution> + */ + public function getTopBuckets() + { + return $this->top_buckets; + } + + /** + * Output only. A list of the top buckets driving the increase in + * operations. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFinding.ColdlineAndArchivalStorageOperationsSpike.BucketContribution top_buckets = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ColdlineAndArchivalStorageOperationsSpike\BucketContribution[] $var + * @return $this + */ + public function setTopBuckets($var) + { + $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ColdlineAndArchivalStorageOperationsSpike\BucketContribution::class); + $this->top_buckets = $arr; + + return $this; + } + +} + diff --git a/StorageControl/src/V2/IntelligenceFinding/ColdlineAndArchivalStorageOperationsSpike/BucketContribution.php b/StorageControl/src/V2/IntelligenceFinding/ColdlineAndArchivalStorageOperationsSpike/BucketContribution.php new file mode 100644 index 000000000000..2e764b7601cb --- /dev/null +++ b/StorageControl/src/V2/IntelligenceFinding/ColdlineAndArchivalStorageOperationsSpike/BucketContribution.php @@ -0,0 +1,213 @@ +google.storage.control.v2.IntelligenceFinding.ColdlineAndArchivalStorageOperationsSpike.BucketContribution + */ +class BucketContribution extends \Google\Protobuf\Internal\Message +{ + /** + * Output only. The name of the bucket. + * + * Generated from protobuf field string bucket = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { + */ + protected $bucket = ''; + /** + * Output only. The percentage increase in operations for the bucket. + * + * Generated from protobuf field double percentage_increase = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $percentage_increase = 0.0; + /** + * Output only. The total count of operations for the bucket. + * + * Generated from protobuf field int64 total_operations_count = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $total_operations_count = 0; + protected $details; + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $bucket + * Output only. The name of the bucket. + * @type float $percentage_increase + * Output only. The percentage increase in operations for the bucket. + * @type int|string $total_operations_count + * Output only. The total count of operations for the bucket. + * @type \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ColdlineAndArchivalStorageOperationsSpike\BucketContribution\Contribution $contribution + * Output only. The details about the contribution of the bucket. + * @type \Google\Rpc\Status $error + * Output only. The error related to accessing the details about the + * contribution of the bucket. + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Storage\Control\V2\StorageControl::initOnce(); + parent::__construct($data); + } + + /** + * Output only. The name of the bucket. + * + * Generated from protobuf field string bucket = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { + * @return string + */ + public function getBucket() + { + return $this->bucket; + } + + /** + * Output only. The name of the bucket. + * + * Generated from protobuf field string bucket = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { + * @param string $var + * @return $this + */ + public function setBucket($var) + { + GPBUtil::checkString($var, True); + $this->bucket = $var; + + return $this; + } + + /** + * Output only. The percentage increase in operations for the bucket. + * + * Generated from protobuf field double percentage_increase = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return float + */ + public function getPercentageIncrease() + { + return $this->percentage_increase; + } + + /** + * Output only. The percentage increase in operations for the bucket. + * + * Generated from protobuf field double percentage_increase = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param float $var + * @return $this + */ + public function setPercentageIncrease($var) + { + GPBUtil::checkDouble($var); + $this->percentage_increase = $var; + + return $this; + } + + /** + * Output only. The total count of operations for the bucket. + * + * Generated from protobuf field int64 total_operations_count = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return int|string + */ + public function getTotalOperationsCount() + { + return $this->total_operations_count; + } + + /** + * Output only. The total count of operations for the bucket. + * + * Generated from protobuf field int64 total_operations_count = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param int|string $var + * @return $this + */ + public function setTotalOperationsCount($var) + { + GPBUtil::checkInt64($var); + $this->total_operations_count = $var; + + return $this; + } + + /** + * Output only. The details about the contribution of the bucket. + * + * Generated from protobuf field .google.storage.control.v2.IntelligenceFinding.ColdlineAndArchivalStorageOperationsSpike.BucketContribution.Contribution contribution = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ColdlineAndArchivalStorageOperationsSpike\BucketContribution\Contribution|null + */ + public function getContribution() + { + return $this->readOneof(4); + } + + public function hasContribution() + { + return $this->hasOneof(4); + } + + /** + * Output only. The details about the contribution of the bucket. + * + * Generated from protobuf field .google.storage.control.v2.IntelligenceFinding.ColdlineAndArchivalStorageOperationsSpike.BucketContribution.Contribution contribution = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ColdlineAndArchivalStorageOperationsSpike\BucketContribution\Contribution $var + * @return $this + */ + public function setContribution($var) + { + GPBUtil::checkMessage($var, \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ColdlineAndArchivalStorageOperationsSpike\BucketContribution\Contribution::class); + $this->writeOneof(4, $var); + + return $this; + } + + /** + * Output only. The error related to accessing the details about the + * contribution of the bucket. + * + * Generated from protobuf field .google.rpc.Status error = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return \Google\Rpc\Status|null + */ + public function getError() + { + return $this->readOneof(5); + } + + public function hasError() + { + return $this->hasOneof(5); + } + + /** + * Output only. The error related to accessing the details about the + * contribution of the bucket. + * + * Generated from protobuf field .google.rpc.Status error = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Rpc\Status $var + * @return $this + */ + public function setError($var) + { + GPBUtil::checkMessage($var, \Google\Rpc\Status::class); + $this->writeOneof(5, $var); + + return $this; + } + + /** + * @return string + */ + public function getDetails() + { + return $this->whichOneof("details"); + } + +} + diff --git a/StorageControl/src/V2/IntelligenceFinding/ColdlineAndArchivalStorageOperationsSpike/BucketContribution/Contribution.php b/StorageControl/src/V2/IntelligenceFinding/ColdlineAndArchivalStorageOperationsSpike/BucketContribution/Contribution.php new file mode 100644 index 000000000000..654bb2cc72ea --- /dev/null +++ b/StorageControl/src/V2/IntelligenceFinding/ColdlineAndArchivalStorageOperationsSpike/BucketContribution/Contribution.php @@ -0,0 +1,72 @@ +google.storage.control.v2.IntelligenceFinding.ColdlineAndArchivalStorageOperationsSpike.BucketContribution.Contribution + */ +class Contribution extends \Google\Protobuf\Internal\Message +{ + /** + * Output only. A list of the top object prefixes driving the increase + * in operations. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFinding.ColdlineAndArchivalStorageOperationsSpike.BucketContribution.Contribution.PrefixContribution top_prefixes = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + private $top_prefixes; + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ColdlineAndArchivalStorageOperationsSpike\BucketContribution\Contribution\PrefixContribution[] $top_prefixes + * Output only. A list of the top object prefixes driving the increase + * in operations. + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Storage\Control\V2\StorageControl::initOnce(); + parent::__construct($data); + } + + /** + * Output only. A list of the top object prefixes driving the increase + * in operations. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFinding.ColdlineAndArchivalStorageOperationsSpike.BucketContribution.Contribution.PrefixContribution top_prefixes = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return RepeatedField<\Google\Cloud\Storage\Control\V2\IntelligenceFinding\ColdlineAndArchivalStorageOperationsSpike\BucketContribution\Contribution\PrefixContribution> + */ + public function getTopPrefixes() + { + return $this->top_prefixes; + } + + /** + * Output only. A list of the top object prefixes driving the increase + * in operations. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFinding.ColdlineAndArchivalStorageOperationsSpike.BucketContribution.Contribution.PrefixContribution top_prefixes = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ColdlineAndArchivalStorageOperationsSpike\BucketContribution\Contribution\PrefixContribution[] $var + * @return $this + */ + public function setTopPrefixes($var) + { + $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ColdlineAndArchivalStorageOperationsSpike\BucketContribution\Contribution\PrefixContribution::class); + $this->top_prefixes = $arr; + + return $this; + } + +} + diff --git a/StorageControl/src/V2/IntelligenceFinding/ColdlineAndArchivalStorageOperationsSpike/BucketContribution/Contribution/PrefixContribution.php b/StorageControl/src/V2/IntelligenceFinding/ColdlineAndArchivalStorageOperationsSpike/BucketContribution/Contribution/PrefixContribution.php new file mode 100644 index 000000000000..c6d5205647fe --- /dev/null +++ b/StorageControl/src/V2/IntelligenceFinding/ColdlineAndArchivalStorageOperationsSpike/BucketContribution/Contribution/PrefixContribution.php @@ -0,0 +1,143 @@ +google.storage.control.v2.IntelligenceFinding.ColdlineAndArchivalStorageOperationsSpike.BucketContribution.Contribution.PrefixContribution + */ +class PrefixContribution extends \Google\Protobuf\Internal\Message +{ + /** + * Output only. The object prefix. + * Format: `a/b/c`, 'a/b/d', etc. + * + * Generated from protobuf field string prefix = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $prefix = ''; + /** + * Output only. The percentage increase in operations for the object + * prefix. + * + * Generated from protobuf field double percentage_increase = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $percentage_increase = 0.0; + /** + * Output only. The total count of operations for the object prefix. + * + * Generated from protobuf field int64 total_operations_count = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $total_operations_count = 0; + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $prefix + * Output only. The object prefix. + * Format: `a/b/c`, 'a/b/d', etc. + * @type float $percentage_increase + * Output only. The percentage increase in operations for the object + * prefix. + * @type int|string $total_operations_count + * Output only. The total count of operations for the object prefix. + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Storage\Control\V2\StorageControl::initOnce(); + parent::__construct($data); + } + + /** + * Output only. The object prefix. + * Format: `a/b/c`, 'a/b/d', etc. + * + * Generated from protobuf field string prefix = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return string + */ + public function getPrefix() + { + return $this->prefix; + } + + /** + * Output only. The object prefix. + * Format: `a/b/c`, 'a/b/d', etc. + * + * Generated from protobuf field string prefix = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param string $var + * @return $this + */ + public function setPrefix($var) + { + GPBUtil::checkString($var, True); + $this->prefix = $var; + + return $this; + } + + /** + * Output only. The percentage increase in operations for the object + * prefix. + * + * Generated from protobuf field double percentage_increase = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return float + */ + public function getPercentageIncrease() + { + return $this->percentage_increase; + } + + /** + * Output only. The percentage increase in operations for the object + * prefix. + * + * Generated from protobuf field double percentage_increase = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param float $var + * @return $this + */ + public function setPercentageIncrease($var) + { + GPBUtil::checkDouble($var); + $this->percentage_increase = $var; + + return $this; + } + + /** + * Output only. The total count of operations for the object prefix. + * + * Generated from protobuf field int64 total_operations_count = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return int|string + */ + public function getTotalOperationsCount() + { + return $this->total_operations_count; + } + + /** + * Output only. The total count of operations for the object prefix. + * + * Generated from protobuf field int64 total_operations_count = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param int|string $var + * @return $this + */ + public function setTotalOperationsCount($var) + { + GPBUtil::checkInt64($var); + $this->total_operations_count = $var; + + return $this; + } + +} + diff --git a/StorageControl/src/V2/IntelligenceFinding/CrossRegionEgressSpike.php b/StorageControl/src/V2/IntelligenceFinding/CrossRegionEgressSpike.php new file mode 100644 index 000000000000..2fdffc786f54 --- /dev/null +++ b/StorageControl/src/V2/IntelligenceFinding/CrossRegionEgressSpike.php @@ -0,0 +1,149 @@ +google.storage.control.v2.IntelligenceFinding.CrossRegionEgressSpike + */ +class CrossRegionEgressSpike extends \Google\Protobuf\Internal\Message +{ + /** + * Output only. The total cross-region egress volume in bytes across the + * project. + * + * Generated from protobuf field int64 total_egress_bytes = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $total_egress_bytes = 0; + /** + * Output only. The percentage increase in cross-region egress across the + * project. + * + * Generated from protobuf field double percentage_increase = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $percentage_increase = 0.0; + /** + * Output only. A list of top buckets driving the increase in cross-region + * egress. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFinding.CrossRegionEgressSpike.BucketContribution top_buckets = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + private $top_buckets; + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type int|string $total_egress_bytes + * Output only. The total cross-region egress volume in bytes across the + * project. + * @type float $percentage_increase + * Output only. The percentage increase in cross-region egress across the + * project. + * @type \Google\Cloud\Storage\Control\V2\IntelligenceFinding\CrossRegionEgressSpike\BucketContribution[] $top_buckets + * Output only. A list of top buckets driving the increase in cross-region + * egress. + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Storage\Control\V2\StorageControl::initOnce(); + parent::__construct($data); + } + + /** + * Output only. The total cross-region egress volume in bytes across the + * project. + * + * Generated from protobuf field int64 total_egress_bytes = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return int|string + */ + public function getTotalEgressBytes() + { + return $this->total_egress_bytes; + } + + /** + * Output only. The total cross-region egress volume in bytes across the + * project. + * + * Generated from protobuf field int64 total_egress_bytes = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param int|string $var + * @return $this + */ + public function setTotalEgressBytes($var) + { + GPBUtil::checkInt64($var); + $this->total_egress_bytes = $var; + + return $this; + } + + /** + * Output only. The percentage increase in cross-region egress across the + * project. + * + * Generated from protobuf field double percentage_increase = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return float + */ + public function getPercentageIncrease() + { + return $this->percentage_increase; + } + + /** + * Output only. The percentage increase in cross-region egress across the + * project. + * + * Generated from protobuf field double percentage_increase = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param float $var + * @return $this + */ + public function setPercentageIncrease($var) + { + GPBUtil::checkDouble($var); + $this->percentage_increase = $var; + + return $this; + } + + /** + * Output only. A list of top buckets driving the increase in cross-region + * egress. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFinding.CrossRegionEgressSpike.BucketContribution top_buckets = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return RepeatedField<\Google\Cloud\Storage\Control\V2\IntelligenceFinding\CrossRegionEgressSpike\BucketContribution> + */ + public function getTopBuckets() + { + return $this->top_buckets; + } + + /** + * Output only. A list of top buckets driving the increase in cross-region + * egress. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFinding.CrossRegionEgressSpike.BucketContribution top_buckets = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Cloud\Storage\Control\V2\IntelligenceFinding\CrossRegionEgressSpike\BucketContribution[] $var + * @return $this + */ + public function setTopBuckets($var) + { + $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\Storage\Control\V2\IntelligenceFinding\CrossRegionEgressSpike\BucketContribution::class); + $this->top_buckets = $arr; + + return $this; + } + +} + diff --git a/StorageControl/src/V2/IntelligenceFinding/CrossRegionEgressSpike/BucketContribution.php b/StorageControl/src/V2/IntelligenceFinding/CrossRegionEgressSpike/BucketContribution.php new file mode 100644 index 000000000000..fe0b3f5af9e5 --- /dev/null +++ b/StorageControl/src/V2/IntelligenceFinding/CrossRegionEgressSpike/BucketContribution.php @@ -0,0 +1,221 @@ +google.storage.control.v2.IntelligenceFinding.CrossRegionEgressSpike.BucketContribution + */ +class BucketContribution extends \Google\Protobuf\Internal\Message +{ + /** + * Output only. The name of the bucket. + * + * Generated from protobuf field string bucket = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { + */ + protected $bucket = ''; + /** + * Output only. The total cross-region egress volume in bytes for the + * bucket. + * + * Generated from protobuf field int64 total_egress_bytes = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $total_egress_bytes = 0; + /** + * Output only. The percentage increase in cross-region egress for the + * bucket. + * + * Generated from protobuf field double percentage_increase = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $percentage_increase = 0.0; + protected $details; + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $bucket + * Output only. The name of the bucket. + * @type int|string $total_egress_bytes + * Output only. The total cross-region egress volume in bytes for the + * bucket. + * @type float $percentage_increase + * Output only. The percentage increase in cross-region egress for the + * bucket. + * @type \Google\Cloud\Storage\Control\V2\IntelligenceFinding\CrossRegionEgressSpike\BucketContribution\Contribution $contribution + * Output only. The details about the contribution of the bucket. + * @type \Google\Rpc\Status $error + * Output only. The error related to accessing the details about the + * contribution of the bucket. + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Storage\Control\V2\StorageControl::initOnce(); + parent::__construct($data); + } + + /** + * Output only. The name of the bucket. + * + * Generated from protobuf field string bucket = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { + * @return string + */ + public function getBucket() + { + return $this->bucket; + } + + /** + * Output only. The name of the bucket. + * + * Generated from protobuf field string bucket = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { + * @param string $var + * @return $this + */ + public function setBucket($var) + { + GPBUtil::checkString($var, True); + $this->bucket = $var; + + return $this; + } + + /** + * Output only. The total cross-region egress volume in bytes for the + * bucket. + * + * Generated from protobuf field int64 total_egress_bytes = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return int|string + */ + public function getTotalEgressBytes() + { + return $this->total_egress_bytes; + } + + /** + * Output only. The total cross-region egress volume in bytes for the + * bucket. + * + * Generated from protobuf field int64 total_egress_bytes = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param int|string $var + * @return $this + */ + public function setTotalEgressBytes($var) + { + GPBUtil::checkInt64($var); + $this->total_egress_bytes = $var; + + return $this; + } + + /** + * Output only. The percentage increase in cross-region egress for the + * bucket. + * + * Generated from protobuf field double percentage_increase = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return float + */ + public function getPercentageIncrease() + { + return $this->percentage_increase; + } + + /** + * Output only. The percentage increase in cross-region egress for the + * bucket. + * + * Generated from protobuf field double percentage_increase = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param float $var + * @return $this + */ + public function setPercentageIncrease($var) + { + GPBUtil::checkDouble($var); + $this->percentage_increase = $var; + + return $this; + } + + /** + * Output only. The details about the contribution of the bucket. + * + * Generated from protobuf field .google.storage.control.v2.IntelligenceFinding.CrossRegionEgressSpike.BucketContribution.Contribution contribution = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return \Google\Cloud\Storage\Control\V2\IntelligenceFinding\CrossRegionEgressSpike\BucketContribution\Contribution|null + */ + public function getContribution() + { + return $this->readOneof(4); + } + + public function hasContribution() + { + return $this->hasOneof(4); + } + + /** + * Output only. The details about the contribution of the bucket. + * + * Generated from protobuf field .google.storage.control.v2.IntelligenceFinding.CrossRegionEgressSpike.BucketContribution.Contribution contribution = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Cloud\Storage\Control\V2\IntelligenceFinding\CrossRegionEgressSpike\BucketContribution\Contribution $var + * @return $this + */ + public function setContribution($var) + { + GPBUtil::checkMessage($var, \Google\Cloud\Storage\Control\V2\IntelligenceFinding\CrossRegionEgressSpike\BucketContribution\Contribution::class); + $this->writeOneof(4, $var); + + return $this; + } + + /** + * Output only. The error related to accessing the details about the + * contribution of the bucket. + * + * Generated from protobuf field .google.rpc.Status error = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return \Google\Rpc\Status|null + */ + public function getError() + { + return $this->readOneof(5); + } + + public function hasError() + { + return $this->hasOneof(5); + } + + /** + * Output only. The error related to accessing the details about the + * contribution of the bucket. + * + * Generated from protobuf field .google.rpc.Status error = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Rpc\Status $var + * @return $this + */ + public function setError($var) + { + GPBUtil::checkMessage($var, \Google\Rpc\Status::class); + $this->writeOneof(5, $var); + + return $this; + } + + /** + * @return string + */ + public function getDetails() + { + return $this->whichOneof("details"); + } + +} + diff --git a/StorageControl/src/V2/IntelligenceFinding/CrossRegionEgressSpike/BucketContribution/Contribution.php b/StorageControl/src/V2/IntelligenceFinding/CrossRegionEgressSpike/BucketContribution/Contribution.php new file mode 100644 index 000000000000..c1171fae3f6b --- /dev/null +++ b/StorageControl/src/V2/IntelligenceFinding/CrossRegionEgressSpike/BucketContribution/Contribution.php @@ -0,0 +1,72 @@ +google.storage.control.v2.IntelligenceFinding.CrossRegionEgressSpike.BucketContribution.Contribution + */ +class Contribution extends \Google\Protobuf\Internal\Message +{ + /** + * Output only. A list of the top object prefixes driving the increase + * in cross-region egress. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFinding.CrossRegionEgressSpike.BucketContribution.Contribution.PrefixContribution top_prefixes = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + private $top_prefixes; + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type \Google\Cloud\Storage\Control\V2\IntelligenceFinding\CrossRegionEgressSpike\BucketContribution\Contribution\PrefixContribution[] $top_prefixes + * Output only. A list of the top object prefixes driving the increase + * in cross-region egress. + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Storage\Control\V2\StorageControl::initOnce(); + parent::__construct($data); + } + + /** + * Output only. A list of the top object prefixes driving the increase + * in cross-region egress. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFinding.CrossRegionEgressSpike.BucketContribution.Contribution.PrefixContribution top_prefixes = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return RepeatedField<\Google\Cloud\Storage\Control\V2\IntelligenceFinding\CrossRegionEgressSpike\BucketContribution\Contribution\PrefixContribution> + */ + public function getTopPrefixes() + { + return $this->top_prefixes; + } + + /** + * Output only. A list of the top object prefixes driving the increase + * in cross-region egress. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFinding.CrossRegionEgressSpike.BucketContribution.Contribution.PrefixContribution top_prefixes = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Cloud\Storage\Control\V2\IntelligenceFinding\CrossRegionEgressSpike\BucketContribution\Contribution\PrefixContribution[] $var + * @return $this + */ + public function setTopPrefixes($var) + { + $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\Storage\Control\V2\IntelligenceFinding\CrossRegionEgressSpike\BucketContribution\Contribution\PrefixContribution::class); + $this->top_prefixes = $arr; + + return $this; + } + +} + diff --git a/StorageControl/src/V2/IntelligenceFinding/CrossRegionEgressSpike/BucketContribution/Contribution/PrefixContribution.php b/StorageControl/src/V2/IntelligenceFinding/CrossRegionEgressSpike/BucketContribution/Contribution/PrefixContribution.php new file mode 100644 index 000000000000..0f3fb5daa146 --- /dev/null +++ b/StorageControl/src/V2/IntelligenceFinding/CrossRegionEgressSpike/BucketContribution/Contribution/PrefixContribution.php @@ -0,0 +1,148 @@ +google.storage.control.v2.IntelligenceFinding.CrossRegionEgressSpike.BucketContribution.Contribution.PrefixContribution + */ +class PrefixContribution extends \Google\Protobuf\Internal\Message +{ + /** + * Output only. The object prefix. + * Format: `a/b/c`, 'a/b/d', etc. + * + * Generated from protobuf field string prefix = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $prefix = ''; + /** + * Output only. The total cross-region egress volume in bytes from the + * object prefix. + * + * Generated from protobuf field int64 total_egress_bytes = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $total_egress_bytes = 0; + /** + * Output only. The percentage increase in cross-region egress for the + * object prefix. + * + * Generated from protobuf field double percentage_increase = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $percentage_increase = 0.0; + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $prefix + * Output only. The object prefix. + * Format: `a/b/c`, 'a/b/d', etc. + * @type int|string $total_egress_bytes + * Output only. The total cross-region egress volume in bytes from the + * object prefix. + * @type float $percentage_increase + * Output only. The percentage increase in cross-region egress for the + * object prefix. + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Storage\Control\V2\StorageControl::initOnce(); + parent::__construct($data); + } + + /** + * Output only. The object prefix. + * Format: `a/b/c`, 'a/b/d', etc. + * + * Generated from protobuf field string prefix = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return string + */ + public function getPrefix() + { + return $this->prefix; + } + + /** + * Output only. The object prefix. + * Format: `a/b/c`, 'a/b/d', etc. + * + * Generated from protobuf field string prefix = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param string $var + * @return $this + */ + public function setPrefix($var) + { + GPBUtil::checkString($var, True); + $this->prefix = $var; + + return $this; + } + + /** + * Output only. The total cross-region egress volume in bytes from the + * object prefix. + * + * Generated from protobuf field int64 total_egress_bytes = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return int|string + */ + public function getTotalEgressBytes() + { + return $this->total_egress_bytes; + } + + /** + * Output only. The total cross-region egress volume in bytes from the + * object prefix. + * + * Generated from protobuf field int64 total_egress_bytes = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param int|string $var + * @return $this + */ + public function setTotalEgressBytes($var) + { + GPBUtil::checkInt64($var); + $this->total_egress_bytes = $var; + + return $this; + } + + /** + * Output only. The percentage increase in cross-region egress for the + * object prefix. + * + * Generated from protobuf field double percentage_increase = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return float + */ + public function getPercentageIncrease() + { + return $this->percentage_increase; + } + + /** + * Output only. The percentage increase in cross-region egress for the + * object prefix. + * + * Generated from protobuf field double percentage_increase = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param float $var + * @return $this + */ + public function setPercentageIncrease($var) + { + GPBUtil::checkDouble($var); + $this->percentage_increase = $var; + + return $this; + } + +} + diff --git a/StorageControl/src/V2/IntelligenceFinding/StorageGrowthAboveTrend.php b/StorageControl/src/V2/IntelligenceFinding/StorageGrowthAboveTrend.php new file mode 100644 index 000000000000..beb651194f74 --- /dev/null +++ b/StorageControl/src/V2/IntelligenceFinding/StorageGrowthAboveTrend.php @@ -0,0 +1,140 @@ +google.storage.control.v2.IntelligenceFinding.StorageGrowthAboveTrend + */ +class StorageGrowthAboveTrend extends \Google\Protobuf\Internal\Message +{ + /** + * Output only. The total storage growth in bytes. + * + * Generated from protobuf field int64 total_storage_growth_bytes = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $total_storage_growth_bytes = 0; + /** + * Output only. The percentage increase in storage growth. + * + * Generated from protobuf field double percentage_increase = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $percentage_increase = 0.0; + /** + * Output only. A list of top buckets driving the increase in storage + * growth. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFinding.StorageGrowthAboveTrend.BucketContribution top_buckets = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + private $top_buckets; + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type int|string $total_storage_growth_bytes + * Output only. The total storage growth in bytes. + * @type float $percentage_increase + * Output only. The percentage increase in storage growth. + * @type \Google\Cloud\Storage\Control\V2\IntelligenceFinding\StorageGrowthAboveTrend\BucketContribution[] $top_buckets + * Output only. A list of top buckets driving the increase in storage + * growth. + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Storage\Control\V2\StorageControl::initOnce(); + parent::__construct($data); + } + + /** + * Output only. The total storage growth in bytes. + * + * Generated from protobuf field int64 total_storage_growth_bytes = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return int|string + */ + public function getTotalStorageGrowthBytes() + { + return $this->total_storage_growth_bytes; + } + + /** + * Output only. The total storage growth in bytes. + * + * Generated from protobuf field int64 total_storage_growth_bytes = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param int|string $var + * @return $this + */ + public function setTotalStorageGrowthBytes($var) + { + GPBUtil::checkInt64($var); + $this->total_storage_growth_bytes = $var; + + return $this; + } + + /** + * Output only. The percentage increase in storage growth. + * + * Generated from protobuf field double percentage_increase = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return float + */ + public function getPercentageIncrease() + { + return $this->percentage_increase; + } + + /** + * Output only. The percentage increase in storage growth. + * + * Generated from protobuf field double percentage_increase = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param float $var + * @return $this + */ + public function setPercentageIncrease($var) + { + GPBUtil::checkDouble($var); + $this->percentage_increase = $var; + + return $this; + } + + /** + * Output only. A list of top buckets driving the increase in storage + * growth. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFinding.StorageGrowthAboveTrend.BucketContribution top_buckets = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return RepeatedField<\Google\Cloud\Storage\Control\V2\IntelligenceFinding\StorageGrowthAboveTrend\BucketContribution> + */ + public function getTopBuckets() + { + return $this->top_buckets; + } + + /** + * Output only. A list of top buckets driving the increase in storage + * growth. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFinding.StorageGrowthAboveTrend.BucketContribution top_buckets = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Cloud\Storage\Control\V2\IntelligenceFinding\StorageGrowthAboveTrend\BucketContribution[] $var + * @return $this + */ + public function setTopBuckets($var) + { + $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\Storage\Control\V2\IntelligenceFinding\StorageGrowthAboveTrend\BucketContribution::class); + $this->top_buckets = $arr; + + return $this; + } + +} + diff --git a/StorageControl/src/V2/IntelligenceFinding/StorageGrowthAboveTrend/BucketContribution.php b/StorageControl/src/V2/IntelligenceFinding/StorageGrowthAboveTrend/BucketContribution.php new file mode 100644 index 000000000000..35aa541e0bba --- /dev/null +++ b/StorageControl/src/V2/IntelligenceFinding/StorageGrowthAboveTrend/BucketContribution.php @@ -0,0 +1,180 @@ +google.storage.control.v2.IntelligenceFinding.StorageGrowthAboveTrend.BucketContribution + */ +class BucketContribution extends \Google\Protobuf\Internal\Message +{ + /** + * Output only. The name of the bucket. + * + * Generated from protobuf field string bucket = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { + */ + protected $bucket = ''; + /** + * Output only. The total storage growth in bytes for the bucket. + * + * Generated from protobuf field int64 total_storage_growth_bytes = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $total_storage_growth_bytes = 0; + /** + * Output only. The percentage increase in storage growth for the bucket. + * + * Generated from protobuf field double percentage_increase = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $percentage_increase = 0.0; + protected $details; + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $bucket + * Output only. The name of the bucket. + * @type int|string $total_storage_growth_bytes + * Output only. The total storage growth in bytes for the bucket. + * @type float $percentage_increase + * Output only. The percentage increase in storage growth for the bucket. + * @type \Google\Rpc\Status $error + * Output only. The error related to accessing the details about the + * contribution of the bucket. + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Storage\Control\V2\StorageControl::initOnce(); + parent::__construct($data); + } + + /** + * Output only. The name of the bucket. + * + * Generated from protobuf field string bucket = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { + * @return string + */ + public function getBucket() + { + return $this->bucket; + } + + /** + * Output only. The name of the bucket. + * + * Generated from protobuf field string bucket = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { + * @param string $var + * @return $this + */ + public function setBucket($var) + { + GPBUtil::checkString($var, True); + $this->bucket = $var; + + return $this; + } + + /** + * Output only. The total storage growth in bytes for the bucket. + * + * Generated from protobuf field int64 total_storage_growth_bytes = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return int|string + */ + public function getTotalStorageGrowthBytes() + { + return $this->total_storage_growth_bytes; + } + + /** + * Output only. The total storage growth in bytes for the bucket. + * + * Generated from protobuf field int64 total_storage_growth_bytes = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param int|string $var + * @return $this + */ + public function setTotalStorageGrowthBytes($var) + { + GPBUtil::checkInt64($var); + $this->total_storage_growth_bytes = $var; + + return $this; + } + + /** + * Output only. The percentage increase in storage growth for the bucket. + * + * Generated from protobuf field double percentage_increase = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return float + */ + public function getPercentageIncrease() + { + return $this->percentage_increase; + } + + /** + * Output only. The percentage increase in storage growth for the bucket. + * + * Generated from protobuf field double percentage_increase = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param float $var + * @return $this + */ + public function setPercentageIncrease($var) + { + GPBUtil::checkDouble($var); + $this->percentage_increase = $var; + + return $this; + } + + /** + * Output only. The error related to accessing the details about the + * contribution of the bucket. + * + * Generated from protobuf field .google.rpc.Status error = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return \Google\Rpc\Status|null + */ + public function getError() + { + return $this->readOneof(5); + } + + public function hasError() + { + return $this->hasOneof(5); + } + + /** + * Output only. The error related to accessing the details about the + * contribution of the bucket. + * + * Generated from protobuf field .google.rpc.Status error = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Rpc\Status $var + * @return $this + */ + public function setError($var) + { + GPBUtil::checkMessage($var, \Google\Rpc\Status::class); + $this->writeOneof(5, $var); + + return $this; + } + + /** + * @return string + */ + public function getDetails() + { + return $this->whichOneof("details"); + } + +} + diff --git a/StorageControl/src/V2/IntelligenceFinding/ThrottledRequestSpike.php b/StorageControl/src/V2/IntelligenceFinding/ThrottledRequestSpike.php new file mode 100644 index 000000000000..a030088c5041 --- /dev/null +++ b/StorageControl/src/V2/IntelligenceFinding/ThrottledRequestSpike.php @@ -0,0 +1,145 @@ +google.storage.control.v2.IntelligenceFinding.ThrottledRequestSpike + */ +class ThrottledRequestSpike extends \Google\Protobuf\Internal\Message +{ + /** + * Output only. The count of throttled requests across the project. + * + * Generated from protobuf field int64 throttled_requests = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $throttled_requests = 0; + /** + * Output only. The percentage increase in throttled requests across the + * project. + * + * Generated from protobuf field double percentage_increase = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $percentage_increase = 0.0; + /** + * Output only. A list of top buckets driving the increase in throttled + * requests. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFinding.ThrottledRequestSpike.BucketContribution top_buckets = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + private $top_buckets; + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type int|string $throttled_requests + * Output only. The count of throttled requests across the project. + * @type float $percentage_increase + * Output only. The percentage increase in throttled requests across the + * project. + * @type \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ThrottledRequestSpike\BucketContribution[] $top_buckets + * Output only. A list of top buckets driving the increase in throttled + * requests. + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Storage\Control\V2\StorageControl::initOnce(); + parent::__construct($data); + } + + /** + * Output only. The count of throttled requests across the project. + * + * Generated from protobuf field int64 throttled_requests = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return int|string + */ + public function getThrottledRequests() + { + return $this->throttled_requests; + } + + /** + * Output only. The count of throttled requests across the project. + * + * Generated from protobuf field int64 throttled_requests = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param int|string $var + * @return $this + */ + public function setThrottledRequests($var) + { + GPBUtil::checkInt64($var); + $this->throttled_requests = $var; + + return $this; + } + + /** + * Output only. The percentage increase in throttled requests across the + * project. + * + * Generated from protobuf field double percentage_increase = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return float + */ + public function getPercentageIncrease() + { + return $this->percentage_increase; + } + + /** + * Output only. The percentage increase in throttled requests across the + * project. + * + * Generated from protobuf field double percentage_increase = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param float $var + * @return $this + */ + public function setPercentageIncrease($var) + { + GPBUtil::checkDouble($var); + $this->percentage_increase = $var; + + return $this; + } + + /** + * Output only. A list of top buckets driving the increase in throttled + * requests. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFinding.ThrottledRequestSpike.BucketContribution top_buckets = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return RepeatedField<\Google\Cloud\Storage\Control\V2\IntelligenceFinding\ThrottledRequestSpike\BucketContribution> + */ + public function getTopBuckets() + { + return $this->top_buckets; + } + + /** + * Output only. A list of top buckets driving the increase in throttled + * requests. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFinding.ThrottledRequestSpike.BucketContribution top_buckets = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ThrottledRequestSpike\BucketContribution[] $var + * @return $this + */ + public function setTopBuckets($var) + { + $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ThrottledRequestSpike\BucketContribution::class); + $this->top_buckets = $arr; + + return $this; + } + +} + diff --git a/StorageControl/src/V2/IntelligenceFinding/ThrottledRequestSpike/BucketContribution.php b/StorageControl/src/V2/IntelligenceFinding/ThrottledRequestSpike/BucketContribution.php new file mode 100644 index 000000000000..5852e349655d --- /dev/null +++ b/StorageControl/src/V2/IntelligenceFinding/ThrottledRequestSpike/BucketContribution.php @@ -0,0 +1,217 @@ +google.storage.control.v2.IntelligenceFinding.ThrottledRequestSpike.BucketContribution + */ +class BucketContribution extends \Google\Protobuf\Internal\Message +{ + /** + * Output only. The name of the bucket. + * + * Generated from protobuf field string bucket = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { + */ + protected $bucket = ''; + /** + * Output only. The count of throttled requests for the bucket. + * + * Generated from protobuf field int64 throttled_requests = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $throttled_requests = 0; + /** + * Output only. The percentage increase in throttled requests for the + * bucket. + * + * Generated from protobuf field double percentage_increase = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $percentage_increase = 0.0; + protected $details; + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $bucket + * Output only. The name of the bucket. + * @type int|string $throttled_requests + * Output only. The count of throttled requests for the bucket. + * @type float $percentage_increase + * Output only. The percentage increase in throttled requests for the + * bucket. + * @type \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ThrottledRequestSpike\BucketContribution\Contribution $contribution + * Output only. The details about the contribution of the bucket. + * @type \Google\Rpc\Status $error + * Output only. The error related to accessing the details about the + * contribution of the bucket. + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Storage\Control\V2\StorageControl::initOnce(); + parent::__construct($data); + } + + /** + * Output only. The name of the bucket. + * + * Generated from protobuf field string bucket = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { + * @return string + */ + public function getBucket() + { + return $this->bucket; + } + + /** + * Output only. The name of the bucket. + * + * Generated from protobuf field string bucket = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = { + * @param string $var + * @return $this + */ + public function setBucket($var) + { + GPBUtil::checkString($var, True); + $this->bucket = $var; + + return $this; + } + + /** + * Output only. The count of throttled requests for the bucket. + * + * Generated from protobuf field int64 throttled_requests = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return int|string + */ + public function getThrottledRequests() + { + return $this->throttled_requests; + } + + /** + * Output only. The count of throttled requests for the bucket. + * + * Generated from protobuf field int64 throttled_requests = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param int|string $var + * @return $this + */ + public function setThrottledRequests($var) + { + GPBUtil::checkInt64($var); + $this->throttled_requests = $var; + + return $this; + } + + /** + * Output only. The percentage increase in throttled requests for the + * bucket. + * + * Generated from protobuf field double percentage_increase = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return float + */ + public function getPercentageIncrease() + { + return $this->percentage_increase; + } + + /** + * Output only. The percentage increase in throttled requests for the + * bucket. + * + * Generated from protobuf field double percentage_increase = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param float $var + * @return $this + */ + public function setPercentageIncrease($var) + { + GPBUtil::checkDouble($var); + $this->percentage_increase = $var; + + return $this; + } + + /** + * Output only. The details about the contribution of the bucket. + * + * Generated from protobuf field .google.storage.control.v2.IntelligenceFinding.ThrottledRequestSpike.BucketContribution.Contribution contribution = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ThrottledRequestSpike\BucketContribution\Contribution|null + */ + public function getContribution() + { + return $this->readOneof(4); + } + + public function hasContribution() + { + return $this->hasOneof(4); + } + + /** + * Output only. The details about the contribution of the bucket. + * + * Generated from protobuf field .google.storage.control.v2.IntelligenceFinding.ThrottledRequestSpike.BucketContribution.Contribution contribution = 4 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ThrottledRequestSpike\BucketContribution\Contribution $var + * @return $this + */ + public function setContribution($var) + { + GPBUtil::checkMessage($var, \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ThrottledRequestSpike\BucketContribution\Contribution::class); + $this->writeOneof(4, $var); + + return $this; + } + + /** + * Output only. The error related to accessing the details about the + * contribution of the bucket. + * + * Generated from protobuf field .google.rpc.Status error = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return \Google\Rpc\Status|null + */ + public function getError() + { + return $this->readOneof(5); + } + + public function hasError() + { + return $this->hasOneof(5); + } + + /** + * Output only. The error related to accessing the details about the + * contribution of the bucket. + * + * Generated from protobuf field .google.rpc.Status error = 5 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Rpc\Status $var + * @return $this + */ + public function setError($var) + { + GPBUtil::checkMessage($var, \Google\Rpc\Status::class); + $this->writeOneof(5, $var); + + return $this; + } + + /** + * @return string + */ + public function getDetails() + { + return $this->whichOneof("details"); + } + +} + diff --git a/StorageControl/src/V2/IntelligenceFinding/ThrottledRequestSpike/BucketContribution/Contribution.php b/StorageControl/src/V2/IntelligenceFinding/ThrottledRequestSpike/BucketContribution/Contribution.php new file mode 100644 index 000000000000..bcc955077a85 --- /dev/null +++ b/StorageControl/src/V2/IntelligenceFinding/ThrottledRequestSpike/BucketContribution/Contribution.php @@ -0,0 +1,72 @@ +google.storage.control.v2.IntelligenceFinding.ThrottledRequestSpike.BucketContribution.Contribution + */ +class Contribution extends \Google\Protobuf\Internal\Message +{ + /** + * Output only. A list of top object prefixes driving the increase in + * throttled requests. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFinding.ThrottledRequestSpike.BucketContribution.Contribution.PrefixContribution top_prefixes = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + private $top_prefixes; + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ThrottledRequestSpike\BucketContribution\Contribution\PrefixContribution[] $top_prefixes + * Output only. A list of top object prefixes driving the increase in + * throttled requests. + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Storage\Control\V2\StorageControl::initOnce(); + parent::__construct($data); + } + + /** + * Output only. A list of top object prefixes driving the increase in + * throttled requests. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFinding.ThrottledRequestSpike.BucketContribution.Contribution.PrefixContribution top_prefixes = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return RepeatedField<\Google\Cloud\Storage\Control\V2\IntelligenceFinding\ThrottledRequestSpike\BucketContribution\Contribution\PrefixContribution> + */ + public function getTopPrefixes() + { + return $this->top_prefixes; + } + + /** + * Output only. A list of top object prefixes driving the increase in + * throttled requests. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFinding.ThrottledRequestSpike.BucketContribution.Contribution.PrefixContribution top_prefixes = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ThrottledRequestSpike\BucketContribution\Contribution\PrefixContribution[] $var + * @return $this + */ + public function setTopPrefixes($var) + { + $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\Storage\Control\V2\IntelligenceFinding\ThrottledRequestSpike\BucketContribution\Contribution\PrefixContribution::class); + $this->top_prefixes = $arr; + + return $this; + } + +} + diff --git a/StorageControl/src/V2/IntelligenceFinding/ThrottledRequestSpike/BucketContribution/Contribution/PrefixContribution.php b/StorageControl/src/V2/IntelligenceFinding/ThrottledRequestSpike/BucketContribution/Contribution/PrefixContribution.php new file mode 100644 index 000000000000..ca9457f418c1 --- /dev/null +++ b/StorageControl/src/V2/IntelligenceFinding/ThrottledRequestSpike/BucketContribution/Contribution/PrefixContribution.php @@ -0,0 +1,143 @@ +google.storage.control.v2.IntelligenceFinding.ThrottledRequestSpike.BucketContribution.Contribution.PrefixContribution + */ +class PrefixContribution extends \Google\Protobuf\Internal\Message +{ + /** + * Output only. The object prefix. + * Format: `a/b/c`, 'a/b/d', etc. + * + * Generated from protobuf field string prefix = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $prefix = ''; + /** + * Output only. The count of throttled requests for the object prefix. + * + * Generated from protobuf field int64 throttled_requests = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $throttled_requests = 0; + /** + * Output only. The percentage increase in throttled requests for the + * object prefix. + * + * Generated from protobuf field double percentage_increase = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $percentage_increase = 0.0; + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $prefix + * Output only. The object prefix. + * Format: `a/b/c`, 'a/b/d', etc. + * @type int|string $throttled_requests + * Output only. The count of throttled requests for the object prefix. + * @type float $percentage_increase + * Output only. The percentage increase in throttled requests for the + * object prefix. + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Storage\Control\V2\StorageControl::initOnce(); + parent::__construct($data); + } + + /** + * Output only. The object prefix. + * Format: `a/b/c`, 'a/b/d', etc. + * + * Generated from protobuf field string prefix = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return string + */ + public function getPrefix() + { + return $this->prefix; + } + + /** + * Output only. The object prefix. + * Format: `a/b/c`, 'a/b/d', etc. + * + * Generated from protobuf field string prefix = 1 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param string $var + * @return $this + */ + public function setPrefix($var) + { + GPBUtil::checkString($var, True); + $this->prefix = $var; + + return $this; + } + + /** + * Output only. The count of throttled requests for the object prefix. + * + * Generated from protobuf field int64 throttled_requests = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return int|string + */ + public function getThrottledRequests() + { + return $this->throttled_requests; + } + + /** + * Output only. The count of throttled requests for the object prefix. + * + * Generated from protobuf field int64 throttled_requests = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param int|string $var + * @return $this + */ + public function setThrottledRequests($var) + { + GPBUtil::checkInt64($var); + $this->throttled_requests = $var; + + return $this; + } + + /** + * Output only. The percentage increase in throttled requests for the + * object prefix. + * + * Generated from protobuf field double percentage_increase = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return float + */ + public function getPercentageIncrease() + { + return $this->percentage_increase; + } + + /** + * Output only. The percentage increase in throttled requests for the + * object prefix. + * + * Generated from protobuf field double percentage_increase = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param float $var + * @return $this + */ + public function setPercentageIncrease($var) + { + GPBUtil::checkDouble($var); + $this->percentage_increase = $var; + + return $this; + } + +} + diff --git a/StorageControl/src/V2/IntelligenceFindingRevision.php b/StorageControl/src/V2/IntelligenceFindingRevision.php new file mode 100644 index 000000000000..c2aab16b1cfb --- /dev/null +++ b/StorageControl/src/V2/IntelligenceFindingRevision.php @@ -0,0 +1,172 @@ +google.storage.control.v2.IntelligenceFindingRevision + */ +class IntelligenceFindingRevision extends \Google\Protobuf\Internal\Message +{ + /** + * Identifier. The resource name of `IntelligenceFindingRevision`. + * Format: + * `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}/revisions/{revision}` + * + * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; + */ + protected $name = ''; + /** + * Output only. The snapshot of the `IntelligenceFinding` at the time the + * revision was created. This field contains the full finding details as they + * existed for the revision. + * + * Generated from protobuf field .google.storage.control.v2.IntelligenceFinding snapshot = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $snapshot = null; + /** + * Output only. The timestamp when the revision was created. + * + * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + */ + protected $create_time = null; + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $name + * Identifier. The resource name of `IntelligenceFindingRevision`. + * Format: + * `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}/revisions/{revision}` + * @type \Google\Cloud\Storage\Control\V2\IntelligenceFinding $snapshot + * Output only. The snapshot of the `IntelligenceFinding` at the time the + * revision was created. This field contains the full finding details as they + * existed for the revision. + * @type \Google\Protobuf\Timestamp $create_time + * Output only. The timestamp when the revision was created. + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Storage\Control\V2\StorageControl::initOnce(); + parent::__construct($data); + } + + /** + * Identifier. The resource name of `IntelligenceFindingRevision`. + * Format: + * `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}/revisions/{revision}` + * + * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; + * @return string + */ + public function getName() + { + return $this->name; + } + + /** + * Identifier. The resource name of `IntelligenceFindingRevision`. + * Format: + * `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}/revisions/{revision}` + * + * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IDENTIFIER]; + * @param string $var + * @return $this + */ + public function setName($var) + { + GPBUtil::checkString($var, True); + $this->name = $var; + + return $this; + } + + /** + * Output only. The snapshot of the `IntelligenceFinding` at the time the + * revision was created. This field contains the full finding details as they + * existed for the revision. + * + * Generated from protobuf field .google.storage.control.v2.IntelligenceFinding snapshot = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return \Google\Cloud\Storage\Control\V2\IntelligenceFinding|null + */ + public function getSnapshot() + { + return $this->snapshot; + } + + public function hasSnapshot() + { + return isset($this->snapshot); + } + + public function clearSnapshot() + { + unset($this->snapshot); + } + + /** + * Output only. The snapshot of the `IntelligenceFinding` at the time the + * revision was created. This field contains the full finding details as they + * existed for the revision. + * + * Generated from protobuf field .google.storage.control.v2.IntelligenceFinding snapshot = 2 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Cloud\Storage\Control\V2\IntelligenceFinding $var + * @return $this + */ + public function setSnapshot($var) + { + GPBUtil::checkMessage($var, \Google\Cloud\Storage\Control\V2\IntelligenceFinding::class); + $this->snapshot = $var; + + return $this; + } + + /** + * Output only. The timestamp when the revision was created. + * + * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @return \Google\Protobuf\Timestamp|null + */ + public function getCreateTime() + { + return $this->create_time; + } + + public function hasCreateTime() + { + return isset($this->create_time); + } + + public function clearCreateTime() + { + unset($this->create_time); + } + + /** + * Output only. The timestamp when the revision was created. + * + * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY]; + * @param \Google\Protobuf\Timestamp $var + * @return $this + */ + public function setCreateTime($var) + { + GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class); + $this->create_time = $var; + + return $this; + } + +} + diff --git a/StorageControl/src/V2/ListIntelligenceFindingRevisionsRequest.php b/StorageControl/src/V2/ListIntelligenceFindingRevisionsRequest.php new file mode 100644 index 000000000000..46d060ee666c --- /dev/null +++ b/StorageControl/src/V2/ListIntelligenceFindingRevisionsRequest.php @@ -0,0 +1,181 @@ +google.storage.control.v2.ListIntelligenceFindingRevisionsRequest + */ +class ListIntelligenceFindingRevisionsRequest extends \Google\Protobuf\Internal\Message +{ + /** + * Required. The parent of the `IntelligenceFindingRevision` resource. + * ## Format: + * `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}` + * + * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { + */ + protected $parent = ''; + /** + * Optional. The maximum number of `IntelligenceFindingRevision` resources to + * return. + * The maximum value is `100`; values above `100` will be coerced to `100`. + * The default value is `100`. + * + * Generated from protobuf field int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL]; + */ + protected $page_size = 0; + /** + * Optional. A page token, received from a previous + * `ListIntelligenceFindingRevisions` call. Provide this to retrieve the + * subsequent page. + * + * Generated from protobuf field string page_token = 3 [(.google.api.field_behavior) = OPTIONAL]; + */ + protected $page_token = ''; + + /** + * @param string $parent Required. The parent of the `IntelligenceFindingRevision` resource. + * ## Format: + * + * `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}` + * Please see {@see StorageControlClient::intelligenceFindingName()} for help formatting this field. + * + * @return \Google\Cloud\Storage\Control\V2\ListIntelligenceFindingRevisionsRequest + * + * @experimental + */ + public static function build(string $parent): self + { + return (new self()) + ->setParent($parent); + } + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $parent + * Required. The parent of the `IntelligenceFindingRevision` resource. + * ## Format: + * `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}` + * @type int $page_size + * Optional. The maximum number of `IntelligenceFindingRevision` resources to + * return. + * The maximum value is `100`; values above `100` will be coerced to `100`. + * The default value is `100`. + * @type string $page_token + * Optional. A page token, received from a previous + * `ListIntelligenceFindingRevisions` call. Provide this to retrieve the + * subsequent page. + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Storage\Control\V2\StorageControl::initOnce(); + parent::__construct($data); + } + + /** + * Required. The parent of the `IntelligenceFindingRevision` resource. + * ## Format: + * `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}` + * + * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { + * @return string + */ + public function getParent() + { + return $this->parent; + } + + /** + * Required. The parent of the `IntelligenceFindingRevision` resource. + * ## Format: + * `projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}` + * + * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { + * @param string $var + * @return $this + */ + public function setParent($var) + { + GPBUtil::checkString($var, True); + $this->parent = $var; + + return $this; + } + + /** + * Optional. The maximum number of `IntelligenceFindingRevision` resources to + * return. + * The maximum value is `100`; values above `100` will be coerced to `100`. + * The default value is `100`. + * + * Generated from protobuf field int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL]; + * @return int + */ + public function getPageSize() + { + return $this->page_size; + } + + /** + * Optional. The maximum number of `IntelligenceFindingRevision` resources to + * return. + * The maximum value is `100`; values above `100` will be coerced to `100`. + * The default value is `100`. + * + * Generated from protobuf field int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL]; + * @param int $var + * @return $this + */ + public function setPageSize($var) + { + GPBUtil::checkInt32($var); + $this->page_size = $var; + + return $this; + } + + /** + * Optional. A page token, received from a previous + * `ListIntelligenceFindingRevisions` call. Provide this to retrieve the + * subsequent page. + * + * Generated from protobuf field string page_token = 3 [(.google.api.field_behavior) = OPTIONAL]; + * @return string + */ + public function getPageToken() + { + return $this->page_token; + } + + /** + * Optional. A page token, received from a previous + * `ListIntelligenceFindingRevisions` call. Provide this to retrieve the + * subsequent page. + * + * Generated from protobuf field string page_token = 3 [(.google.api.field_behavior) = OPTIONAL]; + * @param string $var + * @return $this + */ + public function setPageToken($var) + { + GPBUtil::checkString($var, True); + $this->page_token = $var; + + return $this; + } + +} + diff --git a/StorageControl/src/V2/ListIntelligenceFindingRevisionsResponse.php b/StorageControl/src/V2/ListIntelligenceFindingRevisionsResponse.php new file mode 100644 index 000000000000..a4405f4afe74 --- /dev/null +++ b/StorageControl/src/V2/ListIntelligenceFindingRevisionsResponse.php @@ -0,0 +1,102 @@ +google.storage.control.v2.ListIntelligenceFindingRevisionsResponse + */ +class ListIntelligenceFindingRevisionsResponse extends \Google\Protobuf\Internal\Message +{ + /** + * The `IntelligenceFindingRevision` resources from the specified project. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFindingRevision intelligence_finding_revisions = 1; + */ + private $intelligence_finding_revisions; + /** + * A token that can be sent as `page_token` to retrieve the next page. + * + * Generated from protobuf field string next_page_token = 2; + */ + protected $next_page_token = ''; + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type \Google\Cloud\Storage\Control\V2\IntelligenceFindingRevision[] $intelligence_finding_revisions + * The `IntelligenceFindingRevision` resources from the specified project. + * @type string $next_page_token + * A token that can be sent as `page_token` to retrieve the next page. + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Storage\Control\V2\StorageControl::initOnce(); + parent::__construct($data); + } + + /** + * The `IntelligenceFindingRevision` resources from the specified project. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFindingRevision intelligence_finding_revisions = 1; + * @return RepeatedField<\Google\Cloud\Storage\Control\V2\IntelligenceFindingRevision> + */ + public function getIntelligenceFindingRevisions() + { + return $this->intelligence_finding_revisions; + } + + /** + * The `IntelligenceFindingRevision` resources from the specified project. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFindingRevision intelligence_finding_revisions = 1; + * @param \Google\Cloud\Storage\Control\V2\IntelligenceFindingRevision[] $var + * @return $this + */ + public function setIntelligenceFindingRevisions($var) + { + $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\Storage\Control\V2\IntelligenceFindingRevision::class); + $this->intelligence_finding_revisions = $arr; + + return $this; + } + + /** + * A token that can be sent as `page_token` to retrieve the next page. + * + * Generated from protobuf field string next_page_token = 2; + * @return string + */ + public function getNextPageToken() + { + return $this->next_page_token; + } + + /** + * A token that can be sent as `page_token` to retrieve the next page. + * + * Generated from protobuf field string next_page_token = 2; + * @param string $var + * @return $this + */ + public function setNextPageToken($var) + { + GPBUtil::checkString($var, True); + $this->next_page_token = $var; + + return $this; + } + +} + diff --git a/StorageControl/src/V2/ListIntelligenceFindingsRequest.php b/StorageControl/src/V2/ListIntelligenceFindingsRequest.php new file mode 100644 index 000000000000..09e43da2db45 --- /dev/null +++ b/StorageControl/src/V2/ListIntelligenceFindingsRequest.php @@ -0,0 +1,218 @@ +google.storage.control.v2.ListIntelligenceFindingsRequest + */ +class ListIntelligenceFindingsRequest extends \Google\Protobuf\Internal\Message +{ + /** + * Required. The parent of the `IntelligenceFinding` resource. + * Format: `projects/{project}/locations/{location}` + * + * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { + */ + protected $parent = ''; + /** + * Optional. The filter expression to be applied. + * Supports filtering by `type` and `associated_resources`. + * + * Generated from protobuf field string filter = 2 [(.google.api.field_behavior) = OPTIONAL]; + */ + protected $filter = ''; + /** + * Optional. The maximum number of `IntelligenceFinding` resources to return. + * The maximum value is `100`; values above `100` will be coerced to `100`. + * The default value is `100`. + * + * Generated from protobuf field int32 page_size = 3 [(.google.api.field_behavior) = OPTIONAL]; + */ + protected $page_size = 0; + /** + * Optional. A page token, received from a previous `ListIntelligenceFindings` + * call. Provide this to retrieve the subsequent page. + * When paginating, all other parameters provided to + * `ListIntelligenceFindings` must match the call that provided the page + * token. + * + * Generated from protobuf field string page_token = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + protected $page_token = ''; + + /** + * @param string $parent Required. The parent of the `IntelligenceFinding` resource. + * + * Format: `projects/{project}/locations/{location}` + * Please see {@see StorageControlClient::locationName()} for help formatting this field. + * + * @return \Google\Cloud\Storage\Control\V2\ListIntelligenceFindingsRequest + * + * @experimental + */ + public static function build(string $parent): self + { + return (new self()) + ->setParent($parent); + } + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $parent + * Required. The parent of the `IntelligenceFinding` resource. + * Format: `projects/{project}/locations/{location}` + * @type string $filter + * Optional. The filter expression to be applied. + * Supports filtering by `type` and `associated_resources`. + * @type int $page_size + * Optional. The maximum number of `IntelligenceFinding` resources to return. + * The maximum value is `100`; values above `100` will be coerced to `100`. + * The default value is `100`. + * @type string $page_token + * Optional. A page token, received from a previous `ListIntelligenceFindings` + * call. Provide this to retrieve the subsequent page. + * When paginating, all other parameters provided to + * `ListIntelligenceFindings` must match the call that provided the page + * token. + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Storage\Control\V2\StorageControl::initOnce(); + parent::__construct($data); + } + + /** + * Required. The parent of the `IntelligenceFinding` resource. + * Format: `projects/{project}/locations/{location}` + * + * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { + * @return string + */ + public function getParent() + { + return $this->parent; + } + + /** + * Required. The parent of the `IntelligenceFinding` resource. + * Format: `projects/{project}/locations/{location}` + * + * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { + * @param string $var + * @return $this + */ + public function setParent($var) + { + GPBUtil::checkString($var, True); + $this->parent = $var; + + return $this; + } + + /** + * Optional. The filter expression to be applied. + * Supports filtering by `type` and `associated_resources`. + * + * Generated from protobuf field string filter = 2 [(.google.api.field_behavior) = OPTIONAL]; + * @return string + */ + public function getFilter() + { + return $this->filter; + } + + /** + * Optional. The filter expression to be applied. + * Supports filtering by `type` and `associated_resources`. + * + * Generated from protobuf field string filter = 2 [(.google.api.field_behavior) = OPTIONAL]; + * @param string $var + * @return $this + */ + public function setFilter($var) + { + GPBUtil::checkString($var, True); + $this->filter = $var; + + return $this; + } + + /** + * Optional. The maximum number of `IntelligenceFinding` resources to return. + * The maximum value is `100`; values above `100` will be coerced to `100`. + * The default value is `100`. + * + * Generated from protobuf field int32 page_size = 3 [(.google.api.field_behavior) = OPTIONAL]; + * @return int + */ + public function getPageSize() + { + return $this->page_size; + } + + /** + * Optional. The maximum number of `IntelligenceFinding` resources to return. + * The maximum value is `100`; values above `100` will be coerced to `100`. + * The default value is `100`. + * + * Generated from protobuf field int32 page_size = 3 [(.google.api.field_behavior) = OPTIONAL]; + * @param int $var + * @return $this + */ + public function setPageSize($var) + { + GPBUtil::checkInt32($var); + $this->page_size = $var; + + return $this; + } + + /** + * Optional. A page token, received from a previous `ListIntelligenceFindings` + * call. Provide this to retrieve the subsequent page. + * When paginating, all other parameters provided to + * `ListIntelligenceFindings` must match the call that provided the page + * token. + * + * Generated from protobuf field string page_token = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return string + */ + public function getPageToken() + { + return $this->page_token; + } + + /** + * Optional. A page token, received from a previous `ListIntelligenceFindings` + * call. Provide this to retrieve the subsequent page. + * When paginating, all other parameters provided to + * `ListIntelligenceFindings` must match the call that provided the page + * token. + * + * Generated from protobuf field string page_token = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @param string $var + * @return $this + */ + public function setPageToken($var) + { + GPBUtil::checkString($var, True); + $this->page_token = $var; + + return $this; + } + +} + diff --git a/StorageControl/src/V2/ListIntelligenceFindingsResponse.php b/StorageControl/src/V2/ListIntelligenceFindingsResponse.php new file mode 100644 index 000000000000..b429795edbc4 --- /dev/null +++ b/StorageControl/src/V2/ListIntelligenceFindingsResponse.php @@ -0,0 +1,106 @@ +google.storage.control.v2.ListIntelligenceFindingsResponse + */ +class ListIntelligenceFindingsResponse extends \Google\Protobuf\Internal\Message +{ + /** + * The `IntelligenceFinding` resources from the specified project. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFinding intelligence_findings = 1; + */ + private $intelligence_findings; + /** + * A token to retrieve the next page of results. + * Pass this value in the `page_token` field in the subsequent call. + * + * Generated from protobuf field string next_page_token = 2; + */ + protected $next_page_token = ''; + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type \Google\Cloud\Storage\Control\V2\IntelligenceFinding[] $intelligence_findings + * The `IntelligenceFinding` resources from the specified project. + * @type string $next_page_token + * A token to retrieve the next page of results. + * Pass this value in the `page_token` field in the subsequent call. + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Storage\Control\V2\StorageControl::initOnce(); + parent::__construct($data); + } + + /** + * The `IntelligenceFinding` resources from the specified project. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFinding intelligence_findings = 1; + * @return RepeatedField<\Google\Cloud\Storage\Control\V2\IntelligenceFinding> + */ + public function getIntelligenceFindings() + { + return $this->intelligence_findings; + } + + /** + * The `IntelligenceFinding` resources from the specified project. + * + * Generated from protobuf field repeated .google.storage.control.v2.IntelligenceFinding intelligence_findings = 1; + * @param \Google\Cloud\Storage\Control\V2\IntelligenceFinding[] $var + * @return $this + */ + public function setIntelligenceFindings($var) + { + $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\Storage\Control\V2\IntelligenceFinding::class); + $this->intelligence_findings = $arr; + + return $this; + } + + /** + * A token to retrieve the next page of results. + * Pass this value in the `page_token` field in the subsequent call. + * + * Generated from protobuf field string next_page_token = 2; + * @return string + */ + public function getNextPageToken() + { + return $this->next_page_token; + } + + /** + * A token to retrieve the next page of results. + * Pass this value in the `page_token` field in the subsequent call. + * + * Generated from protobuf field string next_page_token = 2; + * @param string $var + * @return $this + */ + public function setNextPageToken($var) + { + GPBUtil::checkString($var, True); + $this->next_page_token = $var; + + return $this; + } + +} + diff --git a/StorageControl/src/V2/SummarizeIntelligenceFindingsRequest.php b/StorageControl/src/V2/SummarizeIntelligenceFindingsRequest.php new file mode 100644 index 000000000000..7b670ac9a5dc --- /dev/null +++ b/StorageControl/src/V2/SummarizeIntelligenceFindingsRequest.php @@ -0,0 +1,301 @@ +google.storage.control.v2.SummarizeIntelligenceFindingsRequest + */ +class SummarizeIntelligenceFindingsRequest extends \Google\Protobuf\Internal\Message +{ + /** + * Required. The scope to summarize the findings for. + * Format: + * - `organizations/{organization}/locations/{location}` + * - `folders/{folder}/locations/{location}` + * - `projects/{project}/locations/{location}` + * + * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + */ + protected $parent = ''; + /** + * Optional. Determines the granularity of the findings + * when the `parent` is an organization or folder. + * - `PARENT` (or not set): A single summary is + * returned for each insight type, aggregated across the entire `parent` + * scope. + * - `PROJECT`: A separate summary is returned for each + * insight type for every project within the `parent` scope. + * The only supported values are `PARENT` and `PROJECT`. + * If no value is specified, the API behaviour defaults to the `PARENT`. + * + * Generated from protobuf field .google.storage.control.v2.SummarizeIntelligenceFindingsRequest.ResourceScope resource_scope = 2 [(.google.api.field_behavior) = OPTIONAL]; + */ + protected $resource_scope = 0; + /** + * Optional. The filter expression, following AIP-160. + * Supports filtering by FindingType. + * + * Generated from protobuf field string filter = 3 [(.google.api.field_behavior) = OPTIONAL]; + */ + protected $filter = ''; + /** + * Optional. The maximum number of findings to return. + * The maximum value is `100`; values above `100` will be coerced to `100`. + * The default value is `100`. + * + * Generated from protobuf field int32 page_size = 4 [(.google.api.field_behavior) = OPTIONAL]; + */ + protected $page_size = 0; + /** + * Optional. A page token, received from a previous + * `SummarizeIntelligenceFindings` call. Provide this to retrieve the + * subsequent page. + * When paginating, all other parameters provided to + * `SummarizeIntelligenceFindings` must match the call that provided the page + * token. + * + * Generated from protobuf field string page_token = 5 [(.google.api.field_behavior) = OPTIONAL]; + */ + protected $page_token = ''; + + /** + * @param string $parent Required. The scope to summarize the findings for. + * Format: + * - `organizations/{organization}/locations/{location}` + * - `folders/{folder}/locations/{location}` + * - `projects/{project}/locations/{location}` + * + * @return \Google\Cloud\Storage\Control\V2\SummarizeIntelligenceFindingsRequest + * + * @experimental + */ + public static function build(string $parent): self + { + return (new self()) + ->setParent($parent); + } + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type string $parent + * Required. The scope to summarize the findings for. + * Format: + * - `organizations/{organization}/locations/{location}` + * - `folders/{folder}/locations/{location}` + * - `projects/{project}/locations/{location}` + * @type int $resource_scope + * Optional. Determines the granularity of the findings + * when the `parent` is an organization or folder. + * - `PARENT` (or not set): A single summary is + * returned for each insight type, aggregated across the entire `parent` + * scope. + * - `PROJECT`: A separate summary is returned for each + * insight type for every project within the `parent` scope. + * The only supported values are `PARENT` and `PROJECT`. + * If no value is specified, the API behaviour defaults to the `PARENT`. + * @type string $filter + * Optional. The filter expression, following AIP-160. + * Supports filtering by FindingType. + * @type int $page_size + * Optional. The maximum number of findings to return. + * The maximum value is `100`; values above `100` will be coerced to `100`. + * The default value is `100`. + * @type string $page_token + * Optional. A page token, received from a previous + * `SummarizeIntelligenceFindings` call. Provide this to retrieve the + * subsequent page. + * When paginating, all other parameters provided to + * `SummarizeIntelligenceFindings` must match the call that provided the page + * token. + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Storage\Control\V2\StorageControl::initOnce(); + parent::__construct($data); + } + + /** + * Required. The scope to summarize the findings for. + * Format: + * - `organizations/{organization}/locations/{location}` + * - `folders/{folder}/locations/{location}` + * - `projects/{project}/locations/{location}` + * + * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * @return string + */ + public function getParent() + { + return $this->parent; + } + + /** + * Required. The scope to summarize the findings for. + * Format: + * - `organizations/{organization}/locations/{location}` + * - `folders/{folder}/locations/{location}` + * - `projects/{project}/locations/{location}` + * + * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED]; + * @param string $var + * @return $this + */ + public function setParent($var) + { + GPBUtil::checkString($var, True); + $this->parent = $var; + + return $this; + } + + /** + * Optional. Determines the granularity of the findings + * when the `parent` is an organization or folder. + * - `PARENT` (or not set): A single summary is + * returned for each insight type, aggregated across the entire `parent` + * scope. + * - `PROJECT`: A separate summary is returned for each + * insight type for every project within the `parent` scope. + * The only supported values are `PARENT` and `PROJECT`. + * If no value is specified, the API behaviour defaults to the `PARENT`. + * + * Generated from protobuf field .google.storage.control.v2.SummarizeIntelligenceFindingsRequest.ResourceScope resource_scope = 2 [(.google.api.field_behavior) = OPTIONAL]; + * @return int + */ + public function getResourceScope() + { + return $this->resource_scope; + } + + /** + * Optional. Determines the granularity of the findings + * when the `parent` is an organization or folder. + * - `PARENT` (or not set): A single summary is + * returned for each insight type, aggregated across the entire `parent` + * scope. + * - `PROJECT`: A separate summary is returned for each + * insight type for every project within the `parent` scope. + * The only supported values are `PARENT` and `PROJECT`. + * If no value is specified, the API behaviour defaults to the `PARENT`. + * + * Generated from protobuf field .google.storage.control.v2.SummarizeIntelligenceFindingsRequest.ResourceScope resource_scope = 2 [(.google.api.field_behavior) = OPTIONAL]; + * @param int $var + * @return $this + */ + public function setResourceScope($var) + { + GPBUtil::checkEnum($var, \Google\Cloud\Storage\Control\V2\SummarizeIntelligenceFindingsRequest\ResourceScope::class); + $this->resource_scope = $var; + + return $this; + } + + /** + * Optional. The filter expression, following AIP-160. + * Supports filtering by FindingType. + * + * Generated from protobuf field string filter = 3 [(.google.api.field_behavior) = OPTIONAL]; + * @return string + */ + public function getFilter() + { + return $this->filter; + } + + /** + * Optional. The filter expression, following AIP-160. + * Supports filtering by FindingType. + * + * Generated from protobuf field string filter = 3 [(.google.api.field_behavior) = OPTIONAL]; + * @param string $var + * @return $this + */ + public function setFilter($var) + { + GPBUtil::checkString($var, True); + $this->filter = $var; + + return $this; + } + + /** + * Optional. The maximum number of findings to return. + * The maximum value is `100`; values above `100` will be coerced to `100`. + * The default value is `100`. + * + * Generated from protobuf field int32 page_size = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @return int + */ + public function getPageSize() + { + return $this->page_size; + } + + /** + * Optional. The maximum number of findings to return. + * The maximum value is `100`; values above `100` will be coerced to `100`. + * The default value is `100`. + * + * Generated from protobuf field int32 page_size = 4 [(.google.api.field_behavior) = OPTIONAL]; + * @param int $var + * @return $this + */ + public function setPageSize($var) + { + GPBUtil::checkInt32($var); + $this->page_size = $var; + + return $this; + } + + /** + * Optional. A page token, received from a previous + * `SummarizeIntelligenceFindings` call. Provide this to retrieve the + * subsequent page. + * When paginating, all other parameters provided to + * `SummarizeIntelligenceFindings` must match the call that provided the page + * token. + * + * Generated from protobuf field string page_token = 5 [(.google.api.field_behavior) = OPTIONAL]; + * @return string + */ + public function getPageToken() + { + return $this->page_token; + } + + /** + * Optional. A page token, received from a previous + * `SummarizeIntelligenceFindings` call. Provide this to retrieve the + * subsequent page. + * When paginating, all other parameters provided to + * `SummarizeIntelligenceFindings` must match the call that provided the page + * token. + * + * Generated from protobuf field string page_token = 5 [(.google.api.field_behavior) = OPTIONAL]; + * @param string $var + * @return $this + */ + public function setPageToken($var) + { + GPBUtil::checkString($var, True); + $this->page_token = $var; + + return $this; + } + +} + diff --git a/StorageControl/src/V2/SummarizeIntelligenceFindingsRequest/ResourceScope.php b/StorageControl/src/V2/SummarizeIntelligenceFindingsRequest/ResourceScope.php new file mode 100644 index 000000000000..e3b93d42af34 --- /dev/null +++ b/StorageControl/src/V2/SummarizeIntelligenceFindingsRequest/ResourceScope.php @@ -0,0 +1,61 @@ +google.storage.control.v2.SummarizeIntelligenceFindingsRequest.ResourceScope + */ +class ResourceScope +{ + /** + * The default behavior. Falls back to PARENT behaviour + * + * Generated from protobuf enum RESOURCE_SCOPE_UNSPECIFIED = 0; + */ + const RESOURCE_SCOPE_UNSPECIFIED = 0; + /** + * Summaries are aggregated at the level of the `parent` resource. + * + * Generated from protobuf enum PARENT = 1; + */ + const PARENT = 1; + /** + * Summaries are broken down by each project within the `parent` scope. + * + * Generated from protobuf enum PROJECT = 2; + */ + const PROJECT = 2; + + private static $valueToName = [ + self::RESOURCE_SCOPE_UNSPECIFIED => 'RESOURCE_SCOPE_UNSPECIFIED', + self::PARENT => 'PARENT', + self::PROJECT => 'PROJECT', + ]; + + public static function name($value) + { + if (!isset(self::$valueToName[$value])) { + throw new UnexpectedValueException(sprintf( + 'Enum %s has no name defined for value %s', __CLASS__, $value)); + } + return self::$valueToName[$value]; + } + + + public static function value($name) + { + $const = __CLASS__ . '::' . strtoupper($name); + if (!defined($const)) { + throw new UnexpectedValueException(sprintf( + 'Enum %s has no value defined for name %s', __CLASS__, $name)); + } + return constant($const); + } +} + diff --git a/StorageControl/src/V2/SummarizeIntelligenceFindingsResponse.php b/StorageControl/src/V2/SummarizeIntelligenceFindingsResponse.php new file mode 100644 index 000000000000..8a4680a28d1b --- /dev/null +++ b/StorageControl/src/V2/SummarizeIntelligenceFindingsResponse.php @@ -0,0 +1,110 @@ +google.storage.control.v2.SummarizeIntelligenceFindingsResponse + */ +class SummarizeIntelligenceFindingsResponse extends \Google\Protobuf\Internal\Message +{ + /** + * The list of `FindingSummary` summaries. + * + * Generated from protobuf field repeated .google.storage.control.v2.FindingSummary finding_summaries = 1; + */ + private $finding_summaries; + /** + * A token to retrieve the next page of results. + * Pass this value in the `page_token` field in the subsequent call to + * `SummarizeIntelligenceFindings` to retrieve the next page of results. + * + * Generated from protobuf field string next_page_token = 2; + */ + protected $next_page_token = ''; + + /** + * Constructor. + * + * @param array $data { + * Optional. Data for populating the Message object. + * + * @type \Google\Cloud\Storage\Control\V2\FindingSummary[] $finding_summaries + * The list of `FindingSummary` summaries. + * @type string $next_page_token + * A token to retrieve the next page of results. + * Pass this value in the `page_token` field in the subsequent call to + * `SummarizeIntelligenceFindings` to retrieve the next page of results. + * } + */ + public function __construct($data = NULL) { + \GPBMetadata\Google\Storage\Control\V2\StorageControl::initOnce(); + parent::__construct($data); + } + + /** + * The list of `FindingSummary` summaries. + * + * Generated from protobuf field repeated .google.storage.control.v2.FindingSummary finding_summaries = 1; + * @return RepeatedField<\Google\Cloud\Storage\Control\V2\FindingSummary> + */ + public function getFindingSummaries() + { + return $this->finding_summaries; + } + + /** + * The list of `FindingSummary` summaries. + * + * Generated from protobuf field repeated .google.storage.control.v2.FindingSummary finding_summaries = 1; + * @param \Google\Cloud\Storage\Control\V2\FindingSummary[] $var + * @return $this + */ + public function setFindingSummaries($var) + { + $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\Storage\Control\V2\FindingSummary::class); + $this->finding_summaries = $arr; + + return $this; + } + + /** + * A token to retrieve the next page of results. + * Pass this value in the `page_token` field in the subsequent call to + * `SummarizeIntelligenceFindings` to retrieve the next page of results. + * + * Generated from protobuf field string next_page_token = 2; + * @return string + */ + public function getNextPageToken() + { + return $this->next_page_token; + } + + /** + * A token to retrieve the next page of results. + * Pass this value in the `page_token` field in the subsequent call to + * `SummarizeIntelligenceFindings` to retrieve the next page of results. + * + * Generated from protobuf field string next_page_token = 2; + * @param string $var + * @return $this + */ + public function setNextPageToken($var) + { + GPBUtil::checkString($var, True); + $this->next_page_token = $var; + + return $this; + } + +} + diff --git a/StorageControl/src/V2/gapic_metadata.json b/StorageControl/src/V2/gapic_metadata.json index 86b444f90e16..356973e231f7 100644 --- a/StorageControl/src/V2/gapic_metadata.json +++ b/StorageControl/src/V2/gapic_metadata.json @@ -65,6 +65,16 @@ "getIamPolicy" ] }, + "GetIntelligenceFinding": { + "methods": [ + "getIntelligenceFinding" + ] + }, + "GetIntelligenceFindingRevision": { + "methods": [ + "getIntelligenceFindingRevision" + ] + }, "GetManagedFolder": { "methods": [ "getManagedFolder" @@ -95,6 +105,16 @@ "listFolders" ] }, + "ListIntelligenceFindingRevisions": { + "methods": [ + "listIntelligenceFindingRevisions" + ] + }, + "ListIntelligenceFindings": { + "methods": [ + "listIntelligenceFindings" + ] + }, "ListManagedFolders": { "methods": [ "listManagedFolders" @@ -120,6 +140,11 @@ "setIamPolicy" ] }, + "SummarizeIntelligenceFindings": { + "methods": [ + "summarizeIntelligenceFindings" + ] + }, "TestIamPermissions": { "methods": [ "testIamPermissions" diff --git a/StorageControl/src/V2/resources/storage_control_client_config.json b/StorageControl/src/V2/resources/storage_control_client_config.json index 93b69f4f75bf..48fba696916d 100644 --- a/StorageControl/src/V2/resources/storage_control_client_config.json +++ b/StorageControl/src/V2/resources/storage_control_client_config.json @@ -97,6 +97,16 @@ "retry_codes_name": "no_retry_1_codes", "retry_params_name": "no_retry_1_params" }, + "GetIntelligenceFinding": { + "timeout_millis": 60000, + "retry_codes_name": "retry_policy_1_codes", + "retry_params_name": "retry_policy_1_params" + }, + "GetIntelligenceFindingRevision": { + "timeout_millis": 60000, + "retry_codes_name": "retry_policy_1_codes", + "retry_params_name": "retry_policy_1_params" + }, "GetManagedFolder": { "timeout_millis": 60000, "retry_codes_name": "retry_policy_1_codes", @@ -127,6 +137,16 @@ "retry_codes_name": "retry_policy_1_codes", "retry_params_name": "retry_policy_1_params" }, + "ListIntelligenceFindingRevisions": { + "timeout_millis": 60000, + "retry_codes_name": "retry_policy_1_codes", + "retry_params_name": "retry_policy_1_params" + }, + "ListIntelligenceFindings": { + "timeout_millis": 60000, + "retry_codes_name": "retry_policy_1_codes", + "retry_params_name": "retry_policy_1_params" + }, "ListManagedFolders": { "timeout_millis": 60000, "retry_codes_name": "retry_policy_1_codes", @@ -152,6 +172,11 @@ "retry_codes_name": "no_retry_1_codes", "retry_params_name": "no_retry_1_params" }, + "SummarizeIntelligenceFindings": { + "timeout_millis": 60000, + "retry_codes_name": "retry_policy_1_codes", + "retry_params_name": "retry_policy_1_params" + }, "TestIamPermissions": { "timeout_millis": 60000, "retry_codes_name": "no_retry_1_codes", diff --git a/StorageControl/src/V2/resources/storage_control_descriptor_config.php b/StorageControl/src/V2/resources/storage_control_descriptor_config.php index 68d8f4d8702d..ab0db6c210d8 100644 --- a/StorageControl/src/V2/resources/storage_control_descriptor_config.php +++ b/StorageControl/src/V2/resources/storage_control_descriptor_config.php @@ -268,6 +268,30 @@ ], ], ], + 'GetIntelligenceFinding' => [ + 'callType' => \Google\ApiCore\Call::UNARY_CALL, + 'responseType' => 'Google\Cloud\Storage\Control\V2\IntelligenceFinding', + 'headerParams' => [ + [ + 'keyName' => 'name', + 'fieldAccessors' => [ + 'getName', + ], + ], + ], + ], + 'GetIntelligenceFindingRevision' => [ + 'callType' => \Google\ApiCore\Call::UNARY_CALL, + 'responseType' => 'Google\Cloud\Storage\Control\V2\IntelligenceFindingRevision', + 'headerParams' => [ + [ + 'keyName' => 'name', + 'fieldAccessors' => [ + 'getName', + ], + ], + ], + ], 'GetManagedFolder' => [ 'callType' => \Google\ApiCore\Call::UNARY_CALL, 'responseType' => 'Google\Cloud\Storage\Control\V2\ManagedFolder', @@ -371,6 +395,46 @@ ], ], ], + 'ListIntelligenceFindingRevisions' => [ + 'pageStreaming' => [ + 'requestPageTokenGetMethod' => 'getPageToken', + 'requestPageTokenSetMethod' => 'setPageToken', + 'requestPageSizeGetMethod' => 'getPageSize', + 'requestPageSizeSetMethod' => 'setPageSize', + 'responsePageTokenGetMethod' => 'getNextPageToken', + 'resourcesGetMethod' => 'getIntelligenceFindingRevisions', + ], + 'callType' => \Google\ApiCore\Call::PAGINATED_CALL, + 'responseType' => 'Google\Cloud\Storage\Control\V2\ListIntelligenceFindingRevisionsResponse', + 'headerParams' => [ + [ + 'keyName' => 'parent', + 'fieldAccessors' => [ + 'getParent', + ], + ], + ], + ], + 'ListIntelligenceFindings' => [ + 'pageStreaming' => [ + 'requestPageTokenGetMethod' => 'getPageToken', + 'requestPageTokenSetMethod' => 'setPageToken', + 'requestPageSizeGetMethod' => 'getPageSize', + 'requestPageSizeSetMethod' => 'setPageSize', + 'responsePageTokenGetMethod' => 'getNextPageToken', + 'resourcesGetMethod' => 'getIntelligenceFindings', + ], + 'callType' => \Google\ApiCore\Call::PAGINATED_CALL, + 'responseType' => 'Google\Cloud\Storage\Control\V2\ListIntelligenceFindingsResponse', + 'headerParams' => [ + [ + 'keyName' => 'parent', + 'fieldAccessors' => [ + 'getParent', + ], + ], + ], + ], 'ListManagedFolders' => [ 'pageStreaming' => [ 'requestPageTokenGetMethod' => 'getPageToken', @@ -445,6 +509,26 @@ ], ], ], + 'SummarizeIntelligenceFindings' => [ + 'pageStreaming' => [ + 'requestPageTokenGetMethod' => 'getPageToken', + 'requestPageTokenSetMethod' => 'setPageToken', + 'requestPageSizeGetMethod' => 'getPageSize', + 'requestPageSizeSetMethod' => 'setPageSize', + 'responsePageTokenGetMethod' => 'getNextPageToken', + 'resourcesGetMethod' => 'getFindingSummaries', + ], + 'callType' => \Google\ApiCore\Call::PAGINATED_CALL, + 'responseType' => 'Google\Cloud\Storage\Control\V2\SummarizeIntelligenceFindingsResponse', + 'headerParams' => [ + [ + 'keyName' => 'parent', + 'fieldAccessors' => [ + 'getParent', + ], + ], + ], + ], 'TestIamPermissions' => [ 'callType' => \Google\ApiCore\Call::UNARY_CALL, 'responseType' => 'Google\Cloud\Iam\V1\TestIamPermissionsResponse', @@ -506,6 +590,9 @@ 'folder' => 'projects/{project}/buckets/{bucket}/folders/{folder=**}', 'folderLocationIntelligenceConfig' => 'folders/{folder}/locations/{location}/intelligenceConfig', 'intelligenceConfig' => 'folders/{folder}/locations/{location}/intelligenceConfig', + 'intelligenceFinding' => 'projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}', + 'intelligenceFindingRevision' => 'projects/{project}/locations/{location}/intelligenceFindings/{intelligence_finding}/revisions/{revision}', + 'location' => 'projects/{project}/locations/{location}', 'managedFolder' => 'projects/{project}/buckets/{bucket}/managedFolders/{managed_folder=**}', 'orgLocationIntelligenceConfig' => 'organizations/{org}/locations/{location}/intelligenceConfig', 'projectLocationIntelligenceConfig' => 'projects/{project}/locations/{location}/intelligenceConfig', diff --git a/StorageControl/src/V2/resources/storage_control_rest_client_config.php b/StorageControl/src/V2/resources/storage_control_rest_client_config.php index 1795c3b4f3c1..2fa484ed082d 100644 --- a/StorageControl/src/V2/resources/storage_control_rest_client_config.php +++ b/StorageControl/src/V2/resources/storage_control_rest_client_config.php @@ -34,6 +34,28 @@ ], ], ], + 'GetIntelligenceFinding' => [ + 'method' => 'get', + 'uriTemplate' => '/v2/{name=projects/*/locations/*/intelligenceFindings/*}', + 'placeholders' => [ + 'name' => [ + 'getters' => [ + 'getName', + ], + ], + ], + ], + 'GetIntelligenceFindingRevision' => [ + 'method' => 'get', + 'uriTemplate' => '/v2/{name=projects/*/locations/*/intelligenceFindings/*/revisions/*}', + 'placeholders' => [ + 'name' => [ + 'getters' => [ + 'getName', + ], + ], + ], + ], 'GetOrganizationIntelligenceConfig' => [ 'method' => 'get', 'uriTemplate' => '/v2/{name=organizations/*/locations/*/intelligenceConfig}', @@ -56,6 +78,49 @@ ], ], ], + 'ListIntelligenceFindingRevisions' => [ + 'method' => 'get', + 'uriTemplate' => '/v2/{parent=projects/*/locations/*/intelligenceFindings/*}/revisions', + 'placeholders' => [ + 'parent' => [ + 'getters' => [ + 'getParent', + ], + ], + ], + ], + 'ListIntelligenceFindings' => [ + 'method' => 'get', + 'uriTemplate' => '/v2/{parent=projects/*/locations/*}/intelligenceFindings', + 'placeholders' => [ + 'parent' => [ + 'getters' => [ + 'getParent', + ], + ], + ], + ], + 'SummarizeIntelligenceFindings' => [ + 'method' => 'get', + 'uriTemplate' => '/v2/{parent=projects/*/locations/*}/intelligenceFindings:summarize', + 'additionalBindings' => [ + [ + 'method' => 'get', + 'uriTemplate' => '/v2/{parent=folders/*/locations/*}/intelligenceFindings:summarize', + ], + [ + 'method' => 'get', + 'uriTemplate' => '/v2/{parent=organizations/*/locations/*}/intelligenceFindings:summarize', + ], + ], + 'placeholders' => [ + 'parent' => [ + 'getters' => [ + 'getParent', + ], + ], + ], + ], 'UpdateFolderIntelligenceConfig' => [ 'method' => 'patch', 'uriTemplate' => '/v2/{intelligence_config.name=folders/*/locations/*/intelligenceConfig}', diff --git a/StorageControl/tests/Unit/V2/Client/StorageControlClientTest.php b/StorageControl/tests/Unit/V2/Client/StorageControlClientTest.php index 6e6b375e8195..ef7a02a8e0a3 100644 --- a/StorageControl/tests/Unit/V2/Client/StorageControlClientTest.php +++ b/StorageControl/tests/Unit/V2/Client/StorageControlClientTest.php @@ -40,19 +40,28 @@ use Google\Cloud\Storage\Control\V2\DeleteFolderRequest; use Google\Cloud\Storage\Control\V2\DeleteManagedFolderRequest; use Google\Cloud\Storage\Control\V2\DisableAnywhereCacheRequest; +use Google\Cloud\Storage\Control\V2\FindingSummary; use Google\Cloud\Storage\Control\V2\Folder; use Google\Cloud\Storage\Control\V2\GetAnywhereCacheRequest; use Google\Cloud\Storage\Control\V2\GetFolderIntelligenceConfigRequest; use Google\Cloud\Storage\Control\V2\GetFolderRequest; +use Google\Cloud\Storage\Control\V2\GetIntelligenceFindingRequest; +use Google\Cloud\Storage\Control\V2\GetIntelligenceFindingRevisionRequest; use Google\Cloud\Storage\Control\V2\GetManagedFolderRequest; use Google\Cloud\Storage\Control\V2\GetOrganizationIntelligenceConfigRequest; use Google\Cloud\Storage\Control\V2\GetProjectIntelligenceConfigRequest; use Google\Cloud\Storage\Control\V2\GetStorageLayoutRequest; use Google\Cloud\Storage\Control\V2\IntelligenceConfig; +use Google\Cloud\Storage\Control\V2\IntelligenceFinding; +use Google\Cloud\Storage\Control\V2\IntelligenceFindingRevision; use Google\Cloud\Storage\Control\V2\ListAnywhereCachesRequest; use Google\Cloud\Storage\Control\V2\ListAnywhereCachesResponse; use Google\Cloud\Storage\Control\V2\ListFoldersRequest; use Google\Cloud\Storage\Control\V2\ListFoldersResponse; +use Google\Cloud\Storage\Control\V2\ListIntelligenceFindingRevisionsRequest; +use Google\Cloud\Storage\Control\V2\ListIntelligenceFindingRevisionsResponse; +use Google\Cloud\Storage\Control\V2\ListIntelligenceFindingsRequest; +use Google\Cloud\Storage\Control\V2\ListIntelligenceFindingsResponse; use Google\Cloud\Storage\Control\V2\ListManagedFoldersRequest; use Google\Cloud\Storage\Control\V2\ListManagedFoldersResponse; use Google\Cloud\Storage\Control\V2\ManagedFolder; @@ -60,6 +69,8 @@ use Google\Cloud\Storage\Control\V2\RenameFolderRequest; use Google\Cloud\Storage\Control\V2\ResumeAnywhereCacheRequest; use Google\Cloud\Storage\Control\V2\StorageLayout; +use Google\Cloud\Storage\Control\V2\SummarizeIntelligenceFindingsRequest; +use Google\Cloud\Storage\Control\V2\SummarizeIntelligenceFindingsResponse; use Google\Cloud\Storage\Control\V2\UpdateAnywhereCacheRequest; use Google\Cloud\Storage\Control\V2\UpdateFolderIntelligenceConfigRequest; use Google\Cloud\Storage\Control\V2\UpdateOrganizationIntelligenceConfigRequest; @@ -992,6 +1003,150 @@ public function getIamPolicyExceptionTest() $this->assertTrue($transport->isExhausted()); } + /** @test */ + public function getIntelligenceFindingTest() + { + $transport = $this->createTransport(); + $gapicClient = $this->createClient([ + 'transport' => $transport, + ]); + $this->assertTrue($transport->isExhausted()); + // Mock response + $name2 = 'name2-1052831874'; + $description = 'description-1724546052'; + $targetResource = 'targetResource-69552388'; + $expectedResponse = new IntelligenceFinding(); + $expectedResponse->setName($name2); + $expectedResponse->setDescription($description); + $expectedResponse->setTargetResource($targetResource); + $transport->addResponse($expectedResponse); + // Mock request + $formattedName = $gapicClient->intelligenceFindingName('[PROJECT]', '[LOCATION]', '[INTELLIGENCE_FINDING]'); + $request = (new GetIntelligenceFindingRequest())->setName($formattedName); + $response = $gapicClient->getIntelligenceFinding($request); + $this->assertEquals($expectedResponse, $response); + $actualRequests = $transport->popReceivedCalls(); + $this->assertSame(1, count($actualRequests)); + $actualFuncCall = $actualRequests[0]->getFuncCall(); + $actualRequestObject = $actualRequests[0]->getRequestObject(); + $this->assertSame('/google.storage.control.v2.StorageControl/GetIntelligenceFinding', $actualFuncCall); + $actualValue = $actualRequestObject->getName(); + $this->assertProtobufEquals($formattedName, $actualValue); + $this->assertTrue($transport->isExhausted()); + } + + /** @test */ + public function getIntelligenceFindingExceptionTest() + { + $transport = $this->createTransport(); + $gapicClient = $this->createClient([ + 'transport' => $transport, + ]); + $this->assertTrue($transport->isExhausted()); + $status = new stdClass(); + $status->code = Code::DATA_LOSS; + $status->details = 'internal error'; + $expectedExceptionMessage = json_encode( + [ + 'message' => 'internal error', + 'code' => Code::DATA_LOSS, + 'status' => 'DATA_LOSS', + 'details' => [], + ], + JSON_PRETTY_PRINT + ); + $transport->addResponse(null, $status); + // Mock request + $formattedName = $gapicClient->intelligenceFindingName('[PROJECT]', '[LOCATION]', '[INTELLIGENCE_FINDING]'); + $request = (new GetIntelligenceFindingRequest())->setName($formattedName); + try { + $gapicClient->getIntelligenceFinding($request); + // If the $gapicClient method call did not throw, fail the test + $this->fail('Expected an ApiException, but no exception was thrown.'); + } catch (ApiException $ex) { + $this->assertEquals($status->code, $ex->getCode()); + $this->assertEquals($expectedExceptionMessage, $ex->getMessage()); + } + // Call popReceivedCalls to ensure the stub is exhausted + $transport->popReceivedCalls(); + $this->assertTrue($transport->isExhausted()); + } + + /** @test */ + public function getIntelligenceFindingRevisionTest() + { + $transport = $this->createTransport(); + $gapicClient = $this->createClient([ + 'transport' => $transport, + ]); + $this->assertTrue($transport->isExhausted()); + // Mock response + $name2 = 'name2-1052831874'; + $expectedResponse = new IntelligenceFindingRevision(); + $expectedResponse->setName($name2); + $transport->addResponse($expectedResponse); + // Mock request + $formattedName = $gapicClient->intelligenceFindingRevisionName( + '[PROJECT]', + '[LOCATION]', + '[INTELLIGENCE_FINDING]', + '[REVISION]' + ); + $request = (new GetIntelligenceFindingRevisionRequest())->setName($formattedName); + $response = $gapicClient->getIntelligenceFindingRevision($request); + $this->assertEquals($expectedResponse, $response); + $actualRequests = $transport->popReceivedCalls(); + $this->assertSame(1, count($actualRequests)); + $actualFuncCall = $actualRequests[0]->getFuncCall(); + $actualRequestObject = $actualRequests[0]->getRequestObject(); + $this->assertSame('/google.storage.control.v2.StorageControl/GetIntelligenceFindingRevision', $actualFuncCall); + $actualValue = $actualRequestObject->getName(); + $this->assertProtobufEquals($formattedName, $actualValue); + $this->assertTrue($transport->isExhausted()); + } + + /** @test */ + public function getIntelligenceFindingRevisionExceptionTest() + { + $transport = $this->createTransport(); + $gapicClient = $this->createClient([ + 'transport' => $transport, + ]); + $this->assertTrue($transport->isExhausted()); + $status = new stdClass(); + $status->code = Code::DATA_LOSS; + $status->details = 'internal error'; + $expectedExceptionMessage = json_encode( + [ + 'message' => 'internal error', + 'code' => Code::DATA_LOSS, + 'status' => 'DATA_LOSS', + 'details' => [], + ], + JSON_PRETTY_PRINT + ); + $transport->addResponse(null, $status); + // Mock request + $formattedName = $gapicClient->intelligenceFindingRevisionName( + '[PROJECT]', + '[LOCATION]', + '[INTELLIGENCE_FINDING]', + '[REVISION]' + ); + $request = (new GetIntelligenceFindingRevisionRequest())->setName($formattedName); + try { + $gapicClient->getIntelligenceFindingRevision($request); + // If the $gapicClient method call did not throw, fail the test + $this->fail('Expected an ApiException, but no exception was thrown.'); + } catch (ApiException $ex) { + $this->assertEquals($status->code, $ex->getCode()); + $this->assertEquals($expectedExceptionMessage, $ex->getMessage()); + } + // Call popReceivedCalls to ensure the stub is exhausted + $transport->popReceivedCalls(); + $this->assertTrue($transport->isExhausted()); + } + /** @test */ public function getManagedFolderTest() { @@ -1403,6 +1558,151 @@ public function listFoldersExceptionTest() $this->assertTrue($transport->isExhausted()); } + /** @test */ + public function listIntelligenceFindingRevisionsTest() + { + $transport = $this->createTransport(); + $gapicClient = $this->createClient([ + 'transport' => $transport, + ]); + $this->assertTrue($transport->isExhausted()); + // Mock response + $nextPageToken = ''; + $intelligenceFindingRevisionsElement = new IntelligenceFindingRevision(); + $intelligenceFindingRevisions = [$intelligenceFindingRevisionsElement]; + $expectedResponse = new ListIntelligenceFindingRevisionsResponse(); + $expectedResponse->setNextPageToken($nextPageToken); + $expectedResponse->setIntelligenceFindingRevisions($intelligenceFindingRevisions); + $transport->addResponse($expectedResponse); + // Mock request + $formattedParent = $gapicClient->intelligenceFindingName('[PROJECT]', '[LOCATION]', '[INTELLIGENCE_FINDING]'); + $request = (new ListIntelligenceFindingRevisionsRequest())->setParent($formattedParent); + $response = $gapicClient->listIntelligenceFindingRevisions($request); + $this->assertEquals($expectedResponse, $response->getPage()->getResponseObject()); + $resources = iterator_to_array($response->iterateAllElements()); + $this->assertSame(1, count($resources)); + $this->assertEquals($expectedResponse->getIntelligenceFindingRevisions()[0], $resources[0]); + $actualRequests = $transport->popReceivedCalls(); + $this->assertSame(1, count($actualRequests)); + $actualFuncCall = $actualRequests[0]->getFuncCall(); + $actualRequestObject = $actualRequests[0]->getRequestObject(); + $this->assertSame( + '/google.storage.control.v2.StorageControl/ListIntelligenceFindingRevisions', + $actualFuncCall + ); + $actualValue = $actualRequestObject->getParent(); + $this->assertProtobufEquals($formattedParent, $actualValue); + $this->assertTrue($transport->isExhausted()); + } + + /** @test */ + public function listIntelligenceFindingRevisionsExceptionTest() + { + $transport = $this->createTransport(); + $gapicClient = $this->createClient([ + 'transport' => $transport, + ]); + $this->assertTrue($transport->isExhausted()); + $status = new stdClass(); + $status->code = Code::DATA_LOSS; + $status->details = 'internal error'; + $expectedExceptionMessage = json_encode( + [ + 'message' => 'internal error', + 'code' => Code::DATA_LOSS, + 'status' => 'DATA_LOSS', + 'details' => [], + ], + JSON_PRETTY_PRINT + ); + $transport->addResponse(null, $status); + // Mock request + $formattedParent = $gapicClient->intelligenceFindingName('[PROJECT]', '[LOCATION]', '[INTELLIGENCE_FINDING]'); + $request = (new ListIntelligenceFindingRevisionsRequest())->setParent($formattedParent); + try { + $gapicClient->listIntelligenceFindingRevisions($request); + // If the $gapicClient method call did not throw, fail the test + $this->fail('Expected an ApiException, but no exception was thrown.'); + } catch (ApiException $ex) { + $this->assertEquals($status->code, $ex->getCode()); + $this->assertEquals($expectedExceptionMessage, $ex->getMessage()); + } + // Call popReceivedCalls to ensure the stub is exhausted + $transport->popReceivedCalls(); + $this->assertTrue($transport->isExhausted()); + } + + /** @test */ + public function listIntelligenceFindingsTest() + { + $transport = $this->createTransport(); + $gapicClient = $this->createClient([ + 'transport' => $transport, + ]); + $this->assertTrue($transport->isExhausted()); + // Mock response + $nextPageToken = ''; + $intelligenceFindingsElement = new IntelligenceFinding(); + $intelligenceFindings = [$intelligenceFindingsElement]; + $expectedResponse = new ListIntelligenceFindingsResponse(); + $expectedResponse->setNextPageToken($nextPageToken); + $expectedResponse->setIntelligenceFindings($intelligenceFindings); + $transport->addResponse($expectedResponse); + // Mock request + $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]'); + $request = (new ListIntelligenceFindingsRequest())->setParent($formattedParent); + $response = $gapicClient->listIntelligenceFindings($request); + $this->assertEquals($expectedResponse, $response->getPage()->getResponseObject()); + $resources = iterator_to_array($response->iterateAllElements()); + $this->assertSame(1, count($resources)); + $this->assertEquals($expectedResponse->getIntelligenceFindings()[0], $resources[0]); + $actualRequests = $transport->popReceivedCalls(); + $this->assertSame(1, count($actualRequests)); + $actualFuncCall = $actualRequests[0]->getFuncCall(); + $actualRequestObject = $actualRequests[0]->getRequestObject(); + $this->assertSame('/google.storage.control.v2.StorageControl/ListIntelligenceFindings', $actualFuncCall); + $actualValue = $actualRequestObject->getParent(); + $this->assertProtobufEquals($formattedParent, $actualValue); + $this->assertTrue($transport->isExhausted()); + } + + /** @test */ + public function listIntelligenceFindingsExceptionTest() + { + $transport = $this->createTransport(); + $gapicClient = $this->createClient([ + 'transport' => $transport, + ]); + $this->assertTrue($transport->isExhausted()); + $status = new stdClass(); + $status->code = Code::DATA_LOSS; + $status->details = 'internal error'; + $expectedExceptionMessage = json_encode( + [ + 'message' => 'internal error', + 'code' => Code::DATA_LOSS, + 'status' => 'DATA_LOSS', + 'details' => [], + ], + JSON_PRETTY_PRINT + ); + $transport->addResponse(null, $status); + // Mock request + $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]'); + $request = (new ListIntelligenceFindingsRequest())->setParent($formattedParent); + try { + $gapicClient->listIntelligenceFindings($request); + // If the $gapicClient method call did not throw, fail the test + $this->fail('Expected an ApiException, but no exception was thrown.'); + } catch (ApiException $ex) { + $this->assertEquals($status->code, $ex->getCode()); + $this->assertEquals($expectedExceptionMessage, $ex->getMessage()); + } + // Call popReceivedCalls to ensure the stub is exhausted + $transport->popReceivedCalls(); + $this->assertTrue($transport->isExhausted()); + } + /** @test */ public function listManagedFoldersTest() { @@ -1821,6 +2121,77 @@ public function setIamPolicyExceptionTest() $this->assertTrue($transport->isExhausted()); } + /** @test */ + public function summarizeIntelligenceFindingsTest() + { + $transport = $this->createTransport(); + $gapicClient = $this->createClient([ + 'transport' => $transport, + ]); + $this->assertTrue($transport->isExhausted()); + // Mock response + $nextPageToken = ''; + $findingSummariesElement = new FindingSummary(); + $findingSummaries = [$findingSummariesElement]; + $expectedResponse = new SummarizeIntelligenceFindingsResponse(); + $expectedResponse->setNextPageToken($nextPageToken); + $expectedResponse->setFindingSummaries($findingSummaries); + $transport->addResponse($expectedResponse); + // Mock request + $parent = 'parent-995424086'; + $request = (new SummarizeIntelligenceFindingsRequest())->setParent($parent); + $response = $gapicClient->summarizeIntelligenceFindings($request); + $this->assertEquals($expectedResponse, $response->getPage()->getResponseObject()); + $resources = iterator_to_array($response->iterateAllElements()); + $this->assertSame(1, count($resources)); + $this->assertEquals($expectedResponse->getFindingSummaries()[0], $resources[0]); + $actualRequests = $transport->popReceivedCalls(); + $this->assertSame(1, count($actualRequests)); + $actualFuncCall = $actualRequests[0]->getFuncCall(); + $actualRequestObject = $actualRequests[0]->getRequestObject(); + $this->assertSame('/google.storage.control.v2.StorageControl/SummarizeIntelligenceFindings', $actualFuncCall); + $actualValue = $actualRequestObject->getParent(); + $this->assertProtobufEquals($parent, $actualValue); + $this->assertTrue($transport->isExhausted()); + } + + /** @test */ + public function summarizeIntelligenceFindingsExceptionTest() + { + $transport = $this->createTransport(); + $gapicClient = $this->createClient([ + 'transport' => $transport, + ]); + $this->assertTrue($transport->isExhausted()); + $status = new stdClass(); + $status->code = Code::DATA_LOSS; + $status->details = 'internal error'; + $expectedExceptionMessage = json_encode( + [ + 'message' => 'internal error', + 'code' => Code::DATA_LOSS, + 'status' => 'DATA_LOSS', + 'details' => [], + ], + JSON_PRETTY_PRINT + ); + $transport->addResponse(null, $status); + // Mock request + $parent = 'parent-995424086'; + $request = (new SummarizeIntelligenceFindingsRequest())->setParent($parent); + try { + $gapicClient->summarizeIntelligenceFindings($request); + // If the $gapicClient method call did not throw, fail the test + $this->fail('Expected an ApiException, but no exception was thrown.'); + } catch (ApiException $ex) { + $this->assertEquals($status->code, $ex->getCode()); + $this->assertEquals($expectedExceptionMessage, $ex->getMessage()); + } + // Call popReceivedCalls to ensure the stub is exhausted + $transport->popReceivedCalls(); + $this->assertTrue($transport->isExhausted()); + } + /** @test */ public function testIamPermissionsTest() {